vaxerski
f8a6799d4e
verify lastmon status on connect
2022-12-12 20:51:20 +00:00
Vaxry
111d209bff
Added toplevel handle sharing Rev2 ( #1203 )
...
* Added toplevel handle sharing
* nix: fix build
* update hyprland-protocols
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2022-12-12 14:56:42 +00:00
vaxerski
1a9ee959dd
static-ize master opt
2022-12-12 14:37:49 +00:00
Maarten van Gompel
46891b12cf
Master layout: lose or inherit fullscreen on deliberate window switching ( #1213 )
...
* Master layout: Lose fullscreen status when deliberately switching away from a fullscreen window
* Master layout: implemented inherit_fullscreen config parameter
When set, if you are on a fullscreen window and you cycle to the next,
swap master, etc, it will be automatically fullscreened.
2022-12-12 14:34:52 +00:00
vaxerski
0c1bec023f
unset cursor image on end drag if it gets destroyed
2022-12-12 14:32:23 +00:00
vaxerski
80f58bc93f
fix blur damage issues with scaled
2022-12-12 14:29:04 +00:00
vaxerski
06e6c6021e
fix memory read-after-free in master layout
2022-12-12 14:18:43 +00:00
vaxerski
e8b99ae13a
add override to opacity rules
2022-12-11 17:15:02 +00:00
vaxerski
bb99f151da
fix pinned offset calc
2022-12-11 16:58:29 +00:00
vaxerski
f97289a3c0
fix rendering multi special ws
2022-12-11 16:53:59 +00:00
Maarten van Gompel
6381b6474f
Implement orientation (placement of master area) for master layout ( #1202 )
...
* Implemented choosing placement of master area (#1059 )
This implement a per workspace 'orientation' that can be set
to left, right, top or bottom. Reflecting placement of the master area.
Left (default) and right are horizontal layouts, top and bottom produce vertical
layouts. Orientation can be switched with: 'hyprctl dispatch layoutmsg orientationleft'
2022-12-10 21:59:16 +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
bf78dcecf0
add changefloatingmode event
2022-12-09 18:51:44 +00:00
vaxerski
d5352a5d12
find a default workspace smarter
2022-12-09 17:17:02 +00:00
vaxerski
fd43d2bea7
fix drag resizing on special ws-es
2022-12-09 17:08:04 +00:00
vaxerski
b9812f8bc0
use anim callbacks and don't spam config resets in drag
2022-12-09 15:00:58 +00:00
vaxerski
fba03540d5
fix sharing scaled windows
2022-12-09 14:44:20 +00:00
vaxerski
ff12a41c40
minor focus fixes with LS-es and moving windows
2022-12-09 14:03:37 +00:00
vaxerski
726732244a
sort valid ws-es in relative
2022-12-08 21:24:55 +00:00
vaxerski
be6e1a33b1
ensure mapped state in addViewCoords
2022-12-08 18:52:48 +00:00
vaxerski
6e3bd440ba
do not reject drags on visible windows over fullscreen
2022-12-08 17:45:25 +00:00
vaxerski
cba10ba5b7
fix memory safety in getWindowFromSurface
2022-12-08 17:43:15 +00:00
vaxerski
050693be2e
fix up relative monitors
2022-12-08 12:09:48 +00:00
vaxerski
0803febac5
optimize m+- and e+- workspace opts
2022-12-08 12:08:41 +00:00
vaxerski
6259202c01
add missing c_str in debug log
2022-12-07 22:47:32 +00:00
vaxerski
e1d7a13333
unset fullscreen in onWindowRemoved
2022-12-07 18:57:02 +00:00
vaxerski
bf5844d607
add failsafe for dwindle windows
2022-12-07 18:57:02 +00:00
vaxerski
73b3bbe49b
added nomaxsize rule
2022-12-07 16:08:44 +00:00
vaxerski
d8dcf670da
fix lost windows clogging up memory
2022-12-07 14:32:24 +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
vaxerski
6c8d993477
minor toplevel sharing fixups
2022-12-06 18:58:42 +00:00
vaxerski
dfa9277867
remove double semicolons
2022-12-06 15:06:27 +00:00
vaxerski
7ed401e5e0
fix group border oversaturation
2022-12-06 12:57:10 +00:00
vaxerski
da76a1ed9e
block surface feedback on window sharing
2022-12-05 19:12:15 +00:00
vaxerski
9c67e08dbd
ignore alpha when sharing window
2022-12-05 18:00:57 +00:00
vaxerski
6cf716f182
fix handle finding
2022-12-05 17:57:59 +00:00
vaxerski
9fb24ac1e9
avoid using wayland-0 as a socket name
2022-12-05 17:21:09 +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
9e4e98acfb
fix crash in blurls remove
2022-12-04 22:34:30 +00:00
eriedaberrie
826e35f7a4
show groupings and swallowing in hyprctl ( #1159 )
...
* feat: show groupings and swallowing in hyprctl
2022-12-04 21:03:29 +00:00
Flafy
ffc580dda9
blur xray for layers ( #1158 )
...
* feat: apply blur_xray to non window surfaces
* don't blur optimize bottom and background layers
2022-12-04 20:57:41 +00:00
Paul
d9998f2ca5
Use internal device naming for Hyprctl devices ( #1174 )
...
* Use internal naming for Hyprctl devices
* Use c-strings rather than std::string
2022-12-04 17:32:55 +00:00
Flafy
686d6fc6d1
Fix wrong layout recalculate if statement ( #1167 )
...
* fix: wrong layout recalculate if statement
* change from find to contains
2022-12-04 17:32:27 +00:00
vaxerski
9e8df888eb
fix warning
2022-12-04 00:03:48 +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
056a45d035
fix shader destroy id unset
2022-12-03 14:45:10 +00:00
vaxerski
fbc839e8d9
reload shader on dynamic shader keyword
2022-12-03 14:45:10 +00:00
vaxerski
d39d6cc1e3
don't initial focus on LS keyboard grab
2022-12-02 20:10:15 +00:00
vaxerski
d6b3bfc48e
don't attempt rendering on begin failure
2022-12-02 19:33:54 +00:00
vaxerski
70d4fadc39
schedule frames and reloads on session re-activate
2022-12-02 18:47:57 +00:00
vaxerski
a2a12018d9
minor changes to unsafe state handling
2022-12-02 18:45:45 +00:00
vaxerski
10d34ef818
added blur_xray
2022-12-02 18:37:11 +00:00
vaxerski
c012e3d66b
update wlroots dep
2022-12-01 21:00:54 +00:00
39a4f82460
fix crash with invalid frag dynamic shaders
2022-12-01 13:40:05 +00:00
7b020ffa84
Added screen shaders
2022-12-01 13:36:07 +00:00
vaxerski
869f0a0238
remove global var
2022-11-30 13:33:21 +00:00
vaxerski
ff4ea1a13a
fix border inner offset in shader
2022-11-29 21:11:37 +00:00
vaxerski
51aebb2845
fix minor issues with blur w/o new optim
2022-11-29 11:21:03 +00:00
vaxerski
212f599412
fix AA on borders
2022-11-29 11:12:29 +00:00
vaxerski
55776df685
fix double free
2022-11-29 11:10:19 +00:00
vaxerski
3dd06b674a
clean up blur code and fix minor issues
2022-11-28 19:19:07 +00:00
vaxerski
12df799572
recalculate layout only when needed on dynamic keywords
2022-11-28 19:05:50 +00:00
vaxerski
c341792092
fix minor issues with blur_new_optimize
2022-11-28 19:04:30 +00:00
Eric_Luo
afe12dc90b
Fix a compiler warning ( #1124 )
...
Co-authored-by: hnboy <hnboy@users.noreply.github.com>
2022-11-28 19:04:24 +00:00
Jef
45d2d1e97d
convert bordercolors to GradientValueData correctly ( #1122 )
...
Co-authored-by: Jef Steelant <jef.steelant_ext@softathome.com>
2022-11-28 11:44:31 +00:00
vaxerski
0a302901d2
Added handling more special workspaces
2022-11-27 22:42:22 +00:00
vaxerski
49063f949d
find floating windows below closed one
2022-11-27 12:11:45 +00:00
vaxerski
7699d657d9
optimize border shader
...
Do not calculate gradient for discarded fragments
2022-11-27 00:30:44 +00:00
vaxerski
b2cb3b8bf2
use gradients in default configs
2022-11-27 00:26:13 +00:00
vaxerski
6cbaad896c
use highp for pixcoord to fix nvidia border issues
2022-11-26 23:55:41 +00:00
vaxerski
92f2e342a3
use unreachable instead of break on invalid cvd enum value
2022-11-26 20:46:39 +00:00
Dashie
e2f3f5fe63
Add nofullscreen to windowrules ( #1107 )
...
* feat: add windowrule to prevent fullscreen
2022-11-26 20:44:40 +00:00
vaxerski
0db75852f3
fix transformed border thickness
2022-11-26 20:36:05 +00:00
vaxerski
afe688e6ab
allow 360 degrees of freedom in gradients
2022-11-26 19:37:20 +00:00
vaxerski
493fc00953
fix decorations missing after no_gaps_when_only toggle floating
2022-11-26 18:48:16 +00:00
vaxerski
c709dc5e8e
fix fadeout with animated border
2022-11-26 18:41:30 +00:00
vaxerski
684c59e5bc
optimize data feeding to gradient renderer
2022-11-26 18:09:57 +00:00
vaxerski
0948b078e1
added border gradients
2022-11-26 17:57:02 +00:00
vaxerski
52c0356900
monitor rule fixes
2022-11-26 15:41:08 +00:00
vaxerski
1c9a0be8c4
fix up the border shader
2022-11-26 13:51:30 +00:00
vaxerski
f45ec24977
don't focus back after dnd on follow mouse 1
2022-11-26 00:00:36 +00:00
vaxerski
75b7e661e7
damage windows after switch
2022-11-25 19:52:23 +00:00
vaxerski
381d7a4300
check for special workspace open in attemptDirectScanout
2022-11-25 18:25:04 +00:00
0e6e8461eb
reset m_bEmptyFocusCursorSet on workspace switch
2022-11-25 11:34:52 +00:00
vaxerski
9616dc7bd8
don't change alpha on special anims
2022-11-24 20:51:33 +00:00
vaxerski
379597e78f
remove redundant strval_empty checks
2022-11-24 17:11:21 +00:00
vaxerski
f6067816fb
skip covered windows on fullscreen workspaces in getWindowInDirection
2022-11-23 23:40:05 +00:00
vaxerski
750eb76df3
default blur new optimizations to 1
2022-11-23 15:41:19 +00:00
Julian Schuler
79a9bc9076
Add option for retrieving first empty workspace ( #1085 )
2022-11-23 14:10:26 +00:00
dcb6a0425c
override force opaque rule on keybind
2022-11-23 09:55:52 +00:00
vaxerski
e15a9f3d7d
damage monitor on group switch
2022-11-22 23:47:00 +00:00
vaxerski
b0f95c63c9
fix crash in setActiveMonitor null
2022-11-22 23:17:10 +00:00
vaxerski
5327565b33
remove resize transitions
2022-11-22 17:20:58 +00:00
vaxerski
95047fb083
return full monitor box for fullscreen windows in idealBB
2022-11-21 23:33:53 +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
d504c1e5ab
fix master resizes all
2022-11-21 18:14:25 +00:00
vaxerski
c78db1212b
Unify rounding shaders
2022-11-21 18:09:47 +00:00
vaxerski
be03a6186c
fix invisible windows on moving fullscreen out
2022-11-20 18:50:27 +00:00
Julian Schuler
41a8975bd1
Render focused window at last ( #1060 )
2022-11-20 18:50:01 +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
f8b9138383
make focus/swap master layoutmsgs two-way
2022-11-20 11:55:50 +00:00
Narice
c03e4c36b0
Setting wayland environment variables at startup ( #1045 )
...
* Nix modules: removed GDK_BACKEND env variable
* setting wayland environment variables at startup
setting XDG_BACKEND and _JAVA_AWT_WM_NONREPARENTING in main.cpp
removed these variables from nix modules recommended environemnt
removed XCURSOR_SIZE from nix modules as it is already set
* Making _JAVA_AWT_WM_NONREPARENTING not overwritten
2022-11-19 19:37:16 +00:00
vaxerski
5530cf6e79
respect no_gaps_when_only in fullscreen 1
2022-11-19 17:35:37 +00:00
1f72237291
Fix incorrect layout positions in mirror re-add
2022-11-19 16:58:14 +00:00
vaxerski
e427d9f622
unify setting of the active monitor
2022-11-19 16:41:41 +00:00
vaxerski
df132e5ff3
update wlroots dep
2022-11-19 16:28:04 +00:00
0ffaa8d667
Fix minor issues with mirrors
2022-11-19 13:14:55 +00:00
e887149f25
minor fixes for mirrors & log more monitor events
2022-11-19 13:01:32 +00:00
vaxerski
250d61e0b3
find base surface if no subsurface found in ls
2022-11-18 20:35:15 +00:00
vaxerski
ba05c43ae3
minor monitor code fixups
2022-11-18 14:15:19 +00:00
vaxerski
82fe530045
don't set AS in onConnect
2022-11-18 14:08:34 +00:00
vaxerski
f91f3d1c81
Reset callbacks on remap
2022-11-18 13:53:54 +00:00
vaxerski
5d39223239
fix events in changeworkspace with bound ws-es
2022-11-17 21:58:22 +00:00
vaxerski
d2a7e22efd
more memory safety around onDisconnect
2022-11-17 21:52:45 +00:00
vaxerski
c02bfc3897
fix extents in shadow deco
2022-11-16 15:35:36 +00:00
vaxerski
878a20741b
fix slide calcs for windows outside the viewport
2022-11-16 15:35:36 +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
Jef
549fdf63f6
Add bordercolor windowrule ( #992 )
...
* Add bordercolor windowrule
* remove spaces form bordercolor rule + typo
Co-authored-by: Jef Steelant <jef.steelant_ext@softathome.com>
2022-11-13 19:33:13 +00:00
vaxerski
884fc4f89c
fix master window finding on closed
2022-11-13 14:31:12 +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
5a00f0c657
fix trailing comma in hyprctl activewindow
2022-11-13 11:12:11 +00:00
Jef
78a545112a
streamline hypctl output of windows ( #983 )
...
Co-authored-by: Jef Steelant <jef.steelant_ext@softathome.com>
2022-11-13 00:39:21 +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
vaxerski
a5ffd44caf
guard empty str in removeBeginEndSpacesTabs
2022-11-10 21:51:46 +00:00
vaxerski
0208dff574
fix invalid master slave pos calc on y != 0
2022-11-10 19:39:16 +00:00
vaxerski
3157bebed7
fix warning
2022-11-10 17:07:26 +00:00
vaxerski
c0bb4db15c
add move cursor windowrule
2022-11-10 16:59:08 +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
9a9ecc25db
added monitor cycling
2022-11-10 12:22:19 +00:00
vaxerski
34b145ee65
Added resizing individual master windows
2022-11-10 12:05:22 +00:00
vaxerski
f41fe59cb6
fix shadow extent & offset calculations
2022-11-09 22:39:19 +00:00
vaxerski
7ff1fd9d69
use goal values in changeWindowFloatingMode
2022-11-09 22:02:02 +00:00
d0b3cdc835
Fix crashes with DS and mirrors
2022-11-09 10:56:49 +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
c545ab4993
Added multiple master layoutmsgs
2022-11-08 12:39:52 +00:00