Commit graph

128 commits

Author SHA1 Message Date
bbedward
996efc93b7
core/desktopentry: watch for changes and rescan entries 2025-10-11 17:04:22 -07:00
outfoxxed
448623de5a
service/notifications: use bytes over bits in pixmap rowstride check
Fixes incorrect rowstride warnings.
2025-07-25 22:08:15 -07:00
outfoxxed
4dad447570
docs: remove }; in headers + typo fixes
}; breaks the docgen regex
2025-07-24 17:15:03 -07:00
outfoxxed
63a6d27213
core/qmlglobal: configDir, configPath() -> shellDir, shellPath() 2025-07-19 02:58:55 -07:00
outfoxxed
ecc4a1249d
all: mask various useless dbus errors 2025-07-18 04:14:58 -07:00
ipg0
115d6717a8
services/tray: use normal icon as fallback for attention custom icon
Signed-off-by: ipg0 <pyromancy00@gmail.com>
2025-07-17 22:27:46 +03:00
outfoxxed
91dcb41d22
services/pipewire: destroy qml ifaces early to avoid user callbacks
Consumers of defaultAudio*Changed signals can run code between
safeDestroy being called and PwObjectIface destruction due to
signal connection order. This change destroys ifaces earlier so they
are nulled by the time a changed signal is fired from destruction,
preventing access between ~PwNode() and ~QObject() completion.

Fixes #116 #122 #124
2025-07-17 00:22:58 -07:00
outfoxxed
4d8055f1cd
build: fix PostReloadHook resolution in LSP 2025-07-15 19:03:27 -07:00
outfoxxed
a45fc03c7d
service/tray: fix missing documentation for invokables
'};' prior to invokables caused the docgen regex to miss them
2025-07-15 15:58:56 -07:00
ipg0
c40074dd56
service/notifications: add inline-reply action support
Signed-off-by: ipg0 <pyromancy00@gmail.com>
2025-07-15 15:49:59 -07:00
outfoxxed
cee1f5837e
service/mpris: make lengthSupported bindable and notify for changes
Fixes #109
2025-07-13 20:32:51 -07:00
outfoxxed
3d594e16dd
core/log: track default logging categories
Fixes a bug in fb37be7 which ignored default logging categories due to
skipping QLoggingRegistry's filter.
2025-07-08 13:49:06 -07:00
outfoxxed
87d99b866f
services/pipewire: destroy bound audio object when node is destroyed
Fixes a leak and prevents a UAF via device volume signals
derefing the freed node.

Fixes #91
2025-07-04 20:29:50 -07:00
outfoxxed
9708d8212a
core/reloader: trigger onPostReload if launched post-reload
This is similar to the check in Reloadable, and fixes a number of hard
to debug issues with Process, IpcHandler, NotificationServer, and
GlobalShortcut not working depending on where you put them in a QML file.
2025-07-04 16:02:14 -07:00
outfoxxed
f681e2016f
bluetooth: add bluetooth integration
Missing support for things that require an agent, but has most basics.

Closes #17
2025-07-01 00:25:16 -07:00
outfoxxed
02362c3e94
services/pipewire: add missing ; after Q_ENUM for docgen 2025-06-20 02:53:30 -07:00
outfoxxed
95d0af8113
services/pipewire: update volume props from device for device nodes
Yet another device node edge case. In addition to only writing via
a pw_device when present, now we only read from one as well.

This fixes missing state changes not conveyed by the pw_node.

