Commit Graph
669 Commits
Author SHA1 Message Date
bbedward ffe2da7e99 avatar: material person glyph instead of an app icon lookup
fixes #3600
2026-09-28 14:43:04 -04:00
bbedward 1142390724 settings: add + item name on every creation fab
settings: stop repeating the page title as the first card label
translations: index untitled cards by their page, not a nested row

fixes #3604
fixes #3609
2026-09-28 14:38:43 -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
bbedward d5c96a1756 keybinds: resolve the main modifier per compositor and report it on the cheatsheet 2026-09-27 16:19:06 -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 9dc5b2c5af settings: some loader restructure and restyle keybinds
island: fix satellite opacity and blur
2026-09-26 16:25:34 -04:00
bbedward a48f41b749 theme: switch to dankgo material utilities fork
settings: label some non-obvious thing swith more details

fixes #3555
fixes #3553
2026-09-25 21:31:34 -04:00
bbedward cc45f8b445 settings: add reusable FAB component and use it in more places 2026-09-25 15:02:45 -04:00
bbedward 3b529b3a97 lyrics: add kugou and YT music providers 2026-09-25 14:02:27 -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 6cb8a3b67a launcher: restore focus ring to spotlight and respect global setting 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 4949c2fbbe settings: fix some inconsistencies
dash: no header for disabled tabs
2026-09-24 10:00:25 -04:00
bbedward 6e9bbc15a6 files: swith to diles shared components 2026-09-23 21:27:14 -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
f22ad2c333 feat(theme): inject external color palettes into matugen (#3509)
* matugen: support multiple injected palettes with settings ui

Run user-configured external commands on each theme build and merge their
JSON output into matugen's import data under a namespace, so templates can
reference e.g. {{mypalette.color0}} alongside dank16. Multiple palettes are
supported, each under its own namespace. Command output may be nested JSON
(pywal/wallust shape). A settings page manages the list; a legacy
single-object config file is still read.

* settings: map PaletteInjectTab in search index

* matugen: bound palette-inject command with timeout and WaitDelay

* fix palette column spacing (review suggested

Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>

* remove wallpaper kind guard (review suggestion)

Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>

* fixup! remove wallpaper kind guard (review suggestion)

---------

Co-authored-by: bbedward <[email protected]>
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
2026-09-23 10:26:47 -04:00
bbedward 4bdfcfc0cf settings: adjust window rules and clock options 2026-09-23 09:42:28 -04:00
bbedward c66ca00062 settings/bar: move name back to its own pill 2026-09-22 22:24:45 -04:00
bbedward 4cb2be5fa4 bar: adjust settings UI 2026-09-22 22:12:34 -04:00
purian23 a96dea2019 settings: re-org & unify bar sections into updated sub-sections 2026-09-22 20:41:24 -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 860542314e settings: re-org launcehr tab built-in plugins, make desktop widgets
sub-pages to match the pattern of bar widgets
2026-09-22 18:11:12 -04:00
bbedward 89484b5d85 compositor: initial support for umbriel
tests: remove a lot of them

fixes #3214
2026-09-22 16:43:41 -04:00
bbedward abd51287f3 settings: align nested rows and page widths to shared spacing 2026-09-22 14:19:41 -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 c9032926d7 settings: load all pages asynchronously 2026-09-21 16:47:09 -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
Matt Jiang cc8a6053c5 feat(mux): add Herdr backend (#3531)
* mux: add herdr backend

* mux: remove herdr service tests

* mux: include herdr in settings subtitle

* mux: add translator context to the multiplexers subtitle

* mux: drive the service from a backend table

Each backend (tmux, zellij, herdr) is one entry in MuxBackends.js with
its commands and parser, so the service no longer branches on muxType
in eight places and the settings dropdown lists the table keys. One
availability check runs for the selected backend and re-runs when the
backend changes. The herdr parser reads the real {sessions:[...]}
shape only.
2026-09-21 15:26:56 -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
bbedward 567c14f6d9 processlist: design changes 2026-09-20 22:40:40 -04:00
bbedward 64ba6163e2 settings: proper color swatches everywhere 2026-09-20 21:18:13 -04:00
bbedward 4d6de9cf96 settings/wallpaper: more restyle to appearance header 2026-09-20 21:09:12 -04:00
bbedward d9d9e6b9cf settings: rebuild wallpaper page around a single hero thumbnail
cc/edit: fix janky resize problems
2026-09-20 20:42:16 -04:00
bbedward b56a53c03a settings: preserve navigation state and add notification test button 2026-09-20 15:28:18 -04:00
purian23 df71c65478 feat(workspaces): add lines & card indicator styles 2026-09-20 03:24:09 -04:00
purian23 c1feab857a refactor(bar widgets): show new widget style in all bar modes 2026-09-20 03:21:51 -04:00
purian23 a68344df60 fix(surfaces): bar follows global opacity & misc ajustments/fixes
- Standard bars respond to the global surface opacity again
- Island dash stays open when an edit-mode menu is used
- Weather forecast chip and island level groove follow the foreground opacity
- Control center tile icons follow blur and foreground settings like the slider icons
- Restored the layer outline on control center tiles and slider rows
- Hover popouts setting is visible for island bars
- Bumped dank-qml-common
2026-09-20 02:23:03 -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 a5087735b5 theme: add fixed corner radius mode and rescale radius strength 2026-09-19 17:07:37 -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
bbedward 3d1873c46e settings: remove leftover gates from interfaces tab 2026-09-18 18:14:27 -04:00
bbedward 10e9c070df settings: frame and island follow the bar 2026-09-18 17:59:06 -04:00
purian23 a3a9fe13eb feat(Hyprland): add native special workspace scratchpad support
Closes #1000
2026-09-18 16:21:54 -04:00
bbedward 014c69b09a settings: tile color restyle and re-org, use materials own shift for
them towards theme
controlCenter: make a real grid, add numerous more tile varieties, add
icon size option
surfaces: fix elevation levels in general, and shift them down
settings: restyles and re-org
sliders: scale down universally
2026-09-18 14:32:55 -04:00