Commit Graph
1184 Commits
Author SHA1 Message Date
sankalp 73e050897b fix(desktop): repaint widgets during drag and drop
A Gtk.Fixed child resize only bubbles to the toplevel when the window
itself is queued, so move() kept the old allocation until a rebuild.
Queue the window after each reposition so the dragged widget follows
the cursor and lands at the drop position live.

Dropped remove()+put() which never repainted in the layer-shell window.
2026-08-03 07:39:33 +05:45
sankalp 195143664b fix(recording): track backend subprocess for active state
active shelled out to pidof on every read, blocking the main loop and
missing our own recorder handle. Track the spawned Gio.Subprocess for
an exact answer and cache the external pidof probe for 2s.

Resets the cache at ownership boundaries (start/stop).
2026-08-03 07:39:30 +05:45
sankalp 8318bdf0fd build: refresh lockfile for fabric tag pin 2026-08-02 13:37:10 +05:45
sankalp 515c04d33c refactor(spotlight): spawn caffeine detached 2026-08-02 13:37:10 +05:45
sankalp 4f2c3eb88c refactor(spotlight): use shared app cache 2026-08-02 13:37:10 +05:45
sankalp d1734fe040 refactor(recording): reuse mmss formatter 2026-08-02 13:37:10 +05:45
sankalp a8682700f4 perf(panel): defer heavy component imports to first use 2026-08-02 13:37:10 +05:45
sankalp 5b613d734f refactor(pomodoro): reuse mmss formatter 2026-08-02 13:37:10 +05:45
sankalp e95d3df14f perf(unified_cache): cache icon theme name with TTL 2026-08-02 13:37:10 +05:45
sankalp 849a8267e2 fix(notification_center): reconcile groups in place 2026-08-02 13:37:10 +05:45
sankalp 2f89203477 refactor(notification): share pixbuf resolution 2026-08-02 13:37:10 +05:45
sankalp 75d59aa06d refactor(globalmenu): reuse active-window service 2026-08-02 13:37:10 +05:45
sankalp 21179b049a refactor(globalmenu): compile shim via run_command 2026-08-02 13:37:10 +05:45
sankalp b8e1162743 refactor(dock): add cached icon surface fields 2026-08-02 13:37:10 +05:45
sankalp 86b8ad51ad perf(dock): cache icon surfaces, coalesce title fetches 2026-08-02 13:37:10 +05:45
sankalp f20d6fe9c5 perf(desktop): defer widget imports to first rebuild 2026-08-02 13:37:10 +05:45
sankalp 0821f0ed47 fix(controlcenter): connect signals once per lifetime 2026-08-02 13:37:10 +05:45
sankalp f6a37290f7 refactor(expanded_player): reuse mmss formatter 2026-08-02 13:37:10 +05:45
sankalp 972eb18088 refactor(controlcenter): drop dead device-remove fallback 2026-08-02 13:37:10 +05:45
sankalp 715f1c8415 refactor(password): verify su through run_command 2026-08-02 13:37:10 +05:45
sankalp 2e4c72dea3 refactor(gtk_utils): drop unused thumbnail loader 2026-08-02 13:37:10 +05:45
sankalp 8b89dd2dcc refactor(functions): add shared app cache and mmss formatter 2026-08-02 13:37:10 +05:45
sankalp 76f275f08d perf(weather): skip refetch when forecast is fresh 2026-08-02 13:37:10 +05:45
sankalp 37efa0bf0a refactor(wallpaper): drop unused get_wallpaper_info 2026-08-02 13:37:10 +05:45
sankalp 4754489f47 fix(sysauth): run auth helper off the main thread 2026-08-02 13:37:10 +05:45
sankalp deb4a3688c perf(network): cache dbus proxies, reuse rfkill state 2026-08-02 13:37:10 +05:45
sankalp f8a0bf0701 perf(mpris): cache metadata, async player calls 2026-08-02 13:37:10 +05:45
sankalp 81dc9408f6 refactor(modus): drop dead helpers, size occlusion from monitor 2026-08-02 13:37:10 +05:45
sankalp 25bd696bf2 refactor(dns): route nmcli through run_command 2026-08-02 13:37:09 +05:45
sankalp 2025cca857 perf(custom_notification): debounce cache writes 2026-08-02 13:37:09 +05:45
sankalp 5c97923588 fix(config): skip unrelated files and no-op reloads 2026-08-02 13:37:09 +05:45
sankalp 8372782032 refactor(brightness): drop unused poll timer id 2026-08-02 13:37:09 +05:45
sankalp 29cf4fedc1 refactor(bluetooth): drive rfkill state from kernel events 2026-08-02 13:37:09 +05:45
sankalp e949bd4397 refactor(battery): hoist raw-state mapping to constant 2026-08-02 13:37:09 +05:45
sankalp 57b9269736 build: pin fabric to v0.0.2 release tag 2026-08-02 13:36:59 +05:45
sankalp 98c3181541 fix(date): update label in place to avoid GTK3 visibility glitch
Repeated set_label() on every tick destroys and recreates the button's
internal label; after enough redraws GTK3 drops its visibility. Capture
the label once and update via set_text() instead.
2026-08-02 12:10:11 +05:45
sankalp 9e992578f8 feat(main): connect polkit agent to auth dialog 2026-08-02 12:10:09 +05:45
sankalp e36e0c1a7d feat(sysauth-dialog): add thread-safe dismiss and service wiring
run_auth_dialog now returns a thread-safe dismiss callable so polkitd
cancellations can close the dialog from any thread. connect_sysauth_service
wires the agent signals to the dialog: show on begin, respond on submit,
re-prompt on failure, dismiss on cancel.
2026-08-02 12:10:06 +05:45
sankalp 1059833576 fix(sysauth): hold BeginAuthentication reply until auth resolves
polkitd ends the authentication session the moment the BeginAuthentication
D-Bus reply returns, so replying immediately aborted every attempt with
'No session for cookie'. The invocation is now held until respond() or
cancel() resolves it, and cancelled sessions return
org.freedesktop.PolicyKit1.Error.Cancelled.

