vaxerski
9d094f655e
renderer: track fade alpha for blur if ignore opacity is true
...
with ignore_opacity, blur would stay at 1 opacity during a fadeOut animation on layers, making it look wrong. Fixes #3051
2023-08-23 12:03:27 +02:00
vaxerski
ba31518ed8
compositor: fix log types
2023-08-22 16:44:33 +02:00
MightyPlaza
41d9b6f0d7
dwindle: use smart on display borders ( #2897 )
2023-08-21 20:57:55 +02:00
memchr
9ad4a96d18
renderer: update alpha of layers only if active ws ( #2994 )
...
update `alpha` of ZWLR_LAYER_SHELL_V1_LAYER_TOP only when Workspaces is active on the monitor.
2023-08-21 20:55:57 +02:00
memchr
cb59763d32
fix: improved focus behaviour on workspace switching for follow_mouse!=1 ( #3041 )
...
* fix: improved focus behaviour on workspace switching for follow_mouse!=1
When the 'input:follow_mouse' is not set to 1 and the target workspace
for switching does not currently have the previously focused window,
Hyprland will prioritize focusing on the top-left-most window.
* fix : #2451 call simulateMouseMovement.
* unify logic
* multimon fix
---------
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-08-21 20:54:02 +02:00
vaxerski
9977a8bfd4
compositor: log more in arrangeMonitors
2023-08-21 19:52:34 +02:00
Vaxry
37128bfd43
internal: Wayland Protocol impl improvements ( #2944 )
2023-08-21 19:36:09 +02:00
vaxerski
63b2189ce8
xdgshell: damage old popup coords after a reposition
...
fixes #3038 . I updated the shell ver without properly supporting .reposition
2023-08-21 01:15:00 +02:00
vaxerski
025c023e4b
xwayland: use logical pos in unmanaged geom requests
...
using raw xwayland coords is wrong cuz we use separate coord spaces
2023-08-21 00:39:39 +02:00
memchr
09cc96c0d5
feat(debug): add debug:suppress_errors to suppress errors. ( #3032 )
2023-08-20 18:17:49 +02:00
vaxerski
b79dfcceb4
compositor: fix missed raw throws
2023-08-20 13:58:46 +02:00
vaxerski
7713daa86a
compositor: log thrown runtime exceptions
2023-08-20 11:47:06 +02:00
vaxerski
fff118fa76
xdgoutput: don't send all details in .get
2023-08-19 21:14:12 +02:00
vaxerski
ebc5fed9b2
compositor: minor cleanup
2023-08-19 19:24:48 +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
3d9545d2e0
shaders: minor premultiplication fixes
2023-08-18 22:07:28 +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
7e8a212027
internal: allow negative monitor offsets
2023-08-16 18:16:39 +02:00
Dashie
19c4855afc
layout: Use refreshrate tick on all manual animations ( #2988 )
2023-08-16 10:56:48 +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
kbtz
2b4537606f
master: fix always_center_master
( #2961 )
...
* master: fix always_center_master
* master: allow resizing single centered window
---------
Co-authored-by: kbtz <github@kbtz.dev>
2023-08-15 18:13:45 +02:00
347a1eb662
xdgoutput: separate logic for zero scaling positions
...
if a scaled monitor was directly to the left of another monitor, we'd change the size to have zero scaling without pushing other monitors out of the way, creating overlaps in xwayland.
2023-08-15 17:55:29 +02:00
7c4daee29a
compositor: fix skipping iterators in arrangeMonitors
2023-08-14 19:27:33 +02:00
b9a783229b
compositor: don't apply offsets in renderer
2023-08-14 18:41:52 +02:00
2110dc1f03
compositor: fix auto positioning offset calcs
2023-08-14 17:31:36 +02:00
13886a264f
internal: add a new monitor auto system
2023-08-14 14:22:10 +02:00
0314a727eb
layers: set proper alpha to top grabbing surfaces
2023-08-13 21:52:43 +02:00
0220e4c1ea
input: notify idle about activity on mouse move regardless of focus
2023-08-13 17:46:20 +02:00
MightyPlaza
4b568ae5f6
remove shadow no_gaps_when_only master ( #2958 )
...
* remove shadow no_gaps_when_only
modified: src/Window.hpp
modified: src/config/ConfigManager.cpp
modified: src/config/ConfigManager.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/render/decorations/CHyprDropShadowDecoration.cpp
* add master
modified: src/layout/MasterLayout.cpp
* fix wrong
modified: src/layout/MasterLayout.cpp
2023-08-13 10:18:48 +02:00
MightyPlaza
739598717b
remove shadow no_gaps_when_only ( #2956 )
...
modified: src/Window.hpp
modified: src/config/ConfigManager.cpp
modified: src/config/ConfigManager.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/render/decorations/CHyprDropShadowDecoration.cpp
2023-08-12 23:37:55 +02:00
3f7f4207a6
config: add vrr per-display
2023-08-11 17:37:57 +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
60b548296d
internal: move backtrace to specific func
2023-08-11 17:22:19 +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
e4e8ae8f88
dwindle: disallow togglesplit on fullscreen
2023-08-10 22:01:34 +02:00
MightyPlaza
c4c3b590e5
toplevel: patches group toplevel-activated ( #2931 )
...
* patches group toplevel-activated
modified: src/Compositor.cpp
modified: src/Window.cpp
* remove redundant call
modified: src/Compositor.cpp
* fix style
modified: src/Compositor.cpp
2023-08-10 20:06:39 +02:00
126792584f
renderer: don't add workspace offset to pinned
2023-08-09 22:15:37 +02:00
cbb899740c
rules: add layer and window xray rules
2023-08-09 22:03:31 +02:00
d7209b90bb
renderer: remember extents before removing a window and use them for dt
...
fixes #2351
2023-08-09 14:28:04 +02:00
8e04a80e60
toplevelexport: minor fixes to dmabuf
2023-08-08 19:10:53 +02:00
MightyPlaza
6295cbe9cb
keybinds: Keep aspect ratio ( #2907 )
2023-08-08 18:52:20 +02:00
ab73183cb2
config: adjust default background color
2023-08-08 18:04:46 +02:00
0x455241
b3393c429f
background: add background color option ( #2915 )
...
Co-authored-by: 0x455241 <>
2023-08-08 18:00:11 +02:00
c748f36939
internal: add lock files and hyprctl instances
2023-08-08 16:16:40 +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
deeeb33c5f
macros: fix missing include
2023-08-07 18:48:08 +02:00
261c3307f7
internal: cleanup headers in helpers/
2023-08-07 13:36:14 +02:00
6e53c47e68
renderer: fix missing premultiplication for border multisampling
2023-08-06 20:46:00 +02:00
6c10c38481
renderer: fully switch to premultiplied alpha
2023-08-06 20:33:36 +02:00
a077b7a92e
animationmgr: avoid redundant ticks
2023-08-05 23:29:33 +02:00
MightyPlaza
b925f1b497
fix workspace change focus ( #2891 )
2023-08-05 20:53:13 +02:00
vaxerski
ef0d97153a
xdgoutput: manually destroy manager resource
2023-08-04 14:07:41 +02:00
vaxerski
2e6693fbb6
compositor: update window rules on workspace move
2023-08-03 21:59:12 +02:00
romanstingler
7d98181ade
xwayland: drop wlr_xwayland_surface.events.set_pid ( #2884 )
...
Co-authored-by: Roman Stingler <roman.stingler@waterdrop.com>
2023-08-03 21:40:56 +02:00
vaxerski
7a2027d1fd
input: fix and unify client checking in mouseRequests
2023-08-03 18:44:07 +02:00
vaxerski
da46e01b97
config: update default config for new blur changes
2023-08-03 15:16:37 +02:00
Vaxry
d96f8ff0fe
renderer: Various Blur Improvements ( #2877 )
...
* move blur to its own category
* blur improvements, contrast, brightness, noise
2023-08-03 15:11:10 +02:00
vaxerski
5c50fac907
windowrules: add workspace param
2023-08-02 13:21:38 +02:00
vaxerski
51cda87fe4
hyprctl: rerender on cursor_zoom_factor dynamic calls
2023-08-01 18:08:53 +02:00
vaxerski
da0c74cdf0
config: schedule frame for mons on reload
2023-08-01 15:47:56 +02:00
vaxerski
08651736ad
keybinds: add toggle to dpms
2023-07-30 16:46:37 +02:00
vaxerski
f61a714320
renderer: cleanup old redundancies in CFramebuffer
2023-07-29 13:27:40 +02:00
Po-Yeh Chen
77818e3457
xwayland: Add temporary fix for #2808 by adding nullptr check. ( #2829 )
...
* Add temporary fix for #2808 by adding nullptr check.
* Remove redundency.
2023-07-28 17:12:24 +02:00
Gioele Pannetto
ef26f711c9
Added git tag in json version command ( #2821 )
2023-07-27 10:51:04 +02:00
vaxerski
a9b8e2159c
renderer: reset scissor after renderTexturePrimitive
2023-07-25 13:33:08 +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
vaxerski
603de16f9a
renderer: adjust distribution of backgrounds
2023-07-24 18:30:00 +02:00
ferrreo
f6b340cc19
init: Fix for issue #2797 ( #2799 )
...
* Fix for issue #2797
* Fix for issue #2797
* Fix for issue #2797
2023-07-24 18:26:24 +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
vaxerski
9bad2a8180
backgrounds: add hypr chan var 2
2023-07-24 18:22:39 +02:00
MightyPlaza
6db3c4ef5e
layout: no_border_when_only-improvements ( #2791 )
2023-07-24 12:13:40 +02:00
Mily
9fc5f4c48b
init: Request SCHED_RR using CAP_SYS_NICE and add Python to nix dev shell ( #2690 )
...
* nix: add python3 to devShell
* init: request SCHED_RR scheduling policy
* init: checks if host supports reseting scheduler on fork
* init: make gainRealTime more compatible with other OSes
* init: remove linux-only code
2023-07-23 20:51:00 +02:00
MightyPlaza
50e6f368ff
windowrules: implements nomaximizerequest ( #2785 )
...
* Window.hpp
* ConfigManager.cpp
* Windows.cpp
* fix maximize event
2023-07-23 19:47:41 +02:00
vaxerski
975c4175b2
hyprctl: unify and sanitize ver commit msg better
2023-07-23 19:43:15 +02:00
vaxerski
af395a8f55
windowrules: fix opacity override
2023-07-23 16:03:59 +02:00
vaxerski
90f69782ee
window: fix segfault in boundingbox
2023-07-23 16:02:35 +02:00
vaxerski
5a64c73e05
render: use primitive end() only when no screen shader is present
2023-07-23 15:54:27 +02:00
end-4
9845f99b60
add config option to enable/disable new intuitive resizing ( #2774 )
...
dwindle:smart_resizing = 1 by default
== 1 then use new resizing
else use old resizing
2023-07-23 15:50:09 +02:00
MightyPlaza
d3bba2489d
render: Border fixes ( #2781 )
...
* Window.cpp
* layout
* CHyprGroupBarDecoration.cpp
2023-07-23 15:49:49 +02:00
Rachel Knight
b21644b611
input: Fix #2376 mouse movement bug in XWayland ( #2776 )
2023-07-22 19:31:36 +02:00
vaxerski
b70553cf46
opengl: fix warn
2023-07-22 19:26:56 +02:00
vaxerski
1a7fb1572a
renderer: disable init anim on disabled animations
2023-07-22 19:26:44 +02:00
outfoxxed
375e8385ee
Fix background occlusion ignoring monitor position ( #2771 )
2023-07-22 10:19:51 +02:00
vaxerski
27dd07f1b8
windowrules: improve opacity
2023-07-21 19:05:00 +02:00
vaxerski
263b9c6e39
socket1: add a timeout for requests
2023-07-21 17:20:23 +02:00
vaxerski
d7e9eb65e2
renderer: use primitive rendering for copying buffers
2023-07-21 17:11:54 +02:00
vaxerski
f864b15427
background: add option to force hypr chan
2023-07-20 21:01:07 +02:00
vaxerski
61dc0909ae
layout: use warp() instead of setValue()
2023-07-20 20:03:27 +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
a3f6a72a51
region: allow ctor from pixman_box32_t
2023-07-20 18:27:28 +02:00
vaxerski
d2a8b8c2de
renderer: cleanup back buffer skip checks
2023-07-20 18:27:14 +02:00
vaxerski
833d73df09
shaders: short-circuit rounding if radius <= 0
2023-07-20 18:18:53 +02:00
vaxerski
23eda1411b
renderer: scale box for occlusion
2023-07-20 18:12:29 +02:00