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
Vaxry
61a71c65ac
internal: Formatter rework ( #3186 )
2023-09-06 12:51:36 +02:00
vaxerski
2d100bf57e
socket2: add renameWorkspace event
2023-09-05 15:55:24 +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
vaxerski
b4f123d1f2
compositor: remove wlr_scene refs
...
super old leftovers
2023-08-30 17:22:55 +02:00
Vaxry
4a41d013a2
internal: Fix XDP multi-portal issues ( #3077 )
...
* add a hyprland portals conf
* remove portal checks
* typo
* Nix: remove portal patch
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-08-26 17:12:21 +02:00
vaxerski
870471dd96
internal: allow opening empty special workspaces
...
Fixes point 2 of #2596
2023-08-25 18:05:08 +02:00
vaxerski
3a1f30519b
compositor: fix offset in auto arrangeMonitors
...
Fixes #3043 , I am an idiot
2023-08-25 13:11:32 +02:00
vaxerski
ba31518ed8
compositor: fix log types
2023-08-22 16:44:33 +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
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
ebc5fed9b2
compositor: minor cleanup
2023-08-19 19:24:48 +02:00
7e8a212027
internal: allow negative monitor offsets
2023-08-16 18:16:39 +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
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
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
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
c748f36939
internal: add lock files and hyprctl instances
2023-08-08 16:16:40 +02:00
vaxerski
2e6693fbb6
compositor: update window rules on workspace move
2023-08-03 21:59:12 +02:00
vaxerski
f5913135c6
input: add support for cursor-shape-v1
2023-07-24 18:50:17 +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
Tuur Vanhoutte
d2eb4fee76
Avoid connected monitor reusing unavailable ID ( #2731 )
2023-07-18 12:12:05 +02:00
MightyPlaza
cacdb424a9
massive-fix ( #2725 )
2023-07-16 21:00:38 +02:00
vaxerski
459afcc47f
idle: fix reverse flag for new idle protocol
2023-07-14 20:02:31 +02:00
vaxerski
f8def68e7e
idle: implement new protocol
2023-07-13 18:05:34 +02:00
MightyPlaza
29d017f54b
monitor desc default workspace but working now ( #2678 )
...
* fix desc check
* fixes crashes when nulptr
2023-07-11 11:29:19 +02:00
MightyPlaza
d9f7f039e1
monitor desc support ( #2670 )
...
* monitor desc
* monitor desc
2023-07-09 23:10:35 +02:00
Tuur Vanhoutte
b99ac063ea
Reuse same ID when reconnecting monitor, otherwise use minimum available ID ( #2666 )
...
Fixes #2601
2023-07-09 23:08:40 +02:00
Mykola Perehudov
41358c6fb5
Cleanup compositor deadcode ( #2657 )
...
* Remove dead code as it is a part of CCompositor::cleanup
* Unify sd_notify logic with Compositor lifetime
2023-07-06 15:24:49 +02:00
vaxerski
18f9fb5e0f
rules: add stayfocused
2023-07-04 12:05:25 +02:00
01f85a09a9
xwayland: send zero scaling to xwayland if enabled
2023-06-23 21:42:44 +02:00
cbe9bf0e69
compositor: move group members properly in moveWindowToWorkspaceSafe
2023-06-21 20:51:18 +02:00
vaxerski
fbabb105c3
gamma: use wlr's new gamma manager event
2023-06-14 13:26:47 +02:00
vaxerski
e8c6d0f51e
compositor: don't set dim percent on disabled dim
2023-06-13 18:51:49 +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
147e962370
deps: update wlroots
2023-06-03 12:20:28 +02:00
e76bd43f53
rules: add nodim
2023-05-31 21:11:20 +02:00
vaxerski
5484411232
compositor: disallow sending pinned to special
2023-05-29 17:46:12 +02:00
vaxerski
086f724951
wlr_ext_workspaces: honor activate from client + format
2023-05-22 19:36:47 +02:00
Anthony Ruhier
d7935356da
input: don't move monitor focus on wp change ( #2320 )
2023-05-17 13:32:59 +01:00
vaxerski
824813fc6a
internal: remove check for negative exact vector args
2023-05-15 15:16:06 +01:00
vaxerski
f2725a374a
render: minor fixes to fullscreen rendering
2023-05-10 18:36:13 +01:00
vaxerski
cc4ccfdbfd
internal: use i64 for workspaces in outofbounds
2023-05-09 14:08:05 +01:00
vaxerski
afe8d8dfec
monitors: fix some bugs with re-plug
2023-05-06 16:50:15 +01:00
dtop129
7e5ba5e824
Fixed wrong focus changes when moving background workspaces ( #2258 )
2023-05-06 16:13:26 +01:00
vaxerski
83cd5e2ebd
workspaces: minor fixes for multi-special
2023-05-06 16:10:51 +01:00
vaxerski
4ad03af544
compositor: don't focus pointer in focusWindow
2023-05-06 00:59:25 +01:00
scorpion-26
c3b9326ba1
Honor debug:enable_stdout_logs on startup ( #2197 )
...
* Honor debug:enable_stdout_logs on startup
disableStdout is set via config in CConfigManager::init(), which is
called early in CCompositor::initServer(). initServer() always disables
stdout logs at the end though, even when stdout is enabled is config. With this commit,
the config is respected.
* Don't spam stdout message
2023-05-03 16:08:01 +01:00
outfoxxed
3a631e40db
Declarative plugin management ( #2180 )
...
* Declarative plugin management
Allow declaring `plugin` entries in the hyprland configuration.
Plugins will be loaded if an entry is added and unloaded if that entry
is removed.
* Replace pointers with copying in updateconfigPlugins
* Include which plugin was declared twice in error
2023-05-01 15:10:53 +01:00
scorpion-26
fdb772832f
Keep fullscreen mode in moveWindowToWorkspaceSafe ( #2191 )
...
Moving a maximised window would always result in the window being
fullscreen instead of maximised
2023-04-29 23:39:09 +01:00
vaxerski
5a3e3deb33
internal: warp workspace on change only if old mon is last
2023-04-29 13:32:59 +01:00
vaxerski
fbb938fcf2
internal: don't change ws on active swap
2023-04-28 21:40:44 +01:00
vaxerski
e195a51cd4
internal: update fullscreen fade on workspace move
2023-04-24 23:23:12 +01:00
vaxerski
247ff4e60d
internal: improve fullscreen fade
2023-04-24 23:21:51 +01:00
vaxerski
c0f4e9f52e
internal: moveToWorkspace before setting ws
2023-04-22 21:13:06 +01:00
vaxerski
d03dcc3d99
deps: update wlroots
2023-04-21 15:42:08 +01:00
vaxerski
b15803510c
input: improve mouse release conditions
2023-04-20 00:46:42 +01:00
vaxerski
f914a5a06d
input: release mouse buttons before refocuses
2023-04-19 21:36:08 +01:00
vaxerski
8b3d8dc792
Format: use %lx for all addresses
2023-04-17 17:35:28 +01:00
vaxerski
c62ab1bee7
internal: use setSpecialWorkspace on destroy in sanityCheck
2023-04-16 21:33:28 +01:00
vaxerski
12604b7676
compositor: ignore contraints on warp in moveWorkspaceToMonitor
2023-04-15 21:27:11 +01:00
Jan Beich
63841c8aac
Disable systemctl when built without systemd support ( #2066 )
...
/bin/sh: systemctl: not found
2023-04-15 20:03:09 +01:00
vaxerski
4c4fcc128b
input: fix ls focus in non-input area
2023-04-15 16:53:31 +01:00
vaxerski
287e6c4ede
internal: workspace manip handling rework
2023-04-14 15:03:53 +01:00
vaxerski
260ef788f5
internal: don't sanity check workspaces on internal ws calls
2023-04-13 22:21:11 +01:00
vaxerski
41c7d896e3
internal: prevent premature destroy in moveworkspace
2023-04-13 21:09:50 +01:00
vaxerski
a68feb5aa0
internal: guarantee activeWindow event type
2023-04-12 13:11:38 +01:00
vaxerski
92fecb8ad4
internal: don't iterate special workspaces in move
2023-04-12 11:24:36 +01:00
vaxerski
ea77622e04
input: send null keycodes on focusSurface
2023-04-10 22:37:55 +01:00
vaxerski
366ebc123b
internal: don't remove x11 children on parent remove
2023-04-06 20:59:44 +01:00
vaxerski
a740e3e517
internal: comply to nofocus on vectorToWindow
2023-04-06 13:17:15 +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
e6211eef00
log: Move stdout log disabling to the end of init
2023-04-03 10:41:49 +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
vaxerski
e73c6fd3b0
logs: disable stdout after init
2023-03-24 13:00:54 +00:00
471ac474a1
core: remove old redundant shutdown stuff
2023-03-23 03:07:57 +00:00
vaxerski
a8b3be2c9c
config: add misc:suppress_portal_warnings
2023-03-22 12:17:16 +00:00
vaxerski
cb229f6436
compositor: adjust xdp error cases
2023-03-20 22:26:54 +00:00
vaxerski
316674fecf
notifs: use empty color for auto
2023-03-20 15:32:11 +00:00
vaxerski
71a95a581f
feat: add pretty notifications
2023-03-20 15:03:09 +00:00
Vaxry
788a8f7c13
internal: wrap wlr surfaces ( #1822 )
2023-03-20 15:00:58 +00:00
vaxerski
d23bbd1687
workspaces: preserve pin on moves
2023-03-20 01:50:46 +00:00
vaxerski
5d44ea802a
monitors: guard output when read
2023-03-16 14:03:40 +00:00
ca1c1438e3
Compositor: fix crash on exit
2023-03-09 14:19:54 +00:00
92d2331170
Events: Avoid sending std::nullptr_t in keyboardFocus
2023-03-08 09:46:17 +00:00
vaxerski
dc7d783d14
Initialize priority managers before server init
2023-03-05 13:37:21 +00:00
vaxerski
fea2031bfe
systemd: expand sysd import env script
2023-03-04 15:21:27 +00:00
dea71875e4
add desc: to getMonitorFromString
2023-03-02 12:04:41 +00:00
556c7dd51f
reset signal handlers in unrecoverable
2023-03-01 21:55:30 +00:00
6c250df77e
generate coredumps on sigabrt too
2023-03-01 15:08:44 +00:00
vaxerski
7c5c7ced91
Convert reverse iterators to ranges
2023-03-01 14:06:52 +00:00
vaxerski
3cef005fec
use XCURSOR_SIZE for internal cursor size
2023-03-01 13:54:48 +00:00
86acdcf8b6
nuke unmanagedx11 vector
2023-03-01 13:15:51 +00:00
ea717731a4
Simplfy framebuffer erasing in cleanupFadingOut
2023-03-01 10:06:15 +00:00
Stanisław Zagórowski
5c93f6947a
Unload plugins on compositor cleanup ( #1662 )
2023-02-28 23:11:49 +00:00
vaxerski
2187c6cf43
Allow decos to request interactivity
2023-02-28 22:32:42 +00:00
vaxerski
7e523e4d5e
minor fixes to X11 configure/or handling
2023-02-28 18:50:47 +00:00
ac251d7a66
allow focus to grouped windows
2023-02-28 12:34:59 +00:00
vaxerski
49f423aa8f
update decos on anim values update
2023-02-27 23:34:41 +00:00
Vaxry
8b81f41e52
Plugin System ( #1590 )
...
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-02-27 12:32:38 +00:00
vaxerski
66e3679ba3
Conform to X11 OR surfaces wanting focus
2023-02-21 20:47:02 +00:00
vaxerski
784cdd7638
abort instead of exiting on sigsegv
2023-02-20 11:02:44 +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
38c25bb50d
Added a crash reporter
2023-02-19 13:45:56 +00:00
Ching Pei Yang
c92e0c05e4
Resize on border ( #1347 )
2023-02-18 22:35:31 +00:00
vaxerski
ff95721ad9
fix compile for single_pixel_buffer_v1
2023-02-16 13:37:46 +00:00
d710e7347a
enable single_pixel_buffer_v1
2023-02-16 12:55:52 +00:00
vaxerski
127e80692f
move no_vfr to vfr and add vrr
2023-02-14 17:08:42 +00:00
vaxerski
79ad93d536
clear focus on lockscreen refocus
2023-02-12 19:20:13 +00:00
vaxerski
863812a097
added activewindowv2
2023-02-06 13:16:59 +00:00
vaxerski
a0bc0e4998
make a null surface focus reset lastfocus
2023-02-03 17:18:22 +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
1c1e688564
fix crash in nested non-mouse warps
2023-01-28 17:54:14 +00:00
vaxerski
86f4772bd6
fix clang warn
2023-01-28 17:52:32 +00:00
vaxerski
61c9e50bcd
warp cursor on login to center
2023-01-28 12:26:38 +00:00
94b7b6b584
added binds:focus_preferred_method
2023-01-26 14:36:22 +00:00
a2ae37396f
add hyprctl setprop
2023-01-24 19:05:43 +00:00
vaxerski
e3d1743722
Revert "use spawn in dbus-env activation"
...
This reverts commit 63babcba36
.
oops.
2023-01-24 16:25:18 +00:00
63babcba36
use spawn in dbus-env activation
2023-01-24 14:05:59 +00:00
vaxerski
70b5c1b119
fix clamp in monitor relative
2023-01-23 20:56:43 +00:00
DB
7574b3db64
fix: hyprland crashing wenn moving window -1 from first monitor ( #1419 )
...
Co-authored-by: xVermillionx <xVermillionx@notvalid>
2023-01-23 20:56:05 +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
434719611d
fix focus history on workspace jumps
2023-01-20 20:57:35 +01:00
5814d9b2a0
make hyprerror follow fadein anim
2023-01-20 20:48:07 +01:00
fb2679d5ef
add a focus history vec
2023-01-20 19:15:15 +01:00
5112056fdb
better log wl socket adding and use auto if failed
2023-01-19 16:44:23 +01:00
b5b436e01d
better error handling around getMonitorFromString
2023-01-14 20:45:28 +01:00
Maxim Baz
668d90c700
Implement urgency hint for workspaces ( #1379 )
...
When there are any unfocused windows that request activation, mark the workspace as urgent.
2023-01-14 20:31:11 +01:00
df30f0519a
damage monitor on stack rotations
2023-01-11 17:57:54 +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
rubyowo
0d2e1e1270
fix crashes and bug wiki link ( #1333 )
2023-01-07 12:33:36 +01:00
jrun
0d14fd9136
add systemd support ( #1253 )
...
* add systemd support
motivation for this is is proper ordering of related/bound/required
services to Hyprland (e.g. swaybg) that would need to have a compositor
ready.
this could possibly be a build-time option of course.
see also:
example/ files for example of services
Signed-off-by: Paymon MARANDI <darwinskernel@gmail.com>
* nix: add withSystemd flag
Signed-off-by: Paymon MARANDI <darwinskernel@gmail.com>
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
Co-authored-by: Vaxerski <vaxry@vaxry.net>
2023-01-05 20:17:55 +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
7f595ed0ca
support gradients in dwindle group colors
2022-12-31 16:23:56 +01:00
0baef17a02
simplify workspace sanity checks
2022-12-29 17:06:30 +01:00
d64fc7d336
remove useless log
2022-12-27 15:28:41 +01:00
vaxerski
2b888d5106
ignore focus to empty input region ls-es
2022-12-22 15:03:32 +00:00
vaxerski
96cb47fc64
Add sane permissions for /tmp/hypr
2022-12-21 15:41:02 +00:00