Commit Graph

1838 Commits

Author SHA1 Message Date
vaxerski 96cb47fc64 Add sane permissions for /tmp/hypr 2022-12-21 15:41:02 +00:00
vaxerski e9bd2ee996 move setActiveMonitor backup later in onDisconnect 2022-12-21 15:17:24 +00:00
vaxerski 41cdfb7420 allow binding tablets to outputs 2022-12-21 15:11:39 +00:00
vaxerski fc37ce4a72 render pinned windows above floating separately 2022-12-20 23:07:25 +00:00
Maarten van Gompel edcf4cd61d
fix for gap in master layout orientation right #1171 (#1260) 2022-12-20 22:24:36 +00:00
vaxerski 261fbb5b62 adjust medium ppi values 2022-12-20 13:33:29 +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
Jan Beich 2f6b37e103
Drop Pango (unused) (#1251)
* Drop unused Pango dependency

* nix: explicitly depend on cairo (previously pulled via pango)

src/meson.build:4:0: ERROR: Dependency "cairo" not found, tried pkgconfig
2022-12-19 12:13:07 +00:00
Jan Beich e2ee8b9f20
Drop X11 headers (unused) (#1252)
* Move libX11 header under Xwayland support

In file included from ../src/layout/../defines.hpp:1,
                 from ../src/layout/IHyprLayout.hpp:3,
                 from ../src/layout/IHyprLayout.cpp:1:
../src/layout/../includes.hpp:9:10: fatal error: X11/Xlib.h: No such file or directory
    9 | #include <X11/Xlib.h>
      |          ^~~~~~~~~~~~

* Drop unused X11 headers
2022-12-19 12:12:58 +00:00
vaxerski 6424a1e398 mark blur dirty on dynamic blur keywords 2022-12-18 15:05:34 +00:00
vaxerski a163ca9237 fix blur damage spam on no blurred windows 2022-12-18 12:41:19 +00:00
vaxerski 974739457f remove damage_entire_on_snapshot 2022-12-17 23:05:15 +00:00
vaxerski 563835404f remember master width on master close 2022-12-17 22:53:03 +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
vaxerski 0f3214714f respect ls protocol by forcing kb focus to kb interactive top and overlay 2022-12-17 22:35:51 +00:00
Julian Schuler a3b37b0191
Fix focus not changing on (empty) workspace change (#1243) 2022-12-17 17:28:43 +00:00
Julian Schuler 11ba6afdd3
Fix cycleprev bug introduced in 46891b12cf (#1213) (#1242) 2022-12-17 14:37:10 +00:00
vaxerski 99ca1ad353 remember pos and size across fullscreen moves 2022-12-17 12:15:56 +00:00
vaxerski 2076905d6e remember size and pos on fullscreen 1 2022-12-17 12:14:43 +00:00
vaxerski deb8d3d82e ignore self in candidate floating 2022-12-16 20:07:44 +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 7c33c7fc64 fix stupid typo 2022-12-16 11:47:02 +00:00
vaxerski 20899b597e log more in group creation 2022-12-16 00:22:23 +00:00
vaxerski 198b7cae12 ignore silent workspace rules to same workspace 2022-12-15 17:36:34 +00:00
vaxerski 121ea1fac2 set created over fullscreen in movetotop 2022-12-15 17:29:06 +00:00
vaxerski 3bd9ee0d32 minor xcursor and scale fixes 2022-12-15 17:17:15 +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 e405490593 fix workspace special rules 2022-12-15 12:49:39 +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 5a138bed6b use auto scale in fallback rule 2022-12-14 18:00:04 +00:00
vaxerski a2ecca936e use auto scale in default cfgs 2022-12-14 17:57:45 +00:00
vaxerski 374571da96 add auto scale 2022-12-14 17:57:45 +00:00
vaxerski f8188ed7f8 stuff 2022-12-14 17:57:45 +00:00
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
Vaxry 39a4f82460 fix crash with invalid frag dynamic shaders 2022-12-01 13:40:05 +00:00
Vaxry 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
Vaxry 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
Vaxry 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
Vaxry 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