Vaxry
046ad79d11
GlobalShortcuts protocol impl ( #1886 )
...
Implements the `hyprland-global-shortcuts-v1` protocol
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-04-09 13:48:20 +01:00
vaxerski
e4e653ada6
socket2: receive bytes to avoid endless loops
2023-04-08 23:14:12 +01:00
vaxerski
b32af6ebfb
hyprctl: sanity check icons in notify
2023-04-08 18:53:54 +01:00
vaxerski
86852cdc78
textInput: don't double destroy TI
2023-04-08 15:39:14 +01:00
vaxerski
31963f823b
screencopy: fix crash in invalid format reads
2023-04-08 13:35:36 +01:00
scorpion-26
07e4ba9d80
Fix crash in CConfigManager::parseKeyword ( #1983 )
...
If debug:manual_crash is set on startup, parseKeyword tries
to call g_pHyprNotificationOverlay->addNotification, but
g_pHyprNotificationOverlay isn't initialized yet (is nullptr)
This commit adds a sanity check for that.
2023-04-07 20:15:11 +01:00
vaxerski
5e2d4d644a
screencopy: fix crash
2023-04-07 19:21:47 +01:00
vaxerski
50876f1b15
screencopy: fix read on incorrect monitor render
2023-04-07 19:11:30 +01:00
vaxerski
c2a85c9d36
screencopy: minor fixes for damage_ring
2023-04-07 18:04:02 +01:00
vaxerski
41d1fdedf2
output: handle needs_frame
2023-04-07 17:25:56 +01:00
vaxerski
cd1b982b2a
internal: listen to output.damage events
2023-04-07 16:31:55 +01:00
Andrew Nitrogenesis
a35ea4d242
Better and more secure argument parsing, and code reformatting ( #1976 )
...
* Better and more secure argument parsing, and code reformatting
* Changes to resolve PR conversation
* Formatted via clang-format, fixed typos
* More typos
2023-04-07 15:03:26 +01:00
vaxerski
d8645cd148
internal: release buttons on unmap
2023-04-07 12:54:11 +01:00
vaxerski
c9f7afbf78
subsurfaces: guard node's surface
2023-04-07 12:36:26 +01:00
Andrew Pritchard
dfb78e0593
Fix swiping onto a new workspace with multiple monitors. ( #1971 )
...
The previous code could run into issues into the following circumstances:
* The focused monitor is on its rightmost workspace with ID `i`.
* Another monitor has a workspace with ID `i+1`.
* `workspace_swipe_create_new` is enabled.
Then, swiping rightwards attempts to target a new workspace with ID
`i+1`: completing the swipe gesture unintentionally focuses that
workspace on whichever monitor it's already on while leaving the active
monitor in a broken state where it shows no windows but creates new
windows on the workspace it was previously on; and cancelling the swipe
gesture shifts the entire workspace `i+1` to the right by the width of
the active monitor.
By choosing an ID that doesn't exist, this problematic behavior is
avoided. More specifically, it's the smallest ID greater than any
existing workspace's ID, because otherwise the new workspace that was
seemingly just created to the right of the rightmost workspace could end
up somewhere in the middle of the workspace order.
2023-04-07 12:18:53 +01:00
vaxerski
24ace03780
internal: migrate to damage_ring
2023-04-07 12:18:40 +01:00
vaxerski
569eaff04c
swipe: block on locked session
2023-04-07 11:51:52 +01:00
vaxerski
1a5d5bf620
deps: update wlroots
2023-04-06 21:03:53 +01:00
vaxerski
366ebc123b
internal: don't remove x11 children on parent remove
2023-04-06 20:59:44 +01:00
vaxerski
bc4a51dbbb
internal: make togglefloat better visible on small size deltas
2023-04-06 19:45:59 +01:00
vaxerski
80650b6722
keybinds: allow MOD1 as an alias of ALT
2023-04-06 19:28:09 +01:00
vaxerski
a740e3e517
internal: comply to nofocus on vectorToWindow
2023-04-06 13:17:15 +01:00
vaxerski
19809532df
input: ignore constraints on touch
2023-04-06 11:34:18 +01:00
110f3fd658
screencopy: fix incorrect resource error post
2023-04-05 15:19:49 +01:00
vaxerski
a80ba54bbc
renderer: don't use simple rect on alphazero stencil
2023-04-04 22:58:58 +01:00
vaxerski
00d199b477
monitors: guard scale in onConnect
2023-04-04 22:54:35 +01:00
vaxerski
eea99abc49
debug: allow manual crash from hyprctl
2023-04-04 22:13:36 +01:00
vaxerski
e7185b338f
debug: minor improvements to manual crash
2023-04-04 22:04:32 +01:00
7d9977d028
debug: added manual_crash
2023-04-04 14:50:03 +01:00
vaxerski
882be7765b
toplevelExport: honor overlay_cursor
2023-04-04 00:58:30 +01:00
vaxerski
99314fbe71
render: plug missing software cursor unlocks
2023-04-04 00:46:58 +01:00
vaxerski
c50df4c0c3
screencopy: allow on legacy renderer
2023-04-03 23:34:08 +01:00
vaxerski
2f7fb2f553
input: don't set icon on held buttons without a drag
2023-04-03 23:17:06 +01:00
vaxerski
23001f6144
input: don't overset resize icons on drag
2023-04-03 23:15:33 +01:00
vaxerski
55d585ce17
input: fix click-to-refocus not working on loose
2023-04-03 23:09:44 +01:00
vaxerski
d3b0c90356
internal: rename ensureDPMS to ensureMonitorStatus
2023-04-03 22:52:09 +01:00
vaxerski
a43b18ae26
Feat: add initial class/title to hyprctl clients
2023-04-03 19:16:51 +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
c2b25f4701
swallow: move swallowed on workspace change
2023-04-02 10:24:17 +01:00
vaxerski
88a96110b7
config: default no direct scanout to true
2023-04-01 19:37:30 +01:00
Jan Beich
16bc5997bb
Misc FreeBSD fixes ( #1926 )
...
* helpers: drop incomplete GNU/kFreeBSD bits
Debian with FreeBSD kernel lacks Wayland-related packages and is not
officially supported since Jessie.
* KeybindManager: check VT ioctl availability instead of hardcoding
* plugins: add missing header for libc++ after 430778293e
src/plugins/PluginAPI.cpp:299:33: error: implicit instantiation of undefined template 'std::basic_istringstream<char>'
std::istringstream inStream(SYMBOLS);
^
/usr/include/c++/v1/iosfwd:140:32: note: template is declared here
class _LIBCPP_TEMPLATE_VIS basic_istringstream;
^
* plugins: prefer llvm-nm with Clang after 430778293e
nm: invalid option -- j
2023-03-31 20:39:04 +01:00
vaxerski
7680cd549c
plugins: mark getFunctionAddressFromSignature deprecated
2023-03-31 18:43:00 +01:00
vaxerski
430778293e
plugins: Add an API entry for finding functions by name
2023-03-31 18:31:11 +01:00
vaxerski
de3b00b5ee
renderer: go back to rendering layers without reverse
2023-03-31 17:44:36 +01:00
NotAShelf
3d9bf17f11
crashReporter: try $XDG_CACHE_HOME
before $HOME
( #1920 )
2023-03-31 13:15:24 +01:00
vaxerski
614ea53ad7
Renderer: fix dim easing
2023-03-30 21:08:20 +01:00
vaxerski
b88de63abb
Input: fix always_follow_on_dnd
2023-03-30 00:34:24 +01:00
Alexander Seiler
60527ab180
Fix some typos ( #1907 )
...
Signed-off-by: Alexander Seiler <seileralex@gmail.com>
2023-03-29 23:44:25 +01:00
vaxerski
d6241a3086
windows: only connect unmap when mapped
2023-03-28 20:17:47 +01:00
vaxerski
df54ab40ce
layer: allow focus on top/overlay surfaces without a window
2023-03-28 17:21:11 +01:00
6fec5bfbeb
keybinds: improve movefocus on fullscreen
2023-03-27 15:19:27 +01:00
vaxerski
3343aac6bf
feat: add forcergbx rule
2023-03-26 02:00:24 +01:00
vaxerski
41f7736c85
config: default manual animations to false
2023-03-24 22:24:12 +00:00
vaxerski
c418007c68
shaders: fix missing discardAlphaZero
2023-03-24 19:43:50 +00:00
vaxerski
cc2c270dde
log: log wlr logs to stdout
2023-03-24 19:38:09 +00:00
vaxerski
70e3cb8151
feat: add debug:enable_stdout_logs
2023-03-24 19:37:37 +00:00
Vaxry
a80f8f257f
Feat: Introduce render_ahead_of_time ( #1863 )
2023-03-24 19:23:16 +00:00
vaxerski
b3a70b565e
subsurfaces: avoid reading destroyed surfaces
2023-03-24 18:44:42 +00:00
vaxerski
e73c6fd3b0
logs: disable stdout after init
2023-03-24 13:00:54 +00:00
vaxerski
a5a0434fff
dbus: don't update vars in nests
2023-03-24 03:21:38 +00:00
vaxerski
463690a27a
keybinds: allow code: prefix
2023-03-23 13:05:23 +00:00
471ac474a1
core: remove old redundant shutdown stuff
2023-03-23 03:07:57 +00:00
vaxerski
a3fda12ba1
window: unassign surface on unmap
2023-03-23 00:39:32 +00:00
vaxerski
0268bb9888
surface: set to nullptr after destroy()
2023-03-23 00:22:49 +00:00
vaxerski
3a3a3f7bdb
popups: fix heap-use-after-free
2023-03-23 00:22:49 +00:00
vaxerski
a8b3be2c9c
config: add misc:suppress_portal_warnings
2023-03-22 12:17:16 +00:00
staz
5ce91bb0fd
Added overflow check for blur radius ( #1847 )
...
* internal: added overflow check for blur radius
---------
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-03-21 19:01:24 +00:00
vaxerski
adf5d8a114
monitors: update surface outputs on recover from unsafe
2023-03-21 17:46:26 +00:00
vaxerski
cb229f6436
compositor: adjust xdp error cases
2023-03-20 22:26:54 +00:00
lisuke
dc78c58c77
fix: a fullscreen bug. ( #1821 ) ( #1831 )
2023-03-20 16:07:18 +00:00
vaxerski
22721a37d5
hyprctl: add notify
2023-03-20 16:00:54 +00:00
vaxerski
dd4270eadf
notifs: add ICON_OK to icons
2023-03-20 15:49:46 +00:00
vaxerski
e2923a9385
meson: add pango deps
2023-03-20 15:39:43 +00:00
vaxerski
316674fecf
notifs: use empty color for auto
2023-03-20 15:32:11 +00:00
vaxerski
34da16b7e6
plugin api: add addNotificationV2
...
Allows for issuing fancy notifs via api
2023-03-20 15:23:25 +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
7a514f41a3
Focus: warp cursor on movewindow
2023-03-20 01:42:21 +00:00
vaxerski
928de33447
monitors: more guards for safety
2023-03-19 02:19:52 +00:00
Mihai Fufezan
0624455591
Meson: add rdynamic ld flag
2023-03-18 21:01:24 +02:00
vaxerski
2ba5238b8e
groups: fix moving between displays
2023-03-18 16:30:29 +00:00
vaxerski
00c2ca4697
config: improve ux on workspace and transform
2023-03-18 16:12:43 +00:00
vaxerski
d544c30551
LS: don't try to get rules on non-existent ls
2023-03-18 15:02:00 +00:00
vaxerski
ef80a69399
config: fix long variables being substrd
2023-03-18 14:57:59 +00:00
vaxerski
6e6971606d
windowrules: allow monitor by str
2023-03-18 01:34:06 +00:00
vaxerski
e5ad53ac42
config: make default config use hyphenated dev names
2023-03-18 01:06:03 +00:00
vaxerski
e98ee49aee
LS: fix support for legacy blurls
2023-03-17 23:36:36 +00:00
vaxerski
d797d9905d
LS: support address: in layerrules
2023-03-17 23:33:03 +00:00
vaxerski
e5870d47c7
LS: add blur and ignorezero rules
2023-03-17 23:16:13 +00:00
vaxerski
91a565c7b0
monitors: don't refocus on apply rule
2023-03-17 20:34:33 +00:00
vaxerski
5b924aaf60
crashReporter: add hl ver
2023-03-17 11:51:16 +00:00
vaxerski
606cb2832a
keybinds: remember last workspace on focusmonitor
2023-03-16 16:40:28 +00:00
vaxerski
4b52c1e68f
monitors: remove from monitors on unsafe
2023-03-16 16:33:27 +00:00
vaxerski
e77ebec629
monitors: guard output in damageSurface
2023-03-16 16:32:03 +00:00
vaxerski
162f235972
switches: do not fire on no change in toggle
2023-03-16 16:30:22 +00:00
96718d8b09
dpms: fix keyboard dpms
2023-03-16 15:29:48 +00:00
vaxerski
5d44ea802a
monitors: guard output when read
2023-03-16 14:03:40 +00:00
vaxerski
d9d57ce39a
monitors: fix segfault on non-unsafe remove
2023-03-16 01:04:54 +00:00
vaxerski
3e261b1fa7
dpms: fix key_press_enables_dpms
2023-03-16 00:30:07 +00:00
vaxerski
cee7f11d8b
hyprctl: ignore null output monitors
2023-03-16 00:18:44 +00:00
vaxerski
f5669a7d6b
events: guard output in change
2023-03-15 17:01:20 +00:00
vaxerski
25d3d73dbf
monitors: fixes to unsafe mode
2023-03-15 15:11:41 +00:00
vaxerski
d63e8c8f45
ime: account for text height in popup calcs
2023-03-14 16:46:39 +00:00
vaxerski
7e5a3eb045
ime: fix panels overflowing on corners
2023-03-14 16:12:25 +00:00
vaxerski
f960f72785
input: minor fixes for tiv1
2023-03-14 14:37:00 +00:00
vaxerski
0807b8b95f
tiv1: minor fixes for crashes
2023-03-14 13:51:08 +00:00
Vaxry
5dc1a5fec6
input: text-input-v1 support ( #1778 )
...
support zwp_text_input_v1
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-03-14 12:57:50 +00:00
vaxerski
e749af7b60
dispatchers: remember named workspaces in prev
2023-03-13 15:19:25 +00:00
vaxerski
17deeb07ad
master: better cycle
2023-03-13 01:07:05 +00:00
vaxerski
bcd8fe9573
groups: add deco on moveIntoGroup
2023-03-13 00:47:57 +00:00
vaxerski
146d231ec5
config: add key_press_enables_dpms
2023-03-12 13:46:38 +00:00
vaxerski
71ef1bde7e
dispatchers: disallow togglesplit on fullscreen
2023-03-11 17:58:34 +00:00
vaxerski
253286669a
groups: fix fullscreen behavior with groups
2023-03-10 15:19:09 +00:00
c9167d9646
blurls: fix address substr length
2023-03-09 14:24:06 +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
a85a6fa6c8
Dwindle: Added default_split_ratio
2023-03-07 14:24:10 +00:00
Stanisław Zagórowski
b11e2eaa3b
Fix plugin argument-less hyprctl calls ( #1723 )
...
Handle hyprctl command whitespace trimming
might break
2023-03-07 10:42:33 +00:00
vaxerski
0aeb61a95a
Opengl: Fix forcefully setting missing time prop to final shader
2023-03-06 19:02:08 +00:00
hillyu
4f647a8e8b
fix mfact not applying to addmaster ( #1715 )
...
Co-authored-by: Hill <hillyu@live.com>
2023-03-06 09:03:49 +00:00
Jan Beich
7739b776cd
config: explicitly use environ(7) after b03c8970e6
( #1708 )
...
src/config/ConfigManager.cpp:40:23: error: use of undeclared identifier 'environ'
for (char** env = environ; *env; ++env) {
^
2023-03-05 18:39:46 +00:00
opsu
0c8d1ba4a8
Buffer overflow fix ( #1707 )
2023-03-05 18:16:42 +00:00
hillyu
7ce92f93ad
add mfact setting for master layout ( #1666 )
...
* add mfact setting for master layout
---------
Co-authored-by: Hill <hillyu@live.com>
2023-03-05 16:29:23 +00:00
vaxerski
b03c8970e6
Allow environment in config
2023-03-05 14:54:32 +00:00
scorpion-26
de5f1b2a83
Optionally expose time to screen shaders ( #1700 )
...
* Optionally expose time to screen shaders
Since that collides with damage tracking, it will only be done, when
damage tracking is disabled, meaning this comes at no cost for everyone
not using time.
* Rename m_Timer to m_tGlobalTimer
2023-03-05 14:05:30 +00:00
vaxerski
dc7d783d14
Initialize priority managers before server init
2023-03-05 13:37:21 +00:00
vaxerski
8e5ee31f30
Add env to example cfgs
2023-03-05 13:37:05 +00:00
vaxerski
90c5715bc6
add env dbus opt
2023-03-05 13:15:12 +00:00
vaxerski
d5093f7af0
add env keyword to cfg
2023-03-05 13:12:01 +00:00
vaxerski
4abc608bc0
update dbus env on exec-once dispatches
2023-03-05 12:53:02 +00:00
vaxerski
fea2031bfe
systemd: expand sysd import env script
2023-03-04 15:21:27 +00:00
vaxerski
b69f40815f
opengl: use a passthru shader for final wlr copy
2023-03-04 14:59:27 +00:00
scorpion-26
f678789dfd
Fix clang compilation ( #1697 )
...
void* + integral type is not allowed on standard C++ and is a GNU
extension
2023-03-04 14:02:40 +00:00
c444099325
Mirrors: remove accidentally leftover logs
2023-03-04 01:06:16 +00:00
vaxerski
31cd104286
fix warns
2023-03-04 00:53:42 +00:00
1ead6c46f4
Mirrors: minor fixes
2023-03-04 00:48:22 +00:00
vaxerski
fb45f8f2f9
crashReporter: remove inconsistent log from crash reports
2023-03-04 00:14:20 +00:00
vaxerski
a34b747661
update wlroots dep
2023-03-03 21:28:22 +00:00
vaxerski
fe007fd36a
xwl: don't try to get unmanaged titles
2023-03-03 19:37:25 +00:00
Stanisław Zagórowski
141365cbc1
Fix plugin config breakage ( #1687 )
2023-03-03 19:32:44 +00:00
vaxerski
51ce3ddd67
layoutmgr: don't reenable layout on unchanged layout
2023-03-03 14:06:01 +00:00
vaxerski
64f35c0e31
Bezier: Fix incorrect binary search in bezier approx
2023-03-03 13:33:52 +00:00
vaxerski
9c0e2bba54
Renderer: Nuke onWindowResize{start/end}
2023-03-03 13:18:44 +00:00
vaxerski
62e0c9226e
Up the bezier bake count
2023-03-03 13:17:11 +00:00
vaxerski
c5aa20f226
fix bezier step approx
2023-03-03 13:08:46 +00:00
vaxerski
66b8629964
Update the debug overlay
2023-03-03 12:15:59 +00:00