Commit graph

121 commits

Author SHA1 Message Date
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
outfoxxed
e2ef7b7982
service/mpris: add isPlaying 2024-11-20 19:52:11 -08:00
outfoxxed
db9e633197
service/mpris: adopt bindable properties 2024-11-20 19:31:40 -08:00
outfoxxed
dca75b7d6a
service/mpris: clarify trackinfo emit order and use QBindings 2024-11-20 00:52:47 -08:00
outfoxxed
8450543e09
service/mpris!: convert trackArtists from list<string> to string
Most people treat it as a string already, which breaks in Qt 6.8,
and I have not seen a meaningful multi-artist response.
2024-11-19 18:28:19 -08:00
outfoxxed
66b494d760
build: add qs_add_link_dependencies
Further inspection as to what libraries actually require which others
will be required before this can be used as a hint for shared builds.
2024-11-19 13:58:34 -08:00
outfoxxed
36174854ad
services/tray: fix const lint in item 2024-11-17 19:28:07 -08:00
outfoxxed
36d1dbeb69
service/tray: report misbehaving tray hosts
I've debugged broken tray items that just end up being a bad host far
too many times.
2024-11-17 01:30:54 -08:00