SebOuellette
3dc2277fd0
Actually, mostly working.
...
One failure case: When there is a fullscreen window directly to the right of a game, for example, in a multimonitor setup, then the cursor will bug out in between the monitors. sometimes it will get constrained to the border, but just outside the window (which is what this PR fixes, so it's unusual) and sometimes the cursor will just ignore the constraint entirely. However this is only in the one case.
2022-06-21 02:23:57 -04:00
SebOuellette
ee7900f819
Mouse no longer removes focus from constraining window
...
The window properly constrains the mouse now
I do still notice a bug with moving the mouse in games, if you don't move the mouse fast enough, some games will not register the mouse movement. This doesn't happen in KDE so I know it's related somehow
2022-06-20 23:15:16 -04:00
Sebastian Ouellette
f7e9a27c0a
Merge branch 'vaxerski:main' into main
2022-06-20 22:05:02 -04:00
vaxerski
f5f531562b
Merge pull request #205 from sp1ritCS/meson
...
Added meson buildfiles
2022-06-20 13:56:58 +01:00
Sebastian Ouellette
dc84935059
Set the constraint position to the window center (properly)
...
Missed one expression, it was set to the bottom middle. I missed it because i don't have an extra monitor extending from the bottom of that screen.
2022-06-19 16:54:59 -04:00
Sebastian Ouellette
95e083dbd3
Converted tabs to spaces. Now ready for PR
2022-06-19 16:51:03 -04:00
SebOuellette
5058a74453
Cleaned up some old debug
2022-06-19 16:23:49 -04:00
Sebastian Ouellette
ae1bcc909d
Invisible cursors are constrained to center
...
This is a first version of my test to properly constrain cursors. This is mostly working in the buggy applications I had before, but I feel that the cursor needs to actually move around, instead of being locked to the center of the window.
This may cause problems when locking to the edge, but yeah.
2022-06-19 16:07:41 -04:00
Florian "sp1rit"
7c3626f15e
meson: ensure non-debug builds will use proper configuration
...
meson will set add -DHYPRLAND_DEBUG to CXXFLAGS during compilation of
debug builds. this avoids NDEBUG issues with wlroots and ensures asserts
will also work on release builds.
2022-06-18 13:09:38 +02:00
Yoni FIRROLONI
f428604b6f
undo formatting
2022-06-17 19:51:34 +01:00
Yoni FIRROLONI
2feca08a67
move, set active, recalc, anim on monitor connected
2022-06-17 19:51:34 +01:00
vaxerski
837d4af8f6
Merge pull request #231 from CcydtN/main
...
Fix zombie process problem
2022-06-17 17:53:47 +01:00
Florian "sp1rit"
75918c14d7
meson: added wayland dependencies to main executable
2022-06-16 23:30:30 +02:00
Florian "sp1rit"
c169f94895
moved wlroots/xwayland definitions to the main meson file
...
prevents build-failure when xwayland is disabled to to
add_project_arguments('-DNO_XWAYLAND', language: 'cpp')
beeing called after the required wayland protocols have been built.
2022-06-16 23:30:30 +02:00
Florian "sp1rit"
b3ef1fcc54
replaced source list with globber script
...
See:
- https://mesonbuild.com/FAQ.html#why-cant-i-specify-target-files-with-a-wildcard
- https://github.com/vaxerski/Hyprland/pull/205#issuecomment-1154158918
2022-06-16 23:30:30 +02:00
Florian "sp1rit"
fd0112425f
Added meson buildfiles
...
this makes for a far better experience in combination with wlroots,
since that whole makefile mess is not required.
Additionaly, handling of wayland protocol sources is also slightly
better, but could be improved with mesons inbuilt wayland module.
To build Hyprland using meson:
meson _build -Ddefault_library=static
ninja -C _build
ninja -C _build install
2022-06-16 23:30:28 +02:00
CcydtN
b69375a918
Fixing format issue
2022-06-17 03:25:08 +08:00
CcydtN
5fa61e5a54
Fix generating zombie process
2022-06-17 01:14:10 +08:00
bazuin-32
1926bb4659
Resolves #204 . Enables numlock on startup when configured to do so.
2022-06-16 10:49:16 -06:00
Bruno Ancona
0c5d2f04b4
Create config directory if it doesn't exist
2022-06-15 01:29:51 -05:00
Marco Siedentopf
f13217f698
Codestyle
2022-06-12 15:06:58 +00:00
Marco Siedentopf
85d2c1d5a6
Merge branch 'vaxerski:main' into main
2022-06-12 15:04:02 +00:00
spectreseven1138
46d11f7646
Access config value statically
2022-06-12 16:31:56 +09:00
Marco Siedentopf
16d1b44ef9
Implemented Config options for Touchpads
...
Implemented Options to 1. toggle between clickfinger behavior and software buttons, 2. button emulation and 3. tap-to-click
2022-06-12 05:40:06 +00:00
Marco Siedentopf
e69f2ab4c3
Added Config options for Touchpads
...
Added Options to 1. toggle between clickfinger behavior and software buttons, 2. middle button emulation and 3. tap-to-click
2022-06-12 05:40:01 +00:00
spectreseven1138
95a626f72e
Add loose (2) option to follow_mouse config
2022-06-12 09:14:22 +09:00
Bruno Ancona
018b0684dd
Add natural_scrolling option for touchpads only
2022-06-11 10:24:00 -05:00
Francois Rigaut
4fa69497ca
fullscreen fix
2022-06-11 16:37:40 +02:00
vaxerski
dc5cc15474
find surfaces in reverse for focus
2022-06-10 15:18:30 +02:00
vaxerski
3a2ac11e3e
added focuswindowbyclass
2022-06-10 12:06:27 +02:00
vaxerski
90a859af27
cyclenext
2022-06-10 11:41:52 +02:00
vaxerski
c6953329d5
Added circlenext
2022-06-10 11:39:06 +02:00
vaxerski
d68e09a707
remove unfocusall
2022-06-09 22:07:33 +02:00
vaxerski
fbc7853459
de-focusify on lost proximity
2022-06-09 21:39:03 +02:00
vaxerski
53146ccf69
oopsie
2022-06-09 21:39:03 +02:00
vaxerski
506977c13d
unfocus on destroy
2022-06-09 19:40:16 +02:00
vaxerski
09b130374d
unfocus tablets
2022-06-09 19:38:39 +02:00
vaxerski
b53c093b88
log tablets in hyprctl
2022-06-09 19:25:26 +02:00
vaxerski
8929172bc2
remove redundant logs
2022-06-09 19:19:42 +02:00
vaxerski
6317f64ba0
set proximity in tablets
2022-06-09 18:09:09 +02:00
vaxerski
824d8b954d
logify even more
2022-06-09 17:40:05 +02:00
vaxerski
49fc1ccdb4
oops
2022-06-09 17:32:58 +02:00
vaxerski
c218ed4432
notify tablet motion
2022-06-09 17:16:01 +02:00
vaxerski
f97b90859a
Add envvars to exec cfg
2022-06-09 15:03:34 +02:00
vaxerski
1841d244f0
log shit in tablets
2022-06-09 14:40:56 +02:00
vaxerski
47404534d0
added tablet v2 support (alpha alpha)
2022-06-09 12:46:55 +02:00
vaxerski
248ce66459
warn unrecognized input devices
2022-06-08 22:11:24 +02:00
vaxerski
638b44cabd
Attach touch devices raw
2022-06-08 22:09:35 +02:00
vaxerski
8f0b963729
refocus after movetoworkspace
2022-06-08 15:52:38 +02:00
vaxerski
7b73570f11
fix a crash in monitorDestroy
2022-06-08 15:13:47 +02:00
vaxerski
da80eb8e57
Added the tablet manager and tablet v2 protocol
2022-06-08 14:29:49 +02:00
vaxerski
0b8fe2a0aa
fix incorrect animationmanager behavior without anims
2022-06-07 22:27:15 +02:00
vaxerski
1642b1ff66
optimize config calls in often called areas
2022-06-07 20:41:40 +02:00
vaxerski
cc80b68545
fixed a typo, will boost performance on opaque windows with blur
2022-06-07 20:10:14 +02:00
vaxerski
b62e530fdb
Force window style tiled on all xdg windows
2022-06-06 19:43:44 +02:00
vaxerski
663fba76ae
Added resizeactive
2022-06-06 19:32:14 +02:00
vaxerski
d73e05cc68
fix XDELTA and YDELTA with empty geometry
2022-06-06 18:56:16 +02:00
vaxerski
066ea296ff
dont report unmanaged x11 windows in hyprctl clients
2022-06-06 15:22:25 +02:00
vaxerski
72c967aa89
fix class crash with unmanaged x11
2022-06-06 15:03:06 +02:00
vaxerski
d743ac7bb1
added forcerendererreload and some more vt changes
2022-06-06 13:48:17 +02:00
vaxerski
63d6c594b9
fix possible crash in hyprctl clients
2022-06-06 12:58:39 +02:00
vaxerski
09e77bf844
added force_no_accel
2022-06-06 12:08:33 +02:00
vaxerski
84a0fa0f34
fix subsurfaces not damaging on unmap
2022-06-05 23:23:16 +02:00
vaxerski
2cd2f8b5b5
add class to window hyprctl requests
2022-06-04 20:32:27 +02:00
vaxerski
ef855440c6
keyboard code further cleanup
2022-06-03 19:15:39 +02:00
vaxerski
246aa000f5
Added dwindle:special_scale_factor
2022-06-03 19:03:33 +02:00
vaxerski
1a93b2a756
Handle keyboards better
...
Also fixes some crashes of apps on reload
2022-06-03 18:59:39 +02:00
vaxerski
10c2bd0686
make shaders cleaner
2022-06-03 18:45:18 +02:00
vaxerski
9486a230c7
Log to the instance folder
2022-06-03 17:48:07 +02:00
vaxerski
6f3b004199
IPC and log changes, introduce signature
2022-06-03 17:41:57 +02:00
vaxerski
19b17b590c
fix moveactivetoworkspace with same workspace
2022-06-03 11:19:17 +02:00
vaxerski
f9c8a72e46
dont enable AA by default
2022-06-02 23:03:13 +02:00
vaxerski
e11cb8b328
Added antialiasing to outer edges
...
simplified, stupidly fast MSAA for rounded edges
2022-06-02 22:58:54 +02:00
vaxerski
7b568d7ad8
configure keyboards one by one
2022-06-02 20:31:47 +02:00
vaxerski
a2f718059b
fucking typo
2022-06-02 19:50:46 +02:00
vaxerski
601abc7e92
Added locking numlock
2022-06-02 19:47:11 +02:00
vaxerski
f5cdb5b95e
Fix special in m+1 m-1
2022-06-02 16:54:19 +02:00
vaxerski
7afcf656bd
Added hyprctl devices
2022-06-02 13:59:33 +02:00
vaxerski
b5a100379e
reject drag on fullscreen workspace
2022-06-01 21:13:10 +02:00
vaxerski
4f76d5d8d7
destroy monitor on disabled
2022-06-01 21:10:12 +02:00
vaxerski
8d850b0ce1
Added workspace/monitor unset and workspace silent rules
2022-06-01 21:04:06 +02:00
vaxerski
0f28d2ae55
fix stupid error in anim styles
2022-06-01 20:51:21 +02:00
vaxerski
d2451aea4b
use overflowing coords when surface unmaps
2022-06-01 13:38:33 +02:00
vaxerski
970018248f
Don't damage surfaces coming from not rendered windows
2022-05-31 22:16:13 +02:00
vaxerski
471654d791
remove monitor recommended dt from config
2022-05-31 21:05:46 +02:00
vaxerski
679e36d82e
fix border size on scaled outputs
2022-05-31 20:38:45 +02:00
vaxerski
0f8712ed64
fix crash in moveWorkspaceToMonitor
2022-05-31 18:47:32 +02:00
vaxerski
3e28a8b690
added slidevert for workspaces
2022-05-31 17:56:33 +02:00
vaxerski
8de7cc5a8d
opacity windowrule support 2 values
2022-05-31 17:35:50 +02:00
vaxerski
e73df80782
Add mon in mon out events and fix crash
2022-05-31 17:17:44 +02:00
vaxerski
0d7131d30e
fix typo in hyprctl clients and activewindow
2022-05-31 16:52:28 +02:00
vaxerski
d2e0b7c22a
render special over fullscreen
2022-05-31 14:20:41 +02:00
vaxerski
042e79b888
fix fatal crash
2022-05-31 14:04:11 +02:00
vaxerski
0055efc4f1
Added a special workspace
2022-05-31 14:01:00 +02:00
vaxerski
df722cbb86
Added relative monitor workspace offset
2022-05-31 12:33:08 +02:00
vaxerski
68f7e565e6
Use existing default mon workspace if available on connect
2022-05-31 12:10:34 +02:00
vaxerski
2e7586e841
fix up config and includes
2022-05-31 10:43:41 +02:00
vaxerski
c9041bf5c9
notify workspace protocol of workspace group change
2022-05-30 20:51:45 +02:00
vaxerski
b2474d406a
don't duplicate workspaces on connect
2022-05-30 20:45:39 +02:00
vaxerski
eee9698ec9
move workspaces and not windows on mon disconnect
2022-05-30 20:44:14 +02:00
vaxerski
1f4c938c67
Added moving workspaces
2022-05-30 20:05:38 +02:00
vaxerski
c44c79abb2
fix monitor cleanups on removed
2022-05-30 17:11:35 +02:00
vaxerski
1e096f6fcd
fix moveactivetoworkspace
2022-05-30 15:28:23 +02:00
vaxerski
b1c11f3d2e
consider the full bb with deco in rendering
2022-05-30 14:55:42 +02:00
vaxerski
7167be9c48
Fix relative IDs in movetoworkspace crashing
2022-05-30 14:18:46 +02:00
vaxerski
e81790f357
massive oopsie in logs
2022-05-30 14:12:36 +02:00
vaxerski
edf57c50ff
use exit in default config
2022-05-30 09:22:06 +02:00
vaxerski
7522ade58d
don't set fullscreen to maximized apps
2022-05-30 09:18:05 +02:00
vaxerski
3d7abfea92
Log keybind dispatchers only
2022-05-30 09:16:00 +02:00
vaxerski
b76b32b458
don't add existing and invalid monitors
2022-05-29 20:15:34 +02:00
vaxerski
f5645805d8
Don't animate out if window wasnt animated in
2022-05-29 16:01:45 +02:00
vaxerski
9842730f57
Added fullscreen types, maximize and full
2022-05-29 15:44:30 +02:00
vaxerski
d0ff0c0990
Added basic monitor transforms, has bugs
...
blur doesnt work on transformed outputs
full damage tracking issues
2022-05-29 12:27:45 +02:00
vaxerski
fdb3f610e5
Added wlr_foreign_toplevel_v1
2022-05-29 11:24:42 +02:00
vaxerski
f06d4fca27
Fix one more SIGSEGV while exiting
2022-05-29 00:07:31 +02:00
vaxerski
65610555c4
gfd i committed gmon
2022-05-29 00:03:42 +02:00
vaxerski
3f8845a6a7
Added an exit dispatcher and no more SIGSEGV on exit
2022-05-29 00:00:47 +02:00
vaxerski
894ae2d742
Use C++-styled pointers for decorations
2022-05-28 23:43:11 +02:00
vaxerski
08e0567d3a
fix typo in GDK offset adjustments
2022-05-28 20:54:15 +02:00
vaxerski
685cf1e00d
remove unused PMONITOR var
2022-05-28 20:50:50 +02:00
vaxerski
bdf1c16195
Added IHyprWindowDecoration and Group Bars
2022-05-28 20:46:20 +02:00
vaxerski
b1b24cb21a
Added changegroupactive direction
2022-05-28 19:16:20 +02:00
vaxerski
9ede0f1c7d
Added blur_ignore_opacity
2022-05-28 18:57:32 +02:00
vaxerski
10a9325a6a
Fix buggy slide out on multimon
2022-05-28 18:52:22 +02:00
vaxerski
e4d494aed4
fix focusmonitor with named workspaces
2022-05-28 18:38:49 +02:00
vaxerski
5c911df351
Fix closing anims on multimon
2022-05-28 18:33:47 +02:00
vaxerski
15553804d6
Added closing animations (reverse of open)
2022-05-28 18:28:55 +02:00
vaxerski
7f1f14fe85
Added a rounding rule
2022-05-28 17:48:01 +02:00
vaxerski
7d442d4851
Added rendertime no overlay
2022-05-28 17:40:57 +02:00
vaxerski
8c10857f14
Added a debug overlay
2022-05-28 17:32:19 +02:00
vaxerski
9b6960eb55
fix calculating stupid gdk surface offsets
2022-05-27 21:10:51 +02:00
vaxerski
daff7d8ca2
use xdg-shell v3
2022-05-27 16:05:25 +02:00
vaxerski
1bef63a1e6
fix for latest wlroots
2022-05-27 16:03:24 +02:00
vaxerski
d8c5e53c08
Fix dynamic monitor offset changes
2022-05-27 10:27:06 +02:00
vaxerski
8145c552de
post empty activewindow event on unfocus
2022-05-26 21:34:52 +02:00
vaxerski
19a168792b
activewindow class and title
2022-05-26 21:24:52 +02:00
vaxerski
8a3ea54184
Update border colors on config reload
2022-05-26 21:23:13 +02:00
vaxerski
795504dad0
Added workspaceopt dispatcher
2022-05-26 19:05:32 +02:00
vaxerski
74990e1e58
fix for latest wlroots
2022-05-25 23:29:36 +02:00
vaxerski
2c907e0540
include egl in includes.hpp
2022-05-25 23:13:13 +02:00
vaxerski
9597ffdd32
fix missing region32 copy in renderer
2022-05-25 19:19:54 +02:00
vaxerski
d09034ee2a
Added a fullscreen event
2022-05-25 18:42:38 +02:00
vaxerski
08d4d987cf
return nearest mon if point out of range
2022-05-25 18:40:03 +02:00
vaxerski
5635c6385f
Invalidate layout on dynamic request to config
2022-05-25 17:42:38 +02:00
vaxerski
c8f0a74975
update activewindow on its title change
2022-05-25 17:29:44 +02:00
vaxerski
b2769bab68
use mutexes in eventmanager like a normal human
2022-05-25 17:26:26 +02:00
vaxerski
0ae6563fef
workspace set active
2022-05-25 10:25:36 +02:00
vaxerski
c8425926c9
fix default workspaces being unnamed
2022-05-24 22:30:36 +02:00
vaxerski
0ad33742e1
fix workspace event and add activewindow and activemon
2022-05-24 22:21:31 +02:00
vaxerski
ad7e66adaa
stick a newline at the end of socket2 events
2022-05-24 19:47:13 +02:00