// Configuration
configuration {
    modi:                       "drun,window";
    show-icons:                 false;
    display-drun:               " ";
    display-window:             " ";
    drun-display-format:        "{name}";
    window-format:              "{w} · {c} · {t}";

    // binds
    kb-row-up:                  "Up,Control+k,Shift+Tab,Shift+ISO_Left_Tab";
    kb-row-down:                "Down,Control+j";
    kb-accept-entry:            "Control+m,Return,KP_Enter";
    terminal:                   "mate-terminal";
    kb-remove-to-eol:           "Control+Shift+e";
    kb-mode-complete:           "Control+Shift+t";
    kb-mode-next:               "Shift+Right,Control+Tab,Control+l";
    kb-mode-previous:           "Shift+Left,Control+Shift+Tab,Control+h";
    kb-remove-char-back:        "BackSpace";
}

// Global Properties
@import                          "./themes/colors.rasi"
@import                          "./themes/fonts.rasi"

* {
    border-color:                var(border);
    handle-color:                var(selected);
    background-color:            var(background);
    foreground-color:            var(foreground);
    alternate-background:        var(background-alt);
    normal-background:           var(background);
    normal-foreground:           var(foreground);
    urgent-background:           var(urgent);
    urgent-foreground:           var(background);
    active-background:           var(active);
    active-foreground:           var(sel-foreground);
    selected-normal-background:  var(selected);
    selected-normal-foreground:  var(sel-foreground);
    selected-urgent-background:  var(active);
    selected-urgent-foreground:  var(background);
    selected-active-background:  var(urgent);
    selected-active-foreground:  var(sel-foreground);
    alternate-normal-background: var(background);
    alternate-normal-foreground: var(foreground);
    alternate-urgent-background: var(urgent);
    alternate-urgent-foreground: var(background);
    alternate-active-background: var(active);
    alternate-active-foreground: var(background);
}

// Main Window
window {
    // properties for window widget
    transparency:                "real";
    location:                    center;
    anchor:                      center;
    fullscreen:                  false;
    width:                       400px;
    x-offset:                    0px;
    y-offset:                    0px;

    // properties for all widgets
    enabled:                     true;
    margin:                      0px;
    padding:                     0px;
    border:                      2px solid;
    border-radius:               10px;
    border-color:                @border-color;
    cursor:                      "default";
    // Backgroud Colors
    background-color:            @background-color;
}

// Main Box
mainbox {
    enabled:                     true;
    spacing:                     10px;
    margin:                      0px;
    padding:                     30px;
    border:                      0px solid;
    border-radius:               15px;
    border-color:                @border-color;
    background-color:            transparent;
    transparency:                "real";
    children:                    [ "inputbar", "message", "listview" ];
}

// Inputbar
inputbar {
    enabled:                     true;
    spacing:                     10px;
    margin:                      0px;
    padding:                     0px;
    border:                      0px solid;
    border-radius:               0px;
    border-color:                @border-color;
    background-color:            transparent;
    text-color:                  @foreground-color;
    children:                    [ "textbox-prompt-colon", "entry", "mode-switcher" ];
}

prompt {
    enabled:                     true;
    background-color:            inherit;
    text-color:                  inherit;
}
textbox-prompt-colon {
    enabled:                     true;
    padding:                     5px 0px;
    expand:                      false;
    str:                         " ";
    background-color:            inherit;
    text-color:                  inherit;
}
entry {
    enabled:                     true;
    padding:                     5px 0px;
    background-color:            inherit;
    text-color:                  inherit;
    cursor:                      text;
    placeholder:                 "Search...";
    placeholder-color:           inherit;
}
num-filtered-rows {
    enabled:                     true;
    expand:                      false;
    background-color:            inherit;
    text-color:                  inherit;
}
textbox-num-sep {
    enabled:                     true;
    expand:                      false;
    str:                         "/";
    background-color:            inherit;
    text-color:                  inherit;
}
num-rows {
    enabled:                     true;
    expand:                      false;
    background-color:            inherit;
    text-color:                  inherit;
}
case-indicator {
    enabled:                     true;
    background-color:            inherit;
    text-color:                  inherit;
}

