8bcccf9f0f
ime-v2: move to new impl
2024-05-01 16:41:17 +01:00
1f6657f037
keybinds: check for special workspace equality before switching
...
fixes #5814
2024-04-30 16:42:31 +01:00
90e1411315
session-lock: move to new impl
2024-04-30 16:34:09 +01:00
5edc32930d
layerSurface: refactor/move to a memory-safe impl
...
Makes all the pointers smart to avoid memory issues
Refactors layerSurface code to live inside desktop/layersurface
2024-04-30 02:41:27 +01:00
f2b03e9679
ext-idle-notify: move to new impl
2024-04-29 17:50:07 +01:00
86133983a9
xdg-activation: move to new impl
2024-04-29 16:43:24 +01:00
33e0bb1478
wlr-output-power: move to new impl
2024-04-29 01:38:24 +01:00
Vaxry
a5a6480917
core: Move /tmp/hypr to $XDG_RUNTIME_DIR/hypr ( #5788 )
...
Moves the directory containing sockets and logs.
Also restructures lockfiles a bit.
For consumers, check if `$XDG_RUNTIME_DIR/hypr` exists. If so, use it. If not, use the old `/tmp/hypr`.
2024-04-28 22:25:24 +01:00
82a6fba6ec
tokenmgr: separate getRandomUUID from registerNewToken
2024-04-28 18:17:48 +01: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
25aec3ac8c
pointer-constraints: move to new impl
2024-04-27 03:17:04 +01:00
f94264928a
swipe: fix crashes with invalid distance
...
fixes #5758
2024-04-26 19:11:28 +01:00
1d40af64d3
text-input-v3: move to new impl
2024-04-25 23:27:44 +01:00
01df3b73d8
shortcuts-inhibitor: move to new impl
2024-04-25 14:32:35 +01:00
ecf282d331
wlr-foreign-toplevel: move to new impl
2024-04-25 01:10:43 +01:00
zakk4223
72e31d3335
idle-inhibit: Always recheck idle inhibitors on creation and deletion ( #5738 )
...
Formatting
2024-04-25 00:05:19 +01:00
3878f806ff
pointer-gestures: move to new impl
2024-04-24 21:36:56 +01:00
8aecd4f253
cursormgr: fix misscaled cursors on fractional
2024-04-24 16:18:38 +01:00
608eff600d
tokens: add more modes to initial_workspace_tracking
...
1 is single-shot, 2 is persistent
fixes #5732
2024-04-24 16:16:52 +01:00
0d1bb65c75
ext-foreign-toplevel: add implementation
2024-04-24 15:48:06 +01:00
34413d1f36
tokens: fix initial workspace token ignoring special
...
ref #5726
2024-04-24 02:06:13 +01:00
drendog
31d055f6d4
input: fix active keyboard for seat after destroying one ( #5725 )
...
* fix: manage active keyboard for seat after destroying one
* chore: clang-format
2024-04-23 23:30:35 +01:00
Gabriel Ford
c3ec16f494
config: Add More Monitor 'Auto' Positions. ( #5670 )
...
* Reverse Window Positioning.
* Cleanup old comments and logs.
* Finish Splitting Left and Right offset.
* Forgot to add Auto Left to ConfigManager
* Fix problems with auto_left.
* Nearly finish up and down.
* Finish draft of all four dirs. Testing now.
* Change Y value in moveTo for up and down.
* Format, comment, and cleanup.
* Address Vaxry's feedback.
* Add check to see if auto position is first rule.
* Run clang-format.
2024-04-23 01:49:25 +01:00
29308b94ca
windows: add misc:initial_workspace_tracking
...
By default enabled, will track the initial opened workspace of a window spawned for 2 minutes or until it's moved to a different workspace.
For example: you run a launcher and open an app on workspace 1, but quickly switch to workspace 2. The app will now open on workspace 1 regardless of your switch.
2024-04-23 01:49:23 +01:00
7778f01194
managers: Add a TokenManager
2024-04-23 01:28:27 +01:00
741c75d907
gamma-control: move to new impl
2024-04-22 18:21:03 +01:00
f587c3e0ba
alpha-modifier: add support for protocol
2024-04-21 21:21:22 +01:00
ed69502ff6
xdg-decoration: move to new impl
2024-04-21 20:04:58 +01:00
4954dcbbb3
relative-pointer: move to new impl
2024-04-21 19:30:23 +01:00
d9fe1d0f58
idle-inhibit: move to new impl
2024-04-21 16:54:52 +01:00
SoSeDiK
e69bc5b870
config: Expand on window matching ( #5518 )
...
* Expand on window matching
* Requested changes
2024-04-21 15:19:59 +01:00
93e5d7ca5a
input: check for focused_client being null before reading its client
...
ref #5673
2024-04-21 15:17:12 +01:00
4dc07c4378
keybinds: clear repeat source on mouse inputs
...
fixes #5671
2024-04-21 12:50:37 +01:00
30e4b404f2
cursor-shape: move to new impl
2024-04-21 01:49:23 +01:00
4ad739ec63
HookSystem: improve callback safety
2024-04-20 20:16:42 +01:00
84ee839ca6
XDG-Output: move to hyprwayland-scanner
2024-04-20 19:39:59 +01:00
ea47e8c92a
Fractional-scale: move to new impl
2024-04-20 14:19:16 +01:00
Vaxry
ea95449402
core: Move tearing to hyprwayland-scanner ( #5657 )
...
Adds a new dependency: hyprwayland-scanner https://github.com/hyprwm/hyprwayland-scanner
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2024-04-20 13:25:29 +01:00
Vaxry
b52a49b4c4
tearing-control: hyprland impl ( #5655 )
...
* tearing: hl impl
* format
2024-04-19 22:16:35 +01:00
Sungyoon Cho
dd39cd7e42
windows: recalculate monitor after updating windows ( #5647 )
...
Recalculate monitor after updating windows, so layout render doesn't get
overridden.
2024-04-19 18:46:16 +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
ccbdce7c85
input: send an empty relative event after constraint motion events
...
ref #4015
2024-04-15 17:22:25 +01:00
3dbf8e936e
cursor: add hyprcursor loggers
2024-04-15 16:45:08 +01:00
go0d1uck
83ab0f2d66
keybindmgr: fix workspace_back_and_forth ( #5585 )
2024-04-14 14:54:00 +01:00
Yaroslav
9e4b2efe7e
cmake: Some small cmake cleanups ( #5572 )
...
* remove unnecessary include
* cmake: use pkg_get_variable
We can find wayland-scanner executable and wayland-protocols dir by
taking advantage of this function, so no need to use find_program or
manually call pkgconf executable.
* cmake: remove explicit rdynamic option
CMAKE_ENABLE_EXPORTS=ON already implies rdynamic so it's redundant to
set the latter explicitly.
Also, CMAKE_ENABLE_EXPORTS is superseded by
CMAKE_EXECUTABLE_ENABLE_EXPORTS in cmake 3.27.
* cmake: make xcb-errors dep optional
xcb-errors is being used in wlroots, where it's optional. So make it
optional in hyprland as well
2024-04-13 14:40:28 +01:00
b1a9430289
inhibitor: always destroy on window unmap
...
ref #5555
2024-04-12 00:18:58 +01:00
185a3b4881
swipe: nuke numbered
...
fixes #5424
use_r instead
2024-04-11 12:46:19 +01:00
SoSeDiK
0b2f7a1b2f
cursor: Fallback to xcursor if failed to render hyprcursor ( #5534 )
2024-04-10 17:29:17 +01:00
Sungyoon Cho
c35fa9bacc
workspace: update windows when selector match could change ( #5533 )
...
* workspace: update windows when group updates
* workspace: update windows when floating toggle
* workspace: update windows when stop dragging window by mouse
2024-04-10 17:26:11 +01:00
dranull
a06272ae55
input: Option for handling off-window axis events ( #4177 )
2024-04-08 23:35:21 +01:00
63e3668529
style: run clang-format
2024-04-08 15:33:02 +01:00
863c7b6072
eventloop: move timers to an event loop fd
...
fixes #5481
2024-04-07 21:55:29 +01:00
Junxuan Liao
d657b59f70
IME: fix IME popup mouse inputs (again) ( #5417 )
...
`lastBoxLocal`'s size should be the actual popup's size instead of the cursor
rectangle's size. Also, the rectangle position is now relative to the popup.
(Actually fixes #5255 imho.)
One thing #3922 missed was handling focus held by buttons. Let's hope I get
it right this time.
2024-04-07 15:15:50 +01:00
Vaxry
f2a848cbcc
core: Event loop rework ( #5466 )
...
* Event loop rework
* revert missed
2024-04-07 03:31:51 +01:00
thejch
9f1604e4b0
input: Dont set active monitor when simulating mouse movement ( #5465 )
...
* fix mouse simulation switching focusedmon
* fix some warnings with wrong enum
2024-04-07 01:07:21 +01:00
ff114cf6f9
input: fix focus on maximized bg surfaces
2024-04-06 18:59:23 +01:00
Sungyoon Cho
04d067d78b
IME: fix race condition on closing window ( #5455 )
2024-04-06 15:54:02 +01:00
staz
1596e2d1f7
workspacerules: add back on-created-empty functionality ( #5452 )
...
* workspacerules: add back on-created-empty functionality
* clang format
* workspacerules: spawn on-created-empty window while initializing CWorkspace
* clang format
* configManager: fix typo
---------
Co-authored-by: Your Name <you@example.com>
2024-04-06 15:53:32 +01:00
f081a4300f
input: fixup background layer checking on maximized
2024-04-06 15:18:58 +01:00
Sungyoon Cho
c4b660a339
IME: fix crash on restarting IME ( #5428 )
2024-04-04 17:34:04 +01:00
b7d71bc0e1
keybinds: fix spammy warning
2024-04-04 01:16:47 +01:00
36a8ae9bda
input: allow focus to bottom layers on maximized in reserved
2024-04-03 21:57:19 +01:00
d88d589880
swipe: add events
2024-04-03 19:20:47 +01:00
347b839034
workspaces: add visible flag
2024-04-03 10:09:48 +01:00
Vaxry
ef23ef60c5
Workspace/core: Refactor workspace storage ( #5380 )
...
* refactor workspaces to use ptrs
* clang-format
2024-04-02 20:32:39 +01:00
fc0a7af7ba
IME: fix blurry ime on scaled
...
ref #5387
2024-04-02 16:10:55 +01:00
Sungyoon Cho
04a35891a1
IME: fix incorrect popup damage ( #5383 )
2024-04-02 12:22:41 +01:00
Sungyoon Cho
db1506130b
IME: Fix ime popup coordinates and artifacts ( #5373 )
...
* ime: fix incorrect popup coordinate
* ime: fix popup artifacts
2024-04-01 16:37:59 +01:00
108163f1e5
animations: simplify window loop
2024-04-01 16:22:24 +01:00
thejch
7513c0cea5
renderer: Fix layer and window damage sometimes missing 1 frame ( #5370 )
...
* fix the layer and window damage missing 1 frame sometimes
* remove extra loop
2024-04-01 16:21:45 +01:00
416b3d6167
socket2: sanitize data for newlines
2024-04-01 03:54:11 +01:00
Sungyoon Cho
ecc1f22e05
textinput: fix typo ( #5365 )
2024-04-01 00:41:00 +01:00
4156b55cf9
textinput: send deactivate on disable ti
...
ref #5288
2024-03-31 21:30:36 +01:00
thejch
16a9c16d9f
renderer/animations: Fix various inaccurate damage tracking issues and offsets ( #5297 )
2024-03-31 02:14:26 +01:00
Zach DeCook
1cc9a44318
input: Fix incorrect keyboard focus taken when no window was present ( #5337 )
...
A non-keyboard layer never needs keyboard focus
2024-03-31 00:50:25 +00:00
77f26997fd
IME: don't assert on lock mismatch, just fix it
2024-03-30 17:01:02 +00:00
thejch
906e498144
dispatchers: open special ws on active monitor instead of mouse monitor ( #5330 )
2024-03-30 16:58:18 +00:00
3d1bf1405e
keybinds: add binds:disable_keybind_grabbing
...
fixes #5273
2024-03-29 18:57:16 +00:00
2571875453
format: fix format
2024-03-28 02:28:22 +00:00
Sungyoon Cho
ae52b7f468
textinput: fix ime when opening multiple windows ( #5281 )
2024-03-26 15:16:09 +00:00
ae17e900e7
layer-shell: render popups above everything
2024-03-25 16:20:30 +00:00
dmayle
6b28bf563e
keybinds: Fix exit trigger by moving it to monitor.frame ( #5240 )
2024-03-25 01:46:59 +00:00
89543e8e3c
cursormgr: don't set x theme in changeTheme
2024-03-24 20:48:56 +00:00
294ff8609f
cursormgr: log theme loading failures
2024-03-24 19:39:56 +00:00
1e82d5a04d
ime: fix build without pch
2024-03-24 17:19:35 +00:00
5cc4bf699c
IME: Refactor and fixup popups
2024-03-24 16:08:25 +00:00
acf15e5579
text-input: reset lock counter on surface destroy
...
fixes #5231
2024-03-24 15:00:00 +00:00
86dc46ffea
animationmgr: use realpos and size for border damage
...
fixes #5239
2024-03-24 03:09:46 +00:00
09e1128da2
cursormgr: initialize size to 0
...
Because the ctor expects that. Ref #5237
2024-03-24 02:21:36 +00:00
thejch
c7fbea3368
animations: Fix animation issue in focusworkspaceoncurrentmonitor ( #5202 )
...
* dont render when workspace offset
* add guard
* can remove useless code now if workspace offset is not taken into account
* clang-format
* when special workspace is moved, set anim to move
* add offset back
* make it a configurable option because some folks apparently can't align their monitors correctly and may not want this feature😔
* remove config option
2024-03-23 22:14:50 +00:00
Sungyoon Cho
2d5fda4810
input: fix crash with text-input-v1 ( #5234 )
2024-03-23 21:12:27 +00:00
Khalid
059e85ae69
input: Add options to set tablet's active area ( #5199 )
...
* Add options to set tablet's active area
* Set tablet's active area in `setTabletConfigs`
* Fix formatting for new variables in ConfigManager
* Report tablet's physical size with hyprctl
2024-03-23 20:31:03 +00:00
9f2ed02f35
IME/TI: Fixes and refactoring
...
Fixes #5189
2024-03-22 23:08:52 +00:00
8c88689faf
IME: guard unfocused TIs in leave
2024-03-22 18:58:28 +00:00
d2b42e29c6
IME: fix crashes with destroyed text-inputs
...
ref #5189
2024-03-22 18:45:28 +00:00
Horror Proton
bfc95e992d
swipe: fix nullptr in onSwipeUpdate
( #5191 )
2024-03-20 18:13:31 +00:00
Khalid
9ddf1b105e
tablet: Add left_handed option for tablets ( #5178 )
...
* Add left_handed option for tablets
* Update left_handed tablet option's fallback string
2024-03-20 04:00:43 +00:00
8593c45be3
refactor: move window.hpp to desktop/
2024-03-20 01:44:51 +00:00
05cd6d3df1
config/workspace: added workspace selectors
2024-03-19 20:56:20 +00:00
joshua
5c1097cbc1
IME: Improve handling of text-input and ime-relay ( #5147 )
...
* input: Handling multiple surfaces for the text-input-v1 protocol implementation and imporve InputMethodRelay logic
fixes #2708
* clang-format
* minor style nits
---------
Co-authored-by: Vaxry <vaxry@vaxry.net>
2024-03-19 15:54:33 +00:00