/* ---- Configuration ---- */

configuration {
	modi:                       "drun,run,filebrowser";
    show-icons:                 true;
    display-drun:               "  apps";
    display-run:                "  term";
    display-filebrowser:        "  files";
    display-window:             "  window";
	drun-display-format:        "{name}";
	hover-select:               true;
	me-select-entry:            "MouseSecondary";
    me-accept-entry:            "MousePrimary";
	window-format:              "{w} · {c} · {t}";
}

/* ---- Load wallust colors ---- */
@theme "~/.config/rofi/wallust/colors-rofi.rasi"

/* ---- Global Properties ---- */
* {

    background-alt:              @color1;
    selected:                    @color12;
    active:                      @color11;
    urgent:                      red;

    text-selected:               @background;
    text-color:                  @foreground;
    border-color:                @selected;
}

/*****-- Elements Font Size -----*****/
element-text {
  font: "JetBrainsMono Nerd Font SemiBold 13";
}

/* ---- Window ---- */
window {
    // Default
    enabled:                    true;
    fullscreen:                 false;
    transparency:               "real";
    cursor:                     "default";
    spacing:                    0px;
    border:                     2px;
    border-radius:              30px;
    location:                   center;
    anchor:                     center;

    // Style Values
    width:                      50%;
    background-color:           #00000099;
}

/* ----- Main Box ----- */
mainbox {
    enabled:                     true;
    orientation:                 vertical;
    children:                    [ "inputbar", "listbox" ];
    background-color:            transparent;
}


/* ---- Inputbar ---- */
inputbar {
    enabled:                     true;
    padding:                     10px 10px 150px 10px;
    margin:                      10px;
    background-color:            transparent;
    border-radius:               25px;
    orientation:                 horizontal;
    children:                    ["entry", "dummy", "mode-switcher" ];
    background-image:            url("~/.config/rofi/.current_wallpaper", width);
}

/* ---- Entry input ---- */
entry {
    enabled:                     true;
    expand:                      false;
    width:                       300px;
    padding:                     10px;
    border-radius:               12px;
    background-color:            @background;
    text-color:                  inherit;
    cursor:                      text;
    placeholder:                 "  Search "; // << Search symbol
    placeholder-color:           inherit;
}

/* ---- Listbox ---- */
listbox {
    spacing:                     10px;
    padding:                     10px;
    background-color:            transparent;
    orientation:                 vertical;
    children:                    [ "message", "listview" ];
}

/* ---- Listview ---- */
listview {
    enabled:                     true;
    columns:                     2;
    lines:                       6;
    cycle:                       true;
    dynamic:                     true;
    scrollbar:                   false;
    layout:                      vertical;
    reverse:                     false;
    fixed-height:                true;
    fixed-columns:               true;    
    spacing:                     10px;
    padding:					 10px;
    background-color:            transparent;

//  Adapt rofi theme
    border:                      0px;
}

/* ---- Scrollbar ---- */
scrollbar {
  	border:						0px;
  	border-radius:				10px;
  	background-color:				transparent;
  	handle-color: 				@active;
  	handle-width: 				2px ;
  	padding:      				0;
}
/* ---- Dummy ---- */
dummy {
    expand:                      true;
    background-color:            transparent;
}

/* ---- Mode Switcher ---- */
mode-switcher{
    enabled:                     true;
    spacing:                     10px;
    background-color:            transparent;
}
button {
    width:                       5%;
    padding:                     12px;
    border-radius:               12px;
    background-color:            @background;
    text-color:                  inherit;
    cursor:                      pointer;
}
button selected {
    background-color:            @active;
    text-color:                  @text-selected;
}


/* ---- Elements ---- */
element {
    enabled:                     true;
    spacing:                     10px;
    padding:                     15px;
    border-radius:               10px;
    background-color:            transparent;
    cursor:                      pointer;
}

element normal.normal {
    background-color:            inherit;
    text-color:                  inherit;
}
element normal.urgent {
    background-color:            @urgent;
    text-color:                  @foreground;
}

element-text selected,
element normal.active {
    background-color:            @active;
    text-color:                  @foreground;
}

element selected.normal {
    background-color:            @color11;
    text-color:                  @text-selected;
}
element selected.urgent {
    background-color:            @urgent;
    text-color:                  @text-selected;
}
element selected.active {
    background-color:            @urgent;
    text-color:                  @text-selected;
}
// Adapt rofi theme
element alternate.normal {
    background-color:            transparent;
    text-color:                  inherit;
}
element alternate.urgent {
    background-color:            transparent;
    text-color:                  inherit;
}
element alternate.active {
    background-color:            transparent;
    text-color:                  inherit;
}
element-icon {
    background-color:            transparent;
    text-color:                  inherit;
    size:                        36px;
    cursor:                      inherit;
}
element-text {
    background-color:            transparent;
    text-color:                  inherit;
    cursor:                      inherit;
    vertical-align:              0.5;
    horizontal-align:            0.0;

}

/* ---- Message ---- */
message {
    background-color:            @background;
    border:                      0px;
}
textbox {
	margin:						 10px;
    padding:                     12px;
    border-radius:               10px;
    background-color:            @active;
    text-color:                  @foreground;
    vertical-align:              0.5;
    horizontal-align:            0.5;
}
error-message {
    padding:                     12px;
    border-radius:               20px;
    background-color:            @background;
    text-color:                  @foreground;
}
