| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2024-12-30 | layout: Move toggle_fullscreen() impl to Workspace | Ivan Molodetskikh | |
| 2024-12-30 | floating: Implement directional move | Ivan Molodetskikh | |
| 2024-12-30 | layout/floating: Extract move_and_animate() | Ivan Molodetskikh | |
| 2024-12-30 | floating: Implement center_window() | Ivan Molodetskikh | |
| 2024-12-30 | floating: Implement directional focus | Ivan Molodetskikh | |
| 2024-12-30 | layout: Implement focus_right_or_first() generically | Ivan Molodetskikh | |
| 2024-12-30 | Extract center_preferring_top_left_in_area() | Ivan Molodetskikh | |
| 2024-12-30 | layout/floating: Move a function higher up | Ivan Molodetskikh | |
| Let's group action functions together. Activate is an action and set width/height too. | |||
| 2024-12-30 | Stub out actions when floating is active | Ivan Molodetskikh | |
| Make sure they don't go to the unfocused scrolling layout at least. | |||
| 2024-12-30 | floating: Implement smarter clamping for window location | Ivan Molodetskikh | |
| A small part of the window always remains on-screen regardless of the working area changes. Interactive move lets the user position the window anywhere; automatic actions like toggle-window-floating and dialog opening try to put the window fully on-screen. The size-fraction canonical floating window position remains unclamped, and clamping happens when recomputing the logical position. | |||
| 2024-12-30 | Implement floating child stacking above parents | Ivan Molodetskikh | |
| 2024-12-30 | layout: Extract TestWindowParams | Ivan Molodetskikh | |
| 2024-12-30 | Make interactive move keep in the same layout (floating/tiling) | Ivan Molodetskikh | |
| 2024-12-30 | Always honor min height in new window size | Ivan Molodetskikh | |
| 2024-12-30 | Honor min/max size in more places like initial configure | Ivan Molodetskikh | |
| 2024-12-30 | Initial WIP floating window implementation | Ivan Molodetskikh | |
| 2024-12-08 | layout: Return instead of breaking | Ivan Molodetskikh | |
| There's no code past this, and we want to break out of all loops. | |||
| 2024-12-08 | layout: Return bool from activate_window() | Ivan Molodetskikh | |
| Avoid an extra has_window() call. | |||
| 2024-12-07 | layout: Ignore more actions during interactive move | Ivan Molodetskikh | |
| The interactively moved window is the active window, so this makes sense. | |||
| 2024-12-07 | layout: Extract Tile::verify_invariants() | Ivan Molodetskikh | |
| 2024-12-07 | layout: Mark accessors as cfg(test) | Ivan Molodetskikh | |
| 2024-12-01 | layout: Extract ScrollingSpace | Ivan Molodetskikh | |
| Leave the Workspace to do the workspace parts, and extract the scrolling parts into a new file. This is a pre-requisite for things like the floating layer (which will live in a workspace alongside the scrolling layer). As part of this huge refactor, I found and fixed at least these issues: - Wrong horizontal popup unconstraining for a smaller window in an always-centered column. - Wrong workspace switch in focus_up_or_right(). | |||
| 2024-12-01 | layout: Add a test for windows on other workspace remaining activated | Ivan Molodetskikh | |
| 2024-12-01 | layout: Fix windows on other workspaces losing activated state | Ivan Molodetskikh | |
| This erroneous check was introduced in interactive move. | |||
| 2024-12-01 | layout: Fix possible crash when dropping move on different, animating output | Ivan Molodetskikh | |
| 2024-12-01 | layout: Correct variable names | Ivan Molodetskikh | |
| 2024-12-01 | layout: Use tiles_mut() in Workspace::clear_unmap_snapshot() | Ivan Molodetskikh | |
| 2024-12-01 | layout: Extract Workspace::tiles() | Ivan Molodetskikh | |
| 2024-11-29 | Activate newly mapped windows with a valid activation token | Christian Meissl | |
| most of the time the activation token is passed while the window is still unmapped. in this case store the intend to activate the window for later retrieval on map. | |||
| 2024-11-29 | Fix new warnings | Ivan Molodetskikh | |
| 2024-11-29 | Implement empty-workspace-above-first (#745) | FluxTape | |
| * Implement empty-workspace-above-first option * add two failing tests * fix interactive_move_onto_empty_output_ewaf and interactive_move_onto_first_empty_workspace tests * Add two failing ewaf option toggle tests * Fix adding/removing first empty workspace on option toggle * Don't remove first empty workspace if focused * Stop workspace switch when enabling ewaf * layout/monitor: Offset workspace switch on adding workspace above * Fix some initial active workspace ids with ewaf * wiki: Document empty-workspace-above-first --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> | |||
| 2024-11-27 | layout: Stop workspace switch when moving workspaces to primary | Ivan Molodetskikh | |
| Okay, this might be one of the oldest layout issues to have remained uncaught. Well, maybe as I add more randomized tests, I'll catch even more of those. | |||
| 2024-11-26 | layout/tests: Add post option update to randomized test | Ivan Molodetskikh | |
| Will help to catch cases where updating options doesn't update the state correctly. | |||
| 2024-11-26 | layout: Fix adjusting for scale for moved tile when reloading config | Ivan Molodetskikh | |
| 2024-11-26 | layout/tests: Return Layout from check_ops() | Ivan Molodetskikh | |
| Cuts down on boilerplate in a few places. | |||
| 2024-11-26 | layout: Extract update_options() | Ivan Molodetskikh | |
| 2024-11-26 | layout/tests: Allow AddWindowRightOf interactive moved window | Ivan Molodetskikh | |
| Guess I forgot this. | |||
| 2024-11-26 | layout/tests: Standardize on usize for output id in tests | Ivan Molodetskikh | |
| 2024-11-25 | Refactor animation timing to use lazy clocks | Ivan Molodetskikh | |
| 2024-11-25 | Refactor animations to take explicit current time | Ivan Molodetskikh | |
| 2024-11-23 | layout/monitor: Extract add_workspace_bottom() | Ivan Molodetskikh | |
| 2024-11-23 | Add interactive_move_onto_empty_output test | Ivan Molodetskikh | |
| Tests the add_workspace_bottom() in Monitor::add_tile(). | |||
| 2024-11-11 | Change expel-window-from-column to expel the bottom window | Ivan Molodetskikh | |
| This way, expel becomes symmetric with consume. This is also how it works in PaperWM. Though, in PaperWM if the expelled window was focused, it will remain focused, while in this commit it is never focused, making it the exact opposite of consume. Use consume-or-expel-window-right for the old expel behavior. | |||
| 2024-11-05 | layout: Preserve active workspace for removed outputs | Ivan Molodetskikh | |
| 2024-11-05 | layout: Move some types further down | Ivan Molodetskikh | |
| 2024-11-02 | Follow window corner radius in insert hint | Ivan Molodetskikh | |
| 2024-11-02 | Add gradient support for the insert hint | Ivan Molodetskikh | |
| Implement it via FocusRing which already handles SolidColor vs. Border render element. | |||
| 2024-11-02 | Remove obsolete TODO | Ivan Molodetskikh | |
| 2024-10-27 | Implement touch interactive resize | Ivan Molodetskikh | |
| 2024-10-27 | Implement interactive window move | Rasmus Eneman | |
