Commit Graph
368 Commits
Author SHA1 Message Date
Aldair Meneses c8d9a8617e bar: add configurable middle and right click actions on empty space (#3582)
Revives PR 2710 using in-process PopoutService toggles per review, extended
with a right click action and a follow-mouse option for anchored popouts.
2026-10-06 02:11:21 -04:00
bbedward f8b25bc43c launcher: add an option to disable history
widgets: delete plugin compatibility shims that arrived after 1.6
2026-10-05 16:58:39 -04:00
bbedward ccbf1d38ad widgets: bump qml-common, rename Dank* prefixed widgets to D, add
deprecation notice to plugin compatibility shims

- When qml-common became a thing, we left qs.Widgets shims in place for
  plugin compatibility
- It's annoying to need to maintain them when qml-common has any change,
  add a warning so we can safely deprecate them in the future
- One shot rename the common stuff to D to make it shorter and nicer to
  write
2026-10-05 16:47:19 -04:00
euletheia 2f5a438e1e feat(gamma): add exceptions (fullscreen and excluded apps) 2026-10-05 14:01:12 -04:00
bbedward 9b7c0eddd7 greeter: own widget list, state-driven sync page, clock typography fix 2026-10-05 13:39:49 -04:00
bbedward 076288604e widgets: share the lock editor with the desktop, adjust overlapping
face, share desktop clock widget with lock screen
2026-10-04 22:23:14 -04:00
bbedward c2962f8239 lock: give the editor its own grid and make the grid keys reachable 2026-10-04 18:43:45 -04:00
bbedward d7dc8ae5d2 lock: allow customization, including any desktop widget, to be added and
arranged on lock screen
2026-10-04 15:46:56 -04:00
Huỳnh Thiện Lộc 4ca2a8ef99 feat(dock): push neighboring icons apart on magnification (#3681)
* feat(dock): push neighboring icons apart on magnification

* fix(dock): cap magnification expansion and disable it in taskbar mode

* fix(dock): scale pushed icon offsets to the capped magnification expansion

* fix(dock): avoid binding loop when reading expansion ratio
2026-10-04 10:44:58 -04:00
purian23 b48fce0447 refactor(control center): free the edit button and misc tweaks 2026-10-04 00:55:31 -04:00
purian23 585827e7e4 feat(workspace): add dots workspace indicator styles & compact mode 2026-10-03 20:49:25 -04:00
purian23 19abc7dc96 feat(island): state pulses, mic, privacy & duo status glyph activities
- caps lock, power profile, idle inhibitor and charging pulse in the island
- microphone mute and volume as a level transient
- privacy slot while mic, camera or screen share is in use
- duo battery style: arc around the network glyph with signal dots
2026-10-03 15:28:06 -04:00
bbedward 2a8368a8a4 media: add album art to bar widget
settings: keep the page still when a rebuilt row drops focus

fixes #3673
2026-10-03 12:23:57 -04:00
bbedward 49d7d6b2fe media: bar lyric line, dbus position re-anchor, keep upcoming lines in view
closes #3652
fixes #3650
2026-10-03 07:07:52 -04:00
purian23 d9d9dc21d2 feat(system-update): implement floating window variant for system updates 2026-10-03 02:16:30 -04:00
bbedward d77c4f6298 wellbeing: add Digital Wellbeing, with a built-in dash plugin 2026-10-01 15:15:37 -04:00
LOSTDATA 738e19715e battery: pulse the critical bar indicator (#3596)
* battery: pulse the critical bar indicator

* battery: add critical pulse toggle
2026-10-01 02:04:14 -04:00
bbedward adccc05397 cc: fixed footer or header, customizable with any widgets, blah blah 2026-09-30 12:46:53 -04:00
purian23 73759d5752 refactor(control center): redesign update #8 2026-09-30 00:15:05 -04:00
bbedward db903801c3 osd: more position options, hookup sheets to some
fixes #3629
2026-09-29 23:31:28 -04:00
Huỳnh Thiện Lộc ea70863fd7 feat(dock): add customizable proximity icon magnification (#3625)
* feat(dock): add proximity icon magnification with customizable curves

* fix(dock): restrict proximity magnification to dock and add translator context
2026-09-29 17:07:22 -04:00
dion 13034cb85c audio: add mono audio toggle with support detection (#3539) 2026-09-29 16:38:22 -04:00
bbedward aced05157b cc: redesign 7 with a persistent footer and individually tiled buttons 2026-09-29 14:52:40 -04:00
bbedward 182e08b1a4 dash: soft primary container, per-widget options and weather tones 2026-09-29 11:22:55 -04:00
purian23 35faa3130c feat(island): add clipboard support & align launcher sizing options 2026-09-29 03:30:58 -04:00
purian23 eda77f7816 feat(settings): dms system software updates & versioning support 2026-09-28 19:45:07 -04:00
bbedward 4ca4e2586e cc: change header design and sliders
fixes #3606
2026-09-28 14:26:42 -04:00
bbedward f6bb4b1727 control center: merge user card and quick actions into one pinned header tile 2026-09-27 23:26:14 -04:00
purian23 64b4d0d235 feat(control center): configurable user card & power control action tiles
- Quick actions are reorderable with button color roles and optional power accents
- Updated dank-qml-common
2026-09-27 20:55:54 -04:00
Matt Jiang f27627ead2 powermenu: reboot into a chosen EFI boot entry (#3568)
* powermenu: derive shortcuts and extra actions from one source

The power menu matched keys with a switch that repeated the key hints
getPowerActionData already returns, plus a second key list for release.
Look the pressed key up against the hints of the visible actions instead,
so every action with a hint gets its shortcut and the two cannot drift.

Side effects:
- Ctrl+letter no longer triggers actions. Only Ctrl+P was excluded
  before, so Ctrl+R still rebooted. Ctrl combinations are navigation.
- U now triggers switch user when it is shown. Its hint already said U.
- Releasing a letter with no visible action no longer cancels a hold.

SessionService now owns the custom:N action ids as customPowerActions
and extraPowerActions, which the power menu and the launcher both use.
Actions resolve by index into that list instead of slicing the prefix.

* powermenu: add actions that reboot into a chosen efi boot entry

Settings → Power & Sleep gets a "Reboot to another OS" card that lists
the firmware's active EFI entries through efibootmgr. Each saved entry
becomes a "Reboot to <name>" action in the power menu and the launcher,
bound to 1-9 in the order it was added.

Picking one lists the entries again, and stops with a toast if the id no
longer carries the saved label. Otherwise it sets BootNext through pkexec
and reboots through SessionService, so custom reboot commands still apply.

BootEntryService reports why entries are unavailable: not booted in UEFI
mode, efibootmgr missing, or efibootmgr failing with its stderr. Saved
entries stay listed in settings whatever the status, so a synced config
on another machine can still remove them.

efibootmgr parsing and the picker's filtering live in BootEntries.js,
covered by tests/boot-entries.test.mjs.

* powermenu: ignore special keys in action shortcuts
2026-09-27 11:47:05 -04:00
purian23 5623476126 feat(island): host the island as a widget in any bar configuration
- The island is now a bar widget so any bar can host one alongside the island layout and dot
- Routing got simpler: pick which shortcuts open here, the rest follow the shared rules
- IPC close/hide take down every surface showing the activity
- Qt 6.11 pointer prune workaround so the expanded island stays clickable
2026-09-27 02:02:30 -04:00
bbedward 3b529b3a97 lyrics: add kugou and YT music providers 2026-09-25 14:02:27 -04:00
LemonMon 60342b7416 fix: stabilize tray item key to prevent position jumps on property changes (#3386)
* fix: keep tray order stable when tooltipTitle changes dynamically

Revert the earlier simplistic key approach: keep getTrayItemKey()
unchanged (id::tooltipTitle) so duplicate-id disambiguation (#1542)
is preserved and persisted id::tooltipTitle entries keep matching.

Instead make persisted-key lookups tolerant of dynamic tooltipTitle:
resolveOrderIndex() in sortByPreferredOrder() does exact match first,
falling back to prefix matching an id::* entry only when the id has a
single instance. findSavedTrayKey()/isTrayIdHidden() replace direct
SessionData.isHiddenTrayId() calls and showTrayId() now receives the
actual saved key.

Prefix fallback is gated by trayItemCountForId() to single-instance
ids only, so multiple items sharing an id always match exactly and
hiding/ordering one never affects the others.

* fix: bail on ambiguous saved tray keys in fallback

* tray: use occurrence index as stable key, add one-time session migration

* tray: pin stable key per item instance so it never flips when siblings come and go

* tray: assign unique per-id sequential keys to avoid collision after sibling exit

* tray: reuse free key slots so a restarted singleton keeps its plain id
2026-09-25 11:10:40 -04:00
Nat Fletcher 7c2140dd60 theme: add toggle to skip matugen at startup when nothing changed (#3270) 2026-09-25 10:56:20 -04:00
bbedward 890166e384 cc: apply some non-compositor blur to details pages based on settings
Can't do real compositor blur since they arent real subsurfaces
2026-09-25 10:27:39 -04:00
bbedward e76d989656 hyprland: use focusgrab in overview
fixes #3486
2026-09-24 20:09:33 -04:00
bbedward 4b926be08f launcher: design adjustments
shell: cut animation frame cost and cold open stalls
dock: restore 1.6-like spacing behaviors

fixes #3537
2026-09-23 16:35:18 -04:00
bbedward 4bdfcfc0cf settings: adjust window rules and clock options 2026-09-23 09:42:28 -04:00
purian23 7ba4bccf6c feat(dankdot): operation DMS freedom & island anywere modes
- A new minimal and fun island instance (dot) that gets out of your way to be tossed anywhere on your screen
- Dankisland freedom is here too! It can now also be used in anywhere mode and used horizontally or vertically as you see fit!
2026-09-22 20:38:45 -04:00
bbedward 4eb163538c media: change player style
theme: restore layer outline option
launcher/theme: tweaks and fix icon service
2026-09-22 09:00:34 -04:00
bbedward 74e146a1e8 theme: add surface role color overrides and a per-bar background color 2026-09-21 17:57:12 -04:00
bbedward 8266e078e7 dock: show an overview-only dock on niri again
fixes #3528
2026-09-21 17:09:41 -04:00
bbedward bb20528f68 popouts: grow surfaces at their origin
cc: slide grid with the detail page
settings: tweak appearance header style
settings: tweak sidebar profile style
2026-09-21 15:47:01 -04:00
bbedward a3f1a3d620 feat(bar): add support for fractional sizes, fit to contents 2026-09-21 13:27:14 -04:00
bbedward 0bd3e85150 settings: fix window rules overflow, unify popout border settings
cards: fix regression that created borders
matugen: run on a low priority worker and seeds dms-colors before other
templates
2026-09-21 11:47:52 -04:00
neofion cb037e2543 keyboard layout: add user-editable label overrides for compact mode (#3503)
* keyboard layout: add user-editable label overrides for compact mode

* keyboard layout: add translator context and fix search index for label overrides
2026-09-21 09:36:56 -04:00
purian23 df71c65478 feat(workspaces): add lines & card indicator styles 2026-09-20 03:24:09 -04:00
bbedward 19b4593bfe dash: replace the tab bar with an m3 navigation bar and inline edit controls
wallpaper: allow SVG wallpapers, with a workaround for a matugen panic I
encountered on passing it an SVG - fixes #1350
2026-09-19 20:56:05 -04:00
bbedward aea35afdc7 settings: fix gating sound tab on sounds being available, other stuff 2026-09-19 16:22:59 -04:00
purian23 79abcdfd7b feat(theme): get expressive ~ new bold color palette options 2026-09-19 00:54:53 -04:00