Commit Graph
1891 Commits
Author SHA1 Message Date
Huỳnh Thiện Lộc fde8bb6487 feat(battery): show estimated end time (#3117) 2026-08-19 20:44:58 -04:00
Connor Welshandbbedward 101841585f fix(dgop): stop the process list opening blank (#3108)
* fix(dgop): merge child processes by default

* fix(dgop): show the process list on first open

parseData threw away the first processes payload and waited 1s for a
second, on the grounds that the first carries no CPU deltas. That holds
for the cpu module, whose prime stays, but the processes sample is
usable as it arrives, so the wait only left the list blank.

* fix(dgop): refetch when the module set changes mid-request

updateAllStats returned early while a request was in flight, and that
request was built from the modules as they stood when it went out.
Opening the process list during the bar's periodic poll got back a
response with no process data, then a full updateInterval of waiting.
Queue a refetch and reissue when the response lands.

* fix(dgop): clear pendingUpdate when no request is sent

* fix(dgop): prime the queued refetch so the cpu cursor spans an interval

* core: bump dgop version

---------

Co-authored-by: bbedward <[email protected]>
2026-08-19 12:03:41 -04:00
bbedward e78951d3c3 plugins/i18n: create mechanism for plugins to define their own
translations. Introduce I18n.trFor() function

fixes #2593
2026-08-19 11:52:32 -04:00
Huỳnh Thiện Lộc 161c597c55 fix(settings): restore control center menu (#3113) 2026-08-19 11:45:06 -04:00
purian23 327aad210c fix(frame): restore overlay connected chrome
- Frame chrome stays on the overlay layer with connected popouts and modals
2026-08-18 17:53:21 -04:00
Huỳnh Thiện Lộc 262acda336 fix(lock): handle ctrl-backspace (#3087) 2026-08-18 15:51:48 -04:00
Thomas Kroll 5ca033d839 fix(system-update): apply saved updaterIntervalSeconds on daemon connect (#3093)
The dms daemon always initializes IntervalSeconds to its 30-minute
default and has no persistence of its own; the saved SettingsData
value was only ever pushed on manual interaction with the Settings UI
dropdown. Result: every daemon (re)start silently reverts to checking
every 30 minutes regardless of the user's configured interval.
2026-08-18 13:50:45 -04:00
Huỳnh Thiện Lộc d83a0037f3 feat(chooser): edit and copy target (#3094)
* feat(chooser): edit and copy target

* fix(chooser): avoid copy shortcut conflict

* fix(chooser): address review feedback
2026-08-18 13:50:17 -04:00
Huỳnh Thiện Lộc d7b19809aa fix(frame): preserve connected popout chrome (#3101) 2026-08-17 17:46:55 -04:00
Huỳnh Thiện Lộc a503e869cf fix(notifications): keep popup above frame chrome (#3099) 2026-08-17 17:28:55 -04:00
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