Also export the agent on the system bus (polkitd addresses agents by the
system-bus unique name used for registration) and authenticate through
polkit-agent-helper-1 via socket activation or setuid fallback so PAM
runs as root, instead of the old direct Respond call that only works
for uid 0.
2026-08-02 12:10:03 +05:45
sankalp ba4d73d58f fix: weakref callbacks to stop settings window memory leak 2026-08-01 21:04:24 +05:45
sankalp 963ca39303 perf: lazy-load settings window to cut startup memory 2026-08-01 20:46:33 +05:45
sankalp 9dc18f9fec Merge pull request #48 from S4NKALP/dependabot/github_actions/actions/setup-python-7
chore(deps): bump actions/setup-python from 5 to 7
2026-08-01 20:05:17 +05:45
sankalp 9ebb53942b Merge pull request #45 from S4NKALP/dependabot/github_actions/actions/labeler-7
chore(deps): bump actions/labeler from 5 to 7
2026-08-01 20:04:58 +05:45
sankalp dc6fd67d66 Merge pull request #47 from S4NKALP/dependabot/github_actions/astral-sh/setup-uv-7
chore(deps): bump astral-sh/setup-uv from 4 to 7
2026-08-01 20:04:27 +05:45
sankalp 246261675a Merge pull request #46 from S4NKALP/dependabot/github_actions/github/codeql-action-4.37.3
chore(deps): bump github/codeql-action from 3 to 4.37.3
2026-08-01 20:04:16 +05:45
sankalp 09f792078f fix: dropdown callbacks, singleton about dialog, config-driven settings sidebar, switcher cache eviction 2026-08-01 20:03:46 +05:45
sankalp 456545e6a6 perf: break animator and popup ref cycles, suspend idle timers
Break self -> animator -> lambda cycles in smooth switch and flat scale
by stopping animators and disconnecting value handlers on destroy. Drop
mutual OSD window/osd refs and clear the applet active-popup class ref.

Suspend the dock animation loop when nothing animates, pause the desktop
system info poller while unmapped, replace the OSD watchdog polling with
a single shot at expiry, lower the notch visualizer tick rate, and
cancel outstanding dock occlusion/rebuild timers on teardown.
2026-08-01 19:53:15 +05:45
sankalp d8696b9198 fix: add destroy() and signal cleanup across widgets, fix settings window + menu regressions
P0 leak fixes: context/action menus destroyed on deactivate, config
callbacks unregistered in settings widgets, recorder and server signal
IDs stored and disconnected, bluetooth client closed and unsubscribed,
rfkill timer removed, seek timers cancelled, dropdown and options menus
freed, app name cache LRU-bounded.

Fix desktop 'Edit Widgets' and settings menu regressions by deferring
destroy out of Gtk signal handlers via GLib.idle_add.

Fix settings entry fields by connecting the activate signal explicitly
(Enter saves the value).
2026-08-01 19:44:39 +05:45
sankalp 55fc3fba21 fix: drop notification header icon, defer spotlight paste quit, use hyprctl send_shortcut 2026-08-01 19:23:56 +05:45
dependabot[bot] a09a6661e9 chore(deps): bump actions/setup-python from 5 to 7
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5 to 7.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v5...v7)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-01 04:55:53 +00:00