Commit graph

74 commits

Author SHA1 Message Date
fdd44e64b2 quickshell: anchor calendar to the clock, space out the bottom cluster
Calendar was left on dropdownY: bar.height / 2 from the rotation, so
it opened at screen centre instead of next to the clock it comes from.
It now maps the clock's position like every other dropdown.

Bottom cluster reads as one clump: bumped its spacing to 12 to match
the top and split status icons / tray / power with separators.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-28 13:15:06 +01:00
33b729c560 quickshell: vertical left bar, 2x rounding, left-aligned surfaces
Bar moves from a horizontal top band to a vertical left column
(Theme.barHeight -> barWidth, 46px for the stacked HH/mm clock).
Every panel now grows rightward out of the bar instead of down:
the dropdown chrome's morph axis, the SDF surface geometry and the
session menu all swap x/y. The launcher is the one surface left at
bottom-centre, as asked.

New: NixOS snowflake at the top (recoloured to the accent with the
tray's hidden-Image + ColorOverlay trick), vertical workspace dots
whose focused pill grows on height, an inline OSD slot in the gap
between the two clusters, and a power button in the bottom-left
that opens the session menu.

Dropped the flush-to-far-edge dropdown special case — clamped
tracking plus the SDF melt already covers it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-28 13:09:49 +01:00
efd1331823 quickshell: native volume/brightness OSD, drop swayosd + wob
Sixth surface in the SDF chrome shader, melting out of the bottom
frame. Volume is reactive via Pipewire so the OSD also fires for
pavucontrol/mixer changes; brightness routes through a new osd IPC
handler since sysfs backlight only notifies via POLLPRI.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-28 12:35:44 +01:00
34234ab9e9 quickshell: cache:false on wallpaper images (stale after soft reload)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-27 12:59:22 +01:00
8efcc4d30c desktop: replace ly with greetd autologin + boot-locked quickshell
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 17:03:26 +01:00
1158a36d1a quickshell: uniform panelGap token + card-style notifications/toast
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 14:05:05 +01:00
0342cbe59a quickshell: quick-settings — night light with sunset auto, brightness + kbd backlight sliders
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 13:26:08 +01:00
9239f60549 lockscreen: fix PAM never instantiating (moved out of WlSessionLock)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 12:09:52 +01:00
57d4ea4e0f lockscreen: fix enter key, add confirm button
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 11:20:23 +01:00
bedb11930f lockscreen: replace hyprlock with quickshell WlSessionLock
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 11:04:27 +01:00
eb80358748 desktop: drop hyprpaper + speechd, quickshell draws wallpaper
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 10:13:26 +01:00
23a5ad2914 quickshell: trim hyprshot body, add image preview to toast (shared helper)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 15:39:11 +01:00
7cd7a0e3dc screenshots: save file for notification previews, fall back to appIcon path
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 15:20:53 +01:00
f0193eedd3 quickshell: round album art, full-width notifications with app icon + image preview
- album art uses ClippingRectangle so the image follows the radius
- NotifContent gains an app icon + name header
- notifications move to a full-width card spanning both panes, each item
  showing the notification image preview when present

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 14:56:49 +01:00
c901b9b56d quickshell: media card — title/artist right of art, controls+volume below
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 14:48:31 +01:00
af35c81514 quickshell: bump media album art to 128x128
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 14:47:02 +01:00
150f362998 quickshell: restack media card — art+controls row, then title/artist/volume
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 14:43:09 +01:00
a772034220 quickshell: drop session menu auto-close timer too
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 14:25:54 +01:00
83b4c5ef09 quickshell: click-outside dropdown dismissal, drop auto-close timers
Extend the launcher/session HyprlandFocusGrab to the bar dropdowns and
remove the per-dropdown inactivity timers. Shift+Super+S brackets hyprshot
with a screenshot pin so open menus survive slurp's input grab.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 14:19:10 +01:00
215239e7aa quickshell: extract HoverRow component, dedupe 6 hover targets
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 13:59:26 +01:00
6846f38b9a quickshell: wrap tray context menu in shared Card segment
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 13:52:15 +01:00
700d3f7de1 quickshell: clickable mute icon on all volume sliders via VolIcon
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 13:22:28 +01:00
2697614e1b quickshell: fade hover highlights via transparent base02, no black flash
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 12:52:52 +01:00
2f51d2b4f1 quickshell: split media cards per MPRIS source, add per-stream volume
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 11:43:45 +01:00
6977568bf2 quickshell: drop fill-on-select for session menu icons
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 11:38:11 +01:00
98699b5346 quickshell: fix hover/colour bugs, translucent card surfaces
- calendar month chevrons: fade from transparent base02, no black flash
- power menu: all four buttons use the logout base05 setup
- runner results: base01 card segment matching other dropdowns
- cards: translucent cardBg so the bar-layer blur shows through

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 11:30:17 +01:00
792ecb80bb quickshell: drop unused Theme tokens (base06, base07, toastBg)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 15:55:34 +01:00
ad70441589 quickshell: toast notification sits in a base02 card to match the calendar
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 19:36:11 +01:00
faa345d016 quickshell: match calendar notification styling to the toast (shared defaults)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 19:25:06 +01:00
3047ea547c quickshell: profile selector — selected bright, unselected grey
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 17:45:16 +01:00
f1b8d5d57d quickshell: refactor — Theme tokens, reusable components, dedup
Reduces the shell from 2898 → 2712 lines (~316 lines of duplication removed,
~130 of reusable scaffolding added). Rollback point: tag quickshell-pre-refactor.

- Theme tokens: barHeight, radius/radiusSmall/radiusTiny, cardPad, animMorph/
  animContent/animFade — bar height and the shader cutout math now derive from
  one constant instead of ~10 scattered 30/26 literals
- SText/SIcon base components default the two fonts (removed 58 font.family lines)
- Card component: the rounded base01 section surface, now one definition driving
  7 cards (volume ×2, network ×2, battery ×2, calendar)
- PillSlider component: master + per-app volume sliders share one slider
- NotifContent component: calendar list + toast notification bodies deduped
- dead code: dropped unused QtQuick.Shapes import, collapsed redundant
  weatherGlyph branches, converted the lone RowLayout to drop QtQuick.Layouts

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 13:05:01 +01:00
715ccdd4ae quickshell: session and launcher panels expand from a point like the dropdowns
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 20:10:20 +01:00
be330a0c6d quickshell: OnDemand keyboard with focus grab — Exclusive made the grab self-clear and close panels
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 19:49:25 +01:00
641d5c7e63 quickshell: launcher rises from the bottom frame; sliding pills in session menu and launcher list
- launcher moved into the bar window as a 5th SDF surface: melts out of
  the bottom frame edge, height morphs live as results filter
- session menu selection is a gliding pill (battery-menu tech)
- launcher selection uses an animated ListView highlight
- HyprlandFocusGrab gives both panels click-outside dismissal
- standalone Launcher.qml window removed

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 19:45:03 +01:00
d2bcdad2fe quickshell: session menu was painted UNDER the chrome shader — move above it, calendar palette
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 19:31:56 +01:00
a4a34e7248 quickshell: session menu follows the shell's selection grammar (pill border, accent icon)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 19:26:32 +01:00
1b22c771f4 quickshell: align battery row to baseline; session icons computed-bright, filled when selected
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 19:21:53 +01:00
cae1a69026 quickshell: brighter, bolder session icons (base07, weight 600); expose base06/07
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 14:28:50 +01:00
516b8b6d5b quickshell: session menu card backing, keyboard nav with default selection
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 14:23:33 +01:00
a14ccd8c09 quickshell: material symbols icons, network cards, session menu morphs from right edge
- Material Symbols Rounded (ligature names) replaces nerd-font glyphs for
  all shell icons; text stays on the stylix mono font
- network dropdown gets the card treatment like the others
- power menu is now an icon-only session panel melting out of the right
  frame column at screen centre (still Super+L); launcher is apps-only

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 14:06:20 +01:00
4540e38321 quickshell: slim pill sliders; card-style volume and battery dropdowns
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 10:41:13 +01:00
9a38cacc05 quickshell: sliding selection pill for power profile buttons
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 10:23:35 +01:00
bfcc54d0db quickshell: flush dropdowns spawn from their own button again — the SDF melt handles arrival
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 10:07:56 +01:00
a514893f3e quickshell: SDF shader chrome — true smooth-min liquid junctions with distance-band borders
Bar, frame, panel and toast are one signed-distance field (compiled to
qsb at build time); ears, border gaps and the parametric melt are all
emergent from the math. PanelShape and all melt machinery deleted.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 09:58:35 +01:00
724cdded4c quickshell: flush dropdowns live anchored to the column — grow down-left, shrink back into it
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 09:44:19 +01:00
ad2cbd0eaa quickshell: open the column border over merged panels, fade panel edge stroke with melt
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 09:35:46 +01:00
2d43e6ed24 quickshell: trigger column melt from target state, not float contact detection
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 09:28:16 +01:00
1a71f2c07b quickshell: geometric melt into the frame column — one shape, cubic-morphed right side
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 09:21:02 +01:00
dcf31fbe63 quickshell: crossfade dock/undock silhouette swap, ease column border jump
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 09:07:22 +01:00
8413ac293e quickshell: column merge is geometric — detaching panels release the frame border
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 08:58:49 +01:00