<ahmadraniri1994[>
hello, is it possible to make "scrollable tiling" layout on river? like cardboardwm, thanks.
<novakane>
ahmadraniri1994[: not with rivertile, and I don't think it would be possible to make with an other layout generator too
Guest875 has joined #river
Guest875 has quit [Client Quit]
<NickH>
Think it would be a very simple generator to implement that.
<NickH>
I've been meaning to have a go a writing a generator.
<NickH>
Unless I misunderstand the desired behaviour.
<nor[m]>
On Cardboard you scroll windows sideways out of the output, similar to the Gnome shell extension paperwm. https://github.com/paperwm/PaperWM#scrollable-window-tiling seems very different from river, where the output edge is also the border for moving windows.
<NickH>
I think implementation would be very similar to the standard rivertile.
<NickH>
The big differnce is that only windows in the main area are rendered.
<NickH>
then you just shift the location of each window in the stack to scroll.
<NickH>
I'm going to have a try at writing it.
<NickH>
Or are layout generators not able to change the position of the view within the list of views?
<nor[m]>
No idea, I'm new to both river and coding :D But what you described sounds interesting.
<NickH>
Ohh, ok.
<novakane>
it sounds like a monocle layout, view taking the full usable area, you can't have view on the left or right outside the ouput and slide them
<NickH>
The non-visible views aren't really on the left and/or right, but the way that they come into view sort of implies that they were.
lxsameer has joined #river
<novakane>
yeah but that implies animation wich it's not something you could do with the layout protocol
silv3r has quit [Quit: WeeChat 3.5]
<NickH>
No animation that's for sure.
<NickH>
The implication that they are moving comes from the fact that the other views on the display shifted position.
<NickH>
For example you have [A][B][C] shown on your display, then you hit the scroll left binding and you suddenly have [B][C][D] showing.
snakedye has joined #river
<novakane>
ah yeah then it should be possible,tough I think you still need to set a position for all views so like your A view will still be there behind
<NickH>
Hmm... so views an just not be rendered?
<NickH>
s/an/can't
<NickH>
I'm not familiar with monocle view. Is there one implemented for river?
<NickH>
s/view/layout
<ifreund>
Shinyzenith[m]: that suggests you added a listener for the new output event but didn't initialize it
<NickH>
LOL it seems novakane has implemented one!
<ifreund>
I don't think river supports the "scrollable tiling" use case well yet. The layout protocol can probably approximate the same logical window management but it won't integrate with trackpad gestures or the mouse scroll wheel.
<novakane>
NickH: yeah the view take the full output, the others are behind
<ifreund>
Currently the path of least resistence would be to use/contribute to cardboardwm
<ahmadraniri1994[>
thanks for the respond, the closest I get is newm, but latest newm is unusable on my machine.
<ahmadraniri1994[>
<novakane> "it sounds like a monocle layout,..." <- no, it's not always full monocle.
jor` has joined #river
jor` has quit [Remote host closed the connection]
<nor[m]>
It has not bothered me to much so far, but thought I might ask. When I open ungoogled-chromium, it is invisible. I can focus it (indicated by all other views being unfocused), but I can't see it before I resize it. (This does not happen with rivertile, which I don't use). It is not terrible, I know what to do after launching it to make it accessible, but a little bit annoying. Any tips on how to change this?
snakedye has quit [Ping timeout: 255 seconds]
<ifreund>
nor[m]: hmm, are you not using any layout generator?
<ifreund>
and is it running through xwayland or not?
<nor[m]>
No, i can't friends with dynamic tiling. However tags are more important to me than (manual) tiling, which let me choose river over Sway. How do I check for Xwayland?
<nor[m]>
*become friends
<leon-p>
there are a few conditions that can lead to windows spawning outside the constraints of the output. Try moving it via keybinds, it should be snapped back into the visible area if this is the case
<leon-p>
RE scrollable tiling: I would really love to try that out some time, but I don't think river will support that. AFAICS it won't work well with the scene graph API when you have multiple outputs side by side, because the scene graph would just put windows that are scrolled out of one output right on the one beside it (if I understand how it functions correctly).
<nor[m]>
It does not seem to be outside of the output just invisible (size 0?). Moving does not make it visible, but resizing does, both with keyboard and mouse.
<leon-p>
ah, that sounds like a client bug
<nor[m]>
Also after resizing, it does not show up in the middle (like anything else), but in the top left, with just the window border (I set it to 2 pixels) outside of the output.
<leon-p>
we should probably add position and dimensions to the debug logs, at some point.
<nor[m]>
Seems to be on XWayland, btw. but not all xwayland apps do this.
<Shinyzenith[m]>
<ifreund> "Shinyzenith: that suggests you..." <- I was using the following notation taken from tinywl source code:
<Shinyzenith[m]>
Looked at river source, removed everything after the = and ran setNotify on it which fixed it
<Shinyzenith[m]>
so I did initialize it
groknull has joined #river
groknull has quit [Remote host closed the connection]
snakedye has joined #river
<ifreund>
Shinyzenith[m]: in zig default values of struct fields are only ever set when using `foo = .{}` syntax to initialize the struct
<ifreund>
I have no idea how cardboard or paperwm handle multiple outputs, but I'd be surprised if the scene graph wasn't flexible enough to make things work there.
<ifreund>
if it isn't flexible enough for that then a wlroots patch improving things would be in order IMO
<leon-p>
you'd need a per-output scene graph instead of a global one. Then it would work
<leon-p>
no idea how cardboard does multiple outputs either, but papwerwm simply does not at all, at least when I tried it ~2 years ago, likely doe to limitations in gnome shell
<Shinyzenith[m]>
<ifreund> "Shinyzenith: in zig default..." <- Oh yes I forgot that, thank you issac.
snakedye has quit [Ping timeout: 255 seconds]
snakedye has joined #river
waleee has joined #river
snakedye has quit [Read error: Connection reset by peer]
snakedye has joined #river
uncomfyhalomacr4 has joined #river
<uncomfyhalomacr4>
Shinyzenith:
lxsameer has quit [Ping timeout: 255 seconds]
snakedye has quit [Ping timeout: 246 seconds]
<Shinyzenith[m]>
?
snakedye has joined #river
snakedye has quit [Ping timeout: 255 seconds]
snakedye has joined #river
notzmv has quit [Ping timeout: 255 seconds]
snakedye has quit [Ping timeout: 255 seconds]
snakedye has joined #river
ghostbuster has joined #river
<ghostbuster>
can someone give me an example of how they use tagging in their workflow? i feel like i've been using river for a few months but i still use it as if it's sway/i3 and don't take advantage of the dynamic feature
<leon-p>
ghostbuster: there is one in the github wiki
<leon-p>
I myself also don't use the special feature set of tags very often either though
lxsameer has joined #river
<tiosgz`>
ifreund: (re scene & outputs) ha, finally a better use case for {,not} rendering {only,} a particular subtree of the scene than my overlapping outputs example :D
notzmv has joined #river
snakedye has quit [Ping timeout: 244 seconds]
snakedye has joined #river
snakedye has quit [Ping timeout: 240 seconds]
snakedye has joined #river
lxsameer has quit [Ping timeout: 246 seconds]
snakedye has quit [Ping timeout: 260 seconds]
snakedye has joined #river
lordmzte has joined #river
<lordmzte>
hey! does river work on nvidia? because it doesnt seem to for me :P neither from a tty nor in X
Guest7754 has joined #river
<lordmzte>
on tty its telling me it found 0 GPUs, and on X im getting `Failed to query DRI3 DRM FD`. im using the proprietary nvidia drivers.
Guest7754 has quit [Client Quit]
<leon-p>
lordmzte: proprietary drivers are not supported. There have been reports of river working when they are used, but the drivers are *slightly* wonky
<leon-p>
in general the recommendation is to either a) use nouveau, or b) use built-in graphics
<lordmzte>
alright, thats unfortunate. doesnt seem like theres a good way to switch between nouveau and nvidia without uninstalling one of them either :/