17339e0ae9
input: track exclusive LSes
...
ref #4465
2024-01-19 16:45:34 +01:00
6b92144f15
surface: avoid spam of window surfaces with scale and transform events
...
fixes #4408
2024-01-11 14:07:28 +01:00
71166ef40b
subsurfaceTree: update surface tree protocol feedback on map
2024-01-09 18:14:08 +01:00
33444e1e5e
deps: update wlroots
2024-01-01 16:47:54 +01:00
cc0516a9ae
windowrules: minor fixes to onworkspace
...
fixes #4227
2023-12-23 15:49:42 +01:00
460a326c90
Revert "xdgshell: set predicted tiled windows to monitor res size pre-map"
...
This reverts commit 763d5fa05f
.
Some issues and fixes #4185
2023-12-18 14:45:20 +00:00
403fd7d9f6
xwayland: move commit handler connect to associate
...
fixes #4179
2023-12-18 00:15:30 +00:00
763d5fa05f
xdgshell: set predicted tiled windows to monitor res size pre-map
...
Should improve #4022 although not exactly fix. Fixing would require more witchcraft
2023-12-17 20:09:34 +00:00
9fd928e114
internal: nuke CWindow::m_bMappedX11
...
it's useless. m_bIsMapped is the same.
2023-12-17 20:00:18 +00:00
8c9f38e405
events: improve wl_surface::commit event tracking
2023-12-17 19:58:01 +00:00
c0d9dcc586
xwayland: set reported and pending size/pos on geometry sets
2023-12-17 14:53:59 +00:00
395ab3ba37
xdg: use better min/max size checks for floating resizes
2023-12-15 15:38:20 +00:00
ba2af6f86d
focus: prefer sendMotionEventsToFocused for ensuring cursor image
2023-12-12 14:58:43 +00:00
8f38487884
xwayland: don't change workspace on configure for invisible windows
...
fixes #3578
2023-12-12 01:15:17 +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
d2c3b23ace
deps: update wlroots
2023-11-30 01:18:55 +00:00
75e5799310
layer-shell: simulate mouse movement on unmap
2023-11-26 14:54:34 +00:00
Vaxry
2ebfd0c745
renderer: Move to a full Hyprland GL rendering pipeline ( #3920 )
...
Also updates wlroots
2023-11-24 10:54:21 +00:00
49597688e9
windowrules: make idleinhibit dynamic
2023-11-14 15:46:57 +00:00
69e314207d
internal: replace INT_MAX with WORKSPACE_INVALID
2023-11-12 13:34:54 +00:00
Alessio Molinari
1bfd4a2bff
output-layout: fix wlroots display handling ( #3718 )
2023-11-12 13:14:05 +00:00
bea828ea45
decoration-positioner: improve extent handling
2023-11-11 15:18:17 +00:00
427153e86a
xwayland: add half of delta to configure request sizes
2023-11-10 23:49:35 +00:00
b8a615ffb8
xdg-shell: improve ack-configure handling
...
fixes #3807
2023-11-10 00:13:22 +00:00
8dd02eb5f3
xdg-shell: update reported size on ack_configure
2023-11-09 22:43:52 +00:00
9404972732
events: set reported size on floating map
...
fixes #3767
2023-11-05 14:12:55 +00:00
Vaxry
55b4f84fea
Internal: Hyprland box implementation ( #3755 )
...
* box impl
* remove unused operators
* missed applyfromwlr
2023-11-04 17:03:05 +00:00
54e51b7acf
events: better adjust to unreported sizes for xwayland apps
...
fixes #3745
2023-11-04 13:09:33 +00:00
200cccdd3b
events: set reported size on the end of mapping
...
fixes #3743
2023-11-03 22:47:12 +00:00
ba9e7814b0
input: simulate movement only if mouse is over in open/close window
...
fixes #3726
2023-11-02 21:36:16 +00:00
Dashie
062f749450
xdg: send unconstrain events after a popup reposition ( #3716 )
...
* fix: Use unconstrain_from_box after reposition request
* chore: Remove unused include
* chore: remove variable specifier
2023-11-01 20:31:52 +00:00
a4db48b46b
input: simulate mouse movement to fix focus on open/close window
...
fixes #3679
2023-11-01 19:50:32 +00:00
Vaxry
21e9313c10
Core: various unsafe state improvements ( #3713 )
...
Fixes #3637
2023-11-01 18:53:36 +00:00
4a4e13f8ac
events: ignore takes_over_fullscreen for floating windows
...
fixes #3622 . Floating windows should not respect the config option, they should be shown on top. That option is meant for tiled only
2023-10-27 12:45:17 +01:00
df00727310
deps: update wlroots
2023-10-25 00:27:16 +01:00
98059b52d7
layershell: support ON_DEMAND keyboard mode
...
fixes #2264
2023-10-22 23:32:55 +01:00
59f27e7f57
compositor: send preferred scale and transform events to surfaces
...
fixes #3635
2023-10-22 16:58:06 +01:00
7f35f33b4c
surface/wayland: conform to small surface requirements
...
do not stretch small surfaces, instead center them if they fit.
2023-10-20 20:15:57 +01:00
eriedaberrie
421f5fb221
events: make new windows taking over fullscreen keep the existing mode ( #3588 )
2023-10-17 11:41:27 +01:00
Philip Damianik
442209942f
cleanup: Replace find() with C++20 starts_with(), ends_with() and contains() ( #3572 )
...
* Replace find() with C++20 starts_with() and ends_with()
* Replace find() with C++20 contains()
2023-10-15 19:07:23 +01:00
vaxerski
4b3efc73c5
events: fixup empty events not being sent on unmap
...
Ref #3506 https://github.com/hyprwm/Hyprland/issues/3506#issuecomment-1749508111
2023-10-06 01:11:47 +01:00
322c5cc4b9
layout: add new_window_takes_over_fullscreen mode 2
...
fixes #3486
2023-10-04 15:00:24 +01:00
vaxerski
230356012b
renderer: extract solitary check into frame handler
2023-10-04 13:48:44 +01:00
vaxerski
4531717f3e
renderer: considerable fixes to repaint logic
2023-10-04 13:39:40 +01:00
vaxerski
b814ba98a7
misc: add misc:new_window_takes_over_fullscreen
...
referenced in #3474
2023-10-02 16:27:32 +01:00
vaxerski
50fecf084d
events: set new window alpha to 0 if it's tiled behind fullscreen
...
fixes #3474
2023-10-02 16:22:39 +01:00
vaxerski
5ffb1032e1
events: don't focus new window if spawned behind fullscreen
...
fixes #3473
2023-10-02 14:09:23 +01:00
vaxerski
a2a29a60e5
tearing: cleanup vars and avoid rendering before drm is ready
2023-09-30 17:07:50 +01:00
vaxerski
a44ab7748f
renderer: optimize render pipeline when there is a solitary client
2023-09-29 17:51:07 +01:00
Vaxry
88b63a00b6
renderer: Tearing implementation ( #3441 )
2023-09-28 21:48:33 +01:00
vaxerski
1f4eab176e
layout: don't discard fullscreen on new tiling
2023-09-28 17:49:40 +01:00
Vaxry
46d66f4bcc
internal: Further unsafe state improvements ( #3404 )
...
Instead of allowing Hyprland to sit in a state where there are no monitors, which various parts of the code don't like, we create a fake headless output on all monitor disconnect, and then remove it when a monitor appears
2023-09-24 18:04:38 +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
vaxerski
2f01a18989
window: recalculate layout on swallow in map
...
fixes #2848
2023-09-16 18:40:57 +01:00
MightyPlaza
824290c791
windowrules: fix workspace exec rule with special ( #3316 )
...
modified: src/events/Windows.cpp
2023-09-15 12:05:21 +01:00
be19773aaa
windowrules: fix workspace rule separation
...
fixes #3265
2023-09-12 16:50:10 +01:00
alaricljs
9192b20b96
windowrules: add on-screen constraint to wrv2 'move' ( #3247 )
...
* add on-screen constraint to wrv2 'move'
* review changes
* std::clamp
* more parens
---------
Co-authored-by: Leeman <lstrout@enlj.com>
2023-09-12 09:56:20 +01:00
memchr
e96e0dc02d
refactor: utilize 'middle()' method for window/montior center ( #3253 )
2023-09-11 10:09:34 +01:00
Philip Damianik
6c855dd6e4
internal: Fix wlr output management ( #3234 )
2023-09-10 13:14:27 +01:00
vaxerski
f4e99a36a9
input: don't warp region constraints
2023-09-10 12:49:53 +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
MightyPlaza
8fefb180b1
windowrules: Monitor rule fix ( #3157 )
...
* fix monitor rules
modified: src/events/Windows.cpp
* exec on workspace as silent when special is open
modified: src/events/Windows.cpp
2023-09-03 17:23:13 +02:00
MightyPlaza
00bee91bbc
internal: workspace rule handling refactor ( #3116 )
...
modified: src/events/Windows.cpp
2023-09-02 20:41:02 +02:00
Vaxry
d9292800a2
internal: Unsafe state reworks ( #3114 )
2023-09-01 22:03:56 +02:00
vaxerski
bb0933437f
wlr-ext-workspace: remove protocol impl
...
Various reasons: 1st, memory issues. 2nd, MR got closed (see https://gitlab.freedesktop.org/wlroots/wlr-protocols/-/merge_requests/35 ) 3rd, not needed anymore (waybar has its own hyprland/workspaces module)
2023-09-01 17:10:03 +02:00
vaxerski
c98a00678c
input: fix xwayland constraint calcs
...
some minor adjustments, fixes #3028
2023-08-30 17:23:35 +02:00
vaxerski
870471dd96
internal: allow opening empty special workspaces
...
Fixes point 2 of #2596
2023-08-25 18:05:08 +02:00
vaxerski
63b2189ce8
xdgshell: damage old popup coords after a reposition
...
fixes #3038 . I updated the shell ver without properly supporting .reposition
2023-08-21 01:15:00 +02:00
vaxerski
025c023e4b
xwayland: use logical pos in unmanaged geom requests
...
using raw xwayland coords is wrong cuz we use separate coord spaces
2023-08-21 00:39:39 +02:00
942ee943f5
input: unify constraint hint logic
...
Unifies the constraint hint logic. Previously, ignoring the stupid conditions, unscaled hints were mistaken with scaled coordinates.
2023-08-18 22:40:23 +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
4986d74ef2
xwayland: fix use of xwayland coords in native spaces
2023-08-15 20:10:43 +02:00
0314a727eb
layers: set proper alpha to top grabbing surfaces
2023-08-13 21:52:43 +02:00
MightyPlaza
901236a535
rules: center window improvements ( #2935 )
...
* center window improvements
modified: src/config/ConfigManager.cpp
modified: src/events/Windows.cpp
modified: src/managers/KeybindManager.cpp
* remove redundant line
modified: src/events/Windows.cpp
* simplify code
modified: src/events/Windows.cpp
modified: src/managers/KeybindManager.cpp
2023-08-11 16:54:16 +02:00
d7209b90bb
renderer: remember extents before removing a window and use them for dt
...
fixes #2351
2023-08-09 14:28:04 +02:00
vaxerski
f5913135c6
input: add support for cursor-shape-v1
2023-07-24 18:50:17 +02:00
MightyPlaza
50e6f368ff
windowrules: implements nomaximizerequest ( #2785 )
...
* Window.hpp
* ConfigManager.cpp
* Windows.cpp
* fix maximize event
2023-07-23 19:47:41 +02:00
vaxerski
b65adf8d4a
toplevelexport: support dmabuf + various fixes
2023-07-20 12:42:25 +02:00
Vaxry
8370a7fcc4
internal: Protocol C++ Wraps + XDGOutput impl ( #2733 )
...
move to our own xdgoutput impl instead of wlr's
2023-07-18 15:30:28 +02:00
vaxerski
06563d7034
popups: update parent pos on commit
2023-07-15 18:27:21 +02:00
zakk4223
21f64b6660
Keep new mapped layer's alpha zero if the workspace has a fullscreen window ( #2686 )
...
Co-authored-by: Zakk <zakk@rsdio.com>
2023-07-12 12:58:45 +02:00
vaxerski
7a7e3ee6d9
screencopy: don't send frames on commits w/o a buffer
2023-07-12 00:30:42 +02:00
Tuur Vanhoutte
b99ac063ea
Reuse same ID when reconnecting monitor, otherwise use minimum available ID ( #2666 )
...
Fixes #2601
2023-07-09 23:08:40 +02:00
MightyPlaza
34d845da13
typo ( #2643 )
2023-07-04 22:03:19 +02:00
vaxerski
18f9fb5e0f
rules: add stayfocused
2023-07-04 12:05:25 +02:00
01f85a09a9
xwayland: send zero scaling to xwayland if enabled
2023-06-23 21:42:44 +02:00
0283c498d6
xwayland: fix minor force_zero_scaling bugs
2023-06-22 21:43:31 +02:00
Shemig
74ca81cc79
Partial revert of Commit 302ec13
: ( #2539 )
...
Fix crash when screen size is 0x0 (#2523 )
Reason: The disable of a monitor with 0x0 size
is causing issuses with some users.
https://github.com/hyprwm/Hyprland/issues/2537
Left the defensive code to resolve the crash.
Will continue to investigate and find a solution for the
dell xps disabled monitor
Co-authored-by: giladsx <gilad@spectalix.com>
2023-06-17 18:49:37 +02:00
Shemig
302ec1372c
Fix crash when screen size is 0x0 ( #2523 )
...
(When booting into laptop clam mode in dell XPS)
and also ignore any screen with size 0x0 in the first place
Co-authored-by: giladsx <gilad@spectalix.com>
2023-06-15 22:07:58 +02:00
vaxerski
fbabb105c3
gamma: use wlr's new gamma manager event
2023-06-14 13:26:47 +02:00
6beb79f27b
xwayland: add force_zero_scaling
2023-06-11 21:52:13 +02:00
10db5a4fdb
xwayland: disconnect events on destroy
...
thanks Kirill Primak
2023-06-05 20:51:47 +02:00
147e962370
deps: update wlroots
2023-06-03 12:20:28 +02:00
Cyril Levis
d7db7040d4
feat: add ipc set title window event ( #2419 )
...
* feat: add ipc set title window event
* chore: add EMIT_HOOK_EVENT and change event name
2023-06-03 11:18:49 +02:00
ce0f248d20
events: remove old comment
2023-06-02 19:50:02 +02:00