ifreund changed the topic of #river to: river - a dynamic tiling wayland compositor || https://github.com/ifreund/river || channel logs: https://libera.irclog.whitequark.org/river/
waleee has quit [Ping timeout: 252 seconds]
<ifreund> leon-p: I know what's happening there, I just haven't bothered to do anything about it yet
<ifreund> notice that this only happens with mpv while it is paused
<ifreund> what happens is that river handles focus change using the transaction system and waits for clients to commit a new frame with the activated state taken into account
<ifreund> which makes sense if the client has CSD, but not in the general case
snakedye has quit [Ping timeout: 264 seconds]
<leon-p> i see, makes sense
<ifreund> to be clear, this is a bug with river and we should fix this, I just haven't found the time yet
leon-p has quit [Quit: Lost terminal]
leon-p has joined #river
<leon-p> ifreund: found a bug: I can reliably soft-lock river with a faulty layout
<leon-p> interacting with views still works, but I can no longer move then (neither with a layout nor via mouse) nor does tag switching work
<leon-p> it seems to work logically, as the views on screen loose focus, but it does not end up on screen
<leon-p> totally weird
<leon-p> ifreund: the problem occurs when a layout crashes while handling a layout demand.
<leon-p> I believe the output.active_layout value may be stuck
<leon-p> it fixes itself when a new layout is used
<ifreund> leon-p: interesting, thanks for investigating. I should have time to take a look tomorrow
novakane has joined #river
noopdecoder has joined #river
yyp has joined #river
noopdecoder has quit [Quit: noopdecoder]
andrea has joined #river
andrea has quit [Ping timeout: 264 seconds]
Guest74 has joined #river
Guest74 has quit [Client Quit]
nib9888 has joined #river
novakane has quit [Ping timeout: 248 seconds]
novakane has joined #river
<novakane> So I made a quick scrip to bind to a key and send a notif https://paste.sr.ht/~novakane/ea64f608d66dd669a1694eb8f3a55eec47ff817c
<novakane> works good with river-tag-overlay
<novakane> I'll see if I like it as a replacement of a bar
novakane has quit [Quit: WeeChat 3.1]
novakane has joined #river
<nib9888> Has anyone here had any issues with intel iris? I keep getting permission denied errors from river, but strace doesn't actually show any system calls erroring with permission denied
<novakane> can you share the full errors?
<nib9888> Hold on, I can't copy from a tty, give me a sec to write them out
<nib9888> [backend/drm/atomic.c:35] connector eDP-1: Atomic commit failed (modeset): Permission denied
<nib9888> I run river with chmod +s because it won't work with either elogind or seatd
<novakane> hmm I don't know what's the modeset error, what's your problem with elogind and seatd it should works fine
<nib9888> Hold on again - Need to recompile wlroots (gentoo system)
<nib9888> It's just as simple as "libseat_open_seat: Backend 'seatd' failed to open seat, skipping"
<nib9888> With seatd running as root in another terminal
<nib9888> Just some extra information: Sway doesn't work with seatd either, but does work with chmod +s
sjtio has joined #river
<novakane> looks like modeset is the backend failing to set your monitor resolution/refresh rate
<novakane> for seatd I needed to add my user to _seatd group
<nib9888> I'll try that
<nib9888> I suspect it might be that, because I just found a permission denied error in strace for connecting to /run/seatd.sock
<novakane> also launch river with dbus-run-session river
<nib9888> dbus-run-session alone didn't help, but I'm working on getting write permissions to /run/seatd.sock
<nib9888> That worked
<nib9888> Thanks
<nib9888> Seems gentoo's seatd ebuild is a bit broken, as it didn't provide a seatd group, and had the socked owned by root:root
<novakane> ah yeah that's not ideal
<nib9888> I still can't help but wonder why river didn't work with +s, but sway did
<nib9888> Oh well, thanks for the help!
<novakane> no problem
* nib9888 writes an ebuild
nib9888 has quit [Quit: leaving]
<leon-p> novakane: thanks again for tha patch. I think you are overcomplicating it a bit. Instead of an anchor struct, try a global `enum zwlr_layer_surface_anchor anchors`, set to 0 initially.
<leon-p> and you should check the input. The only allowed values are 0 and 1.
Guest32 has joined #river
<novakane> yeah I always overcomplicate things... I'll try that
<novakane> yep I want to add a check, but I was trying to make it works first tbh
<Guest32> i want to modify rivertile to use tag specific values, like location etc. But i dont get a simple way to get the focused tag, i want something like a oneliner without listening to events
<Guest32> i cleaned status.zig so i only get the focused tag but i think it whould reqire something like a second thread to run in.
<leon-p> Guest32: The layout_demand event sends the currently active tags
<leon-p> In Wayland it is generally a good idea to read the protocol before writing code
<leon-p> there is no need to use the river_status protocol
waleee has joined #river
waleee has quit [Ping timeout: 264 seconds]
<Guest32> thanks a lot it worked perfectly, but why i cant acces it inside .set_fixed_value
<Guest32> in layout demand i cant use ev.tags but there it doesnt work
<novakane> leon-p: hell yeah it finally works!
<novakane> looks better for you? https://0x0.st/-2jr.patch
<novakane> need to add the check and margins back now
<leon-p> Guest32: because that event does not send the tags. You'll have to store the ones you get from the layout demand
<leon-p> novakane: way better. A few small nitpicks: sscanf can fail; the thing with anchor_vertical and anchor_horizontal is overcomplicated, you can just use `|=` on the global anchors variable; I would prefer the option to be called anchors; I don't like the anchors being set in the render function, set them when the surface is created; You do not need to give get_anchors() a pointer to the anchors variable,
<leon-p> since it's global; get_anchors should be called parse_anchors
<novakane> leon-p: alright I'll make the changes
<novakane> also I'm not sure how to check the input, without a lot of if else
<novakane> the surface is created in update_surface()?
<leon-p> novakane: yes, the surface is created in update_surface(). You can put the anchor setting right under zwlr_layer_surface_v1_set_size()
<leon-p> and for checking the input, let's just say 0 is no and any postive integer is yes, makes it a bit easier
anubhavkini has joined #river
<novakane> alright I changed everything else I just need to check the input and I should be done
<novakane> damn 995 lines, 5 more and you need to rewrite in zig :P
yyp has quit [Ping timeout: 248 seconds]
yyp has joined #river
novakane has quit [Quit: WeeChat 3.1]
novakane has joined #river
<novakane> damn I tried a negative value for the margins and my pc crash
<novakane> not ideal :P
<leon-p> :D
<leon-p> probably implicitly converting from int to uint somewhere. I probably should make the compiler flags more aggressive
<novakane> well anchors use uint and margins use int and that pissed me off to check the values, can't use the same thing :p
<novakane> leon-p: here where I am and I can't make some good check for now tbh https://0x0.st/-2jt.patch
<leon-p> novakane: it's fine, I can add the tests myself
<leon-p> I'll commit that, thanks for the patch
<leon-p> novakane: by the way, you probably want to teach your editor to respect the indentation. It used spaces almost everywhare despite the surrounding code being indented with tabs
<novakane> oops yeah sorry I never used tab
<leon-p> it's fine, I'll quickly ammend the commit
<novakane> thanks
<novakane> I really like having it at the bottom, look really good now
<novakane> :D
<leon-p> novakane: cleaned up your patch and pushed it to master, thanks for the contribution
<novakane> leon-p: nice! oof 997 lines we're good :P
yyp has quit [*.net *.split]
yyp has joined #river
sjtio has quit [*.net *.split]
anubhavkini has quit [Quit: Quit]
waleee has joined #river
<Guest32> if i get my tag value saving working should i implement a flag for it so it could be maintreamed or is there no interest
<leon-p> Guest32: I remember ifreund saying that rivertile upstream is not intended to have that feature.
<leon-p> but you can fork it
<ifreund> Yeah I don't want to maintain that complexity upstream, the official rivertile is feature complete as far as I'm concerned
<Guest32> k no problem
yyp has quit [Ping timeout: 272 seconds]
yyp has joined #river
sjtio has joined #river
leon-p has quit [Read error: Connection reset by peer]
leon-p has joined #river
Guest32 has quit [Ping timeout: 250 seconds]
andrea has joined #river
yyp has quit [Remote host closed the connection]
yyp has joined #river
novakane has quit [Quit: WeeChat 3.1]
andrea has quit [Quit: Quit]
yyp has quit [Remote host closed the connection]
yyp has joined #river
yyp has quit [Remote host closed the connection]
waleee has quit [Ping timeout: 244 seconds]
waleee has joined #river
waleee has quit [Ping timeout: 268 seconds]
Jano[m] has joined #river