Before, we were using the same behavior as when we made any window floating, which meant we'd set the window to 75% of the output's dimensions. The issue is that, at least in my case, I usually want a floating rule for windows that are small and have specific pre-set sizes, so that didn't make sense. Now, if a window was made floating by a rule, it should just start with its default dimensions but it can still be resized later.
2.9 KiB
2.9 KiB
TODOs
These are in rough order of my priority, though no promises I do them in this order.
- Add a config for how to focus when a window opens with a rule on another tag; should we switch tags, add tags, or just ignore it?
- Support per-output single window ratio (in config; this already works at runtime)
- Support per-output wallpapers
- Fix mouse resizing
- Add gap support
- Support window tag/order caching between WM restarts (within a river session)
- Add build-time options for including the wallpaper (and maybe bar)
- Check pointer position and only warp if not on focused window already
- Change focus direction when closing window
- Use set_xcursor_theme request
- Support overriding config location
- Add support for center-primary layout
- Support per-output bar visibility
- Support more window rule options (e.g. ssd/csd)
- Support solid
background-colorfallback (no wallpaper) - Support keybind modes
- Support
focus-follows-cursorgranularity (normalvsalways) - Save window positions between restarts
- Support multiple seats
- Support clipping floating windows on edge of/between outputs
- Support configurable focus-follows-window on send-to-output
- Support configurable prepend/append on send-to-output
- Support taking new output's tags on send-to-output
- Add
spawn_tagmask,focus_previous_tags,send_to_previous_tagscommands - Support switch handling (e.g. lid close)
- Support changeable primary ratio
- Support changeable primary count
- Support multiple outputs
- Support floating windows
- Support wallpapers
- Make "orelse return" bits into errors; handle gracefully
- Implement runtime log levels
- Add input configuration, i.e. pointer acceleration and that type of thing
- Support
Nonemodifier for keybinds (needed for media/brightness keys) - Support per-host config using properties
- Implement primary count/ratio per tagmask
- Add primary_count and primary_ratio to Config
- Implement an optional clock bar
- Implement a river-tag-overlay clone
- Add options to the tag overlay
- Add options to the bar
- Make a Rect struct to combine x, y, width, and height
- Support window rules (float/tags by app-id/title)
- Fix resizing size when you pop a window out, basically, it start with its current size but then when you try resize it goes to 75%
- Move orphan handling out of .output and .seat events; into manage()
- Add config for single-window width ratio (mostly because my ultrawide makes a single window massive)
- Support configuring primary vs secondary stack side
- Add focused window title to bar
- Add bar padding to config
- Support 12-hour clock format (maybe take any time format string?)
- Support configuring bar item positions (left/center/right)
- Skip proposing dimensions for floating windows altogether?