9fd928e114
internal: nuke CWindow::m_bMappedX11
...
it's useless. m_bIsMapped is the same.
2023-12-17 20:00:18 +00:00
dranull
4de986072c
layout: Focus a floating window after closing the last tiled ( #4137 )
2023-12-12 16:44:31 +00:00
ea7569d7e0
config: improve layoutopt handling for workspacerules
2023-12-11 22:58:51 +00:00
Vaxry
9f5b9053c6
internal: Remake borders as window decorations ( #4104 )
2023-12-10 16:28:12 +00:00
François Conzelmann
4a42344e97
style/ci: apply clang-format and verify it in ci ( #4039 )
...
* style: apply clang-format
* ci: add new clang-format job to CI
2023-12-06 22:54:56 +00:00
thejch
758cf90ea1
workspacerules: Add workspace rule for master layout orientation ( #3964 )
...
* add workspace rule for master layout orientation
* change rule format
* edit rule name
* use map for layoutopts
* use std::any instead of string
2023-12-02 14:42:49 +00:00
MightyPlaza
add23a9ba2
group: fix dragging into floating groups ( #3719 )
...
* 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
2023-11-19 12:29:01 +00:00
Dickby
6ad5f26cfe
layout: Don't update pseudoSize after window moved by mouse. ( #3873 )
2023-11-18 19:59:12 +00:00
Vaxry
9be6fbf5ea
decorations: Decoration Positioner ( #3800 )
2023-11-11 14:37:17 +00:00
8dd02eb5f3
xdg-shell: update reported size on ack_configure
2023-11-09 22:43:52 +00:00
a0fcda301d
layout: round box in mouseMove
...
fixes #3792
2023-11-07 20:47:09 +00:00
a1b7a5a53d
layout: fix various rounding errors
...
maybe finally will end #3761
2023-11-06 17:00:37 +00:00
ecf98069f6
layout: round window boxes after special scale factor
...
fixes #3761 again
2023-11-05 19:57:23 +00:00
9404972732
events: set reported size on floating map
...
fixes #3767
2023-11-05 14:12:55 +00:00
d3e5796ee1
layout: fix missed setWindowSize in no_gaps_when_only node apply
...
fixes #3758
2023-11-04 23:00:20 +00:00
931927de29
dwindle: move to CBox for expressing nodes
2023-11-04 21:45:34 +00:00
Vaxry
55b4f84fea
Internal: Hyprland box implementation ( #3755 )
...
* box impl
* remove unused operators
* missed applyfromwlr
2023-11-04 17:03:05 +00:00
Vaxry
73e78f05ad
Decos: Window decoration flags, shadow improvements ( #3739 )
2023-11-04 13:10:52 +00:00
thejch
ed3d5053b2
Master: fix drop_at_cursor when there are only two windows ( #3734 )
...
* make drop_at_cursor work when dragging into a one-window workspace
* fix drop_at_cursor when new_is_master is enabled
2023-11-03 17:02:59 +00:00
0f6e530798
layout: better storage for no fullscreen checks var
...
fixes #3731
2023-11-03 12:19:23 +00:00
thejch
f10996b575
master: fix moving window between monitors ( #3721 )
2023-11-02 17:20:32 +00:00
7b32b4214d
layout: avoid redundant size sets on new fullscreen
2023-11-01 01:28:43 +00:00
MightyPlaza
a1924ae435
internal: create canBeGroupedInto() ( #3693 )
...
modified: src/Window.cpp
modified: src/Window.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
2023-10-30 14:54:12 +00:00
MightyPlaza
9abfa9efc6
input: handle mouse on decorations ( #3560 )
2023-10-29 20:14:47 +00:00
thejch
bab2f6a664
master: fix movewindow across monitors ( #3628 )
2023-10-20 18:01:04 +01:00
thejch
20e7ccd480
master: fix resizing wrong window behind in special workspace ( #3591 )
2023-10-17 12:06:16 +01:00
MightyPlaza
d537815d43
groups: create group and groupbar config sections ( #3522 )
...
* config: create group section
modified: src/Compositor.cpp
modified: src/config/ConfigManager.cpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/input/InputManager.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* separate group border and groupbar colors
modified: src/Compositor.cpp
modified: src/config/ConfigManager.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* add new line
modified: config/ConfigManager.cpp
2023-10-10 17:42:45 +01:00
Michał Lewandowski
7f8e0a1318
dwindle: Avoid rounding errors in window position ( #3524 )
...
* Avoid rounding errors in window position
* Fix naming scheme
* Fix unwanted window movement
2023-10-09 12:28:58 +01:00
Jeremy Huang
61d3d4dee7
master: fix drop_at_cursor on workspace 2 ( #3512 )
2023-10-06 22:33:11 +01:00
Jeremy Huang
d61e4f9ad7
master: add option to drag and drop windows at cursor position ( #3465 )
...
* add option to drag and drop a window at cursor position
* use getWindowIdealBoundingBoxIgnoreReserved
2023-10-03 22:16:57 +01:00
vaxerski
1f4eab176e
layout: don't discard fullscreen on new tiling
2023-09-28 17:49:40 +01:00
vaxerski
3b657257ec
layout: check for specialworkspace in floating toggle
2023-09-24 23:20:15 +01:00
memchr
1357b66091
windowrules: add rule group
to map windows grouped ( #3279 )
...
* windows: add rule group to map windows grouped
* group rule: use `invade` to force open a window in a locked group
2023-09-22 00:42:00 +01:00
alaricljs
e4ddfcfa0c
keybinds: implement pushactivetobottom dispacher ( #3217 )
...
Co-authored-by: Leeman <lstrout@enlj.com>
2023-09-21 22:18:26 +01:00
memchr
3785defaf1
logging: implement std::formatter for some types ( #3380 )
2023-09-20 16:25:03 +01:00
memchr
6594b50e57
logging/format: use std::format_string to catch formatting string errors at compile time ( #3377 )
...
* fix(log): use constexpr format string
* deprecate getFormat
2023-09-20 08:26:20 +01:00
Jeremy Huang
cc630c90b5
master: partially revert 0e64dd2e
and fix the animation ( #3327 )
2023-09-15 22:13:23 +01:00
Jeremy Huang
d3cbec2d1a
master: Add mfact dispatcher ( #3298 )
...
* add mfact dispatcher
* limit mfact to between 0.05 and 0.95
* add try catch block for stof
* change log to err
2023-09-15 12:03:05 +01:00
vaxerski
2536630049
dwindle: fix moving windows on special
2023-09-14 15:37:45 +01:00
memchr
e6651334f2
refactor: flatten nesting if
s in layout window creation method ( #3294 )
2023-09-14 12:27:16 +01:00
Jeremy Huang
0e64dd2ea5
master: respect the resizing animation option in master layout ( #3300 )
2023-09-14 12:14:10 +01:00
memchr
0dc8289b02
dwindle: fix: don't merge groups when moving window ( #3302 )
2023-09-14 11:56:29 +01:00
Jeremy Huang
2ad429dfe0
master: Fix the wrong resize speed in master layout center orientation ( #3289 )
...
* rebase
* change isStackVertical variable to make it more readable
* fix some code getting unnecessarily repeating in a loop
2023-09-13 11:48:19 +01:00
memchr
6b1ac659e0
layout: add direction parameter to onWindowCreated and friends ( #3269 )
...
* feat(layout): add direction parameter to onWindowCreated and friends
In addition:
- Implement directional moveWindowOutOfGroup for `movewindoworgroup`
when using dwindle layout. (augmentation of #3006 )
- Replace `DWindleLayout::OneTimeFocus` with `IHyprLayout::eDirection`.
- Slight formatting change (clang-format).
* fix: nullptr dereference in dwindle window creation
* refactor: generalized eDirection
* refactor: eliminate DIRECTION_NONE
* Update IHyprLayout.hpp
2023-09-13 11:13:29 +01:00
outfoxxed
b0d5e4008b
layout: Allow the layout to control how windows are raised in groups ( #3275 )
...
* Allow the layout to control how windows are raised in groups
Previously windows could only be focused if they weren't hidden or
were part of a group. This shifts the logic for picking the window out
of a group to the layout allowing for alternate group implementations
to function normally.
* Fix doc comment consistency
* Fix tabs in comments
2023-09-12 22:37:08 +01:00
memchr
e96e0dc02d
refactor: utilize 'middle()' method for window/montior center ( #3253 )
2023-09-11 10:09:34 +01:00
Jeremy Huang
19bbdeed47
master: Add smart resizing option for master layout ( #3210 )
...
* add smart resizing for master layout
* fix smart resizing workspace check
* master layout fix smart resize when at max size
* change resizing for center orientation so it doesnt use all nodes
* master layout resizing, simplify code for calculating total height and weight
* remove the redundant smart resizing check
2023-09-10 22:58:06 +01:00
memchr
a781c152ff
fix(layout): remove focusWindow
calls from onWindowCreatedTiling
( #3233 )
2023-09-10 12:55:18 +01:00
Philip Damianik
8c83852704
internal: Remove all .c_str()
calls when using std::vformat
( #3198 )
...
Signed-off-by: pdamianik <39028343+pdamianik@users.noreply.github.com>
2023-09-06 21:45:37 +02:00
Vaxry
61a71c65ac
internal: Formatter rework ( #3186 )
2023-09-06 12:51:36 +02:00
shadowmax31
b4c832a1f2
master: Add orientationcycle command on MasterLayout ( #3128 )
2023-09-04 16:45:58 +02:00
vaxerski
9f3a64481e
dwindle: add proper movement for window move binds
...
ditches the "movewindow = swapwindow" mechanism. Fixes #2804
2023-09-04 15:34:13 +02:00
memchr
69439871e6
refactor: replace manual iteration of CWindow with existing methods ( #3147 )
2023-09-04 15:13:39 +02:00
vaxerski
c6c820d16d
layout: always center floating xdg windows
2023-09-03 13:07:40 +02:00
memchr
69ce11a063
fix: use-after-free of CWindow* in CHyprGroupBarDecoration::draw ( #3146 )
2023-09-02 19:58:01 +02:00
MightyPlaza
b10cae3010
decos: groupbar mouse interaction ( #3102 )
...
* allow groupbar clicking
modified: src/Window.cpp
modified: src/Window.hpp
modified: src/managers/input/InputManager.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.hpp
* remove setting pos inside insertWindowToGroup()
modified: src/Window.cpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/managers/KeybindManager.cpp
* add group window by index and group size functions
modified: src/Window.cpp
modified: src/Window.hpp
modified: src/managers/input/InputManager.cpp
* allow dragging into groupbar
modified: src/Window.cpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
* allow dragging from groupbar
modified: src/managers/KeybindManager.cpp
* try groupbar clicking before border resize
modified: src/managers/input/InputManager.cpp
* block grabbing groupbar on floating (crash)
remove later when crashing is fixed
modified: src/managers/KeybindManager.cpp
* remove redundant { }
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
* implement getWindowDecorationBox()
modified: src/Window.cpp
modified: src/Window.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/input/InputManager.cpp
modified: src/render/decorations/CHyprDropShadowDecoration.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
modified: src/render/decorations/IHyprWindowDecoration.cpp
modified: src/render/decorations/IHyprWindowDecoration.hpp
* fix crash when moveoutofgroup in floating windows
also removes dragging from floating windows limitation
modified: src/layout/IHyprLayout.cpp
modified: src/managers/KeybindManager.cpp
* use CRegion in getWindowDecorationBox()
modified: src/helpers/Region.cpp
modified: src/helpers/Region.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/input/InputManager.cpp
modified: src/render/decorations/IHyprWindowDecoration.cpp
modified: src/render/decorations/IHyprWindowDecoration.hpp
* add groupbar scrolling
modified: src/config/ConfigManager.cpp
modified: src/managers/input/InputManager.cpp
* change name to getWindowDecorationRegion()
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/input/InputManager.cpp
modified: src/render/decorations/IHyprWindowDecoration.cpp
modified: src/render/decorations/IHyprWindowDecoration.hpp
* make dragging from group less hacky for floating
modified: src/managers/KeybindManager.cpp
2023-08-30 17:39:22 +02:00
vaxerski
981386d2ae
layout: allow changing float status of fullscreen windows
2023-08-28 22:55:52 +02:00
vaxerski
b8f38dcbd3
layout: allow drag on fullscreen windows
2023-08-28 22:54:23 +02:00
vaxerski
9dae8ece71
layout: use full box for visibility check of floating xdg
...
Fixes #3069 , if an xdg dialog pops up and is partially off bounds, just move it to the center.
2023-08-25 18:10:12 +02:00
Jeremy Huang
90c03e5bd2
master: layout resize makes the wrong size changes ( #3064 )
2023-08-24 11:57:30 +02:00
MightyPlaza
41d9b6f0d7
dwindle: use smart on display borders ( #2897 )
2023-08-21 20:57:55 +02:00
MightyPlaza
7155b4c266
renderer: Border improvements ( #2986 )
...
* simplify getting border size
modified: src/Window.cpp
modified: src/Window.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* fix border damage and input box
modified: src/Window.cpp
modified: src/managers/AnimationManager.cpp
* add border size in resize_on_border box
modified: src/managers/input/InputManager.cpp
* simplify border (fixes possible typo)
modified: src/Window.cpp
* use updateSpecialRenderData()
modified: Window.cpp
modified: Window.hpp
modified: events/Windows.cpp
modified: layout/DwindleLayout.cpp
modified: layout/IHyprLayout.cpp
modified: layout/MasterLayout.cpp
modified: render/Renderer.cpp
* update window workspace rule data on reload
modified: src/config/ConfigManager.cpp
* use rounding()
modified: src/Window.cpp
2023-08-17 10:13:19 +02:00
Dashie
19c4855afc
layout: Use refreshrate tick on all manual animations ( #2988 )
2023-08-16 10:56:48 +02:00
4986d74ef2
xwayland: fix use of xwayland coords in native spaces
2023-08-15 20:10:43 +02:00
kbtz
2b4537606f
master: fix always_center_master
( #2961 )
...
* master: fix always_center_master
* master: allow resizing single centered window
---------
Co-authored-by: kbtz <github@kbtz.dev>
2023-08-15 18:13:45 +02:00
MightyPlaza
4b568ae5f6
remove shadow no_gaps_when_only master ( #2958 )
...
* remove shadow no_gaps_when_only
modified: src/Window.hpp
modified: src/config/ConfigManager.cpp
modified: src/config/ConfigManager.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/render/decorations/CHyprDropShadowDecoration.cpp
* add master
modified: src/layout/MasterLayout.cpp
* fix wrong
modified: src/layout/MasterLayout.cpp
2023-08-13 10:18:48 +02:00
MightyPlaza
739598717b
remove shadow no_gaps_when_only ( #2956 )
...
modified: src/Window.hpp
modified: src/config/ConfigManager.cpp
modified: src/config/ConfigManager.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/render/decorations/CHyprDropShadowDecoration.cpp
2023-08-12 23:37:55 +02:00
e4e8ae8f88
dwindle: disallow togglesplit on fullscreen
2023-08-10 22:01:34 +02:00
MightyPlaza
6295cbe9cb
keybinds: Keep aspect ratio ( #2907 )
2023-08-08 18:52:20 +02:00
261c3307f7
internal: cleanup headers in helpers/
2023-08-07 13:36:14 +02:00
MightyPlaza
b925f1b497
fix workspace change focus ( #2891 )
2023-08-05 20:53:13 +02:00
MightyPlaza
6db3c4ef5e
layout: no_border_when_only-improvements ( #2791 )
2023-07-24 12:13:40 +02:00
end-4
9845f99b60
add config option to enable/disable new intuitive resizing ( #2774 )
...
dwindle:smart_resizing = 1 by default
== 1 then use new resizing
else use old resizing
2023-07-23 15:50:09 +02:00
MightyPlaza
d3bba2489d
render: Border fixes ( #2781 )
...
* Window.cpp
* layout
* CHyprGroupBarDecoration.cpp
2023-07-23 15:49:49 +02:00
vaxerski
61dc0909ae
layout: use warp() instead of setValue()
2023-07-20 20:03:27 +02:00
outfoxxed
5cd5631fb2
Add bringWindowToTop function to IHyprLayout ( #2747 )
...
* Add bringWindowToTop function to IHyprLayout
* Rename `bringWindowToTop` to `requestFocusForWindow`
* Fix doc
2023-07-19 12:39:45 +02:00
vaxerski
2c7b2ad6ca
windowrules: add border size rule
2023-07-18 00:11:29 +02:00
MightyPlaza
b159634ef9
move/resize window ( #2706 )
2023-07-13 20:20:40 +02:00
Daniel Adolfsson
d3a644d81c
Dwindle: Make resize more intuitive ( #2681 )
...
* improved resize
* clang-format
* rewrite
* almost legacy behavior when using CORNER_NONE
2023-07-13 16:52:11 +02:00
Daniel Adolfsson
64e7d5345d
Add support for smart splitting ( #2676 )
...
* Add support for smart splitting
* clang-format
* smart_split default to 0, and make smart_split behave like preserve_split
2023-07-11 13:37:25 +02:00
vaxerski
6f91997f06
layout: improve time restraints in window drag
2023-07-04 11:49:24 +02:00
MightyPlaza
05047f60f4
groupbar fixes ( #2630 )
...
Fixes multiple groupbar decoration issues:
- togglegroup removes fullscreen to avoid to avoid weird state
- fixes issue where a group had multiple windows with head = true
- fixes issue where merging 2 groups would cause a window to have 2 groupbar decorations
- fixes issue where merging a group with more than 1 window into another group would make windows have no groupbar decoration
- fixes issue where ungrouping windows could just move them into another group on the same workspace
---------
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-07-03 12:49:56 +02:00
vaxerski
6c28388420
layout: minor style fixes
2023-07-01 16:28:17 +02:00
vaxerski
e96fcb31f0
layout: set pseudo to float size in new window
2023-06-30 11:29:06 +02:00
0283c498d6
xwayland: fix minor force_zero_scaling bugs
2023-06-22 21:43:31 +02:00
memchr
bca3068db2
feat: add lockactivegroup dispatcher ( #2478 )
...
* feat: add lockactivegroup dispatcher
The `lockactivewindow` dispatcher takes `lock`, `toggle` or `unlock` as arguments. When a group is locked, no window or group can be added to it, nor can it be added to another group, but the `moveintogroup` and `moveoutofgroup` dispatches are not affected.
Implementation details:
the lock is implement via `SGroupData.locked` flag (defaults to false).
The flag is only relevant to the group head, and upon the group head's succession, the flag will be passed down to the new head. Meanwhile, the old head's flag will be set to false.
The flag is set to false when a group is dismissed.
New condition checks have been added to the dwindle and master layout to check if target group is unlocked (and if the source is also a group and unlocked) before adding windows to the target group.
* refactor: `lockactivegroup dispatcher code ordering
2023-06-09 23:44:18 +02:00
2629cfeeab
layouts: make aware of borderSize prop
2023-06-04 21:35:23 +02:00
vaxerski
1e3571eb5b
layout: don't reset to floating size on drag tiled
2023-05-29 18:05:41 +02:00
vaxerski
62e3953f5b
master: guard monitor in recalc
2023-05-26 13:41:52 +02:00
vaxerski
a4c120d608
layouts: ignore direction forces on non-map
2023-05-24 19:23:10 +02:00
vaxerski
eb1f832fce
decos: recalc on add
2023-05-23 14:26:38 +02:00
Dashie
a8541d5f64
Add split preselection ( #2240 )
2023-05-06 01:02:18 +01:00
jacekpoz
a663823af2
only ignore no_gaps_when_only when the workspace rule specifies a border ( #2217 )
...
Co-authored-by: jacekpoz <jacekpoz@cock.li>
2023-05-03 14:48:46 +01:00
levnikmyskin
c949173bc9
Added some workspace-specific rules ( #1986 )
...
* added some workspace-specific rules
* added some worskpace-specific rules, with windowrule like syntax
* monitor is not mandatory anymore
* pointers to config are now static
* fixed optional WorkspaceRule fields
* Windows can now specify border size
* removed CHyprOpenGLImpl::renderBorder borderSize default value
* stuff
---------
Co-authored-by: Alessio Molinari <alessiomolinari@gmail.com>
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-05-01 22:28:27 +01:00
outfoxxed
849d657595
Window resizing for pseudotiled windows ( #2140 )
...
* Window resizing for pseudotiled windows
* Use `m_vRealSize` to determine scaled window size
2023-04-25 16:53:18 +01:00
vaxerski
bf27066fd7
IHyprLayout: add missing static modifiers to config vars
2023-04-25 16:53:01 +01:00
vaxerski
1f80154823
layouts: add missing static modifiers to config vars
2023-04-25 16:49:06 +01:00
vaxerski
8b3d8dc792
Format: use %lx for all addresses
2023-04-17 17:35:28 +01:00
Person1873
33d06fb0e5
Add ability to split master when only 1 additional window ( #2025 )
...
* fix: enable master split less than 2 windows
added a config flag "master:allow_small_split"
added config to minimum windows check.
TODO: check that no bug added (remove all masters?)
* IMPL:FIX: multiple master windows full width
Implemented the ability to have multiple master windows filling the full
monitor width in master mode.
this is controlled by the config option master:allow_small_split
(true/false)
this defaults to false as it was the original behaviour before this
patch
* BUGFIX: corrected issue with blanks re: addmaster
FIX 1: Treat ORIENTATION_CENTER the same as ORIENTATION_LEFT unless
there are enough STACK_WINDOWS to fill both wings.
FIX 2: enforced last window always set as master in
MasterLayout::CHyperMasterLayout::calculateWorkspace();
FIX 3: fix 2, also fixed focus issues previously noted.
* Changes requested by vaxerski
changed how we access config variables (by reference not value)
fixed a regression previously missed prior to requested changes.
I had somehow broken the very functionality i meant to add.
* added static keyword to config variables
* removed superfluous static tags
I made a mistake with making too many variables static.
this made them only evaluate once per runtime breaking things majorly.
My appologies. I haven't touched C++ in nearly 20 years.
* remove annoying comment
---------
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-04-13 15:20:58 +01:00
vaxerski
bc4a51dbbb
internal: make togglefloat better visible on small size deltas
2023-04-06 19:45:59 +01:00
lisuke
dc78c58c77
fix: a fullscreen bug. ( #1821 ) ( #1831 )
2023-03-20 16:07:18 +00:00
Vaxry
788a8f7c13
internal: wrap wlr surfaces ( #1822 )
2023-03-20 15:00:58 +00:00
vaxerski
2ba5238b8e
groups: fix moving between displays
2023-03-18 16:30:29 +00:00
vaxerski
17deeb07ad
master: better cycle
2023-03-13 01:07:05 +00:00
a85a6fa6c8
Dwindle: Added default_split_ratio
2023-03-07 14:24:10 +00:00
hillyu
4f647a8e8b
fix mfact not applying to addmaster ( #1715 )
...
Co-authored-by: Hill <hillyu@live.com>
2023-03-06 09:03:49 +00:00
hillyu
7ce92f93ad
add mfact setting for master layout ( #1666 )
...
* add mfact setting for master layout
---------
Co-authored-by: Hill <hillyu@live.com>
2023-03-05 16:29:23 +00:00
vaxerski
fb45f8f2f9
crashReporter: remove inconsistent log from crash reports
2023-03-04 00:14:20 +00:00
vaxerski
7c5c7ced91
Convert reverse iterators to ranges
2023-03-01 14:06:52 +00:00
vaxerski
72fc309fb1
make window reserved area less stupid
2023-02-28 21:18:13 +00:00
Dashie
7187ea443e
Add option to disable/enable mouse window dragging animations ( #1658 )
2023-02-28 20:50:10 +00:00
Marcus Kellerman
492f36f7df
Added center orientation to master layout ( #1642 )
...
* Added center orientation to master layout to improve experience on ultra widescreen monitors.
* Added support for orientationcenter layout message for master layout
* Added ability to optionally always center master window when in centered master mode.
2023-02-26 23:12:14 +00:00
vaxerski
2e21ad875b
fix cursor image on drag not resize
2023-02-26 23:08:20 +00:00
Mihai Fufezan
e302724847
use corner cursors on resize ( #1638 )
2023-02-26 03:56:23 +02:00
a66ef50469
added a lockgroups dispatcher
2023-02-21 12:13:41 +00:00
vaxerski
cd6640e890
unset hidden at grouped remove
2023-02-19 23:26:36 +00:00
Vaxry
e5a4c0c986
Group/Tab Rework ( #1580 )
2023-02-19 21:07:32 +00:00
Vaxry
1b56cc4e99
Added an Event Hook System ( #1578 )
...
* added an eventHookSystem
* Add all socket2 events to hooks
2023-02-19 20:54:53 +00:00
Ching Pei Yang
c92e0c05e4
Resize on border ( #1347 )
2023-02-18 22:35:31 +00:00
vaxerski
6b7e409f05
properly clamp size in dragging floating corners
2023-02-12 22:24:47 +00:00
Philipp Mildenberger
97e0f02621
Fix some issues with a lost focus of the maximized window after using swapwithmaster in fullscreen mode ( #1524 )
...
* Fix some issues with a lost focus of the maximized window after using swapwithmaster in fullscreen mode
* Keep current fullscreen mode when `prepareNewFocus` is executed
2023-02-11 13:00:05 +00:00
Philipp Mildenberger
42f4664022
Added support for layoutmsg params and added the param 'newfocus' for 'swapwithmaster' and 'focusmaster' ( #1522 )
...
* Added support for layoutmsg params and added the param 'newfocus' for 'swapwithmaster' and 'focusmaster', which lets the user decide what the new focused window should be
2023-02-10 19:13:38 +00:00
vaxerski
6688421240
minor adjustments to xwayland positioning
2023-02-03 21:21:19 +00:00
eaf0fb14c9
reset layout-set render vars on floating
2023-01-31 12:15:40 +00:00
Jan Beich
f90ff8303b
Unbreak build with libc++ ( #1457 )
2023-01-31 00:03:23 +00:00
eriedaberrie
af37a3895f
fix: cursor changing on window move and resize ( #1371 )
...
* Just use grab cursor for everything
2023-01-27 11:31:56 +00:00
d5913a23ac
reset dragged window on failed begin
2023-01-20 16:30:30 +01:00
Maxim Baz
7729fa9ac9
master layout: remember size & pos of floating windows on fullscreen 1 ( #1374 )
2023-01-13 21:58:14 +01:00
85d1b06a79
clean draggedwindow in dragend
2023-01-02 12:06:06 +01:00
7f595ed0ca
support gradients in dwindle group colors
2022-12-31 16:23:56 +01:00
a91d0a374a
fix mouse resize on master orientations
2022-12-30 13:01:43 +01:00
b4ebc18367
remove main_mod
2022-12-28 19:52:12 +01:00
Maarten van Gompel
edcf4cd61d
fix for gap in master layout orientation right #1171 ( #1260 )
2022-12-20 22:24:36 +00:00
vaxerski
563835404f
remember master width on master close
2022-12-17 22:53:03 +00:00
Julian Schuler
2daabfa0e9
Add 'exact' option for 'splitratio' ( #1245 )
...
* Simplify getPlusMinusKeywordResult()
* Add an 'exact' option for 'splitratio'
2022-12-17 22:37:44 +00:00
Julian Schuler
11ba6afdd3
Fix cycleprev bug introduced in 46891b12cf
( #1213 ) ( #1242 )
2022-12-17 14:37:10 +00:00
vaxerski
2076905d6e
remember size and pos on fullscreen 1
2022-12-17 12:14:43 +00:00
vaxerski
deb8d3d82e
ignore self in candidate floating
2022-12-16 20:07:44 +00:00
Vaxry
98a4fa2b0d
Added clang format ( #1239 )
...
* clang-format stuff and format files
2022-12-16 17:17:31 +00:00
vaxerski
20899b597e
log more in group creation
2022-12-16 00:22:23 +00:00
vaxerski
1a9ee959dd
static-ize master opt
2022-12-12 14:37:49 +00:00
Maarten van Gompel
46891b12cf
Master layout: lose or inherit fullscreen on deliberate window switching ( #1213 )
...
* Master layout: Lose fullscreen status when deliberately switching away from a fullscreen window
* Master layout: implemented inherit_fullscreen config parameter
When set, if you are on a fullscreen window and you cycle to the next,
swap master, etc, it will be automatically fullscreened.
2022-12-12 14:34:52 +00:00
vaxerski
0c1bec023f
unset cursor image on end drag if it gets destroyed
2022-12-12 14:32:23 +00:00
vaxerski
06e6c6021e
fix memory read-after-free in master layout
2022-12-12 14:18:43 +00:00
Maarten van Gompel
6381b6474f
Implement orientation (placement of master area) for master layout ( #1202 )
...
* Implemented choosing placement of master area (#1059 )
This implement a per workspace 'orientation' that can be set
to left, right, top or bottom. Reflecting placement of the master area.
Left (default) and right are horizontal layouts, top and bottom produce vertical
layouts. Orientation can be switched with: 'hyprctl dispatch layoutmsg orientationleft'
2022-12-10 21:59:16 +00:00
vaxerski
bf78dcecf0
add changefloatingmode event
2022-12-09 18:51:44 +00:00
vaxerski
fd43d2bea7
fix drag resizing on special ws-es
2022-12-09 17:08:04 +00:00
vaxerski
b9812f8bc0
use anim callbacks and don't spam config resets in drag
2022-12-09 15:00:58 +00:00
vaxerski
6e3bd440ba
do not reject drags on visible windows over fullscreen
2022-12-08 17:45:25 +00:00
vaxerski
e1d7a13333
unset fullscreen in onWindowRemoved
2022-12-07 18:57:02 +00:00