diff --git a/i3/config b/i3/config index 0909b3e..9b5d814 100644 --- a/i3/config +++ b/i3/config @@ -13,7 +13,7 @@ tiling_drag modifier #exec base bindsym $mod+Return exec kitty bindsym $mod+Shift+q kill -bindsym $mod+d exec rofi -show drun -theme ~/.config/rofi/ayu-retro.rasi -p "╔═[ SELECT PROGRAM ]═╗" +bindsym $mod+d exec --no-startup-id ~/.config/rofi/rofi_slide.sh # change focus bindsym $mod+j focus left diff --git a/rofi/ayu-retro.rasi b/rofi/ayu-retro.rasi index 1ec4ff0..f809240 100644 --- a/rofi/ayu-retro.rasi +++ b/rofi/ayu-retro.rasi @@ -7,37 +7,41 @@ selected-foreground: #0f111a; border: 2px; border-color: #5ccfe6; + padding: 15; spacing: 5; - padding: 10; } window { location: north; anchor: north; y-offset: 0; - width: 50%; + width: 40%; border: 2px; + padding: 10; background-color: @background; } mainbox { - background-color: @background; - padding: 5; + background-color: inherit; border: 0; + padding: 0; } listview { - lines: 8; columns: 1; - background-color: transparent; - padding: 5 0 0 0; - spacing: 4; + lines: 8; border: 0; + padding: 0; + spacing: 4; } element { - padding: 6 8; - background-color: transparent; + padding: 2 4; + border: 0; +} + +element-text { + text-color: @foreground; } element selected { @@ -45,19 +49,15 @@ element selected { text-color: @selected-foreground; } -element-text { - text-color: @foreground; -} - inputbar { - children: [prompt, entry]; + children: [ prompt, entry ]; + padding: 4; background-color: @background-alt; - padding: 6; } prompt { + padding: 0 6 0 0; text-color: #5ccfe6; - padding: 0 8 0 0; } entry { diff --git a/rofi/rofi_slide.sh b/rofi/rofi_slide.sh new file mode 100644 index 0000000..461b0e0 --- /dev/null +++ b/rofi/rofi_slide.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +# Launch ROFI and get its window ID +rofi -show drun -theme ~/.config/rofi/themes/ayu-retro.rasi & +sleep 0.1 # Wait for the window to appear +ROFI_WID=$(xdotool search --onlyvisible --class rofi | head -n 1) + +# Get screen width and calculate center position +SCREEN_WIDTH=$(xdpyinfo | awk '/dimensions/{print $2}' | cut -d'x' -f1) +WINDOW_WIDTH=$(xdotool getwindowgeometry $ROFI_WID | awk '/Geometry/{print $2}' | cut -d'x' -f1) +X_POS=$(( (SCREEN_WIDTH - WINDOW_WIDTH) / 2 )) + +# Animate slide-down +for Y in $(seq -10 5 100); do + xdotool windowmove $ROFI_WID $X_POS $Y + sleep 0.01 +done