Vaxry
c249a9f4b8
windowrules: fix group rule recalcs ( #12403 )
2025-11-20 16:57:31 +00:00
Vaxry
c2670e9ab9
windowrules: rewrite completely ( #12269 )
...
Reworks the window rule syntax completely
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2025-11-17 18:34:02 +00:00
Hiroki Tagato
43527d3634
internal: fix crash at startup on FreeBSD ( #12298 )
...
Hyprland at the latest commit crashes at starting up on FreeBSD with
SIGSEGV. Checking the validity of g_pXWayland->m_wm before calling
updateWorkArea() appears to fix the issue.
2025-11-13 22:06:34 +00:00
jmanc3
ce9787b3f4
xwayland: set _NET_WORKAREA property ( #12148 )
2025-10-29 11:24:34 +00:00
Richard Potter
7fcaf332e8
layouts: apply [min|max]size window rules to dwindle & master layouts ( #11898 )
...
Uses min/max rules in the tiled layouts, akin to pseudotiling
2025-10-13 13:08:40 +01:00
UjinT34
4d82cc5957
internal: fix clang-tidy "errors" ( #11862 )
2025-09-29 13:10:15 +01:00
Maaz Ahmed
1cbb62ed6a
masterlayout: add previous mode for focusmaster command ( #11361 )
2025-08-16 14:42:23 +01:00
Kamikadze
beee22a95e
refactor: Use new hyprutils casts ( #11377 )
2025-08-14 15:44:56 +01:00
a4529beb7c
master: avoid crash if openingon null in onWindowCreated
2025-08-06 23:47:47 +02:00
xqso
5c8d675eed
ci: correct tar command for xz compression & fix typos ( #11213 )
2025-07-25 17:19:23 +02:00
5349667992
master: add ignoremaster to swapwithmaster
...
fixes #11042
2025-07-16 15:51:11 +02:00
Kamikadze
69c2b2926e
internal: refactor to use empty() ( #10599 )
2025-05-31 19:49:50 +01:00
Kamikadze
9190443d95
refactor: use std::ranges whenever possible ( #10584 )
2025-05-30 14:25:59 +01:00
davc0n
ce821294e2
managers: refactor class member vars ( #10242 )
2025-05-02 17:07:20 +02:00
davc0n
5b3e489108
inputs: refactor class member vars ( #10230 )
2025-05-01 23:57:11 +02:00
Zetta1 Reid0
b5ef049ea1
master: Change center_master_slaves_on_right to center_master_fallback ( #10201 )
...
* Change center_master_slaves_on_right to center_master_fallback
2025-05-01 13:29:06 +02:00
davc0n
615e0dae46
layouts: refactor class member vars ( #10228 )
2025-05-01 13:27:07 +02:00
davc0n
50e1bec85f
helpers: refactor class member vars ( #10218 )
2025-04-30 23:45:20 +02:00
davc0n
2118440488
windows: refactor class member vars ( #10168 )
2025-04-28 22:25:22 +02:00
davc0n
02d7badd15
workspaces: refactor class member vars ( #10167 )
2025-04-25 02:37:12 +02:00
davc0n
241a4935a2
compositor: refactor class member vars ( #10141 )
2025-04-22 15:23:29 +02:00
davc0n
4d14bcb02f
config: Refactor class member vars ( #10124 )
...
* Refactor config classes vars
* Fix clang format errors
2025-04-20 20:39:33 +02:00
MightyPlaza
ffd6cf65e4
windowrules: allow incrementing window props ( #9566 )
2025-04-16 01:00:40 +02:00
nyx
7055d0c138
master: add option to keep master window position ( #9537 )
2025-03-06 23:06:05 +01:00
Maximilian Seidler
ff9e059de6
window: move size reporting to animation begin callback ( #9298 )
...
* window: fix resizes with an update callback
* window: fixup sendWindowSize
Remove the size argument from sendWindowSize, since it is now a member of the Window class
and we don't want any mismatches between m_vRealSize and what we report.
Remove sendWindowSize from mapWindow, since we shouldn't need it.
* window: sendWindowSize on animation begin
* window: move most calls to sendWindowSize to the animation begin
callback
* window: remove sendWindowSize in unmanaged if not fullscreen
2025-02-06 11:21:04 +00:00
Tom Englund
f1e32cd122
core: avoid .at() and use [] operator ( #9347 )
...
avoid .at() where it makes sense and use [] operator in loops.
2025-02-06 11:18:04 +00:00
user111111111111111111111111111111111
3b207d29bd
core: update groups on movewindow ( #9183 )
2025-01-26 20:06:50 +01:00
445acec2a2
core: move sendWindowSize off of xwaylandmgr
...
additionally fixes that one weird x11 issue with floating windows being mis-sized on open
2025-01-25 20:36:44 +00:00
user111111111111111111111111111111111
2bad73354a
core: cleanup header includes ( #9088 )
...
Cleanup some unneeded includes to speed up compilation
2025-01-17 15:21:35 +00:00
Maximilian Seidler
5642ed331d
core: move parts of the animation system to hyprutils ( #8868 )
...
* core: change animation manager to use Hyprutils::Animation
* config: move animation config to hyprutils animation tree
* use g_pAnimationManager->createAnimation and the new PHLANIMVAR template
* core: use CGenericAnimatedVariabled::{enabled,setConfig,getStyle} and adapt callbacks
* core: adapt animated variable usage (dereference the shared pointer)
* misc: bump CMakeLists to hyprutils 0.3.3
2025-01-07 17:55:14 +00:00
Zetta1 Reid0
c7086f936a
master: add option to show slaves on left in center orientation ( #8940 )
...
Co-authored-by: Zetta1_Reid0 <11255-Zetta1_Reid0@users.noreply.gitlab.xfce.org>
2025-01-07 17:50:34 +00:00
Sergio Miguéns
b0bae15499
master: make loop around optional when cycling ( #8926 )
2025-01-04 16:40:33 +00:00
khushal-solves
fde569db65
master: replace always_center_master with slave_count_for_center_master ( #8871 )
...
- Replaced boolean config parameter `always_center_master` to an integer value `slave_count_for_center_master` for more control on when to center master window.
- Also updated configuration parameter, type, description and related internal variable.
New description: **when using orientation=center, make the master window centered only when at least this many slave windows are open. (Set 0 to always_center_master)**
This effects center orientation of master layout.
Now, user can control when the master window would be centered
2024-12-29 23:11:16 +00:00
Vaxry
8bbeee1173
core: Add clang-tidy ( #8664 )
...
This adds a .clang-tidy file for us.
It's not a strict requirement to be compliant, but I tuned it to be alright.
2024-12-07 18:51:18 +01:00
UjinT34
10a9fec7fc
master: make center ignore reserved areas ( #8625 )
2024-12-02 15:32:32 +00:00
745a82ce8a
core: workspace-related function cleanup / refactor
...
CCompositor is massive, and has a lot of functions that could be better optimized if in CWorkspace
2024-11-22 16:01:02 +00:00
b735295d2b
windows/xdg: minor cleanup of min/max size calculations
...
fixes #8495
2024-11-17 19:31:54 +00:00
Aqa-Ib
8f42401aa8
groups: add merge_groups_on_groupbar ( #8362 )
2024-11-06 16:52:10 +00:00
MightyPlaza
12c1bb936d
internal: check size limit in layouts ( #8298 )
...
modified: src/desktop/Window.cpp
modified: src/desktop/Window.hpp
modified: src/events/Windows.cpp
modified: src/helpers/MiscFunctions.cpp
modified: src/helpers/MiscFunctions.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/IHyprLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/macros.hpp
2024-10-30 18:58:36 +00:00
Vaxry
5d4b54b012
core: move internal structures to monitor pointers ( #8266 )
2024-10-27 18:45:38 +00:00
Vaxry
f044e4c951
internal: Move CMonitor to SP ( #8178 )
...
* move monitors to sp
* XD
2024-10-19 23:03:29 +01:00
Aqa-Ib
86e9f69a69
layout: move applyGroupRules() to onWindowCreated() ( #8139 )
2024-10-16 22:13:35 +01:00
Vaxry
d655a10381
config/layout: nuke no_gaps_when_only ( #8072 )
2024-10-11 10:56:19 +01:00
Aqa-Ib
e2426942e5
layout: add auto_group to control default grouping ( #7883 )
2024-10-02 10:22:19 +01:00
Tom Englund
72c7818ae6
misc: constify the remaining for loops ( #7534 )
...
now we roll loops at blazing constified speed.
2024-08-26 20:24:30 +02:00
Tom Englund
8d6c18076f
core: make most for loops use const references ( #7527 )
...
why not let the compiler optimise things for us at hyprspeeds when we
can.
2024-08-26 17:25:39 +02:00
MightyPlaza
3b4aabe04c
decorations: fix manual resize not recalculating decos ( #7323 )
...
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
2024-08-13 21:00:31 +01:00
Tom Englund
4b4971c06f
internal: introduce new types to avoid unsigned int rollover and signed int overflow ( #7216 )
...
* framebuffer: avoid gluint overflow
GLuint was being initialized to -1 and rolling over to unsigned int max,
its defined behaviour but very unnecessery. add a bool and use it for
checking if allocated or not.
* opengl: avoid gluint rollover
-1 rolls over to unsigned int max, use 0xFF instead.
* core: big uint64_t to int type conversion
there were a few uint64_t to int implicit conversions overflowing int
and causing UB, make all monitor/workspaces/windows use the new
typedefs. also fix the various related 64 to 32 implicit conversions
going around found with -Wshorten-64-to-32
2024-08-08 21:01:50 +02:00
MightyPlaza
51ffd7fa6f
decorations: fix infinite recursion on no_gaps when only ( #7169 )
...
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/render/decorations/CHyprBorderDecoration.cpp
2024-08-03 19:50:08 +02:00
MightyPlaza
e989a0bcff
internal: refactor fullscreen states ( #7104 )
...
* refactor fullscreen
modified: src/Compositor.cpp
modified: src/Compositor.hpp
modified: src/config/ConfigManager.cpp
modified: src/config/ConfigManager.hpp
modified: src/debug/HyprCtl.cpp
modified: src/desktop/LayerSurface.cpp
modified: src/desktop/Window.cpp
modified: src/desktop/Window.hpp
modified: src/desktop/Workspace.cpp
modified: src/desktop/Workspace.hpp
modified: src/events/Windows.cpp
modified: src/helpers/Monitor.cpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/DwindleLayout.hpp
modified: src/layout/IHyprLayout.cpp
modified: src/layout/IHyprLayout.hpp
modified: src/layout/MasterLayout.cpp
modified: src/layout/MasterLayout.hpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/KeybindManager.hpp
modified: src/managers/input/IdleInhibitor.cpp
modified: src/managers/input/InputManager.cpp
modified: src/managers/input/Swipe.cpp
modified: src/protocols/ForeignToplevelWlr.cpp
modified: src/render/Renderer.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* clean up
modified: src/config/ConfigManager.cpp
modified: src/debug/HyprCtl.cpp
modified: src/desktop/Window.hpp
modified: src/desktop/Workspace.cpp
modified: src/events/Windows.cpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/input/Swipe.cpp
* fix mapWindow fullscreen
modified: src/events/Windows.cpp
* fix typo
modified: src/desktop/Workspace.cpp
* add fullscreenstate
modified: src/config/ConfigManager.cpp
modified: src/events/Windows.cpp
* change syncFullscreen to lower
modified: src/config/ConfigManager.hpp
* initialize fs state
modified: src/desktop/Window.hpp
2024-07-31 19:55:52 +02:00