memchr
ac2f1a9c30
feat: add a new movewindoworgroup dispatcher ( #3006 )
2023-09-10 23:29:10 +01:00
vaxerski
0d53401217
xwayland: adjust coord calculation
...
coord exactly at the corner would be calc'd wrong
2023-09-10 20:19:09 +01:00
vaxerski
d28725c678
keybinds: ignore conditions on special release
...
while the previous commit ignores mods, we also need to ignore other conditions to avoid dangling presses
2023-09-10 16:54:14 +01:00
vaxerski
dcb909df04
keybinds: track pressed special binds
...
Ignore mods only if we're processing a special bind, and only if it's pressed. Otherwise we might shadow normal key releases via ignoring mods. Fixes #3240
2023-09-10 16:27:14 +01:00
vaxerski
d490f198a4
keybinds: ignore mods on release of special binds
...
fixes #3208
2023-09-10 13:13:15 +01:00
memchr
f7f70c9e72
refactor: replace lambdas with CKeybindManager::switchToWindow ( #3229 )
...
moves `switchToWindow` lambdas to a single private method
`CKeybindManager::switchToWindow()`.
fixes #3227 , as a by-product of the mouse motion simulation at the end
of `CKeybindManager::switchToWindow()`.
2023-09-10 12:51:27 +01:00
shadowmax31
c061946a94
keybinds: Do not suppress pass and mouse release ( #3219 )
2023-09-09 10:15:24 +01:00
398e861b55
internal: fix warnings
2023-09-07 16:43:01 +02: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
Philip Damianik
60c01dab01
config: Integrate HASCONFIG into CConfigManager::getConfigValueSafeDevice ( #3195 )
2023-09-06 19:16:46 +02:00
Philip Damianik
a15e3e1f38
config/input: Improve fallback behavior for unset device config values ( #3184 )
...
* Fix fallback behavior for unset device config values
* Replace overload with default argument for fallback config key
* Remove default value for fallback argument in source
* Fix typos
2023-09-06 16:14:18 +02:00
unrealhoang
f90a009e93
input/config: add button scroll lock ( #3189 )
2023-09-06 14:54:48 +02:00
vaxerski
8b9cc9a8db
animationmgr: guard monitor ptr in animationSlide
2023-09-06 13:05:37 +02:00
Vaxry
61a71c65ac
internal: Formatter rework ( #3186 )
2023-09-06 12:51:36 +02:00
Dickby
28f1f035b1
animationmgr: Optimize CAnimationManager::scheduleTick a bit. ( #3172 )
...
* Optimize CAnimationManager::scheduleTick a bit.
* Use integer in wl_event_source_timer_update call.
2023-09-05 15:06:39 +02:00
vaxerski
d9937fcdba
input: minor constraint fixes
...
fixes the confined region, warping issues, etc. Closes #3158
2023-09-04 17:34:19 +02:00
vaxerski
e3c83ab2e0
xwaylandmgr: find closest output in xwayland coord translation
...
partially off-screen windows would be snapped to 0,0 otherwise
2023-09-04 17:30:48 +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
MightyPlaza
6a0e2bbff3
socket2: added "activespecial" IPC event ( #3163 )
2023-09-04 15:11:51 +02:00
staz
01c6c5ae22
internal: Revert rounding of window size ( #3153 )
...
* Revert "renderer: round coords and size in renderWindow"
This reverts commit fc0c1896e0
.
* Revert "xwaylandmgr: round reported sizes"
This reverts commit 2985e20e6a
.
2023-09-03 12:51:48 +02:00
vaxerski
204a580544
keybinds: fixup global conditions
2023-09-02 19:36:12 +02:00
vaxerski
1ecfb5e852
globalshortcuts: allow empty appid
2023-09-02 19:32:05 +02:00
vaxerski
2985e20e6a
xwaylandmgr: round reported sizes
...
Since we round the sizes in the renderer, it's also a good idea to round the sizes reported to the apps. Fixes #3138
2023-09-02 00:04:55 +02:00
vaxerski
563fe83db2
keybinds: set special monitor id before recalc
...
set special workspace's monitor ID before we call recalculateMonitor in toggleSpecialWorkspace. Fixes #1151
2023-09-01 22:57:23 +02:00
vaxerski
f242f9447b
keybinds: suppress up event if down was consumed
...
Fixes #3000
2023-09-01 22:14:10 +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
q234rty
5035f5fc68
text-input-v1: Fix preedit styling in chromium ( #3131 )
2023-09-01 16:39:15 +02:00
vaxerski
9c4f776757
keybinds: fixup release conditions
...
honestly I already forgot why the m_vHeldBack vec existed. Seems useless and annoying. Fixes #3113
2023-08-30 23:23:35 +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
c98a00678c
input: fix xwayland constraint calcs
...
some minor adjustments, fixes #3028
2023-08-30 17:23:35 +02:00
vaxerski
28a90d6055
input: warp in unconstrainMouse
...
XWayland coord translation would fuck up if we did this in destroyConstraint
2023-08-30 13:42:17 +02:00
vaxerski
870471dd96
internal: allow opening empty special workspaces
...
Fixes point 2 of #2596
2023-08-25 18:05:08 +02:00
memchr
f0da0b0be4
input: improved path handling; null check return value of fopen. ( #3061 )
2023-08-25 17:21:55 +02:00
vaxerski
6a5a5ed11e
input: add transparent binds
...
adds a new flag for binds to be transparent (non-shadowable)
fixes #3058
2023-08-25 12:35:24 +02:00
vaxerski
ad085666c1
input: sanitize newlines in device names
...
fixes #3066 by replacing newlines with dashes in device names
2023-08-25 12:17:48 +02:00
end-4
17ea7db23a
gestures: Swipe direction lock ( #3052 )
2023-08-23 22:40:19 +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
14f20a7372
xwayland: fix incorrect VECINRECT usage
...
Fixes #3002 . VECINRECT uses x2 and y2 and not w / h.
2023-08-18 22:20:05 +02:00
end-4
37a211a2ae
animations: add slidefade and slidefadevert styles for workspaces ( #3008 )
...
* add slidefade and slidefadevert animations
* fix swiping for slidefadevert
* rename minPerc to movePerc for slidefade anim styles
* change default slidefade percentage to 100%
* remove useless comments
* findlastof + 1
* debug logging for slidefade/slidefadevert percentage
2023-08-17 22:30:20 +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
memchr
63b266cf65
internal: ioctl use /dev/tty instead of fd 0 for VT_GETSTATE ( #2989 )
...
* fix: ioctl use /dev/tty instead of fd 0 for VT_GETSTATE
ioctl VT_GETSTATE on stdin fails if it is not console, such as when
using GDM. `/dev/tty` should be used instead.
- `/dev/tty` is a synonym for the controlling terminal of a process, if
there is one.
---------
Co-authored-by: Jan Beich <jbeich@FreeBSD.org>
2023-08-16 10:51:08 +02:00
4986d74ef2
xwayland: fix use of xwayland coords in native spaces
2023-08-15 20:10:43 +02:00
91e28bbe9d
xwayland: use a completely separate coordinate system
...
Use a completely separate coordinate system for XWayland. This fixes all issues with force_zero_scaling overlaps.
Fixes #2916
2023-08-15 19:15:37 +02:00
0220e4c1ea
input: notify idle about activity on mouse move regardless of focus
2023-08-13 17:46:20 +02:00
UserSv4
8a7ce59ad4
internal: Fix grouped windows not being properly focused on activation ( #2925 )
...
* Fix grouped windows not being properly focused on activation
This bug could happen if you:
1. Open two Chromium windows in a single group
2. Open some tabs in both of the windows
3. Using tabs search (Ctrl+Shift+A) try to switch to a tab in the second window from the first one.
When this happens any window focus would be lost (hyprctl activewindow starts to output "Invalid") and also the mouse cursor would become centered relatively to the second window.
* Update Compositor.cpp
2023-08-11 17:27:09 +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
MightyPlaza
6295cbe9cb
keybinds: Keep aspect ratio ( #2907 )
2023-08-08 18:52:20 +02:00
Michael
ad3b8dddf9
keybinds: Only call fclose() when we have a valid file. ( #2908 )
...
Signed-off-by: Michael Pacheco <git@michaelpacheco.org>
2023-08-08 16:07:15 +02:00
Michael
cebab759d5
Close keymap files. Fixes #2904 ( #2905 )
...
Signed-off-by: Michael Pacheco <git@michaelpacheco.org>
2023-08-07 19:34:15 +02:00
a077b7a92e
animationmgr: avoid redundant ticks
2023-08-05 23:29:33 +02:00
vaxerski
7a2027d1fd
input: fix and unify client checking in mouseRequests
2023-08-03 18:44:07 +02:00
vaxerski
08651736ad
keybinds: add toggle to dpms
2023-07-30 16:46:37 +02:00
vaxerski
4173d2ccf6
input: fix styling
2023-07-25 11:49:36 +02:00
vaxerski
f5913135c6
input: add support for cursor-shape-v1
2023-07-24 18:50:17 +02:00
memchr
76c6e09e39
keybinds: Make moveintogroup locking check configurable ( #2796 )
...
* groups: revert to the old moveintogroup behaviour, ignore m_sGroupData.locked
* groups: Make moveintogroup locking check configurable
2023-07-24 18:25:10 +02:00
Rachel Knight
b21644b611
input: Fix #2376 mouse movement bug in XWayland ( #2776 )
2023-07-22 19:31:36 +02:00
MightyPlaza
ca54ceff6f
groups: add use_current_group_pos ( #2759 )
2023-07-20 19:48:32 +02:00
vaxerski
6c1f4faff2
animationmgr: avoid looping over all avars in favor of only active ones
2023-07-20 19:26:10 +02:00
vaxerski
7091d4e597
animationmanager: optimize avar state
2023-07-19 22:40:03 +02:00
Vaxry
89b87158db
internal: Wrap regions ( #2750 )
2023-07-19 20:09:49 +02:00
vaxerski
f4f0f35c5b
renderer: add occlusion for back layers
2023-07-19 16:13:55 +02:00
MightyPlaza
3b03597784
keybinds: movegroupwindow-improvement ( #2740 )
...
* movegroupwindow-improvement
* use std::swap
2023-07-19 00:30:10 +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
Jan Beich
8c9e2e1ff1
deps: update wlroots ( #2734 )
2023-07-18 12:13:59 +02:00
István Donkó
5c8a20be77
fix: handle window change directions in fullscreen ( #2728 )
2023-07-18 12:12:50 +02:00
vaxerski
3229862dd4
xwayland: guard monitor validity in xwayland scale overriding
2023-07-15 23:10:05 +02:00
Lennard Hofmann
06f5910365
Make bind modmask case-insensitive ( #2714 )
2023-07-14 18:39:53 +02:00
MightyPlaza
db2367bf33
update groub decos ( #2705 )
2023-07-13 20:17:14 +02:00
vaxerski
f8def68e7e
idle: implement new protocol
2023-07-13 18:05:34 +02:00
vaxerski
9f7382bca4
keybinds: add movegroupwindow
2023-07-13 17:55:25 +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
b33d82734f
input: schedule frame on mouse move
2023-07-09 00:44:32 +02:00
vaxerski
e632bf176b
config: fix reading touchpad values to non-touchpad per-device cfgs
2023-07-06 16:26:38 +02:00
Mykola Perehudov
bbedb065e1
eventmanager: drop obsoleted ignore events flag ( #2660 )
...
This flag became obsoleted in commit
287e6c4ede
2023-07-06 15:23:11 +02:00
Mykola Perehudov
0c974b7236
Avoid passing control unix socket descriptors to children ( #2656 )
...
Add SOCK_CLOEXEC flags to server side connection FDs to make them
closed during execve(2).
2023-07-06 11:39:02 +02:00
nexec
8407a9af0a
Close socket2 client descriptor on hangup ( #2654 )
2023-07-06 00:18:44 +02:00
vaxerski
86e487e003
input: remove old redundant code
2023-07-05 13:20:40 +02:00
vaxerski
07d7962c7f
swipe: fix mixup of r/m
2023-07-04 12:34:22 +02:00
vaxerski
18f9fb5e0f
rules: add stayfocused
2023-07-04 12:05:25 +02:00
MightyPlaza
50755d26d4
lockgroups fix ( #2636 )
2023-07-03 15:53:04 +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
86ca283352
gestures: add workspace_swipe_use_r
2023-07-01 16:30:36 +02:00
4294456cdc
xwayland: remove spaces from output names
2023-06-25 13:52:24 +02:00
01f85a09a9
xwayland: send zero scaling to xwayland if enabled
2023-06-23 21:42:44 +02:00
fc59cef1ee
keybinds: remove old todo
2023-06-21 21:20:26 +02:00
cabdf38ce4
internal: minor style fixes
2023-06-20 21:35:54 +02:00
2295bbdd80
xwaylandmanager: fixup style
2023-06-18 18:14:52 +02:00
outfoxxed
f0e4f6622e
Implement pass binds ( #2503 )
...
* Implement pass binds
Pass binds run the associated dispatcher but do not prevent windows
from receiving the bind.
* Fix pass binds not working properly with release binds
* Rename `pass` to `nonConsuming`
2023-06-14 13:08:56 +02:00
vaxerski
807b52b019
animationmgr: warp on equal start and goal
2023-06-13 18:50:45 +02:00
memchr
24ed9b061f
feat: add variable to customize locked group border color ( #2507 )
...
added variables:
- general:col.group_border_locked
- general:col.group_border_locked_active
2023-06-13 12:04:54 +02:00
6beb79f27b
xwayland: add force_zero_scaling
2023-06-11 21:52:13 +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
cf37922d42
input: update surface input on changeworkspace
2023-06-09 12:20:40 +02:00
staz
e4e6ddb075
Make movetoworkspace register previous workspace ( #2436 )
...
* Make movetoworkspace register previous workspace
* style: no braces + format with clang-format
2023-06-05 09:44:13 +02:00
147e962370
deps: update wlroots
2023-06-03 12:20:28 +02:00
baf81cdc5d
input: force focus on movefocus
2023-05-31 20:59:38 +02:00
vaxerski
a7cfbdb854
keybinds: fix tryMoveFocusToMonitor with special
2023-05-29 18:11:37 +02:00
Jeremy Huang
b3a86952cf
focus: fix #1675 window not scrollable after movefocus ( #2390 )
2023-05-29 09:52:36 +02:00
Jeremy Huang
8afc2f45c7
focus: make cursor follow movewindow ( #2374 )
2023-05-27 12:16:50 +02:00
vaxerski
a2bb95fc60
touch: fix double offset in local
2023-05-24 22:19:22 +02:00
vaxerski
12227d7b6a
input: only configure newly added touch devices
2023-05-24 22:17:33 +02:00
vaxerski
eb1f832fce
decos: recalc on add
2023-05-23 14:26:38 +02:00
vaxerski
088b4a68e6
moveActiveToWorkspace: update last window of old ws
2023-05-22 19:44:10 +02:00
Russell Greene
ad244190e0
1483: fix crash on last display disconnect ( #2344 )
2023-05-22 12:18:07 +02:00
maqrrr
9f8c5cb63c
Fix broken pipe crash when event listener terminates ( #2339 )
2023-05-21 14:38:18 +02:00
5627b70981
input: reset cursor hide timer on tablet
2023-05-20 21:15:21 +02:00
Anthony Ruhier
9ef7225532
don't swap workspaces if monitors are the same ( #2322 )
...
Return swapActiveWorkspaces early if MON1 and MON2 are equals, to avoid
buggy behavior.
2023-05-17 13:31:03 +01:00
vaxerski
5b84b0fb44
animationmgr: allow empty avars
2023-05-15 17:11:51 +01:00
vaxerski
824813fc6a
internal: remove check for negative exact vector args
2023-05-15 15:16:06 +01:00
vaxerski
7c207243e4
input: check for matrix availability in touch config
2023-05-14 13:54:55 +01:00
vaxerski
896a78aaa0
lock: add allow_session_lock_restore
2023-05-13 12:36:36 +01:00
vaxerski
0859944c9a
input: add custom accel profiles
2023-05-05 16:06:13 +01:00
vaxerski
79791c9ed4
internal: fix -Wsign-compare and -Wunused-variable warnings
2023-05-02 14:53:31 +01:00
vaxerski
cde7f79af0
xwayland: allow initial focus to dialogs
2023-05-02 14:44:21 +01:00
vaxerski
45b1e6dc5e
keybinds: simulate workspace switch on focusWindow to another ws
2023-05-01 15:39:08 +01:00
vaxerski
d6b069458d
input: don't refocus on dragging
2023-05-01 15:15:55 +01:00
vaxerski
4a1fb3e903
keybinds: fix move to named
2023-04-26 16:58:58 +01:00
vaxerski
28ca434fb5
Revert "input: make overlay layers precede constraints"
...
This reverts commit 1e526411b6
.
Issues with input
2023-04-25 21:50:24 +01:00
vaxerski
1e526411b6
input: make overlay layers precede constraints
2023-04-25 17:02:20 +01:00
outfoxxed
f40272d509
Add follow mouse mode to avoid refocusing under cursor ( #2135 )
...
* Add follow mouse mode to avoid refocusing under cursor
2023-04-25 16:00:34 +01:00
Tyler Schneider
67c73ec100
Fixed a crash when waking up monitors in power-saving mode ( #2139 )
2023-04-23 22:28:18 +01:00
Jan Beich
f7579fc923
internal: unhardcode sun_path size after a6cfe70428
( #2137 )
...
hyprctl/main.cpp:83:5: warning: 'strncpy' size argument is too large; destination buffer has size 104, but size argument is 107 [-Wfortify-source]
strncpy(serverAddress.sun_path, socketPath.c_str(), 107);
^
hyprctl/main.cpp:146:5: warning: 'strncpy' size argument is too large; destination buffer has size 104, but size argument is 107 [-Wfortify-source]
strncpy(serverAddress.sun_path, socketPath.c_str(), 107);
^
src/managers/EventManager.cpp:70:9: warning: 'strncpy' size argument is too large; destination buffer has size 104, but size argument is 107 [-Wfortify-source]
strncpy(SERVERADDRESS.sun_path, socketPath.c_str(), 107);
^
2023-04-23 21:20:29 +01:00
mekb
fbcbe947da
Added moveCursor dispatcher ( #2100 )
...
* Added moveCursor dispatcher
* fix error message for moveCursor
2023-04-23 19:50:53 +01:00
vaxerski
97b0368765
xwayland: crude fix for qt dnds
2023-04-22 22:20:48 +01:00
outfoxxed
2df0d034bc
Fix dragging cursor being forced on fullscreen windows ( #2115 )
...
Fix two edge cases causing the dragging mouse cursor to be forced on
fullscreen windows:
- hovering over a window border and running the fullscreen dispatcher
- moving mouse focus from a monitor with the resize cursor set to a
different monitor with a fullscreen window
2023-04-21 13:36:55 +01:00
vaxerski
b15803510c
input: improve mouse release conditions
2023-04-20 00:46:42 +01:00
vaxerski
8b3d8dc792
Format: use %lx for all addresses
2023-04-17 17:35:28 +01:00
vaxerski
a6cfe70428
internal: avoid buffer overflows with socket paths
2023-04-17 16:38:52 +01:00
vaxerski
b6a7be7663
dispatchers: fix movetoworkspace with bound ws-es
2023-04-17 16:09:46 +01:00
vaxerski
785fc8d669
dispatchers: fix missing log param
2023-04-17 13:30:37 +01:00
vaxerski
f80f4f3194
dispatchers: fix named ws-es on changeworkspace
2023-04-16 21:32:32 +01:00
vaxerski
b05ff89c76
Render: add cursor_zoom
2023-04-16 14:48:38 +01:00
vaxerski
d6c4ae71d0
damage: fix damage on moves / workspace changes
2023-04-15 16:16:33 +01:00
vaxerski
a6d94eafba
tick: don't tick on invalid session
2023-04-15 12:45:25 +01:00
vaxerski
83f1616a65
keybinds: minor adjustments to workspace
2023-04-14 17:51:10 +01:00
vaxerski
7ec23254fd
workspace: don't lose monitor with refocus on no warps
2023-04-14 17:03:12 +01:00
vaxerski
c2b5dd1be6
keybinds: only warp on different monitor ws
2023-04-14 16:22:55 +01:00
vaxerski
727160f0a4
workspaces: fixup workspaces not activating on workspace switch
2023-04-14 15:28:22 +01:00
vaxerski
3f2a18a435
keybinds: remove old comment
2023-04-14 15:16:59 +01:00
vaxerski
cf7c5e4dff
misc: fix a warning
2023-04-14 15:06:22 +01:00
vaxerski
287e6c4ede
internal: workspace manip handling rework
2023-04-14 15:03:53 +01:00
vaxerski
011600ac6e
keybinds: more intelligent fallback on silent move
2023-04-14 01:42:55 +01:00
vaxerski
260ef788f5
internal: don't sanity check workspaces on internal ws calls
2023-04-13 22:21:11 +01:00
vaxerski
6131e0bef7
keybinds: refocus properly on silent move
2023-04-13 22:20:31 +01:00
Stanisław Zagórowski
ac2cd0f0dc
plugins: Add "tick" event ( #2029 )
2023-04-12 11:18:33 +01:00
Max Verevkin
c2f29be9ba
make ext_workspace_unstable impl more atomic ( #2023 )
2023-04-11 14:28:32 +01:00
vaxerski
16a034a34a
keybinds: send pass with a null keymap
2023-04-10 22:42:05 +01:00
Hilmar Wiegand
7b43f9f056
Implement window move ( #2018 )
2023-04-10 20:07:49 +01:00
vaxerski
56a307d734
Revert "keybinds: avoid sending release on suppressed press"
...
Issues with XWayland
This reverts commit a1b1480c21
.
2023-04-10 15:47:20 +01:00
Hilmar Wiegand
6a4bda60f2
Allow movefocus for empty workspaces ( #2011 )
...
* Allow switching to empty workspaces using movefocus
* Allow switching to other workspaces when no windows are focused
* Implement review feedback
* Add option to disable focus fallback
* Remove unnecessary braces
2023-04-10 14:40:03 +01:00
vaxerski
a1b1480c21
keybinds: avoid sending release on suppressed press
2023-04-10 00:56:08 +01:00
vaxerski
4ae784dc53
input: fix kb focus on top layers without interactive flag
2023-04-09 19:53:31 +01:00
Vaxry
046ad79d11
GlobalShortcuts protocol impl ( #1886 )
...
Implements the `hyprland-global-shortcuts-v1` protocol
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-04-09 13:48:20 +01:00
vaxerski
e4e653ada6
socket2: receive bytes to avoid endless loops
2023-04-08 23:14:12 +01:00
Andrew Pritchard
dfb78e0593
Fix swiping onto a new workspace with multiple monitors. ( #1971 )
...
The previous code could run into issues into the following circumstances:
* The focused monitor is on its rightmost workspace with ID `i`.
* Another monitor has a workspace with ID `i+1`.
* `workspace_swipe_create_new` is enabled.
Then, swiping rightwards attempts to target a new workspace with ID
`i+1`: completing the swipe gesture unintentionally focuses that
workspace on whichever monitor it's already on while leaving the active
monitor in a broken state where it shows no windows but creates new
windows on the workspace it was previously on; and cancelling the swipe
gesture shifts the entire workspace `i+1` to the right by the width of
the active monitor.
By choosing an ID that doesn't exist, this problematic behavior is
avoided. More specifically, it's the smallest ID greater than any
existing workspace's ID, because otherwise the new workspace that was
seemingly just created to the right of the rightmost workspace could end
up somewhere in the middle of the workspace order.
2023-04-07 12:18:53 +01:00
vaxerski
569eaff04c
swipe: block on locked session
2023-04-07 11:51:52 +01:00
vaxerski
80650b6722
keybinds: allow MOD1 as an alias of ALT
2023-04-06 19:28:09 +01:00
vaxerski
19809532df
input: ignore constraints on touch
2023-04-06 11:34:18 +01:00
vaxerski
2f7fb2f553
input: don't set icon on held buttons without a drag
2023-04-03 23:17:06 +01:00
vaxerski
23001f6144
input: don't overset resize icons on drag
2023-04-03 23:15:33 +01:00
vaxerski
55d585ce17
input: fix click-to-refocus not working on loose
2023-04-03 23:09:44 +01:00
Vaxry
0a099ca2ab
Hyprland Screencopy impl ( #1800 )
...
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-04-03 17:01:05 +01:00
vaxerski
b1426cad28
input: fix minor issue with holding focus
2023-04-02 13:42:57 +01:00
vaxerski
0fc145c52c
input: hold focus on mouse buttons
2023-04-02 13:30:45 +01:00
Jan Beich
16bc5997bb
Misc FreeBSD fixes ( #1926 )
...
* helpers: drop incomplete GNU/kFreeBSD bits
Debian with FreeBSD kernel lacks Wayland-related packages and is not
officially supported since Jessie.
* KeybindManager: check VT ioctl availability instead of hardcoding
* plugins: add missing header for libc++ after 430778293e
src/plugins/PluginAPI.cpp:299:33: error: implicit instantiation of undefined template 'std::basic_istringstream<char>'
std::istringstream inStream(SYMBOLS);
^
/usr/include/c++/v1/iosfwd:140:32: note: template is declared here
class _LIBCPP_TEMPLATE_VIS basic_istringstream;
^
* plugins: prefer llvm-nm with Clang after 430778293e
nm: invalid option -- j
2023-03-31 20:39:04 +01:00
vaxerski
b88de63abb
Input: fix always_follow_on_dnd
2023-03-30 00:34:24 +01:00
Alexander Seiler
60527ab180
Fix some typos ( #1907 )
...
Signed-off-by: Alexander Seiler <seileralex@gmail.com>
2023-03-29 23:44:25 +01:00
vaxerski
df54ab40ce
layer: allow focus on top/overlay surfaces without a window
2023-03-28 17:21:11 +01:00
6fec5bfbeb
keybinds: improve movefocus on fullscreen
2023-03-27 15:19:27 +01:00
Vaxry
788a8f7c13
internal: wrap wlr surfaces ( #1822 )
2023-03-20 15:00:58 +00:00
vaxerski
7a514f41a3
Focus: warp cursor on movewindow
2023-03-20 01:42:21 +00:00
vaxerski
2ba5238b8e
groups: fix moving between displays
2023-03-18 16:30:29 +00:00
vaxerski
606cb2832a
keybinds: remember last workspace on focusmonitor
2023-03-16 16:40:28 +00:00
vaxerski
162f235972
switches: do not fire on no change in toggle
2023-03-16 16:30:22 +00:00
96718d8b09
dpms: fix keyboard dpms
2023-03-16 15:29:48 +00:00
vaxerski
5d44ea802a
monitors: guard output when read
2023-03-16 14:03:40 +00:00
vaxerski
3e261b1fa7
dpms: fix key_press_enables_dpms
2023-03-16 00:30:07 +00:00
vaxerski
d63e8c8f45
ime: account for text height in popup calcs
2023-03-14 16:46:39 +00:00
vaxerski
7e5a3eb045
ime: fix panels overflowing on corners
2023-03-14 16:12:25 +00:00
vaxerski
f960f72785
input: minor fixes for tiv1
2023-03-14 14:37:00 +00:00
vaxerski
0807b8b95f
tiv1: minor fixes for crashes
2023-03-14 13:51:08 +00:00
Vaxry
5dc1a5fec6
input: text-input-v1 support ( #1778 )
...
support zwp_text_input_v1
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-03-14 12:57:50 +00:00
vaxerski
e749af7b60
dispatchers: remember named workspaces in prev
2023-03-13 15:19:25 +00:00
vaxerski
bcd8fe9573
groups: add deco on moveIntoGroup
2023-03-13 00:47:57 +00:00
vaxerski
146d231ec5
config: add key_press_enables_dpms
2023-03-12 13:46:38 +00:00
vaxerski
71ef1bde7e
dispatchers: disallow togglesplit on fullscreen
2023-03-11 17:58:34 +00:00
vaxerski
dc7d783d14
Initialize priority managers before server init
2023-03-05 13:37:21 +00:00
vaxerski
31cd104286
fix warns
2023-03-04 00:53:42 +00:00
vaxerski
fe007fd36a
xwl: don't try to get unmanaged titles
2023-03-03 19:37:25 +00:00
vaxerski
51ce3ddd67
layoutmgr: don't reenable layout on unchanged layout
2023-03-03 14:06:01 +00:00
vaxerski
66b8629964
Update the debug overlay
2023-03-03 12:15:59 +00:00
vaxerski
489ef7c51c
add toggle group lock
2023-03-02 20:50:37 +00:00
vaxerski
34685a836a
Move AnimationManager::tick() to an event loop
2023-03-02 17:30:50 +00:00
76fc12869d
nuke cursorSI due to crashes
2023-03-01 22:12:26 +00:00
vaxerski
7c5c7ced91
Convert reverse iterators to ranges
2023-03-01 14:06:52 +00:00
vaxerski
0e252d2c77
Don't set surface cursors for overriden
2023-02-28 23:17:27 +00:00
vaxerski
07b98952bc
Reset cursor to pointer on focus on interactable deco
2023-02-28 23:06:46 +00:00
vaxerski
cd2399715d
Revert small incorrect change to dragging
2023-02-28 22:53:41 +00:00
vaxerski
2187c6cf43
Allow decos to request interactivity
2023-02-28 22:32:42 +00:00
vaxerski
a224d366ca
Added mouseMove event
2023-02-28 21:47:00 +00:00
vaxerski
5e48e6b075
Added mouseButton event
2023-02-28 21:45:57 +00:00
vaxerski
72fc309fb1
make window reserved area less stupid
2023-02-28 21:18:13 +00:00
vaxerski
4b20d4f1ad
Added decoration reserved area
2023-02-28 19:36:36 +00:00
vaxerski
4d3f2ca96b
minor fixes to touch handling
2023-02-28 19:02:30 +00:00
ac251d7a66
allow focus to grouped windows
2023-02-28 12:34:59 +00:00
Vaxry
8b81f41e52
Plugin System ( #1590 )
...
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-02-27 12:32:38 +00:00
vaxerski
18ed73f091
Added moveoutofgroup dispatcher
2023-02-26 13:55:35 +00:00
vaxerski
55b412e0f4
Added moveintogroup dispatcher
2023-02-26 13:52:11 +00:00
Ryan Dwyer
3bfaeacf7d
movefocus: Set new workspace as active when focusing new monitor ( #1640 )
2023-02-26 13:44:11 +00:00
vaxerski
edd0a141de
don't snap on empty hint
2023-02-25 22:19:51 +00:00
vaxerski
1089e858b4
fix changegroupactive back
2023-02-24 17:24:51 +00:00
60e37d727d
fix cyclenext on empty focus
2023-02-23 14:27:43 +00:00
14a2de0d0e
add mouse_left _right
2023-02-23 13:55:27 +00:00
Ching Pei Yang
513bbb8047
Resize on border icon bug ( #1608 )
...
* fix: reset border hover icon on setting empty focus
* cleanup comment
* fix: reset border hover icon on layer surface
2023-02-21 23:57:38 +00:00
a66ef50469
added a lockgroups dispatcher
2023-02-21 12:13:41 +00:00
vaxerski
df2956b411
ignore hidden in allfloat
2023-02-19 22:14:37 +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
vaxerski
6e16627cbc
Added execr
2023-02-19 13:59:47 +00:00
vaxerski
6548439f6c
remove constraint recheck log
2023-02-19 12:15:33 +00:00
Ching Pei Yang
c92e0c05e4
Resize on border ( #1347 )
2023-02-18 22:35:31 +00:00
vaxerski
b944386ca5
reset focus on lock surface destroy
2023-02-18 01:09:01 +00:00
vaxerski
87a4cc7654
rethink visible flag in animmgr
2023-02-14 17:44:09 +00:00
vaxerski
fdc847706a
ignore damage on hidden windows in animationmanager
2023-02-14 17:14:09 +00:00
nub
98c95aa34d
focusCurrentOrLast dispatcher ( #1545 )
2023-02-14 00:46:58 +00:00
vaxerski
7d914cd427
force monitor focus on refocus
2023-02-12 10:38:37 +00:00
68f56130ba
add misc:mouse_move_focuses_monitor
2023-02-09 15:29:02 +00:00
Mihai Fufezan
53945cff31
libinput: add tap_button_map ( #1495 )
2023-02-05 14:17:23 +00:00
vaxerski
a0bc0e4998
make a null surface focus reset lastfocus
2023-02-03 17:18:22 +00:00
vaxerski
d81f45e54a
clear focus on failed unlock attempt
2023-02-03 17:06:07 +00:00
vaxerski
fd3a1cd086
fix crash with libc++ in appid
2023-02-03 16:17:37 +00:00
vaxerski
a46abd8b1a
update wlroots dep
2023-02-03 12:43:43 +00:00
vaxerski
129e99a6f6
Implement ext-session-lock-v1
2023-02-03 11:58:55 +00:00
ozwaldorf
32d56fec97
feat: border angle animations ( #1469 )
...
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-02-01 21:06:01 +00:00
vaxerski
11234529db
Simulate mouse movement on unmap of popups and subsurfaces
2023-01-31 00:26:15 +00:00
vaxerski
32381fe6c4
send a 1 on unknown minimize event
2023-01-29 17:02:55 +00:00
Jan Beich
c3adc9ec56
Get active VT via ioctl instead of sysfs after e90c5c6347
( #1448 )
2023-01-29 12:44:38 +00:00
vaxerski
328e034472
fix clang error
2023-01-28 18:10:57 +00:00
06b17db227
don't set cursor when timeout reached
2023-01-26 10:39:06 +00:00
vaxerski
fc89e70a1f
better ls noanim handling
2023-01-25 15:38:21 +00:00
vaxerski
9813ba2f56
Add hyprctl animations
2023-01-25 15:16:28 +00:00
cb98242ea7
remove old comment and fixup lsl var name
2023-01-22 17:03:25 +01:00
Cyril Levis
fcbfd19393
feat: add focus to urgent or last window ( #1402 )
...
* feat: add focus to urgent or last window
* Rename dispatcher
Co-authored-by: Maxim Baz <git@maximbaz.com>
2023-01-21 11:18:55 +01:00
5814d9b2a0
make hyprerror follow fadein anim
2023-01-20 20:48:07 +01:00
Vaxry
60b880d931
wp-fractional-scaling-v1 impl ( #1373 )
...
* Initial fractional scaling impl
* apply UV after geom calcs
* fix scaling -> scale
* meson: add fractional scale proto
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-01-20 19:44:30 +01:00
5c83976977
added misc:hide_cursor_on_touch
2023-01-17 11:47:39 +01:00
2ec7e241cd
send cursor updates on touch move
2023-01-17 11:34:57 +01:00
devil-may-c0de
6a56d1e4d0
change placement of isSwitchingToPrevious ( #1388 )
...
fixes #1218 , but doesn't break functionality of allow_workspace_cycles.
2023-01-16 21:04:10 +01:00
ppenguin
040e99fd17
Add tablets calibration matrix for dynamic rotation with 2-in1/tablet PC usage ( #1319 )
2023-01-15 20:38:58 +01:00
9c77415cda
damage monitor on moveactive
2023-01-13 12:31:24 +01:00
11afb66010
release mouse buttons on map from LS
2023-01-11 19:15:18 +01:00
4ec034ad49
send enter for IME popups
2023-01-10 19:21:59 +01:00
Raffaele Mancuso
c0c7c12bb9
Pin dispatcher for a specific window ( #1340 )
...
Closes #1339
2023-01-08 18:37:24 +01:00
riChar
e5dcbf73d8
Add "on" and "off" for the bind of switch ( #1342 )
2023-01-08 16:35:24 +01:00
Cyril Levis
3173fbdc4a
feat: dispatcher, add workspace renaming ( #1336 )
...
* feat: dispatcher, add workspace renaming
Co-authored-by: vaxerski <vaxry@vaxry.net>
2023-01-08 14:19:18 +01:00
98ce867104
added hyprctl binds
2023-01-06 14:32:25 +01:00
461fab0f27
minor fixes for fakefullscreen
2023-01-06 13:29:49 +01:00
96198dae55
Normalize color storage
...
Colors are now normalized to 0 - 1 values instead of 0 - 255
causes calculations to be simpler and generally cleans up the codebase.
2023-01-05 19:25:45 +01:00
3d1b255199
update constraint on constraint state region commit
2023-01-03 13:06:18 +01:00
9ba93f4b0a
fix double remove in destroyKeyboard
2023-01-02 12:08:00 +01:00
cb4f748226
added fakefullscreen
2023-01-01 16:54:13 +01:00
5d095bb9e1
use curves for special dim anim
2022-12-29 12:30:43 +01:00
3e2200ed90
get window under cursor in kill
2022-12-29 11:52:46 +01:00
17b4a2786d
clarify layout enum
2022-12-26 12:05:34 +01:00
cd08fa22fd
added workspace_swipe_numbered
2022-12-25 15:42:11 +00:00
TheOnlyMrCat
8c094b0eec
Make libinput tap-and-drag configurable ( #1267 )
2022-12-22 12:05:26 +00:00
vaxerski
41cdfb7420
allow binding tablets to outputs
2022-12-21 15:11:39 +00:00
vaxerski
4fd90144d1
touch up the clang format and format all files
2022-12-20 02:18:47 +00:00
vaxerski
3e2785b970
fix restack in xwayland stubs
2022-12-19 23:43:50 +00:00
vaxerski
668cc93962
refocus on special move
2022-12-19 14:49:19 +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
a3b37b0191
Fix focus not changing on (empty) workspace change ( #1243 )
2022-12-17 17:28:43 +00:00
vaxerski
99ca1ad353
remember pos and size across fullscreen moves
2022-12-17 12:15:56 +00:00
vaxerski
f72c237d85
add disabling keyboards
2022-12-16 17:20:51 +00:00
Vaxry
98a4fa2b0d
Added clang format ( #1239 )
...
* clang-format stuff and format files
2022-12-16 17:17:31 +00:00
vaxerski
95a042691a
Revert "Send initial focus to X11 type dialog"
...
This reverts commit efc686423a
.
Issues with select dialogs.
2022-12-15 16:47:14 +00:00
vaxerski
efc686423a
Send initial focus to X11 type dialog
2022-12-15 12:38:47 +00:00
vaxerski
b89a07596e
prevent moving to invalid workspaces
2022-12-14 18:42:48 +00:00
vaxerski
c3f1dc3f52
fix minor issues with move focus and follow mouse 0
2022-12-10 15:15:40 +00:00
vaxerski
62f4503f07
handle constraint cursor hints better
2022-12-10 14:43:46 +00:00
vaxerski
ff12a41c40
minor focus fixes with LS-es and moving windows
2022-12-09 14:03:37 +00:00
vaxerski
e1d7a13333
unset fullscreen in onWindowRemoved
2022-12-07 18:57:02 +00:00
vaxerski
73b3bbe49b
added nomaxsize rule
2022-12-07 16:08:44 +00:00
vaxerski
993c382e74
minor fixes to special workspace behavior
2022-12-06 20:31:44 +00:00
vaxerski
3c9a7811b8
fix up moving to special workspace
2022-12-06 20:20:37 +00:00
Vaxry
66fb083003
Implement window sharing with the hl toplevel export proto ( #1179 )
...
* implement window sharing
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2022-12-05 17:05:15 +00:00
vaxerski
20b91f58f8
remove idiotic guard in processMouseDownNormal
2022-12-05 14:30:04 +00:00
vaxerski
ac0e675f3b
better capability handling
2022-12-05 14:28:27 +00:00
vaxerski
409ac12f23
avoid duplicate device names
2022-12-03 20:36:52 +00:00
vaxerski
6aa26582f6
added hyprctl switchxkblayout
2022-12-03 16:22:02 +00:00
vaxerski
0a302901d2
Added handling more special workspaces
2022-11-27 22:42:22 +00:00
0e6e8461eb
reset m_bEmptyFocusCursorSet on workspace switch
2022-11-25 11:34:52 +00:00
vaxerski
379597e78f
remove redundant strval_empty checks
2022-11-24 17:11:21 +00:00
dcb6a0425c
override force opaque rule on keybind
2022-11-23 09:55:52 +00:00
CactiChameleon9
f00b2fd509
Fix swiping on the first workspace going to the last ( #1067 )
2022-11-21 23:30:26 +00:00
vaxerski
eb86e7967f
add scroll_button libinput opt
2022-11-21 23:26:18 +00:00
vaxerski
be03a6186c
fix invisible windows on moving fullscreen out
2022-11-20 18:50:27 +00:00
vaxerski
254c3d166f
don't send motion events to lock constraints
2022-11-20 18:38:53 +00:00
vaxerski
137cf9e582
improve constraint handling
2022-11-20 17:35:13 +00:00
vaxerski
e427d9f622
unify setting of the active monitor
2022-11-19 16:41:41 +00:00
vaxerski
5d39223239
fix events in changeworkspace with bound ws-es
2022-11-17 21:58:22 +00:00
d5eafe1926
set cursor to hand1 when moving a window
2022-11-15 10:39:05 +00:00
Jef
dbb6732743
apply some rules dynamically when state of window changes ( #1020 )
...
Co-authored-by: Jef Steelant <jef.steelant_ext@softathome.com>
2022-11-15 10:21:26 +00:00
Jef
4034aa2c60
possible crash when current workspace does not exist ( #1023 )
...
Co-authored-by: Jef Steelant <jef.steelant_ext@softathome.com>
2022-11-15 10:18:04 +00:00
fcb5037a1d
guard lastwindow in circlenext
2022-11-14 12:12:13 +00:00
vaxerski
478fa7cafe
Revert "Set child stdout and stderr to /dev/null ( #1000 )"
...
This reverts commit 1e5cab1ee7
.
Breaks a bunch of stuff, e.g. Waybar.
2022-11-13 19:53:27 +00:00
Thomas Voss
1e5cab1ee7
Set child stdout and stderr to /dev/null ( #1000 )
...
Some scripts or utilities check to see if stdout or stderr are connected
to a TTY or not to determine certain behaviors (for example, you might
want to prompt a user for input with fzf(1) if in a terminal but tofi(1)
or wofi(1) when spawned from your WM). Since hyprland never closes
these output streams for spawned processes, they end up just spewing
their output onto the TTY while giving the user no real way to have a
script detect if it's being run from the shell or WM.
Instead of just closing stdout and stderr though, we close them and then
proceed to reopen them but connect them to /dev/null. This allows
scripts and processes to not fail when attempting to write, but for that
writing to simply have no effect.
2022-11-13 11:58:20 +00:00
Leftas
34a7f17956
Add keyboard led update after keys/mod update
2022-11-12 13:12:37 +02:00
vaxerski
dd11434e90
notify idle on touch down
2022-11-11 23:41:04 +00:00
153c99217d
use spawn in config exec
2022-11-10 13:50:16 +00:00
851df11eb5
Added exec rules
2022-11-10 13:39:23 +00:00
vaxerski
5f2c741f49
remove spammy ime logs
2022-11-10 12:24:41 +00:00
vaxerski
1cf829c889
minor loose focus fixes
2022-11-08 20:28:41 +00:00
17992b633d
minor fixes for follow_mouse 3
2022-11-08 14:48:17 +00:00
vaxerski
aefc34b405
Minor fixes for virtual input devices
2022-11-07 22:22:13 +00:00
vaxerski
e3a3837164
fix up formatting
2022-11-07 20:31:56 +00:00
abbadanor
1a55fb4170
Dispatcher to center floating window ( #961 )
...
Co-authored-by: Adam Nord <adam.nord@abbgymnasiet.se>
Co-authored-by: vaxerski <vaxry@vaxry.net>
2022-11-07 12:16:30 +00:00
vaxerski
57817f7252
Added resize transitions
2022-11-06 17:52:09 +00:00
vaxerski
976b44443a
ignore constraints on exclusiveClient create
2022-11-05 18:34:26 +00:00
vaxerski
70aece8522
constraint focus simplifications
2022-11-04 18:09:40 +00:00
vaxerski
206360177f
Multiple animation optimization and xwayland wine fixes
2022-11-04 15:56:31 +00:00
vaxerski
e796157672
fix passing input to constrained windows without relative
2022-11-04 11:09:34 +00:00
vaxerski
b51222c004
fix ordering in mouse connect
2022-11-04 10:48:42 +00:00
vaxerski
653b9ed0e4
Fix missing focusedmon event on focusmonitor dispatcher
2022-11-03 19:34:26 +00:00
d0e47d9fe0
added workspace_swipe_forever
2022-11-03 13:35:34 +00:00
vaxerski
6ddfae0a07
remove ensureFDsValid, legacy
2022-11-02 21:28:08 +00:00
603a90886f
fix swipe on 2 detached workspaces
2022-11-02 10:01:13 +00:00
vaxerski
a69fd21a1a
Add an idleinhibit windowrule
2022-10-31 12:26:07 +00:00
vaxerski
9f1d7f7fc7
properly scan for subsurfaces in fullscreen input refocus
2022-10-30 12:28:37 +00:00
vaxerski
644c64d79d
lower IME errors to WARNs
2022-10-28 21:47:08 +01:00
vaxerski
9e227a52c0
allow cyclenext on null focus
2022-10-28 21:31:39 +01:00
vaxerski
f7174acc48
minor fixes for xwayland refocus
2022-10-28 19:18:10 +01:00
vaxerski
c2cd718e89
ignore pointer constraints in touch
2022-10-27 23:44:23 +01:00
28c81fc71e
add disabling pointer devices
2022-10-27 12:58:10 +01:00
Vaxry
d5a0610ea2
No xwayland overhaul ( #920 )
2022-10-27 11:26:35 +01:00
ba9a8a9ded
unify LS unmap focus
2022-10-25 14:19:24 +01:00
vaxerski
69f1d7b360
Rework workspace rules
2022-10-24 18:36:31 +01:00
vaxerski
1d0d350fc3
fix silent + size windowrules
2022-10-24 12:03:15 +01:00
vaxerski
c6a3092b45
more safety around shutting down and mouse movements
2022-10-24 00:14:42 +01:00
vaxerski
0d7d7a970d
fix crash in event manager on hangup
2022-10-22 16:15:52 +01:00
vaxerski
6df6aea1ba
fix swipe with fullscreen maximized
2022-10-20 20:37:37 +01:00
dada872981
minor swipe on new fixes
2022-10-20 17:52:17 +01:00
1eec5161bd
minor fix for swipes from empty workspaces
2022-10-20 15:47:35 +01:00
53c3644c29
fix minor anim issue with swipe new
2022-10-20 15:02:46 +01:00
6d66dde208
added swipe create new
2022-10-20 14:54:32 +01:00
vaxerski
286cb90c48
ignore OR windows' size hints
2022-10-17 14:26:18 +01:00
vaxerski
da4cfb9c32
use size hints when available in xwayland default geom
2022-10-17 11:18:45 +01:00
vaxerski
edeb759bb1
add loose focus behavior
2022-10-15 14:13:21 +01:00
vaxerski
34cd8b125a
rework focus system to be more safe and faster
2022-10-14 20:46:32 +01:00
a7bdfc06ca
added bringactivetotop dispatcher
2022-10-14 14:22:31 +01:00
724fa4a7d4
add touch binding to output
2022-10-14 12:38:44 +01:00
Vaxry
cee0645fd1
Merge pull request #813 from histausse/touch_dev_rotation
...
Add input:touchdevice:transform config
2022-10-14 12:26:31 +01:00
df9409b8a2
rename transform in DC to touch_transform
2022-10-14 12:23:11 +01:00
vaxerski
670d6ce8f4
fix windowsOut disabled with fadeOut enabled
2022-10-13 21:32:28 +01:00
eb3c132fc5
set workspace name in previous
2022-10-13 15:17:16 +01:00
7ecc41db9c
unsetenv on no XWayland
2022-10-11 12:00:06 +01:00
Histausse
6287f2b71b
use static for transformation matrices
2022-10-10 12:52:12 +02:00
Histausse
406b2fe6dc
Add additionnal matrices and rename config var
2022-10-09 00:45:34 +02:00
Histausse
32ae0c51f0
Add input:touchdevice:td_rotation config
...
Add support for touch device roation. The rotation is
set globally with `input:touchdevice:td_rotation config` and by
device with `td_rotation` in a device block.
2022-10-08 15:25:46 +02:00
a19b152e4a
make swipe respect slidevert
2022-10-07 16:52:53 +01:00
Vaxry
c4487534d2
Merge pull request #801 from fufexan/scrollfactor
...
Add input:touchpad:scroll_factor
2022-10-06 21:26:11 +01:00
Mihai Fufezan
e4820d1c71
Add input:touchpad:scroll_factor
2022-10-06 22:47:05 +03:00
vaxerski
b4a8efc1a7
fix naming when workspace back and forth
2022-10-06 20:40:58 +01:00
vaxerski
9480c0fb90
fix workspace previous with multi-mon ws moves
2022-10-06 20:18:49 +01:00
vaxerski
f901c60da5
return true on vt switch keysyms to avoid printing stuff
2022-10-06 19:31:32 +01:00
vaxerski
922e978f56
reset sigmask on fork
2022-10-06 19:02:03 +01:00
Felix Dick
552c4b7361
Fix compiler warnings.
2022-10-06 13:42:52 +02:00
d7ef19e2e7
map touch to the correct output
2022-10-06 09:26:05 +01:00
190ddb5697
added a noanim rule
2022-10-06 09:16:40 +01:00
Vaxry
32e8eda40a
Merge pull request #787 from fufexan/libinput
...
Add accel profile and scroll method
2022-10-05 21:58:40 +01:00
Mihai Fufezan
477ad2dd82
Add accel profile and scroll method
2022-10-05 23:51:08 +03:00
vaxerski
e90c5c6347
fix tty switch freeze
2022-10-05 21:41:27 +01:00
vaxerski
11ce468996
add dpms status info in hyprctl
2022-10-05 18:14:11 +01:00
0e4a894edb
add dpms per output
2022-10-05 10:31:47 +01:00
71e2562a41
add desc: to monitor rules
2022-10-05 10:22:33 +01:00
Felix Dick
0d7f6eac9e
Merge branch 'make_TTY_unsigned' into fix_left_handed
2022-10-05 04:51:48 +02:00
Felix Dick
6d46ed4011
Fix getDeviceInt string arg "input:left_handed"
2022-10-05 04:25:26 +02:00
Felix Dick
f825b87c2a
Fix compiler warnig comparing signed and unsigned integers.
2022-10-05 02:42:51 +02:00
vaxerski
60c414ccad
add left_handed config for input
2022-10-04 21:46:41 +01:00
vaxerski
0d702b556d
Add switch device handling and binds
2022-10-04 20:07:21 +01:00
vaxerski
9bbae5b8e2
ignore VT switches to current vt
2022-10-04 16:53:09 +01:00
vaxerski
719a5b4f0b
use vectorToWindowIdeal in mouse binds
2022-10-04 16:08:55 +01:00
lylac
f9325b1655
focusedmon event check change
...
Compare PLASTWINDOW & PWINDOWTOCHANGETO m_iMonitorID's instead of PWINDOWTOCHANGETO->m_iMonitorID & g_pCompositor->m_pLastMonitor->ID
2022-10-04 18:19:14 +13:00
vaxerski
49ab3890aa
remove polling from socket2, fully event based
2022-10-03 20:47:15 +01:00
vaxerski
590fbf808b
send a focusedmon event on focus change mon
2022-10-01 10:38:53 +01:00
vaxerski
bdd9680adf
fix ipc event missing on silent movetoworkspace
2022-09-29 19:33:43 +01:00
vaxerski
9f9129e536
focusable checks in nextWindow calls
2022-09-29 16:53:31 +01:00
vaxerski
458ba3237b
use goalv in movetoworkspace
2022-09-28 15:12:15 +01:00
Felix Dick
bf3f519eb7
Remove trailing whitespace.
2022-09-25 20:07:48 +02:00
fad5fc587d
guard kb settings in xkb translation state
2022-09-24 21:07:18 +01:00
e5d143b238
support more wlr_cursor events
2022-09-22 21:14:02 +01:00
37f2e1ddbe
don't recalc pseudo on fullscreen
2022-09-22 20:57:09 +01:00
c08218301b
disallow pinning fullscreen
2022-09-22 16:48:40 +01:00
79c645f8cd
handle touch devices internally as objects
2022-09-21 14:39:34 +01:00
2b99dbb446
better cycling in fullscreen with pinned
2022-09-21 14:16:13 +01:00
8b11a2e1b1
minor mouse bind handling fixes
2022-09-20 22:23:02 +01:00
b4bcba935d
disallow move/resize dispatchers on fullscreen windows
2022-09-20 19:58:08 +01:00
cde624ec6a
fix moving between fullscreen workspaces
2022-09-20 10:16:58 +01:00
b82621c4ec
fix mouse binds being stuck
2022-09-20 10:02:20 +01:00
c24b45671a
mouse binds overhaul
2022-09-19 19:04:48 +01:00
696253b348
fix special workspace dispatcher logic
2022-09-19 16:01:42 +01:00
7c809a3059
fullscreen animation en-nice-ment
2022-09-19 10:23:13 +01:00
4070e1a148
fix wonky focus on movetoworkspace
2022-09-18 17:26:12 +01:00
29626989e7
fix focus follows mouse 0 event sending on wrong window
2022-09-18 12:35:05 +01:00
a72a39ebd5
minor swipe fixes
2022-09-17 15:05:12 +01:00
151e013241
fix refocus on same workspace
2022-09-17 12:10:06 +01:00
vaxerski
da10022d84
fix an unholy memory safety issue
2022-09-13 20:27:07 +02:00
vaxerski
0062281092
added wsbind
2022-09-12 21:05:52 +02:00
vaxerski
82aa78916d
hyprctl-nopoll
2022-09-10 21:21:28 +02:00
vaxerski
8808d40008
added misc:disable_autoreload
2022-09-10 17:28:41 +02:00
vaxerski
d94fe3d063
added window pinning
2022-09-10 13:11:02 +02:00
vaxerski
f663fa209c
minor code styling fixes
2022-09-09 19:08:11 +02:00
vaxerski
94ca386a8c
set last monitor and dont refocus in some cases (changeworkspace)
2022-09-05 21:36:22 +02:00
vaxerski
a74b8033ca
added a submap IPC event
2022-09-05 13:50:52 +02:00
vaxerski
d6c06318af
don't accumulate from virtual
2022-09-05 11:19:40 +02:00
vaxerski
cb839c9dcc
guard pFoundWindow in CInputManager under fullscreen
2022-09-05 00:59:13 +02:00
vaxerski
7a3b57c99c
send accumulated modifiers to surfaces
2022-09-04 18:46:28 +02:00
vaxerski
ba0c5fe0bb
fix mouse focus not returning from a LS on follow mouse 0
2022-09-04 18:42:11 +02:00
vaxerski
ff26531e11
use activateSurface in unconstrainMouse
2022-09-04 11:29:49 +02:00
vaxerski
fbd2b4799d
Fix some more crimes against humanity
2022-09-03 22:49:52 +02:00
vaxerski
c425e620af
fix some minor crimes against humanity
2022-09-03 19:35:17 +02:00
vaxerski
f4add0ac6d
refocus on reserved area
2022-09-03 15:35:53 +02:00
vaxerski
3c3f80c2fe
simplify code and update monitor on warp
2022-09-03 11:55:19 +02:00
vaxerski
5d09bb647b
fix up styling
2022-09-02 23:56:22 +02:00
vaxerski
f5697095bc
unify monitor args
2022-09-02 11:53:12 +02:00
vaxerski
8581e71789
optimize calls in toggleSpecialWorkspace
2022-09-01 11:47:48 +02:00
vaxerski
bb90ff0461
sanity check on last window
2022-09-01 11:46:41 +02:00
vaxerski
f77fac9df9
warp only on another monitor in changeworkspace
2022-08-31 21:39:27 +02:00
vaxerski
dacaf72e02
remember last window on workspace
2022-08-31 17:02:49 +02:00
vaxerski
7f483dfdb0
guard psurface in activateSurface
2022-08-31 11:12:46 +02:00
vaxerski
1cf46fd6a2
added closewindow dispatcher
2022-08-30 21:35:27 +02:00
vaxerski
dd6aba07e9
revert x11 size hints
2022-08-30 16:12:11 +02:00
vaxerski
d35d949bc5
use sizehints if existent for X11 default floating
2022-08-30 13:07:54 +02:00
vaxerski
20c050e890
set last monitor on move focus dispatcher
2022-08-29 18:50:10 +02:00
vaxerski
6865660e51
disable fullscreen and floating dispatchers on special
2022-08-29 14:55:11 +02:00
vaxerski
6c8ce734fb
fix segfault in inactive sessions
2022-08-29 11:17:42 +02:00
vaxerski
09495375b5
ratelimit setting cursor
2022-08-28 22:45:05 +02:00
vaxerski
c757fa54e1
Allow passing the mouse as well in pass
2022-08-28 17:01:48 +02:00
vaxerski
16f8d46391
Force wlroots to not send leave events in pass to XWayland
...
Massive hack, kill me
2022-08-28 16:43:15 +02:00
vaxerski
d413388761
Multiple improvements to the shutdown procedure
2022-08-28 11:19:08 +02:00
vaxerski
ed2cacc5d5
fix styling in const ptrs
2022-08-27 21:37:35 +02:00
vaxerski
8122505825
pass press and release events separately
2022-08-27 19:29:28 +02:00
vaxerski
a648b452dd
fix internal keybinds
2022-08-26 19:19:34 +02:00
vaxerski
10f529ada7
added a specialWorkspace anim leaf
2022-08-26 11:26:23 +02:00
vaxerski
0eb86f4b0d
fix silent workspaces with back and forth
2022-08-26 00:19:57 +02:00
vaxerski
7b01c3d028
allow specifying window for toggle floating
2022-08-25 22:34:53 +02:00
vaxerski
e327b0a835
added a swapactiveworkspaces dispatcher
2022-08-25 21:25:28 +02:00
vaxerski
6c2175ed52
fixes to swapnext logic on dwindle
2022-08-24 22:01:25 +02:00
vaxerski
00ef40dda1
added swapnext and swapprev for master
2022-08-24 21:50:48 +02:00
vaxerski
9c3aeda9f9
added swapnext
2022-08-24 21:40:36 +02:00
vaxerski
09f3999b1e
Unfocus first on non-internal ws changes
2022-08-23 23:34:36 +02:00
vaxerski
23c5760538
IME Popup damage fixes
2022-08-23 11:16:35 +02:00
vaxerski
6565c31dbf
fix IME grab on multiple open native inputs
2022-08-22 18:40:38 +02:00
vaxerski
575bfa40e5
added misc:float_switch_override_focus
2022-08-22 18:22:26 +02:00
vaxerski
429b2bffed
fix minor refocus issue
2022-08-22 18:16:32 +02:00
vaxerski
f273ebed9c
fix another edge case for fullscreen default windows
2022-08-21 23:24:57 +02:00
vaxerski
3cb30e7fb0
fix crash
2022-08-21 23:16:54 +02:00
Vaxry
c4ba11729f
Merge pull request #557 from xDarksome/main
...
Add window{open/close/move} IPC events (#549 )
2022-08-21 17:10:24 +02:00
Darksome
f7f3446882
CCompositor::moveWindowToWorkspace -> CWindow::moveToWorkspace
2022-08-21 18:01:26 +03:00
vaxerski
0f63077a07
use a custom translation state in keybinds
2022-08-21 16:43:22 +02:00
xDarksome
0f25f3aee3
Merge branch 'hyprwm:main' into main
2022-08-21 16:03:51 +03:00
Charles Taylor
9dbdd66da4
fix retrieval of monitor
2022-08-21 22:11:40 +10:00
Charles Taylor
6ec932d11f
fix bug which allowed a switch to workspace ID -1.
...
This only happened for the workspace_back_and_forth setting, since it
was missing a check.
2022-08-21 22:05:35 +10:00
Charles Taylor
3c8c605541
fix style conflicts and config + monitor retrieval
2022-08-21 21:58:46 +10:00
Charles Taylor
9ee42836d5
add general:allow_workspace_cycles option
2022-08-21 20:47:56 +10:00
Charles Taylor
d6ff7e40cf
add general:workspace_back_and_forth option
2022-08-21 20:40:06 +10:00
Charles Taylor
04f0efadc3
add switching to previous workspace
2022-08-21 20:21:21 +10:00
Darksome
776750ee34
Merge branch 'main' of github.com:xDarksome/Hyprland
2022-08-20 13:26:31 +03:00
Darksome
37e1450a4d
Impl CCompositor::moveWindowToWorkspace
2022-08-20 13:25:56 +03:00
1b1a0259a8
fix crash
2022-08-19 23:22:59 +02:00
Vaxry
223ca6e286
Merge pull request #548 from FlafyDev/main
...
add input:kb_file option to use a .xkb file.
2022-08-19 22:39:50 +02:00
FlafyDev
f0ad77251b
move absolutePath to MiscFunctions
2022-08-19 23:18:09 +03:00
FlafyDev
69d17bf424
add input:kb_file
2022-08-19 21:01:51 +03:00
946222f4a7
fix typo in swipe alpha control
2022-08-19 17:42:10 +02:00
504d07a87d
fix swipe on workspace style fade
2022-08-19 17:36:01 +02:00
81b27be6bb
reset lastwindow on full LS focus
2022-08-19 17:29:16 +02:00
f9e30e985c
fix refocus on no window
2022-08-19 17:25:07 +02:00
xDarksome
4af95d4253
Merge branch 'hyprwm:main' into main
2022-08-18 22:24:00 +03:00
Darksome
844c33c980
Add mapwindow, unmapwindow and movewindow IPC events
2022-08-18 22:23:28 +03:00
9b62328b22
minor changes to the activelayout event
2022-08-18 17:50:32 +02:00
b078a12eed
Added an activelayout event
2022-08-18 17:17:33 +02:00
f3c597bfb7
fix crash
2022-08-18 07:28:07 +02:00
c5a4c83f78
better integrate touch with subsurfaces
2022-08-17 23:23:36 +02:00
f4d11d2d43
fix lastFocus on activateWindow
2022-08-17 22:59:40 +02:00
317b6c430c
damage monitor on workspace swipe end
2022-08-16 16:34:36 +02:00
daeb0d3418
force sending size on setWindowFullscreen
2022-08-16 16:30:10 +02:00
ea45c6bfe0
fix memory issue with hyprctl devices
2022-08-16 16:15:43 +02:00
6e2467cc24
fix active keymap in hyprctl devices
2022-08-16 16:10:20 +02:00
d2011a4ba9
added support for window selection in moving to workspace
2022-08-15 16:12:53 +02:00
b0b3a5af10
added resizewindowpixel and movewindowpixel
2022-08-15 15:59:07 +02:00
d47bfe6af1
remove unused fixXWaylandWindowsOnWorkspace
2022-08-15 00:34:39 +02:00
0e57651e2f
fix segfault with cyclenext null
2022-08-11 22:56:16 +02:00
f85c765634
change activemon to focusedmon for consistency
2022-08-11 20:55:39 +02:00
8fb4669b85
fix cyclenext on fullscreen
2022-08-11 20:21:55 +02:00
008cc63dc0
fix error for popin
2022-08-11 20:17:23 +02:00
c9ed5bf77e
fix cyclenext with fullscreen windows
2022-08-11 19:45:37 +02:00
f4f0495050
disable focus to menu x11 types
2022-08-11 19:36:15 +02:00
9eb750c00b
added misc:layers_hog_keyboard_focus
2022-08-10 17:46:01 +02:00