summaryrefslogtreecommitdiff
path: root/src/layout
Commit message (Collapse)AuthorAgeFilesLines
* input: Only limit drag resizes (#5164)phonetic1122024-03-191-1/+1
| | | | | | | * only limit drag resizes * change to not equals * remove extra parentheses
* animations: Fix incorrect animation when manually moving a window when its ↵thejch2024-03-193-0/+12
| | | | | | | being created (#5141) * fix incorrect rendering when manually moving a window when its being created * add setAnimationsToMove
* master: fix moving fullscreen workspace and remove duplicate code (#5131)thejch2024-03-173-78/+39
|
* master: fix invalid config usageVaxry2024-03-151-2/+2
|
* input: only override dragging corner on floating (#5092)djvs2024-03-131-1/+1
| | | Co-authored-by: djvs <djvs@users.noreply.github.com>
* input: add general:resize_corner for manual resizing (#5090)djvs2024-03-131-1/+21
| | | | | | | | | * Resize corner config thing * clang-format --------- Co-authored-by: djvs <djvs@users.noreply.github.com>
* master: Fix master layout window focus and scroll (#5074)thejch2024-03-132-62/+29
| | | | | | | | | | | * fix master switch window scrolling * fix some more dispatchers and remove some duplicate code * refactor and remove duplicate code * fix focusmonitor: https://github.com/hyprwm/Hyprland/issues/5006#issuecomment-1986977255 * change check
* layout: unfullscreen on toggle into tiled fullscreenVaxry2024-03-101-0/+5
| | | | fixes a bug where the tiled window would be on top
* dwindle: preserve fs state on switchWindowsVaxry2024-03-101-4/+15
| | | | fixes #2842
* windowrules: Make min/maxsize rules dynamic (#4775)Epilepsy Gatherings2024-03-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rebase * simplify and remove prop * Stuff - add back win prop - change minsize defaults - change request formatting for setprop * style fix * remove empty line * change defaults * redo string to vec * remove redundant parsing * change to vec * support commas * remove static rules * take out garbage * format * don't allow commas and resize on setprop * use isNumber
* layout: Fix toggling fullscreen special workspace on different monitor (#5000)thejch2024-03-072-0/+43
| | | | | | | * fix toggling fullscreen special ws on different monitor * add for dwindle * fix change regular workspace when special fullscreen
* master: change active monitor when moving windows around (#5001)thejch2024-03-071-0/+2
|
* input: fix window move stutter by introducing additional checks for low-hz ↵bvr-yr2024-03-062-5/+26
| | | | | | | | | | | monitors (#4553) * resize-limiter: add additional check for low-hz monitors * simplify checker * add comment * rename variable
* layout: warp the cursor when focusing windows (#4982)Junxuan Liao2024-03-051-0/+1
| | | | | Similar to the `focuswindow` dispatcher, when focusing a window with wlr-foreign-toplevel-management, the cursor should be warped. Otherwise, the focus is lost immediately after the cursor moves.
* keybinds: Allow fullscreen/maximize in special workspace (#4921)thejch2024-03-042-5/+6
| | | | | | | | | | | | | | | * allow fullscreen/maximize in special workspace * remove duplicate code * hide top layer * fix special fullscreen deco * edit * fix fade top layer when toggle special * remove double render
* config: improve config value infrastructureVaxry2024-03-033-155/+156
|
* master: Fix animate resize (#4942)thejch2024-03-031-2/+2
| | | | | * fix master animate resize * fix some other pointers
* xdg: minor improvements to initial size reportingVaxry2024-03-021-5/+2
| | | | fixes #4918
* drag: check min size for reisze dragsVaxry2024-03-021-1/+1
| | | | fixes #4920
* animations: Refactor AnimatedVariable (#4911)GartoxFR2024-03-023-38/+39
| | | | | | | | | | | | | | | | | | | | | | | * animation: Refactor AnimatedVariable This commit decomposes the AnimatedVariable class into a base class with the common attribute to all variable types and a templated derived type containing strongly typed info on the type being animated. Access to the typed version is perfomed using the visitor pattern. A utility is provided to build a visitor on the fly using lambdas. Adding a new type to be animated should just be a matter of adding the typed in the list defined by the ANIMABLE_TYPES macro The size of the commit is justified by the API change in the AnimatedVariable class. No more vec(), fl() or col() method but a unified value() method. * animation: Remove visitor pattern * animation: Fix coding style * animation: Fix coding style
* layout: add size prediction for initial xdg commitsvaxerski2024-02-286-8/+97
| | | | fixes #4022
* feat: Add css style gaps (#4723)Dashie2024-02-212-12/+17
|
* Migrate the config to hyprlang (#4656)Vaxry2024-02-183-103/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Migrate to hyprlang * pop up errors * fix swapped args * Meson & Nix: build with hyprlang * CI: add hyprlang to setup action * add infra for plugin stuff * fix hyprctl getoption * fix hyprctl getoption with json * format * fix post parse logic * fix autogen config * oops missed exec-once * fmt * fix ws rules * require 0.3.0 for hyprlang * nix: flaek * minor type fixes * fix cfg usages in swipe * use cvarlist for ws rules * fix throw in addPluginConfigVar * Nix: update hyprlang * minor fixes * fix disableLogs * mention hyprlang docs * bump hyprlang dep in cmake * Meson: bump min hyprlang version Nix: update hyprlang * minor fix * Nix: update meson patch --------- Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
* dwindle: add swapsplit dispatcher (#4702)Niklas Haas2024-02-142-0/+17
| | | | | | This is distinct from `swapwindow` in that it allows swapping the entire tree node with its neighbour. Fixes: https://github.com/hyprwm/Hyprland/issues/4701
* dwindle: round wbox before settingvaxerski2024-02-141-5/+10
|
* internal: add `forcenofocus` prop (#4672)Epilepsy Gatherings2024-02-131-2/+2
| | | | | * add forcenofocus * change nofocus to overridable var
* input: focus window on mouse down on decoration (#4514)MightyPlaza2024-02-042-6/+7
| | | Also unifies vectorToWindow funcs
* dwindle: avoid sending negative sizes to wlrVaxry2024-02-021-4/+4
| | | | fixes #4591
* dwindle: fix windows being created at incorrect position when cursor is over ↵rszyma2024-01-262-31/+53
| | | | | | | | | | | reserved area (#4520) * fix: smart_split not working correctly when creating a window with cursor over reserved area * use getClosestNodeOnWorkspace instead of getFirstNodeOnWorkspace when hovering over reserved area * optimize `getClosestNodeOnWorkspace` * remove unused methods
* layout: save float props before setting fs state (#4537)bvr-yr2024-01-262-16/+16
| | | fixes #4388
* input: remove animate checks on resize limiter (#4480)Epilepsy Gatherings2024-01-191-2/+1
|
* layout: Round window pos and size on togglefloating (#4407)Clyybber2024-01-101-6/+8
| | | Also restore the behaviour introduced in bc4a51dbbb285391c9ed45b1b6ca7c2037b7ba71
* master: Add more null checks for rollnext (#4343)thejch2024-01-041-2/+8
| | | | | * add more null check for rollnext * remove pwindow check
* master: guard PNODE in roll*vaxerski2024-01-021-0/+6
| | | | fixes #4331
* layout: update rules before applying fullscreen nodes in layoutsvaxerski2024-01-022-1/+7
|
* groupbar: Middle click on groupbar to close tab (#4297)dranull2023-12-301-3/+3
| | | | | | | | | * Prevent window swapping when the head is removed * Bring floating windows to top when selected * Allow clicks on gropubar in fullscreen 1 * Close window on groupbar with middle click
* internal: Unify input handling on decorations (#4280)dranull2023-12-283-30/+6
| | | | | | | * Unify input handling on decorations * Make input methods private * Optional data
* dwindle: Use window->middle() when cursor is on reserved area (#4253)dranull2023-12-261-7/+8
|
* master: add dispatchers rollnext and rollprev (#4209)thejch2023-12-221-0/+44
|
* internal: nuke CWindow::m_bMappedX11Vaxry2023-12-172-2/+2
| | | | it's useless. m_bIsMapped is the same.
* layout: Focus a floating window after closing the last tiled (#4137)dranull2023-12-121-4/+10
|
* config: improve layoutopt handling for workspacerulesVaxry2023-12-111-7/+6
|
* internal: Remake borders as window decorations (#4104)Vaxry2023-12-102-20/+12
|
* style/ci: apply clang-format and verify it in ci (#4039)François Conzelmann2023-12-061-4/+2
| | | | | * style: apply clang-format * ci: add new clang-format job to CI
* workspacerules: Add workspace rule for master layout orientation (#3964)thejch2023-12-021-4/+12
| | | | | | | | | | | * add workspace rule for master layout orientation * change rule format * edit rule name * use map for layoutopts * use std::any instead of string
* group: fix dragging into floating groups (#3719)MightyPlaza2023-11-191-1/+28
| | | | | | | | | | | * allow dragging into floating groups modified: src/Compositor.cpp modified: src/Compositor.hpp modified: src/layout/IHyprLayout.cpp modified: src/render/decorations/CHyprGroupBarDecoration.cpp * floating-only modified: src/layout/IHyprLayout.cpp
* layout: Don't update pseudoSize after window moved by mouse. (#3873)Dickby2023-11-181-1/+2
|
* decorations: Decoration Positioner (#3800)Vaxry2023-11-112-8/+8
|
* xdg-shell: update reported size on ack_configureVaxry2023-11-091-1/+3
|
* layout: round box in mouseMoveVaxry2023-11-071-5/+7
| | | | fixes #3792