| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-04-25 | layout/monitor: Extract workspace_render_idx() | Ivan Molodetskikh | |
| 2025-04-25 | layout/monitor: Extract workspaces_render_geo() | Ivan Molodetskikh | |
| 2025-04-25 | layout/monitor: Extract WorkspaceSwitchGesture::min_max() | Ivan Molodetskikh | |
| 2025-04-25 | layout/monitor: Keep track of workspace switch gesture start idx | Ivan Molodetskikh | |
| Fixes jump when "catching" an animation with a gesture. | |||
| 2025-04-25 | Remove cancellation from swipe gestures | Ivan Molodetskikh | |
| It only worked for workspace switch, and even there it was more confusing than helpful. | |||
| 2025-04-25 | Add missing bounds checks to move-workspace actions | Ivan Molodetskikh | |
| Fixes panics. | |||
| 2025-04-17 | layout: Extract Monitor::update_shaders() | Ivan Molodetskikh | |
| 2025-04-17 | layout: Remove width and is_full_width from InsertHint | Ivan Molodetskikh | |
| They were unused. | |||
| 2025-04-17 | layout: Don't pass scale to render unnecessarily | Ivan Molodetskikh | |
| These parts of the layout already know their scale. | |||
| 2025-04-17 | Rename render_floating_for_output to render_interactive_move_for_output | Ivan Molodetskikh | |
| 2025-04-10 | layout: Take into account idle time between last gesture event and end | Ivan Molodetskikh | |
| Fixes cases like: do a quick movement with mouse, then hold it in-place for a while (no events generated), then release the gesture (it uses all that built-up speed). This also happens with DnD scroll and makes it go further than intended. | |||
| 2025-04-05 | layout: Avoid calling interactive_move_end() in the middle of ↵ | Ivan Molodetskikh | |
| interactive_move_update() | |||
| 2025-04-03 | layout/scrolling: Use slice::fill() | Ivan Molodetskikh | |
| Fix new Clippy warning. | |||
| 2025-03-31 | layout: Reset unfullscreen view offset when starting interactive resize | Ivan Molodetskikh | |
| 2025-03-31 | Allow negative shadow spread | LunarEclipse | |
| 2025-03-29 | layout: Remove duplicated function | Ivan Molodetskikh | |
| 2025-03-29 | Make move-window-to-workspace focus=false work across monitors too | Ivan Molodetskikh | |
| 2025-03-29 | screenshot: make selection area modifiable via move/resize keybinds (#1279) | nyx | |
| * screenshot: make selection area modifiable via keybinds * input: run fmt * Reimplement screenshot UI binds in a better way --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> | |||
| 2025-03-29 | Add focus argument to move-window-to-workspace (#1332) | nyx | |
| * layout: add focus flag to move-window-to-workspace * lib: update comment * misc: minor dup refactor * input: format code * layout: minor nit * layout: update comment * input: remove unnecessary conditionals * misc: replace boolean * tests: fix the failing one * layout: change to smart * ipc: Option<bool> -> bool * lib: format code * Rewrite focus doc comment --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> | |||
| 2025-03-22 | layout: Reset unfullscreen view offset when removing window | Ivan Molodetskikh | |
| Another old bug found by randomized tests after I expanded the testing mock window. | |||
| 2025-03-17 | Implement toggle-windowed-fullscreen | Ivan Molodetskikh | |
| Windowed, or fake, or detached, fullscreen, is when a window thinks that it's fullscreen, but the compositor treats it as a normal window. | |||
| 2025-03-17 | layout: Rename argument from window to id | Ivan Molodetskikh | |
| 2025-03-17 | layout: Don't forget to call on_commit() for the interactively moved window | Ivan Molodetskikh | |
| 2025-03-17 | layout/tests: Implement going into fullscreen state | Ivan Molodetskikh | |
| 2025-03-17 | layout/tile: Don't take fullscreen into account in min/max size | Ivan Molodetskikh | |
| They are used strictly for non-fullscreen size computation. | |||
| 2025-03-17 | layout: Verify moved tile invariants | Ivan Molodetskikh | |
| 2025-03-17 | layout: Test that interactively moved window is not pending fullscreen | Ivan Molodetskikh | |
| 2025-03-17 | Refactor request_fullscreen() to be an argument on request_size() | Ivan Molodetskikh | |
| 2025-03-17 | layout: Switch two places to workspaces_mut() | Ivan Molodetskikh | |
| 2025-03-14 | Add move-column-to-index action | Duncan Overbruck | |
| 2025-03-14 | Add focus-column (by index) action | Duncan Overbruck | |
| 2025-03-14 | layout: Preserve previous view offset on consume-left | Ivan Molodetskikh | |
| 2025-03-10 | Keep track of RenderElementStates in offscreens | Ivan Molodetskikh | |
| This both avoids sending frame callbacks to surfaces invisible on the offscreen (fixing Firefox with subsurface compositing in the process), and fixes searching for split popups during the resize animation. | |||
| 2025-03-10 | Make interactively moved window semitransparent | Ivan Molodetskikh | |
| 2025-03-10 | Offscreen semitransparent tiles | Ivan Molodetskikh | |
| Now that offscreen does damage tracking, we can reasonably do this. Note this only affects full-tile opacity, not window opacity. | |||
| 2025-03-10 | layout/tile: Use animated tile size for open anim geo | Ivan Molodetskikh | |
| This is the right value to use as the texture will also match the animated size. | |||
| 2025-03-10 | tile: Use OffscreenBuffer for resize anims | Ivan Molodetskikh | |
| OffscreenBuffer knows how to avoid recreating the texture every frame. | |||
| 2025-03-10 | offscreen: Track and return damage | Ivan Molodetskikh | |
| This is the second part of the damage equation: now the offscreen element itself reports correct damage, so partial redraws to the texture don't cause full redraws of the texture element itself. | |||
| 2025-03-10 | Cache texture in OpenAnimation | Ivan Molodetskikh | |
| Don't recreate it unless the size changes. This lays the groundwork for also tracking damage in the future. | |||
| 2025-03-01 | Added top, left, bottom and right floating windows alignement (#1169) | Martino Ferrari | |
| * feat: added top, left, bottom, right alignement options * feat: implemented extra alignement * feat: added example * doc: updated documentation with extra alignements * doc: moved example in wiki and typo correction * fix: relative position should be positive and not negative * fixes --------- Co-authored-by: Martino Ferrari <martinogiordano.ferrari@iter.org> Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> | |||
| 2025-02-27 | layout/monitor: Remove unused function | Ivan Molodetskikh | |
| 2025-02-27 | layout/monitor: Remove redundant passthrough functions | Ivan Molodetskikh | |
| 2025-02-18 | Don't snap after DnD scroll if view position didn't change | Ivan Molodetskikh | |
| Otherwise, any DnD breaks temporarily centered columns. | |||
| 2025-02-17 | Take tab indicators into account in expand-column-to-available-width | Ivan Molodetskikh | |
| 2025-02-17 | Use toggle_full_width() for expand-column-to-available-width edge case | Ivan Molodetskikh | |
| 2025-02-17 | Fix expand-column-to-available-width for always-center | Ivan Molodetskikh | |
| 2025-02-17 | Implement expand-column-to-available-width | Ivan Molodetskikh | |
| 2025-02-16 | Make DnD edge view scroll configurable | Ivan Molodetskikh | |
| 2025-02-16 | Add a small delay to DnD view scrolling | Ivan Molodetskikh | |
| 2025-02-16 | layout: Remove unused method | Ivan Molodetskikh | |
