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
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
Vaxry
bca7804bb6
internal: Window storage rework - part 1 ( #5762 )
...
* Window storage rework - part 1
* format
* remove useless include
* fix pch
* format
* fix crash in dwindle
* fix vram leak
* prefer .expired() for bool checks
2024-04-27 12:43:12 +01:00
Maarten de Vries
e57a2d7ec8
keybindmgr: add optional silent
suffix to movewindow
. ( #5597 )
...
With the `silent` suffix, the focus remains on the current position in
the layout or the current monitor, instead of following the moved
window. When combined with `movewindow mon:X`, this this allows you to
get the same behavior as xmonad's `windowToScreen` command.
2024-04-17 12:04:16 +01:00
Vaxry
fcd9d77b64
layout: improve initial size prediction for floating
2024-03-29 00:43:50 +00:00
Brett Alcox
214ec82ba7
build: fix builds without pch ( #5198 )
2024-03-21 01:54:10 +00:00
Vaxry
8593c45be3
refactor: move window.hpp to desktop/
2024-03-20 01:44:51 +00:00
bvr-yr
fb87e332c5
input: fix window move stutter by introducing additional checks for low-hz monitors ( #4553 )
...
* resize-limiter: add additional check for low-hz monitors
* simplify checker
* add comment
* rename variable
2024-03-06 00:15:44 +00:00
vaxerski
f4f3aa2e50
layout: add size prediction for initial xdg commits
...
fixes #4022
2024-02-28 11:45:43 +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
vaxerski
1f4eab176e
layout: don't discard fullscreen on new tiling
2023-09-28 17:49:40 +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
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
vaxerski
261c3307f7
internal: cleanup headers in helpers/
2023-08-07 13:36:14 +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
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
vaxerski
1e3571eb5b
layout: don't reset to floating size on drag tiled
2023-05-29 18:05:41 +02:00
Vaxry
e5a4c0c986
Group/Tab Rework ( #1580 )
2023-02-19 21:07:32 +00:00
vaxerski
6b7e409f05
properly clamp size in dragging floating corners
2023-02-12 22:24:47 +00:00
vaxerski
7f595ed0ca
support gradients in dwindle group colors
2022-12-31 16:23:56 +01: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
Vaxry
98a4fa2b0d
Added clang format ( #1239 )
...
* clang-format stuff and format files
2022-12-16 17:17:31 +00:00
Eric_Luo
afe12dc90b
Fix a compiler warning ( #1124 )
...
Co-authored-by: hnboy <hnboy@users.noreply.github.com >
2022-11-28 19:04:24 +00:00
vaxerski
c04563734e
Rework candidate finding on close window
2022-10-24 12:25:36 +01:00
vaxerski
ff5843bd85
anchor to proper quad in floating resize
2022-10-03 22:41:12 +01:00
Felix Dick
bf3f519eb7
Remove trailing whitespace.
2022-09-25 20:07:48 +02:00
vaxerski
5c836e6460
added master layout
2022-07-16 15:57:31 +02:00
vaxerski
b0cd90a43c
refactor a bunch of layout code
2022-06-30 12:09:05 +02:00
vaxerski
78bf88ba60
Added fullscreen rule
2022-06-26 12:12:29 +02:00
vaxerski
31dc70a41a
Added exact to resizeActive and added moveactive
2022-06-23 10:14:59 +02:00
vaxerski
663fba76ae
Added resizeactive
2022-06-06 19:32:14 +02:00
vaxerski
227cbb0464
Added fullscreen types, maximize and full
2022-05-29 15:45:51 +02:00
vaxerski
bdf1c16195
Added IHyprWindowDecoration and Group Bars
2022-05-28 20:46:20 +02:00
vaxerski
50f978e518
Added togglesplit dispatcher
2022-05-16 17:37:46 +02:00
vaxerski
694f4433a2
Added animation style and style slide
2022-05-14 16:43:30 +02:00
vaxerski
87b8491294
Added the splitratio dispatcher
2022-04-20 16:53:41 +02:00
vaxerski
418e2d96ae
Added the movewindow dispatcher
2022-04-20 16:18:58 +02:00
vaxerski
b6a93b2f03
Added window grouping for dwindle
...
furthermore, added LayoutRenderHints.
2022-04-12 16:44:18 +02:00
vaxerski
462781b16f
Added drag to move window
2022-04-03 13:49:21 +02:00
vaxerski
3f99dad7f5
Added pseudotiling
2022-04-02 20:04:32 +02:00
vaxerski
295a0c4a69
Added fullscreen
2022-03-21 19:18:33 +01:00
vaxerski
332fa8a802
XWayland floating
2022-03-20 13:37:07 +01:00
vaxerski
a4b026df2b
floating windows support
2022-03-20 11:14:24 +01:00
vaxerski
1a298257c9
fix xwaylabnd too, stuff
2022-03-19 20:56:19 +01:00
vaxerski
61e10e2048
added a layoutmanager and basic dwindle
2022-03-19 15:59:53 +01:00