Commit Graph
5107 Commits
Author SHA1 Message Date
bbedward f19632eba5 config/kitty: set remember_window_size no in default dms config
ref #3719
2026-10-08 14:03:30 -04:00
bbedward 2c77b9d477 setup: resolve bind terminal from $TERMINAL before the ghostty default
fixes #3653
2026-10-08 13:57:20 -04:00
bbedward fa6927de3b bump qml-common 2026-10-08 13:00:36 -04:00
bbedward 1a0e4b9979 settings: tweak sidebar shadow style to work better with opacity 2026-10-08 12:57:09 -04:00
bbedward f61a5d1211 lists: restore faded edges everywhere 2026-10-08 12:26:13 -04:00
Mario Mohar 1d120f94bf fix(wallpaper): keep rendering until the scrolling image has decoded (#3725)
In scroll fill mode the parallax layer decodes its own copy of the
wallpaper (parallaxImage, asynchronous). renderActive only waited for
currentWallpaper and nextWallpaper, so after a wallpaper change it could
drop to false and let updatesEnabled run out after the three settle
frames while parallaxImage was still loading. The window then kept
showing the black backing until something else, like a workspace
switch, started rendering again.

Count parallaxImage loading as active too. When it turns Ready,
renderActive flips back and onRenderActiveChanged invalidates, so the
finished image gets its settle frames.

Fixes #3702. Diagnosis and fix by @clethbridgedaniel in the issue.
2026-10-08 11:33:25 -04:00
Alexander 97004ffd6e niri: keep workspace focus in sync with niri (#3713) 2026-10-08 11:06:50 -04:00
bbedward aa5610dd49 matugen: do not dbus-activate fcitx5 when reloading its theme 2026-10-08 10:49:00 -04:00
bbedward 2fd472b89a launcher/notifications: drop view transitions, fade rows via DListView.fadeIn 2026-10-08 10:47:43 -04:00
bbedward c1006f6b34 audio: wait for the sound theme before playing any event sound
ref #3723
2026-10-08 10:04:28 -04:00
bbedward 8b47d3cf70 brightness: map a dp connector's ddc bus as well as its aux bus
ref #3724
port 1.6
2026-10-08 09:34:01 -04:00
bbedward 2bf7f7c556 cups: fix 24.20 compatibility
fixes #3721
2026-10-08 09:22:47 -04:00
bbedward 4dc45185ba notifications: add 2 finger swipe gesture to dismiss on popups
fixes #3716
2026-10-08 09:05:07 -04:00
purian23 c0f08f08cb refactor(island/settings): update notch mode & radius defaults
- Merge island satellites and standard bar goth corner options in shared code
- Update bar settings to collapse inactive sliders
2026-10-08 03:44:42 -04:00
purian23 f9d91cd21f feat(island): implement notch mode variant 2026-10-07 21:55:07 -04:00
bbedward b1dde74e4d settings: improve transition behavior 2026-10-07 19:22:24 -04:00
bbedward f2c06a3cc7 settings: add WheelHandler above Flickable 2026-10-07 16:14:47 -04:00
bbedward ed43b07d5e settings/sidebar: shrink avatar in search a bit and make accent ring off
by default and actually work when disabled
2026-10-07 15:55:58 -04:00
bbedward 4b0dfa67a0 desktop: add right click context menu for actions on compositors where
it doesnt interfere, with a setting to turn it off

Some compositors like kwin/labwc/sway cannot have this without breaking
some built in layering they do.

niri can have this, but for focus follow mouse it may need to be disabled.

fixes #3717
2026-10-07 15:18:39 -04:00
Marlon Kranz 72c23161e7 fix(hyprland): write window rules Hyprland 0.56 accepts, keep DMS windows opaque (#3655)
* fix(hyprland): write window rules Hyprland 0.56 accepts, keep DMS windows opaque

The Lua window-rule writer emitted match keys and effects Hyprland 0.56
does not know: `floating`/`pinned`/`initialised` as match keys and
`noborder`/`norounding` as effects. It now writes `float`/`pin` and
`border_size = 0`/`rounding = 0`; the parser still reads the old
spellings, so existing files load and are rewritten on the next save.
"No Rounding" now suppresses the corner radius so a rule has one
`rounding` key.

The rule editor no longer offers fields the Hyprland writer drops
(Window Opening output/workspace, Size Constraints, the Initialised
match), and Save is disabled while only one half of a move or size
pair is filled. Every window-rule write now reloads the compositor
through one helper, which also covers Hyprland.

DMS windows draw their own translucent background, so any compositor
opacity rule or decoration opacity multiplied on top of it. DMS now
keeps a hidden rule for its own app id: `opaque = true` on Hyprland
(applied after rule and decoration opacity, independent of order, and
leaving the window's own alpha alone) and `opacity 1.0` on niri, which
the store keeps last. It is re-added on start when missing and hidden
from the rules list and the focused-window menu.

Compositor layout gains a Hyprland "Window opacity" slider writing
decoration.active_opacity/inactive_opacity; 100 leaves the user's own
config in charge.

HyprlandService.reloadConfig queues callbacks: Proc keeps one callback
per id, so a reload requested while the layout writer's reload was
pending dropped its callback and left layout generation stuck.

* fix(windowrules): cap corner radius at 20

Hyprland 0.56's Lua window_rule rejects rounding above 20 ("value 24
is more than the maximum of 20") and the rule loses its rounding. The
Hyprland writer now clamps to 20, and the editor slider stops at 20
for every compositor.
2026-10-07 14:09:49 -04:00
Marlon Kranz 7c6e9ed514 fix(screenshot): copy a saved screenshot as a file, not only image bytes (#3667)
dms screenshot put only image/png on the clipboard. Terminals can only
paste text, so pasting a screenshot into a terminal app (e.g. a CLI
that attaches images from a pasted path) did nothing, while a file
copied through the server's clipboard.copyFile pastes its path.

When the screenshot is saved to a file, copy it the same way:
gnome-copied-files, text/uri-list, the path as text/plain, and the
image bytes. The server is asked first so the copy lands in history;
without it, the same offers are served locally. The offer list is
shared with Manager.CopyFile through clipboard.FileOffers.

copyMultiFork now waits for the child to take the selection, like
copyForkCached, so a failed local copy is reported instead of lost.
dms cl copy --download shares this path and now falls back to a local
copy when the server is down or rejects the file. --no-file and PPM
keep the image-only copy.
2026-10-07 14:05:11 -04:00
Spyros Psarras 66e37ff843 network monitor: add hide when idle and compact mode options (#3569)
* network monitor: add hide when idle and compact mode options

* network monitor: keep the idle widget out of center layout spacing
2026-10-07 13:59:21 -04:00
bbedward 6f43ece99f control center: let grid drops land where dropped 2026-10-07 13:45:21 -04:00
bbedward e9f66d6256 input: use WheelInput for touchpad detection, bump dank-qml-common
fixes QT 6.12 change with pixelDelta being present on mouse wheels
2026-10-07 12:28:06 -04:00
bbedward b42fe6643f perf: gate idle work behind feature and capability state 2026-10-07 11:55:29 -04:00
Artem Timofeev 8fedfae1dc fix(power): reconcile refresh rate after resume (#3459) 2026-10-07 11:17:12 -04:00
bbedward a8146d2ca5 bar: shrink flexible widgets before moving anything into overflow 2026-10-07 11:05:08 -04:00
Lars Artmannandbbedward 8e59341c50 feat(notifications): timed per-app popup mutes (1h / 4h) (#3628)
* feat(notifications): timed per-app popup mutes (1h / 4h) with expiry

* fix test assertions

* notifications: let a timed mute expire without taking the rule's other settings

---------

Co-authored-by: bbedward <[email protected]>
2026-10-07 10:25:38 -04:00
purian23 650b731164 feat(island): new workspace switcher activity 2026-10-07 03:20:25 -04:00
bbedward 07740cc2d5 bar: clear sticky reveal on bars without auto-hide
fixes #3714
2026-10-06 23:10:11 -04:00
dms-ci[bot] 7ffd640ef9 nix: sync flake.lock to dank-qml-common submodule 2026-10-07 02:58:34 +00:00
bbedward 98bf56cbcd windows: drop the qt decoration env, add a title bars toggle and go frameless for own chrome
fixes #3679
fixes #3572
2026-10-06 22:57:21 -04:00
bbedward 8299d8fa77 bump qml-common 2026-10-06 21:41:32 -04:00
bbedward fd52e0af59 qs: add DankBar and DankDash compatibility shims 2026-10-06 21:07:11 -04:00
purian23 5eb78f1f12 notifications: restore hover to reveal closure & expansion buttons 2026-10-06 20:04:20 -04:00
bbedward 769e4455f8 settings: change page transition 2026-10-06 19:12:48 -04:00
purian23 54eb0ccaed plugins: stipe dupe plugin previews & add fallback support 2026-10-06 17:57:16 -04:00
bbedward 089dc98166 network: set routing preference only from settings
fixes #3068
2026-10-06 15:02:12 -04:00
bbedward d838d15e69 cc: replace right click action with long press
fixes #3709
2026-10-06 14:44:15 -04:00
Pedro Jose Soto Rivera f886789835 network(networkd): treat bridge, bond, team and vlan links as wired (#3706)
* network(networkd): treat bridge, bond, team and vlan links as wired

When the IP configuration lives on a bridge or link aggregate, the
enslaved member NIC reports opState=enslaved and the aggregate itself
was dropped by isWired() because only Type=ether was accepted, so the
widget showed Disconnected. Accept the same link types NetworkManager
already handles (#1581).

Also treat lxdbr*/incusbr* as virtual so container bridges, now of a
wired type, are not picked as the uplink.

Fixes #3463

* network(networkd): only treat a bridge as wired if it has a physical member

Name prefixes can't cover every container/VM bridge (lxcbr0, waydroid0,
...). Check the bridge's members in /sys/class/net/<br>/brif instead and
only accept it as the uplink when at least one member is not virtual
(veth*, tap*, ...). This replaces the lxdbr*/incusbr* prefixes.
2026-10-06 14:43:57 -04:00
bbedward 9cceff29dd default apps: disambiguate apps with the same name in desktop entry and
show icon
2026-10-06 11:28:35 -04:00
bbedward 507b818a55 config: drop Before=graphical-session.target from the generated hyprland target 2026-10-06 11:05:01 -04:00
bbedward 069fa318d6 island: fix pill jumping sideways when the compact face switches
fixes #3668
2026-10-06 11:02:32 -04:00
bbedward 766708c551 core: bump dankgo 2026-10-06 10:38:01 -04:00
bbedward ebf9c5ba7b lock: keep the ime commit sink off for in-process input method modules
ref #3669
2026-10-06 10:11:16 -04:00
bbedward 5ee570557f cli/notify: add priority options 2026-10-06 10:10:42 -04:00
bbedward ca93837149 lock: allow anchoring widgets to center, x, and y axises 2026-10-06 09:05:57 -04:00
Isa Al Ula 7b144ddac1 app picker: strip desktop suffix when resolving mime handlers (#3710) 2026-10-06 08:25:55 -04:00
purian23 9d938cfed0 settings: collapse sliders when inactive 2026-10-06 03:42:55 -04:00
purian23 1276418f6e settings: compact toggle/slider design updates & interface organization 2026-10-06 03:24:58 -04:00