// Listview
listview {
    enabled:                     true;
    columns:                     1;
    lines:                       8;
    cycle:                       true;
    dynamic:                     true;
    scrollbar:                   true;
    layout:                      vertical;
    reverse:                     false;
    fixed-height:                true;
    fixed-columns:               true;

    spacing:                     5px;
    margin:                      0px;
    padding:                     0px;
    border:                      0px solid;
    border-radius:               0px;
    border-color:                @border-color;
    background-color:            transparent;
    text-color:                  @foreground-color;
    cursor:                      "default";
}
scrollbar {
    handle-width:                6px;
    handle-color:                @handle-color;
    border-radius:               10px;
    background-color:            @alternate-background;
}

// Elements
element {
    enabled:                     true;
    spacing:                     10px;
    margin:                      0px;
    padding:                     5px 10px;
    border:                      0px solid;
    border-radius:               10px;
    border-color:                @border-color;
    background-color:            transparent;
    text-color:                  @foreground-color;
    cursor:                      pointer;
}
element normal.normal {
    background-color:            transparent;
    text-color:                  var(normal-foreground);
}
element normal.urgent {
    background-color:            var(urgent-background);
    text-color:                  var(urgent-foreground);
}
element normal.active {
    background-color:            var(active-background);
    text-color:                  var(active-foreground);
}
element selected.normal {
    background-color:            var(selected-normal-background);
    text-color:                  var(selected-normal-foreground);
}
element selected.urgent {
    background-color:            var(selected-urgent-background);
    text-color:                  var(selected-urgent-foreground);
}
element selected.active {
    background-color:            var(selected-active-background);
    text-color:                  var(selected-active-foreground);
}
element alternate.normal {
    background-color:            transparent;
    text-color:                  var(alternate-normal-foreground);
}
element alternate.urgent {
    background-color:            var(alternate-urgent-background);
    text-color:                  var(alternate-urgent-foreground);
}
element alternate.active {
    background-color:            var(alternate-active-background);
    text-color:                  var(alternate-active-foreground);
}
element-icon {
    background-color:            transparent;
    text-color:                  inherit;
    size:                        24px;
    cursor:                      inherit;
}
element-text {
    background-color:            transparent;
    text-color:                  inherit;
    highlight:                   inherit;
    cursor:                      inherit;
    vertical-align:              0.5;
    horizontal-align:            0.0;
}

// Mode Switcher
mode-switcher{
    enabled:                     true;
    spacing:                     10px;
    margin:                      0px;
    padding:                     0px;
    border:                      0px solid;
    border-radius:               0px;
    border-color:                @border-color;
    background-color:            transparent;
    text-color:                  @foreground-color;
}
button {
    padding:                     5px 10px;
    border:                      0px solid;
    border-radius:               10px;
    border-color:                @border-color;
    background-color:            @alternate-background;
    text-color:                  inherit;
    cursor:                      pointer;
}
button selected {
    background-color:            var(selected-normal-background);
    text-color:                  var(selected-normal-foreground);
}

// Message
message {
    enabled:                     true;
    margin:                      0px;
    padding:                     0px;
    border:                      0px solid;
    border-radius:               0px 0px 0px 0px;
    border-color:                @border-color;
    background-color:            transparent;
    text-color:                  @foreground-color;
}
textbox {
    padding:                     8px 10px;
    border:                      0px solid;
    border-radius:               10px;
    border-color:                @border-color;
    background-color:            @alternate-background;
    text-color:                  @foreground-color;
    vertical-align:              0.5;
    horizontal-align:            0.0;
    highlight:                   none;
    placeholder-color:           @foreground-color;
    blink:                       true;
    markup:                      true;
}
error-message {
    padding:                     10px;
    border:                      2px solid;
    border-radius:               10px;
    border-color:                @border-color;
    background-color:            @background-color;
    text-color:                  @foreground-color;
}
