Commit graph

339 commits

Author SHA1 Message Date
abe0327e67
widgets: add IconImage widget
Docs currently cannot be generated due to lack of qml parsing support
in typegen.
2024-09-14 03:10:44 -07:00
accdc59a1c
wayland/all: scale layers and popup anchors correctly
Layers now scale window size and exclusive zone to native
pixels. Popup anchors do the same.
2024-09-14 01:31:39 -07:00
293341c9e1
core/reloader: ensure generation ptrs are removed on destroy
Broke things that used currentGeneration, and we shouldn't have a list
of dangling pointers anyway.
2024-09-13 04:18:52 -07:00
5e2fb14551
io/ipchandler: add IpcHandler and qs msg
Also reworks the whole ipc system to use serialized variants.
2024-09-13 02:50:42 -07:00
3690812919
core/log: fix encoding 29 second deltas (again)
Forgot the second if statement and didn't actually fix the bug last time.
2024-09-10 16:30:50 -07:00
01f6331cb7
core/command: add --daemonize 2024-09-10 15:53:16 -07:00
9d21a01153
core/command: add --no-duplicate 2024-09-10 14:35:30 -07:00
47ec85ffef
core/command: make log --file positional
Also frees up -f for --follow.
2024-09-10 04:55:44 -07:00
01deefe241
core/log: encode category log levels 2024-09-10 04:48:54 -07:00
a82fbf40c2
core/command: add log --follow 2024-09-10 03:31:49 -07:00
c78381f6d0
core/command: add --tail to log subcommand 2024-09-10 01:02:43 -07:00
f810c63ffc
core/command: allow log files to be specified w/ instance selectors 2024-09-10 00:32:39 -07:00
19d74595d6
core/window: premultiply background colors
Apparently these are supposed to be premultiplied. Some docs would be nice.
2024-09-10 00:01:17 -07:00
2c485e415d
nix: update lockfile to avoid mesa mismatches 2024-09-09 03:27:58 -07:00
8cdb41317f
nix: modernize cmake options 2024-09-09 03:23:27 -07:00
85be3861ce
io/fileview: add FileView 2024-09-09 03:15:16 -07:00
3a1eec0ed5
core/log: fix sparse logs being on by default 2024-09-05 21:44:05 -07:00
465d5402f2
crash: fix off-end read when copying environ array 2024-09-02 22:19:36 -07:00
397476244c
x11/panelwindow: add option to disable Xinerama aware struts
Breaks bad WMs less.
2024-09-01 19:00:13 -07:00
6cb7d894ab
x11/panelwindow: fix multi monitor struts 2024-09-01 18:26:54 -07:00
95245cb6a5
x11/panelwindow: fix strut start/end, patch around awesome, resize all panels 2024-09-01 17:32:47 -07:00
94e881e6b0
core!: refactor launch sequence
Also includes slight changes to the command syntax.
See --help for details.
2024-09-01 14:17:39 -07:00
da043e092a
core/ipc: add ipc server/client
Currently can only kill a remote instance.
2024-08-30 21:45:20 -07:00
13b6eeaa22
core/reloader: null generation ref in reloadables on destruction
On the post-reload reloadable initialzation path, a timer is used to
delay reload(). This change fixes a UAF when switching generations
while that timer is running.
2024-08-30 16:29:59 -07:00
3edb3f4efa
core/reloader: disconnect old generation before reloading
Previously the old generation was not disconnected, causing the root
wrapper's generation pointer to be nulled when pointing to the new
generation, leaving multiple shell versions running simultaneously.
2024-08-30 16:29:48 -07:00
60349f1894
core: set application name to avoid bin name fallback 2024-08-29 14:43:25 -07:00
77c5a2d569
build: add "qs" as a symlink to the "quickshell" binary 2024-08-29 14:11:40 -07:00
f6ad617b67
service/pipewire: ignore insignificant device volume changes
Fixes devices getting stuck in a "waiting for volume change
acknowledgement" state forever.
2024-08-29 13:21:07 -07:00
a116f39c63
core/desktopentry: prioritize fallback keys over mismatched keys
The fallback key will now be selected when there isn't a more specific
key to select, instead of the first key.
2024-08-28 22:05:21 -07:00
af29bc277e
core: add by-pid symlinks to instance runtime paths 2024-08-28 17:53:39 -07:00
9967e2e03b
core: fix UAF when calling Qt.quit or Qt.exit
A pointer to the last generation had shutdown() called on it after deletion.
2024-08-28 15:30:02 -07:00
e327d6750d
build: fix -DCRASH_REPORTER=OFF 2024-08-28 11:32:14 -07:00
79b22af093
service/pipewire: avoid overloading devices with volume changes
Wait until in-flight changes have been responded to before sending more.
2024-08-27 20:34:11 -07:00
c60871a7fb
service/pipewire: set device node volumes with device object
Fixes discrepancies between pulse and qs volumes, and volumes not
persisting across reboot or vt switches.
2024-08-27 01:34:34 -07:00
Nydragon
b40d4147e0
build: add opt-in installation of QML lib
Override the package with `withQMLLib = true;` to enable lib
installation, alternatively add `-DINSTALL_QML_LIB=ON` to your cmake
build command.

Co-authored-by: a-usr <81042605+a-usr@users.noreply.github.com>
2024-08-25 22:59:41 +02:00
f95e7dbaf6
hyprland/focus_grab: wait for surface creation if null
Fixes an occasional crash with QWaylandWindow::surface() returning null.
2024-08-20 16:41:04 -07:00
fe1d15e8f6
crash: add crash reporter 2024-08-20 00:55:07 -07:00
5040f3796c
core/reloader: delay post-reload reload hooks
Ensures onReload runs after Component.onCompleted.
2024-08-18 19:54:36 -07:00
5a038f085d
service/mpris: support trackids in object path form
Chromium reports trackids as object paths, which caused us to fall
back to Seek, which is also entirely broken on chromium.
2024-08-18 13:41:16 -07:00
e223408143
service/mpris: fix display position when paused 2024-08-18 13:07:52 -07:00
f89c504b55
core/menu: opening platform menus w/o QApplication no longer crashes
An error is displayed instead.
2024-08-16 16:47:50 -07:00
1d2bf5d7b4
core/clock: fix behavior with odd time changes 2024-08-16 02:35:03 -07:00
815867c178
x11/panelwindow: fix multi monitor
Previously attached panels to the virtual desktop geometry instead of
the screen geometry.
2024-08-15 18:46:18 -07:00
22c397bbb0
x11/panelwindow: respect exclusive zones per layer 2024-08-15 17:15:30 -07:00
23cd6cd9e1
x11/panelwindow: set _NET_WM_DESKTOP to stay on all desktops 2024-08-15 17:14:00 -07:00
683d92a05f
core/command: add --version 2024-08-10 01:59:40 -07:00
14852700cb
core/log: ensure malformed logs cannot overflow ring buffer 2024-08-10 01:40:51 -07:00
5f4d7f89db
core/log: fix log corruption with messages at 29 second deltas
29, or 0x1d is used as a marker to mean the log level and time delta
cannot fit in a single byte, and the time delta will be a varint
following the current byte.

Prior to this commit, 29 second deltas would be written as 0x1d
instead of 0x1d1d, which the parser interpreted as a hint to read the
next byte, causing the parser to become offset by one byte and all
following logs to be potentially corrupt.
2024-08-10 01:35:52 -07:00
53b8f1ee0b
core/log: add read-log --no-time 2024-08-09 23:58:30 -07:00
c2b4610acb
core/log: add read-log --filter 2024-08-09 23:45:46 -07:00