| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-11-24 | layout: Round focus ring/border width to physical at the right place | Ivan Molodetskikh | |
| Before this, focus ring/border width was incorrectly rounded only for layout config, which does not take into account window rules overrides. This means that setting width in window rules prevented correct rounding altogether. Tests didn't check this because window rules weren't tested. This commit also adds basic window rules random generation, making the tests catch this problem too. | |||
| 2025-10-15 | Implement maximize-to-edges (true Wayland maximize) | Ivan Molodetskikh | |
| 2025-10-15 | layout/tile: Fade out border for fullscreen | Ivan Molodetskikh | |
| 2025-10-15 | layout/tile: Fade out shadow for fullscreen | Ivan Molodetskikh | |
| 2025-10-15 | layout/tile: Fade out focus ring for fullscreen | Ivan Molodetskikh | |
| 2025-10-02 | layout: Store Layout directly in Options | Ivan Molodetskikh | |
| 2025-10-02 | config: Replace resolve_against with MergeWith | Ivan Molodetskikh | |
| 2025-09-17 | layout/tile: Animate un/fullscreen resize | Ivan Molodetskikh | |
| This turned out to require quite a few changes. We keep track of the tile resize animation progress separately now, in order to provide a resizing black fullscreen backdrop for non-resizable windows. The window is always rendered in the middle of the tile, which once again aids with the resizing black fullscreen backdrop. The backdrop itself will fade in from transparency so that it's less jarring. The resize animation now keeps track of the fullscreen progress to deal with the case where an unfullscreen resize is interrupted by another non-fullscreen resize. In this case, the fullscreen progress continues animating to avoid sudden disappearance of the fullscreen backdrop. Some things like border visibility switch to this fullscreen progress once again to avoid jarring appearance/disappearance. The border radius animates in accordance with the fullscreen progress to match the visuals. | |||
| 2025-09-17 | layout/tile: Remove unused function | Ivan Molodetskikh | |
| As far as I can tell, it was unused even when it was first added. | |||
| 2025-09-17 | layout/tile: Extract two variables | Ivan Molodetskikh | |
| 2025-08-27 | Fix typos | Ivan Molodetskikh | |
| 2025-08-16 | niri-ipc: Add window positions and sizes (#1265) | yrkv | |
| * Add window sizes and positions to the IPC * basic fixes * report window_loc instead of window pos * clean ups * make scrolling indices 1-based * add printing to niri msg windows * don't include render offset in floating tile pos --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> | |||
| 2025-08-14 | layout: Offset Y animations for non-animated resizes | Ivan Molodetskikh | |
| 2025-05-12 | Implement baba-is-float for layers | Ivan Molodetskikh | |
| 2025-05-10 | add urgent border color and gradient | Duncan Overbruck | |
| 2025-04-17 | layout: Don't pass scale to render unnecessarily | Ivan Molodetskikh | |
| These parts of the layout already know their scale. | |||
| 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 | Refactor request_fullscreen() to be an argument on request_size() | 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-02-15 | Hook up are_transitions_ongoing() for floating and tiles | Ivan Molodetskikh | |
| Don't spoil it | |||
| 2025-02-10 | Implement clicking on tab to switch | Ivan Molodetskikh | |
| 2025-02-10 | layout: Fix/add animations around tabbed columns | Ivan Molodetskikh | |
| 2025-02-10 | Implement tab indicators | Ivan Molodetskikh | |
| 2025-02-10 | layout: Extract tile.hit(), HitType::hit_tile() | Ivan Molodetskikh | |
| 2025-02-10 | layout/tile: Rename variable | Ivan Molodetskikh | |
| 2025-02-10 | Add alpha parameter to shaders | Ivan Molodetskikh | |
| Lets us add extra opacity. | |||
| 2025-01-23 | Add toggle-window-rule-opacity action | Ivan Molodetskikh | |
| 2025-01-21 | tile: Rename update() to update_render_elements() | Ivan Molodetskikh | |
| 2025-01-18 | Remove Vec from Shadow::render() | Ivan Molodetskikh | |
| 2025-01-17 | Implement window shadows | Ivan Molodetskikh | |
| 2025-01-15 | Remove obsolete comment | Ivan Molodetskikh | |
| 2025-01-04 | Migrate to new Rectangle functions | Ivan Molodetskikh | |
| 2024-12-30 | Add default-floating-position relative-to property | Ivan Molodetskikh | |
| 2024-12-30 | Add default-floating-position window rule | Ivan Molodetskikh | |
| 2024-12-30 | layout: Pass and store view_size on a Tile | Ivan Molodetskikh | |
| 2024-12-30 | floating: Implement toggle-width/height actions | Ivan Molodetskikh | |
| 2024-12-30 | floating: Change from getters to pub(super) | Ivan Molodetskikh | |
| These fields are just data storage. They won't have any logic in getters/setters. | |||
| 2024-12-30 | Preserve tile when moving across monitors | Ivan Molodetskikh | |
| 2024-12-30 | Remember floating window position | Ivan Molodetskikh | |
| 2024-12-30 | floating: Remember and restore window size | Ivan Molodetskikh | |
| 2024-12-30 | layout: Remember whether to unfullscreen back into floating | Ivan Molodetskikh | |
| 2024-12-07 | layout: Extract Tile::verify_invariants() | 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-02 | Follow window corner radius in insert hint | Ivan Molodetskikh | |
| 2024-10-27 | Implement interactive window move | Rasmus Eneman | |
