Commit Graph
2425 Commits
Author SHA1 Message Date
bbedward b938dd76f0 theme: use blend helpers from qml-common 2026-10-08 16:20:30 -04:00
bbedward 474b723faf keybinds: capture pressed shortcuts in the search fields
settings: add a cheatsheet button to the keyboard shortcuts page

fixes #3631
fixes #3632
2026-10-08 16:03:55 -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 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 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
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
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 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
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 069fa318d6 island: fix pill jumping sideways when the compact face switches
fixes #3668
2026-10-06 11:02:32 -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 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
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 4265ea1620 freebsd: gate audio and battery polling on consumer refs instead of popout bindings 2026-10-05 22:23:34 -04:00
bbedward b81373aae8 auth: use the expressive text field for polkit, network prompts, greeter and settings password fields 2026-10-05 22:09:37 -04:00
Zer0TraceXandclaude[bot] 87a4da9e13 feat(freebsd): Add initial native FreeBSD support (#3559)
* feat(freebsd): add comprehensive native FreeBSD support

* Update BatteryService.qml

* Add battery probe completion and fallback updates

* Add isVideoSource function and update PwObjectTracker filter

* Add isPipewireVideoSource function to AudioService

Added a function to check if a Pipewire node is a video source.

* Refactor video source check to use AudioService

* Remove unnecessary call in BatteryService.qml

* Add call to updateFreeBsdBatteryFallback on completion

* Simplify AudioService by eliminating redundant bindings

Removed unnecessary bindings in the AudioService loader to streamline the loading process.

* Improve error handling in CheckUpdates function

Handle specific exit error for package upgrade check.

* Enhance FreeBSD network detection logic

* Implement FreeBSD Wi-Fi hardware discovery in Initialize

Added FreeBSD Wi-Fi hardware discovery and updated initialization logic to handle cases where no wpa_supplicant control socket is found.

* Implement Ethernet state monitoring in StartMonitoring

Added monitoring for Ethernet state updates in StartMonitoring function.

* Add Ethernet management functions to backend

* Remove unimplemented Ethernet control methods

Removed unimplemented Ethernet control methods from WpaSupplicantBackend.

* Implement SetWiFiEnabled method for WiFi control

Add error handling and state management for WiFi control

* Update core/internal/server/network/backend_wpa_ethernet.go

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

* Implement Ethernet monitoring in WpaSupplicantBackend

* Refactor startEthernetMonitor and add debounce logic

Refactor the startEthernetMonitor function to improve readability and maintainability. Introduce a debounce mechanism for processing relevant FreeBSD route events.

* Reorder import statements in backend_pkg.go

* Remove unnecessary blank line in backend_wpa_ethernet.go

* Implement FreeBSD audio polling based on UI visibility

Introduce a polling mechanism for FreeBSD audio device updates based on visibility of UI elements.

* Add readonly freeBsdPollingRequested property and optimize polling

Introduce a readonly property to determine if FreeBSD polling is requested based on various UI conditions. Update command execution to prioritize polling efficiency.

* Simplify freeBsdPollingRequested logic

Removed unnecessary conditions from freeBsdPollingRequested property.

* Implement reference counting for battery consumers

Added reference counting to manage battery information consumers and updated related functions for better battery state handling.

---------

Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
2026-10-05 22:03:32 -04:00
purian23 2c584c8bf7 launcher: add app editing to spotlight 2026-10-05 21:48:29 -04:00
bbedward 9ec48c4f13 ui: rename internal widgets with D prefix to match qml-common change 2026-10-05 18:05:07 -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
bbedward ba50299b2f dash/wellbeing: size default to other tabs, except overview 2026-10-05 15:20:55 -04:00
bbedward f6d0701505 matugen: more clear failure details 2026-10-05 15:05:25 -04:00
bbedward 4b285323a1 i18n: sync 2026-10-05 14:45:34 -04:00