aboutsummaryrefslogtreecommitdiffstats
path: root/appearance/Icons.qml
AgeCommit message (Collapse)AuthorFilesLines
10 hoursfeat(appearance): polish the Icons tab previews and applyDanilo M.1-40/+130
Cursor previews were extracted only on hover, so the row stayed blank until each card was visited. They are now batched on open: one python pass extracts four shapes per theme (arrow, hand, text, horizontal resize) through the theme's aliases and every storage form it may use (hyprcursor .hlc, a shape directory SVG, or a legacy Xcursor binary via xcur2png). The card rows are Flows so they wrap instead of running off the right edge, and the tab scrolls. Cards widened and names wrap to two lines. A size selector (16-64) applies the pointer size live, to gsettings, the GTK settings.ini files and environment.lua. gsettings alone does not reliably switch icon/cursor here: both gtk-3.0 and gtk-4.0 settings.ini carry the names, so apply now rewrites gtk-icon-theme-name / gtk-cursor-theme-name / gtk-cursor-theme-size there too. The symlinked `default` cursor alias is skipped in the scan and the current value resolved through it, so the real theme carries the current marker. The tab row is centred against the panel so it reads as drawer chrome rather than the first line of a tab's content.
11 hoursfix(appearance): final review fixes for the Sunset, Idle and Icons tabsDanilo M.1-5/+7
xcur2png wrote its config file into the qs CWD, which is the repo root, so hovering a legacy Xcursor theme left a stray left_ptr.conf in the tree. Point -c at the per-theme cache dir instead. Hyprsunset.save() could run before refresh()'s two cat processes landed and write a header-only hyprsunset.conf, blanking the location. Guard on the same confLoaded/appLoaded flags Hypridle already uses. The idle save had no acknowledgement, which the spec requires. Add a notice after the restart and show it in the tab, and switch Hypridle's save guard to a loaded flag so a config whose first block is a listener is not mistaken for an unloaded one. classify() used else if, so a directory carrying both index.theme and cursors/ (Adwaita) was listed as a cursor theme only and never reached the icon picker. Make the two tests independent; selftest gains the dual-purpose case.
12 hoursfeat(appearance): add the icon and cursor theme modelDanilo M.1-0/+234
Lists themes from ~/.icons, ~/.local/share/icons and /usr/share/icons, distinguishing cursor themes by cursors/ or manifest.hl. Icon previews come from one GTK lookup process for every theme; cursor previews extract left_ptr from a hyprcursor .hlc via unzip or from an Xcursor theme via xcur2png. Application sets gsettings and the Qt configs, and rewrites the cursor env in environment.lua.