aboutsummaryrefslogtreecommitdiffstats
path: root/rofi/udt
AgeCommit message (Collapse)AuthorFilesLines
5 daysfeat(rofi): wallpaper banner and placeholder on the ssh headerDanilo M.1-7/+45
The header and search bar share the wallpaper banner the Alt+F2 runner uses, each on a plate so it stays legible over any image, and the entry gets a placeholder. ssh.rasi now carries the @WPAPER@ placeholder, so install.sh generates it like launcher.rasi instead of linking it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
5 daysfeat(rofi): screenshot menu header, as in the ssh menuDanilo M.1-1/+8
The prompt is lifted onto the card as a left-aligned "Screenshot:" header with a camera glyph. confirm.rasi sets its own card children, so the power menu's confirm step keeps its centred question and no header. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
5 daysfeat(rofi): ssh menu as a grid of host cardsDanilo M.1-0/+52
rofi's ssh mode shows the alias only. blackpearl-sshmenu.sh now reads ~/.ssh/config itself and feeds dmenu two-line cards: the alias, then "user · address" with the user only where the config sets one. ssh.rasi lays them out 4x3 under an "SSH:" header lifted out of the inputbar. The script moves into bin/ under the name hypr-theme's keybinding calls, and install.sh links it and the theme like the other menus. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
5 daysfix(rofi): power menu wraps on Left and RightDanilo M.1-1/+3
The listview cycles along its flow. With the default vertical flow, Left and Right move between columns and stop at the ends. Horizontal flow, as the confirm and screenshot menus already use, makes them step through the row and wrap. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
6 daysfix(rofi): compact confirm and screenshot cards, centre glyphsDanilo M.3-22/+51
The confirm and screenshot menus split the monitor into two half-screen buttons with a glyph sized from the monitor height. They are now a fixed 368px card centred on the scrim, two 150px buttons at 72pt, so the scripts no longer compute a glyph size. Glyphs in all three menus sat right of centre: common.rasi's element spacing still reserved a gap for the hidden icon. Elements now hold element-text only. The power menu's greeting ignored horizontal-align, so spacers either side centre it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27feat(rofi): fullscreen layout for the power menu's confirmationDanilo M.1-42/+10
The yes/no gate was a 500px box, small next to the fullscreen power menu in front of it. confirm.rasi now imports the screenshot menu's layout, two half-monitor buttons on the scrim, and adds the question above them. The glyph size arrives from the calling script with -theme-str, derived from the focused monitor, as it does there. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27feat(rofi): fullscreen two-button layout for the screenshot menuDanilo M.1-0/+54
The screenshot menu (Mod+Shift+S) borrowed menu.rasi, a small list box, so its two options were small glyphs in a narrow column. screenshot.rasi gives each option half the monitor on the scrim, centred vertically by spacers because rofi sizes a row by its text. rofi cannot size a font by percentage, so the calling script passes the glyph size with -theme-str, derived from the focused monitor and aware of rotated outputs; the size in the theme is only a fallback. install.sh links the new file with the other layouts. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27feat(palette): add a translucent scrim role for fullscreen overlaysDanilo M.1-3/+3
The power menu's ground was a hardcoded rgba(36, 39, 58, 0.88), Macchiato's base, so every other scheme drew its overlay with a Macchiato tint. Each roles file now defines scrim as its own background at 88% alpha, udt-palette emits it into palette.rasi, and powermenu.rasi uses @scrim. scrim is the first translucent palette entry, so udt-accent's QML palette no longer drops the alpha pair: an opaque colour still goes out as #rrggbb, a translucent one as QML's #aarrggbb. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-16refactor(cache): move the generated files to ~/.cache/udtDanilo M.1-1/+1
They lived in ~/.cache/wal because pywal owned that directory and udt-accent was written alongside a pywal run. Nothing on this desktop invokes pywal any more: the wal binary is unused, and udt-accent imports pywal.backends.colorz as a quantisation library, which writes nothing. Sharing the cache only left the ownership ambiguous. colors.json is the one file that cannot move. pywalfox hardcodes <cache>/wal/colors.json and honours only XDG_CACHE_HOME, which would relocate every cache on the system, so udt-accent writes the real file to ~/.cache/udt and install.sh symlinks the old path at it. ~/.cache/wal now holds that link and nothing else. Consumers repointed here: install.sh, udt-accent, launcher.rasi's @WPAPER@. Outside the repo, wallp, Hyprland's look_and_feel.lua and quickshell's shared/Theme.qml move with it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-11feat(palette): generate every themed config from one schemeDanilo M.1-41/+0
Colours were written down five times: rofi's palette.rasi, the waybar theme, the kitty theme, the conky and dunst templates, and a MACCHIATO dict inside udt-accent. Changing scheme meant finding all five, and they had already drifted: the active waybar theme was Macchiato while theme.css next to it was Mocha, and nothing imported the latter. Now a scheme is two files. palette/<scheme>.conf holds the colours under the scheme's own names, and palette/roles-<scheme>.conf says what each is for. palette/roles.conf is one `scheme =` line selecting the pair. bin/udt-palette renders that into each consumer's syntax and install.sh runs it first. The role map is per-scheme rather than shared because the palettes are genuinely different shapes: Nord has no `base`, Dracula no `surface0`, and forcing Catppuccin's names onto them would have meant either renaming their colours or inventing values. A role names a palette colour with two optional modifiers, `name/75` for alpha and `name*50` for brightness. The second exists because GTK's shade() has no palette name to point at. Ships macchiato, tokyo-night, nord and dracula. --selftest resolves every role in every scheme and asserts they define the same set, so a scheme that cannot satisfy a consumer fails at install rather than when someone switches to it. Verified against the live configs: all 46 waybar colours resolve identically to the previously active theme including its alpha() and shade() derivations, the kitty theme is colour-for-colour identical, and the rofi palette has the same 26 values. Generated files are gitignored; switching scheme and switching back reproduces the originals. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015gbjA2bmswN8jyPDKzrvqe
2026-09-11feat: make the power menu overlay slightly translucentDanilo M.1-1/+10
The fullscreen ground drops to 88% opacity so the desktop stays faintly visible behind it, which keeps the menu reading as a layer over the session rather than a screen that replaced it. Written as an explicit rgba of the same colour rather than @base, since the palette entries carry a hard ff alpha. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11feat: bring the power menu confirmation dialog into the themeDanilo M.1-0/+61
The yes/no gate in front of shutdown was still on the old adi1090x theme, so every shutdown showed a Macchiato power menu followed by a dialog that did not match it. Its glyphs now come from the theme's own Nerd Font rather than `feather`. That meant changing the codepoints the script sends, since the originals were Private Use Area points that only feather carries: they are now the Material circled check and close (U+F05E0, U+F0159), which Inconsolata Nerd Font Mono contains. Sized 42 to match the power menu, since the Material glyphs carry a lot of internal padding and render small. Worth knowing for future glyph choices: ClearlyU is installed and claims large parts of the Private Use Area, so it can win fontconfig's fallback and draw a blank where another font actually has the glyph. The U+F0xxx Nerd Font ranges avoid that. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11fix: widen the emoji grid so entry names fitDanilo M.1-11/+13
Each row is a glyph followed by its name, and five columns in a 680px window left cells too narrow for the name to survive. Three columns in a 1500px window gives about 485px a cell. Names are also left-aligned now rather than centred, since a row is a label rather than a lone symbol, and the glyph font drops from 20 to 16 so the name carries the row. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11fix: make the power menu avatar a centred circleDanilo M.1-11/+21
The widget only honours its margin. An explicit width with expand:false collapses it to a line, and a percentage margin resolves against the whole window rather than the padded column, which tiled the image across a 2560px screen. So the width comes from a pixel margin derived from the content column, and it has to equal the height the row gives the widget (220px) for the 100% radius to draw a circle instead of an ellipse. Also bounds the content column, which was previously full screen width: four options spread across ~640px cells read as scattered glyphs and the selection highlight became a slab. Measured from screenshots rather than guessed: the avatar renders 220x220, ratio 1.000, centred within a pixel. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11fix: draw the power menu avatar againDanilo M.1-5/+12
Sizing the widget with an explicit width and height collapsed it, so nothing was drawn. The original type-4 theme sized it with a horizontal margin instead, letting the widget expand to the window and squeezing it back to a square, so do that. The margin is computed with calc() from 50% rather than the original's hardcoded 710px, which assumed one screen width and would sit off-center on a second monitor. The tilde path was never the problem: rofi does expand it inside a url(). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11fix: restore message widget, fullscreen power menu, and emoji gridDanilo M.3-1/+143
Three regressions from collapsing five theme systems into three layouts. The layouts hardcoded `children`, which silently dropped any -mesg a script passed. rofipass lost its keybinding cheatsheet and the power menu lost its uptime line. list.rasi now lists the message widget; rofi hides it when there is no message, so it costs nothing when unused. The power menu was never a small menu. It is a deliberate fullscreen prompt with a greeting, an avatar and one row of four large glyphs, and menu.rasi flattened all of it. It gets its own layout, the one place where a prompt earns its keep. The glyphs are drawn in Inconsolata Nerd Font Mono, which was verified to contain all four; the old theme asked for `feather`, which contains none of them and was relying on fallback. The emoji picker is a dense grid of glyphs, not a list, and wasted most of a single-column window. It gets grid.rasi, sized near the launcher's icons. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11feat: drop the prompt label from the input barDanilo M.1-6/+4
The mode label ("Apps", "power") is noise on a desktop utility: it is always obvious which one was just opened. Removed in common.rasi so every layout inherits it, and the placeholder text is cleared for the same reason. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11feat: anchor the launcher top-center and add a wallpaper bannerDanilo M.1-13/+34
Matches the launcher position already in use (north-anchored, 600px, single column) rather than the centered grid, and restores the wallpaper banner behind the input area from the old darknix theme. The wallpaper path cannot be committed: rofi does not expand a tilde inside a url(), and an absolute path would bake in a home directory. So launcher.rasi carries a placeholder and the installer generates the real file. The entry sits on a solid plate so it stays legible over a bright wallpaper. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11feat: add udt launcher layoutDanilo M.1-0/+32
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11feat: add udt menu layoutDanilo M.1-0/+28
No search bar: with a handful of fixed options, typing to filter is pointless and the bar only adds bulk. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11feat: add udt list layoutDanilo M.1-0/+24
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11feat: add shared rofi styling common to all udt layoutsDanilo M.2-0/+117
Holds the identity every layout inherits: Noto Sans for UI text, Inconsolata Nerd Font Mono for monospace (both matching the existing Qt and GTK settings), one border radius, and one selected-element treatment of accent background with base-colored text. accent.rasi is committed as a mauve placeholder so the imports resolve before any wallpaper has been processed. On install it is replaced by a symlink to the generated file. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq
2026-09-11feat: add Catppuccin Macchiato palette for rofiDanilo M.1-0/+41
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6aeE37K4GHBsaM51yLTTq