Commit graph

4 commits

Author SHA1 Message Date
Sarthak
ddf9321901 control panel: real padding, seat grab, key hints
- GtkBox set_border_width shrinks the widget's own background, so the card was
  inset 30px while its contents sat flush against the card edge. Padding is css
  now: 12px transparent gutter outside, 20px inside. Measured on a virtual
  display rather than guessed.
- the panel grabs the seat on map, like rofi, so it keeps keyboard and pointer
  focus wherever the cursor is; the grab is released on close
- every control shows its key in the bottom-right: n b v d p w for the tiles,
  a c s t for the row beneath, l o z r q for power, m/i to mute, arrows for
  volume

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Cn3dHfbgNYdbZvzb1b3GQt
2026-09-04 08:46:40 +05:30
Sarthak
b4c6c7dbd5 replace the rofi control centre with a real GTK panel
rofi spawns a process per menu, so every volume nudge and every step back
destroyed and recreated the window. That is the flicker, and no tuning fixes
it. The panel is now one GTK window: a GtkStack for views, real GtkScale
sliders wired to wpctl, status on a timer, and a pidfile so super+x toggles
it shut. Escape steps back inside the same window.

Also: picom no longer fades or animates rofi, ::selection is not valid GTK
css, and the network/bluetooth lists no longer print their payload column.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Cn3dHfbgNYdbZvzb1b3GQt
2026-09-04 01:12:49 +05:30
Sarthak
b5a252c480 control centre, notification overhaul, and cleanup
One centred rofi panel (super+x, or the gear in the bar) now drives network,
bluetooth, audio, WireGuard, display, notifications, clipboard, emoji,
screenshots, wallpaper, the particle layer, the bar and power. The separate
per-function menus are gone.

dunst: icons and images were disabled outright (icon_position=off,
max_icon_size=0). Now icons resolve through Papirus, images render, progress
bars are styled, notifications gap and stack, and fullscreen windows are not
covered unless the message is critical. Volume up/down never notified at all;
they now show a stacking OSD with a progress bar.

Removed things that were broken or belonged to whoever this rice came from:
- vpn-launcher.sh (mullvad/openvpn) and dc-multivpn
- audio/bluetooth/network/power rofi menus, folded into the control centre
- untar-all, unzip-all, resetxdgportal (unreferenced)
- a sxhkd binding hardcoded to /home/sarthak/projects/scribe
- clipboard-manager.sh keyed off XDG_SESSION_TYPE, which is 'tty' here, so it
  only ever printed a Russian error; rewritten on greenclip
- toggle-bar.sh was bound to super+b but did not exist; written

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Cn3dHfbgNYdbZvzb1b3GQt
2026-09-04 00:48:26 +05:30
Sarthak
f341989335 Sakura Line: retheme the whole desktop from the wallpaper
Palette sampled from bspwm/wallpaper/wallpaper.jpg and applied per-role
(not per-hex, so terminal green stays green and nvim's LineNr/Comment
stay recessive) across st, kitty, polybar, rofi, dunst, nvim, qt5ct/qt6ct
and GTK 2/3/4.

Also:
- rofi drun centred, icons enabled
- polybar translucent (true ARGB) and rounded; picom corner-radius, with
  the desktop layer and fullscreen windows excluded
- fix qt5ct color_scheme_path pointing at a nonexistent /home/carrie
- export QT_QPA_PLATFORMTHEME so qt6ct is actually consulted
- point GTK at an icon theme that exists on this system
- add .config/rice: one-shot install.sh (--dry-run supported), package
  list, vendored st config.h (gitignored upstream) and the particles
  wallpaper-layer source, so a clone reproduces the rice

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Cn3dHfbgNYdbZvzb1b3GQt
2026-09-04 00:19:36 +05:30