Commit Graph
1881 Commits
Author SHA1 Message Date
Alexanderandbbedward 0100c64d7a feat(niri): close overview on window focus (#3030)
* feat(niri): close overview on window focus

* feat(niri): close overview on window focus

---------

Co-authored-by: bbedward <[email protected]>
2026-08-17 13:35:10 -04:00
Marlon Kranzandbbedward a56360d8ed feat(theme): support qtengine as a Qt platform theme (#3019)
* feat(theme): support qtengine as a Qt platform theme

qtengine is a single platform theme plugin serving both Qt5 and Qt6 from one JSON config, so it needs neither the qt5ct/qt6ct split nor qt6ct-kde.
It reads a KDE .colors scheme by path, which the kcolorscheme template already generates, so no new matugen template is required.

DMS now merges theme.colorScheme and theme.iconTheme into $XDG_CONFIG_HOME/qtengine/config.json after each generate, on icon theme changes, and from Apply Qt Colors.
The merge preserves every other key,refuses to touch a config it cannot parse, and only names a color scheme that exists.
The write is atomic, and its mtime bump is what trips qtengine's watcher and repaints running apps.

QT_QPA_PLATFORMTHEME=qtengine is accepted without the missing-env-var toast, Apply Qt Colors no longer fails on a machine without qt5ct or qt6ct, and dms doctor reports whether the plugin is installed where Qt actually searches, per Qt major.

* fix(theme): resolve qtengine config via XDG, tighten doctor probing

---------

Co-authored-by: bbedward <[email protected]>
2026-08-17 13:23:38 -04:00
Huỳnh Thiện Lộcandbbedward 9abaf4051e feat(dankbar): corner style & bar length padding (#3085)
* feat(dock): attach bar to screen edge

* feat(dock): add bar length padding

* feat(dock): expand bar padding range

* refactor(dock): group bar corner settings

* fix(i18n): avoid attached term variant

* fix(settings): group corner style with goth corners

* fix(dankbar): attach flush bars to the screen edge

---------

Co-authored-by: bbedward <[email protected]>
2026-08-17 13:22:09 -04:00
Huỳnh Thiện Lộcandbbedward fc1c9f6c54 fix(frame): align connected chrome layer (#3039)
* fix(frame): align connected chrome layer

Connected chrome now follows overlay modal/popout descriptors so the frame-rendered background stays on the same Wayland layer as the content. This currently moves the frame window as a whole, so hosted bars may follow the overlay layer while such surfaces are presented.

* fix(frame): keep overlay-opted surfaces out of connected chrome

---------

Co-authored-by: bbedward <[email protected]>
2026-08-17 12:42:01 -04:00
bbedward 070090c35a bluetooth: multi-adapter support 2026-08-16 11:36:32 -04:00
Al Amin d067959f1c control-center: route Bluetooth power through backend (#3082) 2026-08-16 11:06:28 -04:00
bbedward 52abc81011 media: gate dash visualizer and position timers, reclaim dash popout
related #2863
2026-08-16 11:02:15 -04:00
purian23 d4fecfcd5c feat(settings): finalize dms settings user theme options 2026-08-15 16:54:00 -04:00
bbedward ba360213dd i18n: sync 2026-08-15 12:32:22 -04:00
Huỳnh Thiện Lộc 214de4a570 fix(dock): close grouped app on middle click (#3064) 2026-08-15 12:28:22 -04:00
Huỳnh Thiện Lộc 8527b5ed0e fix(dock): animate overview reveal in frame mode (#3065) 2026-08-15 12:28:00 -04:00
Huỳnh Thiện Lộc 2ca2e53b6b fix(osd): clamp vertical brightness slider (#3067)
* fix(osd): clamp vertical brightness slider

* fix(osd): keep brightness slider value in sync
2026-08-15 12:27:21 -04:00
Huỳnh Thiện Lộc c93767fdfe fix(launcher): hide spotlight placeholder during IME input (#3071) 2026-08-15 12:26:55 -04:00
Huỳnh Thiện Lộc 7d8532b075 feat(matugen): add Fcitx5 theme template (#3076)
* feat(matugen): add Fcitx5 theme template

* fix(matugen): reload Fcitx5 theme
2026-08-15 12:26:18 -04:00
bbedward fdf0d73b30 displays: apply refresh rate changes without compositor config reload
related #3073
2026-08-15 12:24:10 -04:00
bbedward fb9f00a616 default apps: add mime-type options for file browser 2026-08-14 18:09:39 -04:00
Huỳnh Thiện Lộc 8d9c961605 feat(clock): add widget date order option (#3028)
* feat(clock): add widget date order option

* refactor(settings): reuse widget setting signal
2026-08-13 20:38:05 -04:00
Curious 70d0dd8f1d feat(settings): echo location name in location search (#3040)
* feat(settings): persist named location for theme & gamma auto modes

* chore: bump dank-qml-common for location search support

* fix(settings): keep weather location name when search fills coordinates

* style(settings): unify manual coordinates layout with weather
2026-08-13 17:59:37 -04:00
Huỳnh Thiện Lộc 7b9b34b262 feat(dock): separate pinned and running apps (#3025) 2026-08-12 23:30:12 -04:00
Huỳnh Thiện Lộc f83d6c7778 fix(dock): cycle niri overview groups (#3038) 2026-08-12 23:28:40 -04:00
Al Amin 47311e9af7 dankdash: add inline wallpaper search (#3048) 2026-08-12 23:21:06 -04:00
bbedward 2945b0d6f1 gamma: allow lower values than 2500k
fixes #3026
2026-08-12 12:03:37 -04:00
bbedward 7974887295 settings: diff-only configs, machine-state split, backup CLI
- settings.json/session.json now store only values that differ from
  spec defaults
- Machine-specific state moves out of settings.json into session.json
- Add dms backup create/restore: tar.gz of ~/.config/DankMaterialShell

fixes #3027
2026-08-11 15:32:01 -04:00
bbedward 373a3d3136 power profile: hide when ppd not available
fixes #3031
2026-08-11 10:31:46 -04:00
bbedward 2f27eab949 fix(ipc): widget status distinguishes missing popouts from closed ones
fixes #3032
port 1.5
2026-08-10 18:35:09 -04:00
bbedward da664565b1 dgop: drop dgop as an external dependency and use dgop/gops internally
fixes #3033
2026-08-10 18:29:59 -04:00
Huỳnh Thiện Lộc c3c9b13ef6 fix(dock): preserve overview-only visibility (#3029) 2026-08-10 15:24:50 -04:00
Huỳnh Thiện Lộc 422406267e fix(brightness): initialize display state (#3035) 2026-08-10 15:24:35 -04:00
Huỳnh Thiện Lộc ed4cc1da7b feat(clipboard): add overlay layer option (#3037) 2026-08-10 14:57:14 -04:00
bbedward b0b9b61593 dock/apps: support minimize 2026-08-09 17:08:43 -04:00
Huỳnh Thiện Lộc 80bad610ce feat(dock): cycle grouped app windows (#3023) 2026-08-08 18:46:48 -04:00
Huỳnh Thiện Lộc b6d051a61f feat(filebrowser): expose folder mode on surface modal (#3022) 2026-08-08 18:14:50 -04:00
bbedward 8e2168ecf8 fix(windowrules): preserve niri exclude clauses
fixes #2996
port 1.5
2026-08-08 13:12:08 -04:00
bbedward 0b526d9b05 fix(hyprland): don't restore focus to a toplevel on another workspace when a popout closes
fixes #2963
port 1.5
2026-08-08 10:58:26 -04:00
Huỳnh Thiện Lộc bde4decc5d feat(theme): add extract dynamic theme to JSON file (#3009)
* feat(theme): add extract current theme to JSON file

Adds an 'Extract' button in Settings > Theme Color that exports the
current theme (generic/dynamic/custom/registry) to a dual-mode dark+light
JSON file via the DMS file save dialog.

* refactor(theme): simplify extract button to single DankButton

* refactor(theme): move extract button inside dynamic theme section

* fix(theme): address review feedback on extract theme save

* refactor: utilize dankActionButton

---------
2026-08-08 00:31:59 -04:00
bbedward fc90bddad1 fix(frame): honor showOnLastDisplay fallback in bar screen-coverage checks
fixes #2998
2026-08-07 19:59:52 -04:00
bbedward f16bdda969 fix(displays): auto-select restores named profiles matching the connected output set
fixes #3012
port 1.5
2026-08-07 18:56:59 -04:00
bbedward cf4f48069f fix(bluetooth): derive codec from locale-independent profile name in bluez-card-profile.lua
fixes #3004
port 1.5
2026-08-07 18:39:23 -04:00
Huỳnh Thiện Lộc 38cca3195f fix(dock): skip creating dock layers when dock is disabled (#3014) 2026-08-07 15:43:38 -04:00
Curious 40a9ca348c feat(settings): add location search to theme & gamma coordinates (#3010)
* feat(settings): add location search to theme & gamma coordinates

* fix(settings): refresh coordinate fields after manual edits
2026-08-07 13:00:37 -04:00
bbedward 1dc0ceea1f i18n: sync 2026-08-07 11:13:48 -04:00
Maxim Levchenko 1a621c3f88 translation (#2980) 2026-08-07 11:12:15 -04:00
purian23 a575363f89 fix(notifWidget): restore hand cursor on hover
Port 1.5
2026-08-06 23:44:41 -04:00
David Mirelesandbbedward 3f6cd0b579 feat(registry): support multiple plugin and theme registries via env vars (#2972)
feat(registry): support multiple plugin/theme registries

closes #2763

---------

Co-authored-by: bbedward <[email protected]>
2026-08-06 22:43:44 -04:00
purian23 9013464312 feat(theme/settings): dedicated floating window styling with shared chrome
- Refactor Widget Styling into Surface Styling & Floating
  Windows
- New sync per-host opacity & foreground layer control
- Shared DankFloatingWindow chrome
- Settings fix to destroy Settings window on-hide so niri floating
  rules match subsequent runs
Related: #2709
2026-08-06 20:52:14 -04:00
Huỳnh Thiện Lộcandbbedward dade416ca0 feat(settings): add keyboard configuration tab for Niri (#2937)
* feat(settings): add dedicated keyboard configuration tab

* chore(settings): configure default keyboard settings and clean up embedded niri config

* settings/keyboard: emit niri keyboard config only when set, dedup setup banner, index tab

---------

Co-authored-by: bbedward <[email protected]>
2026-08-06 18:40:17 -04:00
FormalSnakeandbbedward 401872881e media: add opt-in Apple Music animated album covers (#2918)
* media: add opt-in Apple Music animated album covers

* media: validate itunes match, touch files for cache

---------

Co-authored-by: bbedward <[email protected]>
2026-08-06 14:47:51 -04:00
Huỳnh Thiện Lộc 7cb97f4462 fix(launcher): honor source badge setting (#3002) 2026-08-06 00:33:39 -04:00
Huỳnh Thiện Lộc 82b1b36b1a fix(settings): hide removed widget tooltip (#3003) 2026-08-06 00:33:17 -04:00
FormalSnake e203e76ccc powermenu: support user-defined custom power buttons (#2916) 2026-08-05 20:46:42 -04:00