Commit graph

354 commits

Author SHA1 Message Date
vaxerski
263b9c6e39 socket1: add a timeout for requests 2023-07-21 17:20:23 +02:00
vaxerski
a921c5b89e Debug: add tracy 2023-07-20 17:47:49 +02:00
MightyPlaza
ddb8c89776
Allow empty args in hyprctl dispatch (#2724) 2023-07-16 21:01:06 +02:00
Mykola Perehudov
0c974b7236
Avoid passing control unix socket descriptors to children (#2656)
Add SOCK_CLOEXEC flags to server side connection FDs to make them
closed during execve(2).
2023-07-06 11:39:02 +02:00
c241da5ea5 crashreporter: log tag 2023-06-23 13:22:38 +02:00
outfoxxed
f0e4f6622e
Implement pass binds (#2503)
* Implement pass binds

Pass binds run the associated dispatcher but do not prevent windows
from receiving the bind.

* Fix pass binds not working properly with release binds

* Rename `pass` to `nonConsuming`
2023-06-14 13:08:56 +02:00
4ef684f615 hyprctl: recalc layout on setprop 2023-06-04 21:35:23 +02:00
d83e5b8409 internal: make borderSize prop overridable 2023-06-04 21:35:23 +02:00
Sinkerine
ca3791fed8
[hyprctl] Expose the special workspace id and name of the monitor (#2392)
* [hyprctl] Expose the special workspace id of the monitor

So that we know if a special workspace is shown on a monitor

* [hyprctl] Add special workspace name to the output
2023-06-02 13:25:33 +02:00
e76bd43f53 rules: add nodim 2023-05-31 21:11:20 +02:00
eriedaberrie
53285a75ad
hyprctl: fix cut-off json outputs (#2352)
* hyprctl: fix cut-off json outputs

* Address comments
2023-05-24 17:46:56 +02:00
vaxerski
cc01550aff hyprctl: recalc layout on dynamic workspace 2023-05-12 01:16:27 +01:00
Yavor Kolev
ac3edec14b
Add activeworkspace hyprctl command (#2202)
* Add `activeworkspace` hyprctl command

* fix format in hyprctl

* Make stuff more shared in workspace hyprctl

---------

Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-05-02 14:51:52 +01:00
vaxerski
5ce76cd0b0 internal: add tag to version, send hash in release ci 2023-04-27 14:28:40 +01:00
vaxerski
7b5b4a1049 crashReporter: log on crash 2023-04-21 16:48:36 +01:00
vaxerski
510db64860 hyprctl: allow spaces in cursor themes 2023-04-20 23:59:31 +01:00
vaxerski
8b3d8dc792 Format: use %lx for all addresses 2023-04-17 17:35:28 +01:00
vaxerski
5cb5b628b8 crashReporter: fix invalid format string 2023-04-17 17:32:07 +01:00
vaxerski
29fc410a8f crashReporter: avoid segfault in deref plugin system 2023-04-15 10:58:46 +01:00
vaxerski
a38b0e736d hyprctl: don't assume output validity in hyprctl workspaces 2023-04-10 21:52:14 +01:00
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
b32af6ebfb hyprctl: sanity check icons in notify 2023-04-08 18:53:54 +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
NotAShelf
3d9bf17f11
crashReporter: try $XDG_CACHE_HOME before $HOME (#1920) 2023-03-31 13:15: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
3343aac6bf feat: add forcergbx rule 2023-03-26 02:00:24 +01:00
vaxerski
cc2c270dde log: log wlr logs to stdout 2023-03-24 19:38:09 +00:00
Vaxry
a80f8f257f
Feat: Introduce render_ahead_of_time (#1863) 2023-03-24 19:23:16 +00:00
vaxerski
e73c6fd3b0 logs: disable stdout after init 2023-03-24 13:00:54 +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
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
vaxerski
5b924aaf60 crashReporter: add hl ver 2023-03-17 11:51:16 +00:00
vaxerski
cee7f11d8b hyprctl: ignore null output monitors 2023-03-16 00:18:44 +00:00
vaxerski
fb45f8f2f9 crashReporter: remove inconsistent log from crash reports 2023-03-04 00:14:20 +00:00
vaxerski
66b8629964 Update the debug overlay 2023-03-03 12:15:59 +00:00
52878161e4 add log tail to crash reports 2023-03-01 15:14:35 +00:00
6c250df77e generate coredumps on sigabrt too 2023-03-01 15:08:44 +00:00
0905515c40 use .txt for crash reports 2023-03-01 09:32:31 +00:00
89e7d812c8 Include unmapped and hidden windows in hyprctl clients 2023-02-28 12:41:46 +00:00
Vaxry
8b81f41e52
Plugin System (#1590)
---------

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-02-27 12:32:38 +00:00
vaxerski
708bb014e9 use sans for fonts instead of noto sans 2023-02-21 19:07:30 +00:00
Jan Beich
474ada9267
Unbreak CrashReporter on FreeBSD (#1589) 2023-02-20 14:15:15 +00:00
vaxerski
0eee57aab9 fixup backtrace curpath 2023-02-20 10:28:16 +00:00
ecd0156265 fix group data in hyprctl 2023-02-20 09:28:42 +00:00
vaxerski
0e5df91e3a adjust crash report paths 2023-02-19 13:51:40 +00:00
vaxerski
38c25bb50d Added a crash reporter 2023-02-19 13:45:56 +00:00
eriedaberrie
be2e4d9dd1
Fix VRR JSON output in hyprctl monitors (#1562) 2023-02-17 10:37:38 +00:00
scorpion-26
f3d1ab55a2
Add vrr to hyprctl monitor (#1560)
Since the (re)addition of vrr in 127e80692f,
it is very useful to know, whether a given monitor has vrr enabled or not,
since not all monitors support it. Now hyprctl reports, whether a
monitor has vrr enabled or not.
2023-02-16 22:20:10 +00:00
vaxerski
287f31329e fix json output in hyprctl animations 2023-02-11 20:54:37 +00:00
Jan Beich
f90ff8303b
Unbreak build with libc++ (#1457) 2023-01-31 00:03:23 +00:00
vaxerski
9813ba2f56 Add hyprctl animations 2023-01-25 15:16:28 +00:00
vaxerski
12e293e309 update animated deco values after setprop 2023-01-24 23:52:00 +00:00
vaxerski
84954f376f remove restrictions from setprop for ints 2023-01-24 21:44:54 +00:00
vaxerski
5de659cc7a add fakefullscreen prop to windows in hyprctl 2023-01-24 21:29:27 +00:00
a2ae37396f add hyprctl setprop 2023-01-24 19:05:43 +00:00
1cc7587789 recalculate layout on deco or border change 2023-01-24 14:04:01 +00:00
cb98242ea7 remove old comment and fixup lsl var name 2023-01-22 17:03:25 +01:00
b963a6624e more verbose logging on invalid var 1 in seterror 2023-01-22 16:51:32 +01:00
8f57db28f7 added hyprctl seterror 2023-01-22 16:38:17 +01:00
cbd31ba481 damage on border change 2023-01-12 13:33:45 +01:00
8440aa3e9b repaint on dynamic decoration keywords 2023-01-12 12:14:57 +01:00
b24f066c47 escape json strings in hyprctl binds 2023-01-11 12:17:27 +01:00
989ee6473f describe layers in hyprctl layers 2023-01-09 21:26:07 +01:00
ff11883482 added make model and serial to hyprctl monitors 2023-01-09 14:35:58 +01:00
98ce867104 added hyprctl binds 2023-01-06 14:32:25 +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
vaxerski
41cdfb7420 allow binding tablets to outputs 2022-12-21 15:11:39 +00:00
vaxerski
6424a1e398 mark blur dirty on dynamic blur keywords 2022-12-18 15:05:34 +00:00
Vaxry
98a4fa2b0d
Added clang format (#1239)
* clang-format stuff and format files
2022-12-16 17:17:31 +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
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
vaxerski
6aa26582f6 added hyprctl switchxkblayout 2022-12-03 16:22:02 +00:00
vaxerski
fbc839e8d9 reload shader on dynamic shader keyword 2022-12-03 14:45:10 +00:00
vaxerski
0948b078e1 added border gradients 2022-11-26 17:57:02 +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
vaxerski
5a750b485a Added creating / destroying outputs on a multi-backend + headless backend
See `hyprctl output`.
2022-11-05 18:04:44 +00:00
vaxerski
989deafd5e use lld instead of i in hyprctl getopt for accurate int reads 2022-10-30 22:45:03 +00:00
vaxerski
4aebb73de0 Added hyprctl cursorpos 2022-10-26 13:19:37 +01:00
Vaxry
cee0645fd1
Merge pull request #813 from histausse/touch_dev_rotation
Add input:touchdevice:transform config
2022-10-14 12:26:31 +01:00
Brodi
5d6e56b67c
fix invalid json output by adding a missing comma 2022-10-13 16:21:58 +02:00
Histausse
32ae0c51f0
Add input:touchdevice:td_rotation config
Add support for touch device roation. The rotation is
set globally with `input:touchdevice:td_rotation config` and by
device with `td_rotation` in a device block.
2022-10-08 15:25:46 +02:00
d264fbd36a fix string corruption in hyprctl monitors -j 2022-10-06 09:04:46 +01:00
e4527c6b60 use goalv in clientsRequest 2022-10-06 08:54:09 +01:00
Mihai Fufezan
477ad2dd82
Add accel profile and scroll method 2022-10-05 23:51:08 +03:00
vaxerski
11ce468996 add dpms status info in hyprctl 2022-10-05 18:14:11 +01:00
71e2562a41 add desc: to monitor rules 2022-10-05 10:22:33 +01:00
vaxerski
0d702b556d Add switch device handling and binds 2022-10-04 20:07:21 +01:00
vaxerski
ff4c22ca90 add fullscreen info to clients request 2022-09-29 19:30:49 +01:00
Felix Dick
bf3f519eb7 Remove trailing whitespace. 2022-09-25 20:07:48 +02:00
79c645f8cd handle touch devices internally as objects 2022-09-21 14:39:34 +01:00
vaxerski
d8dbe26f31 tick config after reload request 2022-09-13 15:36:49 +02:00
vaxerski
81f267dff9 add default speed to hyprctl devices mice 2022-09-12 17:09:04 +02:00
vaxerski
82aa78916d hyprctl-nopoll 2022-09-10 21:21:28 +02:00
vaxerski
d94fe3d063 added window pinning 2022-09-10 13:11:02 +02:00
vaxerski
0eb5ecafb9 consistent output of window addresses 2022-09-08 18:47:39 +02:00
vaxerski
f002bd1603 wrap lastwindow in quotes in hyprctl json 2022-09-05 23:07:56 +02:00
vaxerski
2ba7cb2414 escape json strings in workspaces lastwindow title 2022-09-05 21:32:37 +02:00
vaxerski
f6ecef0959 add lastwindow info to hyprctl workspaces 2022-09-04 18:32:03 +02:00
vaxerski
d413388761 Multiple improvements to the shutdown procedure 2022-08-28 11:19:08 +02:00
vaxerski
dbd774fedb simplify a bit of code 2022-08-26 18:02:10 +02:00
vaxerski
359df96d53 fix wlr logging 2022-08-22 18:58:29 +02:00
vaxerski
63493b5736 use a custom logging func for wlr 2022-08-22 18:50:38 +02:00
vaxerski
7af193d921 reload on input and device hyprctl 2022-08-20 18:57:30 +02:00
9b62328b22 minor changes to the activelayout event 2022-08-18 17:50:32 +02:00
c1a64a2b9d added main param to keyboards 2022-08-18 17:34:01 +02:00
ea45c6bfe0 fix memory issue with hyprctl devices 2022-08-16 16:15:43 +02:00
6e2467cc24 fix active keymap in hyprctl devices 2022-08-16 16:10:20 +02:00
f0fe0c25d6 added config-only to hyprctl reload 2022-08-14 23:26:18 +02:00
b3c5809986 fix flags syntax in json 2022-08-11 21:29:31 +02:00
ae175fdda5 handle json for hyprctl version 2022-08-11 21:28:37 +02:00
9102471610 added hyprctl getoption 2022-08-11 21:16:38 +02:00
073f08301a fix formatting in focused monitor hyprctl 2022-08-11 20:22:41 +02:00
cd75606f42 change active to focused in hyprctl monitors 2022-08-10 23:49:20 +02:00
9b39a0c2e0 Added hyprctl setcursor 2022-08-10 21:22:11 +02:00
Yavor Kolev
af9d34ab77
Fix my idiotic mistake (#502)
When resolving conflicts i accepted the old changes 👨🏻🔫
2022-08-09 02:22:55 +03:00
Yavor Kolev
6d788f0fc9
Merge branch 'main' into fix-active-window-json-bools 2022-08-08 13:51:08 -07:00
ab6a62f0fd Revert "Merge pull request #499 from yavko/fix-active-window-json-bools"
This reverts commit 5aed6f1bc7, reversing
changes made to 6f137938da.
2022-08-08 22:49:02 +02:00
Yavor Kolev
d460519c30
Fix the fix 2022-08-08 13:48:33 -07:00
Yavor Kolev
5cec6257e9
The fix 2022-08-08 13:39:02 -07:00
Scott Barron
5ce7c71cef use empty json object when no activewindow 2022-08-06 15:36:28 -04:00
Scott Barron
206b7f4372 output valid json when there are no clients 2022-08-05 18:53:19 -04:00
yavko
59088decd0
Change to json bools 2022-08-05 15:23:38 -07:00
Yavor Kolev
9f11765707
Change monitor active to json bool 2022-08-04 16:25:56 -07:00
vaxerski
5dcbce550f only ensure DPMS in hyprctl monitors 2022-08-03 21:19:12 +02:00
vaxerski
36e563c79c reload monitors instantly on tickHyprCtl 2022-08-03 17:12:38 +02:00
vaxerski
edac94bed1 tick hyprctl separately 2022-07-31 00:27:32 +02:00
vaxerski
31a079b347 added DPMS 2022-07-27 12:32:00 +02:00
vaxerski
71c1ff8ee3 log xwayland in hyprctl 2022-07-26 18:25:08 +02:00
vaxerski
b0d91cbf3a simplify formats 2022-07-25 22:40:34 +02:00
vaxerski
1626707b7f make layerSurfaces into RAII 2022-07-23 15:48:08 +02:00
Vaxry
f35d513bf5
Merge pull request #391 from dgerblick/focuswindow-options
focuswindow options + other hyprctl bugs I found when testing
2022-07-18 23:19:12 +02:00
Daniel Gerblick
f2c0e6ef02 fixed issue causing hyprctl to output ill-formed json when strings include characters needing escaping 2022-07-18 14:47:28 -04:00
vaxerski
60cc33a53c added time logging 2022-07-18 11:46:42 +02:00
Daniel Gerblick
dc1f34c5fa added PID and address-based options for focuswindow, as well as updated hyprctl clients to be consistent with logs and hyprctl activewindow 2022-07-17 19:00:12 -04:00
vaxerski
1848086abd reload layout on hyprctl layout 2022-07-16 22:44:29 +02:00
vaxerski
65e75c0b44 fix backwards hyprctl compat 2022-07-14 11:43:15 +02:00
Vaxry
6708f3b133
Fixed TTY switching (#364) 2022-07-13 18:18:23 +02:00
vaxerski
ef7ee2fd0f added active keymap prop 2022-07-13 16:02:14 +02:00
vaxerski
0a16513946 fix warning 2022-07-13 15:48:47 +02:00
bazuin-32
ab859ec9fc Fix issues with batch requests 2022-07-12 16:34:28 -06:00
bazuin-32
ac9ff795cd Fix calls to substr with invalid pos 2022-07-12 15:38:50 -06:00
bazuin-32
2402f2e364 Use enum for specifying hyprctl output format and change the way flags
are passed for json output
2022-07-12 14:59:36 -06:00
bazuin-32
036f431206 Add hyprctl output in json when -j flag is used 2022-07-12 11:57:33 -06:00
vaxerski
29e2bb27f6 added misc:no_vfr 2022-07-12 10:02:12 +02:00
vaxerski
bf8bd87d11 added active monitor to hyprctl monitors 2022-07-12 00:16:28 +02:00
vaxerski
c0c75db621 roll VFR for everyone 2022-07-11 23:56:24 +02:00
vaxerski
4b334594dc Added splashes 2022-07-10 15:41:26 +02:00
vaxerski
92e17f2925 added rules to hyprctl devices and fixed rules 2022-07-08 12:27:05 +02:00
vaxerski
6a16f11d63 add namespace to hyprctl layers 2022-07-06 21:57:35 +02:00
vaxerski
a545992891 fixed hyprctl layers crash 2022-07-06 21:57:15 +02:00
vaxerski
f9756d10d4 changed C++ std to C++23, use std::string::contains 2022-07-06 16:50:11 +02:00
vaxerski
e0bfec6ef2 added experimental:vfr 2022-07-04 17:47:31 +02:00
vaxerski
868e0f48d0 added debug:disable_logs 2022-07-01 15:57:56 +02:00
vaxerski
328b3fa4bc mordernize pointers 2022-06-30 15:44:26 +02:00
vaxerski
ae3ff6736e hyprctl monitors changes 2022-06-29 23:33:51 +02:00
vaxerski
781526dac5 added hyprctl kill 2022-06-27 13:42:20 +02:00
vaxerski
b9a5fc0d2f added pid and title info to hyprctl 2022-06-27 13:17:11 +02:00
vaxerski
316b49eee2 added log level info 2022-06-25 20:50:29 +02:00
Florian "sp1rit"​
7c3626f15e
meson: ensure non-debug builds will use proper configuration
meson will set add -DHYPRLAND_DEBUG to CXXFLAGS during compilation of
debug builds. this avoids NDEBUG issues with wlroots and ensures asserts
will also work on release builds.
2022-06-18 13:09:38 +02:00
vaxerski
b53c093b88 log tablets in hyprctl 2022-06-09 19:25:26 +02:00
vaxerski
066ea296ff dont report unmanaged x11 windows in hyprctl clients 2022-06-06 15:22:25 +02:00
vaxerski
63d6c594b9 fix possible crash in hyprctl clients 2022-06-06 12:58:39 +02:00
vaxerski
2cd2f8b5b5 add class to window hyprctl requests 2022-06-04 20:32:27 +02:00
vaxerski
9486a230c7 Log to the instance folder 2022-06-03 17:48:07 +02:00
vaxerski
6f3b004199 IPC and log changes, introduce signature 2022-06-03 17:41:57 +02:00
vaxerski
7afcf656bd Added hyprctl devices 2022-06-02 13:59:33 +02:00
vaxerski
0d7131d30e fix typo in hyprctl clients and activewindow 2022-05-31 16:52:28 +02:00
vaxerski
eee9698ec9 move workspaces and not windows on mon disconnect 2022-05-30 20:44:14 +02:00
vaxerski
7d442d4851 Added rendertime no overlay 2022-05-28 17:40:57 +02:00
vaxerski
8c10857f14 Added a debug overlay 2022-05-28 17:32:19 +02:00
vaxerski
ba7e3cd9a1 Major IPC Rework + Added Socket2
IPC is now done with UNIX sockets instead of TCP ones (security!), and added Socket2, see Wiki.
2022-05-24 19:42:43 +02:00
vaxerski
d8d8a29fc2 fix memory issues with logs 2022-05-24 17:20:40 +02:00
vaxerski
39dcfa61c3 Added hyprctl reload 2022-05-08 15:28:45 +02:00
vaxerski
31a429899b added hyprctl batch 2022-04-29 19:44:09 +02:00
vaxerski
0147975faf New animation system 2022-04-23 14:16:02 +02:00
vaxerski
fa38dfd416 Added git dirty 2022-04-22 18:33:30 +02:00
vaxerski
d7b3145b2e Added git commit message to hyprctl version 2022-04-22 18:29:32 +02:00
vaxerski
e3b19e0131 Added hyprctl version 2022-04-22 18:14:25 +02:00
vaxerski
15eb844260 reload keyboards if input changed in hyprctl 2022-04-22 14:11:52 +02:00
vaxerski
883d389bc2 Make hyprctl thread safe 2022-04-21 22:00:03 +02:00
vaxerski
304b93a4f6 Minor tweaks 2022-04-21 21:48:37 +02:00
vaxerski
5f3ee176a1 only reload monitors when needed with hyprctl 2022-04-21 21:36:45 +02:00
vaxerski
727851d6e2 Added workspace names in hyprctl 2022-04-21 21:25:28 +02:00
vaxerski
7c36dd6e6c set wantsmonitorreload for parsekeyword 2022-04-21 17:36:28 +02:00
vaxerski
07080498fd Added hyprctl keyword 2022-04-21 16:56:27 +02:00
vaxerski
c02afa0c27 Added hyprctl dispatch 2022-04-21 16:11:29 +02:00
vaxerski
a8e8729230 Added zext_workspace protocol support 🎉 2022-04-11 19:51:37 +02:00
vaxerski
374491ee63 progress 2022-04-04 19:44:25 +02:00
vaxerski
223beb8a82 Multiple focus handling changes 2022-04-02 18:57:09 +02:00
vaxerski
3e614f2c1e Draw the drag icon 2022-03-31 17:25:23 +02:00
vaxerski
d01c7c07d8 Fix IPC being wonky 2022-03-30 16:24:42 +02:00
vaxerski
a4f79dcb11 fix hyprctl .socket 2022-03-24 18:25:18 +01:00
vaxerski
e6fcbf576c up the max hyprctl port 2022-03-22 22:02:43 +01:00
vaxerski
8a8b26a635 added 2 more hyprctl commands 2022-03-22 16:54:45 +01:00
vaxerski
1b50377a5a R> is redundant 2022-03-21 18:34:49 +01:00