Fixes #35
2025-06-19 05:12:24 -07:00
outfoxxed
517143adf9
all: fix new lints 2025-06-12 17:01:13 -07:00
nydragon
ee570ec623
services/pipewire: expose node type 2025-06-07 03:26:55 -07:00
outfoxxed
b67f92bc13
all: use BINDABLE only with trivial setters
Fixes various bugs caused by the QML engine bypassing setters
when BINDABLE is specified (even if the bindable is const).
Also restructures all properties using BINDABLE to have
a default READ and WRITE to ensure this doesn't happen again.
2025-05-29 16:08:39 -07:00
outfoxxed
d872ea888d
service/tray: hide missing prop warnings for ToolTip 2025-05-24 03:21:26 -07:00
outfoxxed
6026c4ce27
service/mpris: expose dbus service name 2025-05-18 12:33:43 -07:00
outfoxxed
56b4ef3d21
service/tray: silence compliance warnings
Almost every tray item is missing properties and these
messages pollute the log, masking more useful warnings.
2025-05-18 03:42:22 -07:00
outfoxxed
cb69c2d016
service/upower: do not crash when trying to set power profile w/o ppd 2025-05-15 21:19:27 -07:00
outfoxxed
fa74449139
service/tray: add "Communications" category
Closes #28
2025-03-27 14:01:41 -07:00
outfoxxed
69430e3873
service/tray: provide default sorting for SystemTray.items
Items are first sorted by category, and then by name.
2025-03-27 13:51:43 -07:00
outfoxxed
0662c37d67
io/process!: replace manageLifetime with startDetached
In most cases this is what was desired for usages of
manageLifetime. Starting the process in a detached state also makes
sure the process hierarchy will not result in the child being killed when
Quickshell is killed.
2025-03-12 01:37:38 -07:00
outfoxxed
d1a172751d
service/mpris: hack around more non-compliant players
Mpris is currently winning the competition for least compliant clients.
2025-02-21 02:38:12 -08:00
outfoxxed
cdaff2967f
core/icon: stop reusing image ids (dbusmenu, notifications)
Fixes issues caused by the QML engine caching old pixmaps using the
same IDs as new ones, notably dbusmenu icons.
2025-01-22 23:10:49 -08:00
outfoxxed
6d8022b709
service/pipewire: add registry and node ready properties 2025-01-14 15:30:47 -08:00
outfoxxed
2c411fce5a
all: fix new lints 2025-01-07 03:11:19 -08:00
outfoxxed
761d99d644
service/mpris: reset position timestamps on seek
Moving the onPositionUpdated callback to a bpPosition binding caused
it not to fire when Position was changed to the same value, which can
happen when quickly changing tracks before the player has sent a new
position.

This reverts the above change while still updating position on seek.
2025-01-05 01:55:33 -08:00
outfoxxed
fca058e66c
service/upower: add device model property 2025-01-04 04:38:03 -08:00
outfoxxed
eaf854935b
service/upower: correctly deserialize UPowerDeviceState::Discharging
???
2025-01-04 03:37:53 -08:00
outfoxxed
47bcf8ee61
service/upower: add power-profiles support 2025-01-02 21:54:36 -08:00
outfoxxed
66b9917e70
service/mpris: trigger onPositionUpdated when seeking 2025-01-01 19:56:51 -08:00
outfoxxed
2f194b7894
service/upower: track device additions/removals
Also ensures displayDevice is always present.
2024-12-20 15:58:44 -08:00
outfoxxed
27840db7a6
service/mpris: don't send postTrackChanged unless trackChanged sent 2024-12-13 15:04:28 -08:00
outfoxxed
3fc1c914c7
lint: remove reinterpret_cast lint
Unhelpful.
2024-12-06 20:18:38 -08:00
outfoxxed
539692bc11
service/tray: re-add Q_INVOKABLE to invokable functions
Was accidentally removed in the last refactor.
2024-11-26 14:48:54 -08:00
outfoxxed
2571766d3b
all: fix clang 18 lints 2024-11-24 03:36:04 -08:00
outfoxxed
5301227ec1
service/tray: fix compile on qt versions older than 6.8 2024-11-22 15:35:21 -08:00
outfoxxed
324fe9274d
all: remove unused dbus props and warnings for non-required ones 2024-11-21 19:45:45 -08:00
outfoxxed
b43b4a06d0
service/tray: adopt bindable properties 2024-11-21 19:44:51 -08:00
outfoxxed
0e9e593078
dbus/properties: allow removing to/from wire transforms
Useful when properties are only read/written in one direction.
2024-11-21 19:14:06 -08:00
outfoxxed
ac50767873
service/tray!: refactor qml bindings to StatusNotifierItem
Breaking: Dropped SystemTrayMenuWatcher.
2024-11-21 05:10:54 -08:00
outfoxxed
ff55ac874b
service/upower: adopt bindable properties 2024-11-21 03:40:53 -08:00
outfoxxed
d4deb11216
dbus/properties: support data transformation/validation before store 2024-11-21 03:28:33 -08:00
outfoxxed
a13c9d91b5
service/notifications: adopt bindable properties 2024-11-20 22:26:51 -08:00
outfoxxed
abb900b7ff
service/mpris!: do not provide fallback track information
See the [!TIP] messages for more information.
2024-11-20 19:58:57 -08:00