adamcstephens has quit [Remote host closed the connection]
adamcstephens has joined #river
Ireozar has quit [Ping timeout: 245 seconds]
Ireozar has joined #river
Keeto has joined #river
mekeor has joined #river
Ireozar has quit [Read error: Connection reset by peer]
Ireozar has joined #river
surf3r has joined #river
<surf3r>
hello riverinos! longtime enjoyer of the river wm
<surf3r>
is it possible to center a floating view with a keybind?
<surf3r>
ive looked at the docs, all i can find is the position rule for new views
derwolf has joined #river
tikatoo has joined #river
fitrh has joined #river
tikatoo has quit [Changing host]
tikatoo has joined #river
derwolf has quit [Quit: Client closed]
derwolf has joined #river
tikatoo has quit [Quit: Client closed]
derwolf has quit [Quit: Client closed]
derwolf has joined #river
derwolf has quit [Ping timeout: 272 seconds]
derwolf has joined #river
derwolf has quit [Client Quit]
zuki has joined #river
<leon-p>
surf3r: there is no center feature unfortunately
<zuki>
I remember hearing something about it being possible, to make a bar as part of a river window manager.
<zuki>
Can anyone point me in the right direction for how to make something like that for rwm?
<leon-p>
zuki: sure! the rwm protocol adds two new roles for wl_surface, one with direct placement and one with relative placement to a window
<leon-p>
high level overview: you'll need some sort of buffer pool to get memory to draw into, ideally a drawing library (pixman, cairo, ...), you then attach the buffers to the surface to present what you have drawn
<leon-p>
just instead of using the layer_shell surface role, you'll use the one from rwm
<zuki>
ah thanks!
<leon-p>
note that if you want to do text and scaling, it gets a bit more complicated, but I suggested you start with simply rendering a bar without content to get an idea for how this works
aryak has joined #river
aktina has joined #river
notchoc has joined #river
<zuki>
I'm a little confused, river_window_manager_v1_get_shell_surface takes in a wl_surface, how do I set that var properly?
<leon-p>
you first get a wl_surface, then you get a river_shell_surface ovject using the wl_surface
<leon-p>
to get a wl_surface, you use wl_compositor
<leon-p>
which is another global you'll need to bind
<zuki>
ah ok
mekeor has quit [Quit: towards emacs as interface to cybernetic council communism]
notzmv has joined #river
surf3r has quit [Quit: WeeChat 4.6.3]
Guest60 has joined #river
Guest60 has quit [Client Quit]
zuki has quit [Quit: Client closed]
fitrh has quit [Ping timeout: 272 seconds]
<bwbuhse>
> if you want to do text and scaling, it gets a bit more complicated
<bwbuhse>
I went crazy trying to add the text for my clock app lmao
zuki has joined #river
karampok has joined #river
haliucinas has quit [Quit: .]
haliucinas has joined #river
<karampok>
hi! a fast question the scrolling of using a mouse wheel stopped working, is it possible that this is due to river? thanks
<ifreund>
karampok: does `libinput debug-events` show scroll wheel events?
<karampok>
no
<karampok>
no event with scroll keyword
<ifreund>
sounds like the problem is at a lower level in the input stack than river then
<karampok>
lower level is for example?
<ifreund>
the kernel or libinput
<zuki>
I feel completely out of my depth trying to setup rendering with pixman and wl_surface
<karampok>
hmm, hard to think that fedora 42 can have be the broken
<karampok>
but I will try other kernel and moitor the libinput version
<karampok>
that is a bit interesting, is seat somehow in between river and lower stack
<ifreund>
karampok: there's is some concept of seats at the udev level iiuc
<ifreund>
if you're not getting POINTER_SCROLL_WHEEL events in `libinput debug-events` then the input events are definitely never reaching river
<karampok>
yeah, thanks for the info
<karampok>
and btw river is great thx in overall
<ifreund>
glad it's useful for you :)
<ifreund>
zuki: pixman is admittely very low level and has no docs :/
<ifreund>
a somewhat higher level software rendering library is on my todo list, who knows if/when I'll get around to it though
<zuki>
is there any good resources on using pixman or some else to render a wayland client?
karampok has quit [Quit: Client closed]
<leon-p>
zuki: I don't think there is anything bettwe than reading sourcecode of other projects right now
<leon-p>
you can also use cairo instead, it's definitely better documented
<bwbuhse>
zuki: when I set up my first two wayland apps it was a ton of trial-and-error/copying from examples to figure them out
<bwbuhse>
I still don't really understand, but my two programs work, lol
<ifreund>
using cairo is definitely a valid option
<zuki>
I still can't find anything from a quick search on using cairo with wayland, So is it still a case of searching for other peoples code using cairo with wayland and referencing that?
notzmv has quit [Ping timeout: 245 seconds]
Keeto has quit [Remote host closed the connection]
autisticshark has quit [Ping timeout: 248 seconds]
<leon-p>
zuki: yes
<leon-p>
with cairo you still have to manage surfaces and buffers yourself, but the functions you'll use for drawing are documented, unlike with pixman
<zuki>
I finally got a "hello world" to display on the rwm shell surface.
<zuki>
thanks leon-p
<leon-p>
nice!
autisticshark has joined #river
autisticshark has quit [Ping timeout: 260 seconds]
zuki has quit [Ping timeout: 272 seconds]
autisticshark has joined #river
flower_ has joined #river
notzmv has joined #river
notzmv has quit [Remote host closed the connection]
autisticshark has quit [Ping timeout: 276 seconds]
dmcblue has joined #river
<szgy>
zuki: don't know the language you want to right it in. But I've played with doing small wayland apps with lua and lua-lgi
<szgy>
this gives bindings to gtk, where you have a bunch of widgets that you can build apps upon. Preeety easy. If you prefer python, there's a python equivalent to lua's lgi
<szgy>
s/right/write
dmcblue has quit [Quit: Client closed]
notzmv has joined #river
autisticshark has joined #river
notzmv has quit [Ping timeout: 248 seconds]
autisticshark has quit [Ping timeout: 252 seconds]