1
0
Fork 0
mirror of https://github.com/davatorium/rofi.git synced 2025-04-07 17:33:14 -04:00

Merge pull request #667 from DaveDavenport/bendemcss

Bendemcss
This commit is contained in:
Dave Davenport 2017-09-11 09:39:15 +02:00 committed by GitHub
commit e9c31ed783
55 changed files with 3099 additions and 2164 deletions

View file

@ -59,7 +59,8 @@ before_install:
# TODO: We install xkbcommon here, until Travis use an up-to-date enough Ubuntu
install:
- sudo apt-get install -y --force-yes libxkbcommon-dev libxkbcommon-x11-dev flex/trusty-backports libfl-dev/trusty-backports
- pip3 install meson==0.41.2
- sudo apt-get install -y --force-yes python3-pip
- pip3 install --user meson==0.41.2
- wget https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-linux.zip
- unzip ninja-linux.zip
- export PATH=$(pwd):$PATH

View file

@ -1,124 +1,127 @@
* {
foreground: rgba ( 0, 43, 54, 100 % );
selected-normal-foreground: @lightbg;
foreground: rgba ( 0, 43, 54, 100 % );
normal-foreground: @foreground;
red: rgba ( 220, 50, 47, 100 % );
alternate-normal-background: @lightbg;
blue: rgba ( 38, 139, 210, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: @background;
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: @red;
alternate-urgent-background: @lightbg;
active-foreground: @blue;
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: @background;
alternate-normal-foreground: @foreground;
alternate-active-background: @lightbg;
bordercolor: @foreground;
background: rgba ( 253, 246, 227, 100 % );
alternate-normal-foreground: @foreground;
normal-background: @background;
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: @lightfg;
separatorcolor: @foreground;
border-color: @foreground;
spacing: 2;
separatorcolor: @foreground;
urgent-background: @background;
alternate-urgent-foreground: @red;
selected-urgent-background: @red;
alternate-urgent-foreground: @red;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @blue;
selected-active-background: @blue;
active-background: @background;
selected-active-background: @blue;
}
#window {
border: 1;
foreground: @foreground;
background: rgba ( 0, 0, 0, 0 % );
padding: 5;
background-color: @background;
border: 1;
padding: 5;
}
#window.box {
foreground: @bordercolor;
background: @background;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 1px dash 0px 0px ;
foreground: @separatorcolor;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: @foreground;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.box {
foreground: @separatorcolor;
spacing: 2px ;
scrollbar: true;
}
#window.mainbox.listview.element {
#element {
border: 0;
padding: 1px ;
}
#window.mainbox.listview.element.normal.normal {
foreground: @normal-foreground;
background: @normal-background;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.listview.element.normal.urgent {
foreground: @urgent-foreground;
background: @urgent-background;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.listview.element.normal.active {
foreground: @active-foreground;
background: @active-background;
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.listview.element.selected.normal {
foreground: @selected-normal-foreground;
background: @selected-normal-background;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#window.mainbox.listview.element.selected.urgent {
foreground: @selected-urgent-foreground;
background: @selected-urgent-background;
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#window.mainbox.listview.element.selected.active {
foreground: @selected-active-foreground;
background: @selected-active-background;
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#window.mainbox.listview.element.alternate.normal {
foreground: @alternate-normal-foreground;
background: @alternate-normal-background;
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: @alternate-urgent-foreground;
background: @alternate-urgent-background;
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#window.mainbox.listview.element.alternate.active {
foreground: @alternate-active-foreground;
background: @alternate-active-background;
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#window.mainbox.listview.scrollbar {
#scrollbar {
width: 4px ;
border: 0;
handle-color: @normal-foreground;
handle-width: 8px ;
padding: 0;
}
#window.mainbox.sidebar.box {
border: 2px dash 0px 0px ;
foreground: @separatorcolor;
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#window.mainbox.sidebar.button.selected {
foreground: @selected-normal-foreground;
background: @selected-normal-background;
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#window.mainbox.inputbar {
text: @normal-foreground;
spacing: 0;
padding: 1px ;
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#window.mainbox.inputbar.box {
border: 0px ;
padding: 0px ;
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,125 +1,128 @@
* {
foreground: rgba ( 219, 223, 188, 100 % );
selected-normal-foreground: rgba ( 2, 20, 63, 100 % );
foreground: rgba ( 219, 223, 188, 100 % );
normal-foreground: @foreground;
red: rgba ( 220, 50, 47, 100 % );
alternate-normal-background: rgba ( 0, 0, 0, 0 % );
blue: rgba ( 38, 139, 210, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 2, 20, 63, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 255, 129, 255, 100 % );
alternate-urgent-background: rgba ( 0, 0, 0, 0 % );
active-foreground: rgba ( 138, 196, 255, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 2, 20, 63, 100 % );
alternate-normal-foreground: @foreground;
alternate-active-background: rgba ( 0, 0, 0, 0 % );
bordercolor: rgba ( 219, 223, 188, 100 % );
background: rgba ( 0, 0, 33, 87 % );
bordercolor: rgba ( 219, 223, 188, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 0, 0, 0, 0 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 219, 223, 188, 100 % );
separatorcolor: rgba ( 219, 223, 188, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 219, 223, 188, 100 % );
urgent-background: rgba ( 0, 0, 0, 0 % );
alternate-urgent-foreground: @urgent-foreground;
selected-urgent-background: rgba ( 255, 129, 127, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
selected-active-background: rgba ( 138, 196, 255, 100 % );
active-background: rgba ( 0, 0, 0, 0 % );
selected-active-background: rgba ( 138, 196, 255, 100 % );
}
#window {
border: 1;
foreground: @foreground;
background: rgba ( 0, 0, 0, 0 % );
padding: 5;
background-color: @background;
border: 1;
padding: 5;
}
#window.box {
foreground: @bordercolor;
background: @background;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
foreground: @separatorcolor;
padding: 2px 0px 0px ;
#message {
border: 2px 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: @foreground;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border: 2px 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.box {
border: 2px 0px 0px ;
foreground: @separatorcolor;
spacing: 2px ;
scrollbar: true;
}
#window.mainbox.listview.element {
#element {
border: 0;
padding: 1px ;
}
#window.mainbox.listview.element.normal.normal {
foreground: @normal-foreground;
background: @normal-background;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.listview.element.normal.urgent {
foreground: @urgent-foreground;
background: @urgent-background;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.listview.element.normal.active {
foreground: @active-foreground;
background: @active-background;
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.listview.element.selected.normal {
foreground: @selected-normal-foreground;
background: @selected-normal-background;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#window.mainbox.listview.element.selected.urgent {
foreground: @selected-urgent-foreground;
background: @selected-urgent-background;
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#window.mainbox.listview.element.selected.active {
foreground: @selected-active-foreground;
background: @selected-active-background;
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#window.mainbox.listview.element.alternate.normal {
foreground: @alternate-normal-foreground;
background: @alternate-normal-background;
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: @alternate-urgent-foreground;
background: @alternate-urgent-background;
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#window.mainbox.listview.element.alternate.active {
foreground: @alternate-active-foreground;
background: @alternate-active-background;
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#window.mainbox.listview.scrollbar {
#scrollbar {
width: 4px ;
border: 0;
handle-color: @normal-foreground;
handle-width: 8px ;
padding: 0;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
foreground: @separatorcolor;
#sidebar {
border: 2px 0px 0px ;
border-color: @separatorcolor;
}
#window.mainbox.sidebar.button.selected {
foreground: @selected-normal-foreground;
background: @selected-normal-background;
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#window.mainbox.inputbar {
text: @normal-foreground;
spacing: 0;
padding: 1px ;
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#window.mainbox.inputbar.box {
border: 0px ;
padding: 0px ;
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -268,6 +268,9 @@ an orientation
.IP "\(bu" 4
a list of keywords
.
.IP "\(bu" 4
Inherit
.
.IP "" 0
.
.P
@ -493,6 +496,9 @@ Format: \fB{Integer}px\fR
Format: \fB{Real}em\fR
.
.IP "\(bu" 4
Format: \fB{Real}ch\fR
.
.IP "\(bu" 4
Format: \fB{Real}%\fR
.
.IP "" 0
@ -504,7 +510,10 @@ A distance can be specified in 3 different units:
\fBpx\fR: Screen pixels\.
.
.IP "\(bu" 4
\fBem\fR: Relative to text width\.
\fBem\fR: Relative to text height\.
.
.IP "\(bu" 4
\fBch\fR: Relative to width of a single number\.
.
.IP "\(bu" 4
\fB%\fR: Percentage of the \fBmonitor\fR size\.
@ -682,6 +691,28 @@ Format: \fB[ keyword, keyword ]\fR
.P
A list starts with a \'[\' and ends with a \']\'\. The entries in the list are comma\-separated\. The \fBkeyword\fR in the list refers to an widget name\.
.
.SH "Inherit"
.
.IP "\(bu" 4
Format: \fBinherit\fR
.
.IP "" 0
.
.P
Inherits the property from its parent widget\.
.
.IP "" 4
.
.nf
#mainbox {
border\-color: inherit;
}
.
.fi
.
.IP "" 0
.
.SH "ELEMENTS PATHS"
Element paths exists of two parts, the first part refers to the actual widget by name\. Some widgets have an extra state\.
.
@ -692,7 +723,7 @@ For example:
.
.nf
#window mainbox listview element \.selected {
#element selected {
}
.
.fi
@ -700,7 +731,7 @@ For example:
.IP "" 0
.
.P
Here \fB#window mainbox listview element\fR is the name of the widget, \fBselected\fR is the state of the widget\.
Here \fB#element selected\fR is the name of the widget, \fBselected\fR is the state of the widget\.
.
.P
The difference between dots and spaces is purely cosmetic\. These are all the same:
@ -709,11 +740,11 @@ The difference between dots and spaces is purely cosmetic\. These are all the sa
.
.nf
#window mainbox listview element \.selected {
#element \.selected {
#element\.selected {
}
#window\.mainbox\.listview\.element\.selected {
}
#window mainbox listview element selected {
#element selected {
}
.
.fi
@ -728,29 +759,23 @@ The current widgets available in \fBrofi\fR:
.IP "\(bu" 4
.
.IP "\(bu" 4
\fB#window\.box\fR: the container holding the window
.
.IP "\(bu" 4
\fB#window\.overlay\fR: the overlay widget
\fB#overlay\fR: the overlay widget\.
.
.IP "\(bu" 4
.
.IP "\(bu" 4
\fB#window\.mainbox\.box\fR: the main vertical @box
.
.IP "\(bu" 4
\fB#box\fR: the horizontal @box packing the widgets
.
.IP "\(bu" 4
\fB#window\.mainbox\.inputbar\.box\fR: the horizontal @box packing the widgets
\fB#case\-indicator\fR: the case/sort indicator @textbox
.
.IP "\(bu" 4
\fB#window\.mainbox\.inputbar\.case\-indicator\fR: the case/sort indicator @textbox
\fB#prompt\fR: the prompt @textbox
.
.IP "\(bu" 4
\fB#window\.mainbox\.inputbar\.prompt\fR: the prompt @textbox
.
.IP "\(bu" 4
\fB#window\.mainbox\.inputbar\.entry\fR: the main entry @textbox
\fB#entry\fR: the main entry @textbox
.
.IP "" 0
@ -758,13 +783,10 @@ The current widgets available in \fBrofi\fR:
.IP "\(bu" 4
.
.IP "\(bu" 4
\fB#window\.mainbox\.listview\.box\fR: the listview container
\fB#scrollbar\fR: the listview scrollbar
.
.IP "\(bu" 4
\fB#window\.mainbox\.listview\.scrollbar\fR: the listview scrollbar
.
.IP "\(bu" 4
\fB#window\.mainbox\.listview\.element\fR: the entries in the listview
\fB#element\fR: the entries in the listview
.
.IP "" 0
@ -772,10 +794,7 @@ The current widgets available in \fBrofi\fR:
.IP "\(bu" 4
.
.IP "\(bu" 4
\fB#window\.mainbox\.sidebar\.box\fR: the main horizontal @box packing the buttons
.
.IP "\(bu" 4
\fB#window\.mainbox\.sidebar\.button\fR: the buttons @textbox for each mode
\fB#button\fR: the buttons @textbox for each mode
.
.IP "" 0
@ -783,10 +802,7 @@ The current widgets available in \fBrofi\fR:
.IP "\(bu" 4
.
.IP "\(bu" 4
\fB#window\.mainbox\.message\.textbox\fR: the message textbox
.
.IP "\(bu" 4
\fB#window\.mainbox\.message\.box\fR: the box containing the message
\fB#textbox\fR: the message textbox
.
.IP "" 0
@ -812,10 +828,10 @@ Optional flag(s) indicating state of the widget, used for theming\.
These are appended after the name or class of the widget\.
.
.SS "Example:"
\fB#window\.mainbox\.sidebar\.button selected\.normal { }\fR
\fB#button selected\.normal { }\fR
.
.P
\fB#window\.mainbox\.listview\.element selected\.urgent { }\fR
\fB#element selected\.urgent { }\fR
.
.P
Currently only the entrybox and scrollbar have states:
@ -839,7 +855,7 @@ Example:
.
.nf
#name\.to\.textbox selected\.active {
#nametotextbox selected\.active {
background: #003642;
foreground: #008ed4;
}
@ -913,7 +929,7 @@ The following properties are currently supported:
.SS "scrollbar:"
.
.IP "\(bu" 4
\fBforeground\fR: color
\fBbackground\-color\fR: color
.
.IP "\(bu" 4
\fBhandle\-width\fR: distance
@ -922,7 +938,7 @@ The following properties are currently supported:
\fBhandle\-color\fR: color
.
.IP "\(bu" 4
\fBforeground\fR: color
\fBborder\-color\fR: color
.
.IP "" 0
.
@ -1014,24 +1030,27 @@ The current layout of \fBrofi\fR is structured as follows:
|\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-|
| #window {BOX:vertical} |
| |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |
| | #window\.mainbox {BOX:vertical} | |
| | #mainbox {BOX:vertical} | |
| | |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| | |
| | | #window\.mainbox\.inputbar {BOX:horizontal} | | |
| | | |\-\-\-\-\-\-\-\-| |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |\-\-| | | |
| | | | prompt | | entry | |ci| | | |
| | | |\-\-\-\-\-\-\-\-| |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |\-\-| | | |
| | | #inputbar {BOX:horizontal} | | |
| | | |\-\-\-\-\-\-\-\-\-| |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |\-\-\-| | | |
| | | | #prompt | | #entry | |#ci| | | |
| | | |\-\-\-\-\-\-\-\-\-| |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |\-\-\-| | | |
| | |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| | |
| | | |
| | |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| | |
| | | #window\.mainbox\.message | | |
| | | #message | | |
| | | |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| | | |
| | | | #textbox | | | |
| | | |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| | | |
| | |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| | |
| | | |
| | |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |
| | | #window\.mainbox\.listview | |
| | | #listview | |
| | |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |
| | | |
| | |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| | |
| | | #window\.mainbox\.sidebar {BOX:horizontal} | | |
| | | #sidebar {BOX:horizontal} | | |
| | | |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| | | |
| | | | Button | | Button | | Button | | Button | | | |
| | | |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |\-\-\-\-\-\-\-\-\-\-\-\-\-\-| |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| | | |
@ -1112,34 +1131,31 @@ Below is an example of a theme emulating dmenu:
#window {
anchor: north;
location: north;
}
#window box {
width: 100%;
padding: 4px;
children: [ horibox ];
}
#window horibox box {
#horibox {
orientation: horizontal;
children: [ prompt, entry, listview ];
}
#window horibox listview box {
#listview {
layout: horizontal;
spacing: 5px;
lines: 10;
}
#window horibox entry {
#entry {
expand: false;
width: 10em;
}
#window horibox listview element {
#element {
padding: 0px 2px;
}
#window horibox listview element selected {
#element selected {
background: SteelBlue;
}
.

View file

@ -186,6 +186,7 @@ The current theme format supports different types:
* a reference
* an orientation
* a list of keywords
* Inherit
Some of these types are a combination of other types.
@ -319,12 +320,14 @@ It currently supports:
* Format: `{Integer}px`
* Format: `{Real}em`
* Format: `{Real}ch`
* Format: `{Real}%`
A distance can be specified in 3 different units:
* `px`: Screen pixels.
* `em`: Relative to text width.
* `em`: Relative to text height.
* `ch`: Relative to width of a single number.
* `%`: Percentage of the **monitor** size.
Distances used in the horizontal direction use the monitor width. Distances in
@ -422,6 +425,19 @@ Specify the orientation of the widget.
A list starts with a '[' and ends with a ']'. The entries in the list are comma-separated.
The `keyword` in the list refers to an widget name.
## Inherit
* Format: `inherit`
Inherits the property from its parent widget.
```
#mainbox {
border-color: inherit;
}
```
## ELEMENTS PATHS
Element paths exists of two parts, the first part refers to the actual widget by name.
@ -430,20 +446,20 @@ Some widgets have an extra state.
For example:
```
#window mainbox listview element .selected {
#element selected {
}
```
Here `#window mainbox listview element` is the name of the widget, `selected` is the state of the widget.
Here `#element selected` is the name of the widget, `selected` is the state of the widget.
The difference between dots and spaces is purely cosmetic. These are all the same:
```
#window mainbox listview element .selected {
#element .selected {
#element.selected {
}
#window.mainbox.listview.element.selected {
}
#window mainbox listview element selected {
#element selected {
}
```
@ -454,25 +470,20 @@ The difference between dots and spaces is purely cosmetic. These are all the sam
The current widgets available in **rofi**:
* `#window`
* `#window.box`: the container holding the window
* `#window.overlay`: the overlay widget
* `#window.mainbox`
* `#window.mainbox.box`: the main vertical @box
* `#window.mainbox.inputbar`
* `#window.mainbox.inputbar.box`: the horizontal @box packing the widgets
* `#window.mainbox.inputbar.case-indicator`: the case/sort indicator @textbox
* `#window.mainbox.inputbar.prompt`: the prompt @textbox
* `#window.mainbox.inputbar.entry`: the main entry @textbox
* `#window.mainbox.listview`
* `#window.mainbox.listview.box`: the listview container
* `#window.mainbox.listview.scrollbar`: the listview scrollbar
* `#window.mainbox.listview.element`: the entries in the listview
* `#window.mainbox.sidebar`
* `#window.mainbox.sidebar.box`: the main horizontal @box packing the buttons
* `#window.mainbox.sidebar.button`: the buttons @textbox for each mode
* `#window.mainbox.message`
* `#window.mainbox.message.textbox`: the message textbox
* `#window.mainbox.message.box`: the box containing the message
* `#overlay`: the overlay widget.
* `#mainbox`: The mainbox box.
* `#inputbar`: The input bar box.
* `#box`: the horizontal @box packing the widgets
* `#case-indicator`: the case/sort indicator @textbox
* `#prompt`: the prompt @textbox
* `#entry`: the main entry @textbox
* `#listview`: The listview.
* `#scrollbar`: the listview scrollbar
* `#element`: the entries in the listview
* `#sidebar`: the main horizontal @box packing the buttons.
* `#button`: the buttons @textbox for each mode
* `#message`: The container holding the textbox.
* `#textbox`: the message textbox
Note that these path names match the default theme. Themes that provide a custom layout will have different
element paths.
@ -488,9 +499,9 @@ These are appended after the name or class of the widget.
### Example:
`#window.mainbox.sidebar.button selected.normal { }`
`#button selected.normal { }`
`#window.mainbox.listview.element selected.urgent { }`
`#element selected.urgent { }`
Currently only the entrybox and scrollbar have states:
@ -513,7 +524,7 @@ These can be mixed.
Example:
```
#name.to.textbox selected.active {
#nametotextbox selected.active {
background: #003642;
foreground: #008ed4;
}
@ -574,10 +585,10 @@ The following properties are currently supported:
### scrollbar:
* **foreground**: color
* **handle-width**: distance
* **handle-color**: color
* **foreground**: color
* **background-color**: color
* **handle-width**: distance
* **handle-color**: color
* **border-color**: color
### box:
@ -636,24 +647,27 @@ The current layout of **rofi** is structured as follows:
|------------------------------------------------------------------------------------|
| #window {BOX:vertical} |
| |-------------------------------------------------------------------------------| |
| | #window.mainbox {BOX:vertical} | |
| | #mainbox {BOX:vertical} | |
| | |---------------------------------------------------------------------------| | |
| | | #window.mainbox.inputbar {BOX:horizontal} | | |
| | | |--------| |-------------------------------------------------------| |--| | | |
| | | | prompt | | entry | |ci| | | |
| | | |--------| |-------------------------------------------------------| |--| | | |
| | | #inputbar {BOX:horizontal} | | |
| | | |---------| |-----------------------------------------------------| |---| | | |
| | | | #prompt | | #entry | |#ci| | | |
| | | |---------| |-----------------------------------------------------| |---| | | |
| | |---------------------------------------------------------------------------| | |
| | | |
| | |---------------------------------------------------------------------------| | |
| | | #window.mainbox.message | | |
| | | #message | | |
| | | |-----------------------------------------------------------------------| | | |
| | | | #textbox | | | |
| | | |-----------------------------------------------------------------------| | | |
| | |---------------------------------------------------------------------------| | |
| | | |
| | |-----------------------------------------------------------------------------| |
| | | #window.mainbox.listview | |
| | | #listview | |
| | |-----------------------------------------------------------------------------| |
| | | |
| | |---------------------------------------------------------------------------| | |
| | | #window.mainbox.sidebar {BOX:horizontal} | | |
| | | #sidebar {BOX:horizontal} | | |
| | | |---------------| |---------------| |--------------| |---------------| | | |
| | | | Button | | Button | | Button | | Button | | | |
| | | |---------------| |---------------| |--------------| |---------------| | | |
@ -708,34 +722,31 @@ Below is an example of a theme emulating dmenu:
#window {
anchor: north;
location: north;
}
#window box {
width: 100%;
padding: 4px;
children: [ horibox ];
}
#window horibox box {
#horibox {
orientation: horizontal;
children: [ prompt, entry, listview ];
}
#window horibox listview box {
#listview {
layout: horizontal;
spacing: 5px;
lines: 10;
}
#window horibox entry {
#entry {
expand: false;
width: 10em;
}
#window horibox listview element {
#element {
padding: 0px 2px;
}
#window horibox listview element selected {
#element selected {
background: SteelBlue;
}
```

View file

@ -31,9 +31,10 @@
const char *default_theme =
"* {"
" spacing: 2;"
" background-color: transparent;"
" background: #FDF6E3FF;"
" foreground: #002B36FF;"
" bordercolor: @foreground;"
" border-color: @foreground;"
" separatorcolor: @foreground;"
" red: #DC322FFF;"
" blue: #268BD2FF;"
@ -60,91 +61,84 @@ const char *default_theme =
"}"
"#window {"
" border: 1;"
" foreground: @foreground;"
" background: #00000000;"
" padding: 5;"
" background-color: @background;"
"}"
"#window.box {"
" background: @background;"
" foreground: @bordercolor;"
"}"
"#window.mainbox {"
"#mainbox {"
" border: 0;"
" padding: 0;"
"}"
"#window.mainbox.message.box {"
"#message {"
" border: 1px dash 0px 0px ;"
" padding: 2px 0px 0px ;"
" foreground: @separatorcolor;"
" border-color: @separatorcolor;"
"}"
"#window.mainbox.message.normal {"
" foreground: @foreground;"
"#textbox {"
" text-color: @foreground;"
"}"
"#window.mainbox.listview.box {"
" foreground: @separatorcolor;"
"#listview {"
" border-color: @separatorcolor;"
"}"
"#window.mainbox.listview {"
"#listview {"
" fixed-height: 0;"
" border: 2px dash 0px 0px ;"
" padding: 2px 0px 0px ;"
"}"
"#window.mainbox.listview.element {"
"#element {"
" border: 0;"
"}"
"#window.mainbox.listview.element.normal.normal {"
" foreground: @normal-foreground;"
" background: @normal-background;"
"#element normal.normal {"
" text-color: @normal-foreground;"
" background-color: @normal-background;"
"}"
"#window.mainbox.listview.element.normal.urgent {"
" foreground: @urgent-foreground;"
" background: @urgent-background;"
"#element normal.urgent {"
" text-color: @urgent-foreground;"
" background-color: @urgent-background;"
"}"
"#window.mainbox.listview.element.normal.active {"
" foreground: @active-foreground;"
" background: @active-background;"
"#element normal.active {"
" text-color: @active-foreground;"
" background-color: @active-background;"
"}"
"#window.mainbox.listview.element.selected.normal {"
" foreground: @selected-normal-foreground;"
" background: @selected-normal-background;"
"#element selected.normal {"
" text-color: @selected-normal-foreground;"
" background-color: @selected-normal-background;"
"}"
"#window.mainbox.listview.element.selected.urgent {"
" foreground: @selected-urgent-foreground;"
" background: @selected-urgent-background;"
"#element selected.urgent {"
" text-color: @selected-urgent-foreground;"
" background-color: @selected-urgent-background;"
"}"
"#window.mainbox.listview.element.selected.active {"
" foreground: @selected-active-foreground;"
" background: @selected-active-background;"
"#element selected.active {"
" text-color: @selected-active-foreground;"
" background-color: @selected-active-background;"
"}"
"#window.mainbox.listview.element.alternate.normal {"
" foreground: @alternate-normal-foreground;"
" background: @alternate-normal-background;"
"#element alternate.normal {"
" text-color: @alternate-normal-foreground;"
" background-color: @alternate-normal-background;"
"}"
"#window.mainbox.listview.element.alternate.urgent {"
" foreground: @alternate-urgent-foreground;"
" background: @alternate-urgent-background;"
"#element alternate.urgent {"
" text-color: @alternate-urgent-foreground;"
" background-color: @alternate-urgent-background;"
"}"
"#window.mainbox.listview.element.alternate.active {"
" foreground: @alternate-active-foreground;"
" background: @alternate-active-background;"
"#element alternate.active {"
" text-color: @alternate-active-foreground;"
" background-color: @alternate-active-background;"
"}"
"#window.mainbox.listview.scrollbar {"
" border: 0; width: 4px;"
"#scrollbar {"
" border: 0;"
" width: 4px;"
" padding: 0;"
" handle-color: @normal-foreground;"
"}"
"#window.mainbox.sidebar.box {"
" border: 2px dash 0px 0px ;"
" foreground: @separatorcolor;"
"#sidebar {"
" border: 2px dash 0px 0px ;"
" border-color: @separatorcolor;"
"}"
"#window.mainbox.sidebar button selected {"
" background: @selected-normal-background;"
" foreground: @selected-normal-foreground;"
"#button selected {"
" background-color: @selected-normal-background;"
" text-color: @selected-normal-foreground;"
"}"
"#window.mainbox.inputbar {"
"#inputbar, case-indicator, entry, prompt {"
" spacing: 0;"
" text: @normal-foreground;"
"}"
"#window.mainbox.inputbar.box {"
" border: 0px 0px 0px 0px;"
" "
" text-color: @normal-foreground;"
"}";
#endif

View file

@ -30,6 +30,8 @@ typedef enum
P_LIST,
/** Orientation */
P_ORIENTATION,
/** Inherit */
P_INHERIT,
/** Number of types. */
P_NUM_TYPES,
} PropertyType;

View file

@ -86,6 +86,12 @@ Property *rofi_theme_property_create ( PropertyType type );
*/
void rofi_theme_property_free ( Property *p );
/**
* @param p The property to free.
*
* @returns a copy of p
*/
Property* rofi_theme_property_copy ( Property *p);
/**
* @param widget
*
@ -133,16 +139,6 @@ void rofi_theme_widget_add_properties ( ThemeWidget *widget, GHashTable *table )
* @returns The distance value of this property for this widget.
*/
RofiDistance rofi_theme_get_distance ( const widget *widget, const char *property, int def );
/**
* @param widget The widget to query
* @param property The property to query.
* @param def The default value.
*
* Obtain the distance of the widget.
*
* @returns The distance value of this property for this widget.
*/
RofiDistance rofi_theme_get_distance_exact ( const widget *widget, const char *property, int def );
/**
* @param widget The widget to query
@ -166,16 +162,6 @@ int rofi_theme_get_integer ( const widget *widget, const char *property, int
*/
int rofi_theme_get_position ( const widget *widget, const char *property, int def );
/**
* @param widget The widget to query
* @param property The property to query.
* @param def The default value.
*
* Obtain the integer of the widget.
*
* @returns The integer value of this property for this widget.
*/
int rofi_theme_get_integer_exact ( const widget *widget, const char *property, int def );
/**
* @param widget The widget to query

View file

@ -48,12 +48,13 @@
typedef struct _box box;
/**
* @param parent The widgets parent.
* @param name The name of the widget.
* @param type The packing direction of the newly created box.
*
* @returns a newly created box, free with #widget_free
*/
box * box_create ( const char *name, RofiOrientation type );
box * box_create ( widget *parent, const char *name, RofiOrientation type );
/**
* @param box Handle to the box widget.

View file

@ -44,11 +44,12 @@
typedef struct _window container;
/**
* @param parent The widget's parent
* @param name The name of the widget.
*
* @returns a newly created container, free with #widget_free
*/
container * container_create ( const char *name );
container * container_create ( widget *parent, const char *name );
/**
* @param container Handle to the container widget.

View file

@ -69,6 +69,7 @@ typedef void ( *listview_update_callback )( textbox *tb, unsigned int entry, voi
typedef void ( *listview_mouse_activated_cb )( listview *, gboolean, void * );
/**
* @param parent The widget's parent.
* @param name The name of the to be created widget.
* @param cb The update callback.
* @param udata The user data to pass to the callback
@ -77,7 +78,7 @@ typedef void ( *listview_mouse_activated_cb )( listview *, gboolean, void * );
*
* @returns a new listview
*/
listview *listview_create ( const char *name, listview_update_callback cb, void *udata, unsigned int eh, gboolean reverse );
listview *listview_create ( widget *parent, const char *name, listview_update_callback cb, void *udata, unsigned int eh, gboolean reverse );
/**
* @param lv The listview handle

View file

@ -50,13 +50,14 @@ typedef struct _scrollbar
} scrollbar;
/**
* @param parent The parent widget.
* @param name The name of the widget.
*
* Create a new scrollbar
*
* @returns the scrollbar object.
*/
scrollbar *scrollbar_create ( const char *name );
scrollbar *scrollbar_create ( widget *parent, const char *name );
/**
* @param sb scrollbar object

View file

@ -114,6 +114,7 @@ typedef enum
} TextBoxFontType;
/**
* @param parent The widget's parent.
* @param type The type of the to be created widget.
* @param name The name of the to be created widget.
* @param flags #TextboxFlags indicating the type of textbox.
@ -127,7 +128,7 @@ typedef enum
* free with #widget_free
* @returns a new #textbox
*/
textbox* textbox_create ( WidgetType type, const char *name, TextboxFlags flags,
textbox* textbox_create ( widget *parent, WidgetType type, const char *name, TextboxFlags flags,
TextBoxFontType tbft, const char *text, double xalign, double yalign );
/**
* @param tb Handle to the textbox

View file

@ -97,14 +97,15 @@ struct _widget
};
/**
* @param widget The widget to initialize.
* @param wid The widget to initialize.
* @param parent The widget's parent.
* @param type The type of the widget.
* @param name The name of the widget.
*
* Initializes the widget structure.
*
*/
void widget_init ( widget *widget, WidgetType type, const char *name );
void widget_init ( widget *wid, widget *parent, WidgetType type, const char *name );
/**
* @param widget The widget handle.

View file

@ -173,6 +173,8 @@ EM (em)
CH (ch)
PERCENT (\%)
INHERIT (inherit)
ASTERIX \*
/* Position */
@ -392,6 +394,9 @@ if ( queue == NULL ){
}
<NAMESTR>\.|{WHITESPACE} { return T_NSEP; }
<NAMESTR>,{WHITESPACE}* { return T_SSEP; }
/* Alias color to text-color */
<SECTION>"color" { yylval->sval = g_strdup("text-color"); return T_PROP_NAME;}
<SECTION>{WORD} { yylval->sval = g_strdup(yytext); return T_PROP_NAME;}
<NAMESTR>{WORD} { yylval->sval = g_strdup(yytext); return T_NAME_ELEMENT;}
@ -415,8 +420,10 @@ if ( queue == NULL ){
<PROPERTIES>{CH} { return T_UNIT_CH; }
<PROPERTIES>{PX} { return T_UNIT_PX; }
<PROPERTIES>{PERCENT} { return T_PERCENT; }
<PROPERTIES>{LS_SOLID} { return T_SOLID; }
<PROPERTIES>{LS_DASH} { return T_DASH; }
<PROPERTIES>{LS_SOLID} { return T_SOLID; }
<PROPERTIES>{LS_DASH} { return T_DASH; }
<PROPERTIES>{INHERIT} { return T_INHERIT; }
/**
* Color parsing. It is easier to do this at lexer level.

View file

@ -212,6 +212,7 @@ static ThemeColor hwb_to_rgb ( double h, double w, double b)
%token T_PSEP "property separator (':')"
%token T_PCLOSE "property close (';')"
%token T_NSEP "Name separator (' ' or '.')"
%token T_SSEP "Selector separator (',')"
%token T_NAME_PREFIX "Element section ('# {name} { ... }')"
%token T_WHITESPACE "White space"
%token T_PDEFAULTS "Default settings section ( '* { ... }')"
@ -219,9 +220,12 @@ static ThemeColor hwb_to_rgb ( double h, double w, double b)
%token T_COLOR_TRANSPARENT "Transparent"
%token T_INHERIT "Inherit"
%type <sval> t_entry
%type <theme> t_entry_list
%type <list> t_entry_name_path
%type <list> t_entry_name_path_selectors
%type <property> t_property
%type <property_list> t_property_list
%type <property_list> t_property_list_optional
@ -233,6 +237,7 @@ static ThemeColor hwb_to_rgb ( double h, double w, double b)
%type <fval> t_property_color_value_angle
%type <sval> t_property_name
%type <distance> t_property_distance
%type <distance> t_property_distance_zero
%type <ival> t_property_unit
%type <wloc> t_property_position
%type <wloc> t_property_position_ew
@ -261,20 +266,29 @@ t_entry_list:
;
t_entry:
T_NAME_PREFIX t_entry_name_path T_BOPEN t_property_list_optional T_BCLOSE
T_NAME_PREFIX t_entry_name_path_selectors T_BOPEN t_property_list_optional T_BCLOSE
{
for ( GList *liter = g_list_first ( $2); liter; liter = g_list_next ( liter ) ) {
ThemeWidget *widget = rofi_theme;
for ( GList *iter = g_list_first ( $2 ); iter ; iter = g_list_next ( iter ) ) {
for ( GList *iter = g_list_first ( (GList*)liter->data ); iter ; iter = g_list_next ( iter ) ) {
widget = rofi_theme_find_or_create_name ( widget, iter->data );
}
g_list_foreach ( $2, (GFunc)g_free , NULL );
g_list_free ( $2 );
g_list_foreach ( (GList*)liter->data, (GFunc)g_free , NULL );
g_list_free ( (GList*)liter->data );
widget->set = TRUE;
rofi_theme_widget_add_properties ( widget, $4);
}
if ( $4 ) {
g_hash_table_destroy ( $4 );
}
g_list_free ( $2 );
}
|
T_PDEFAULTS T_BOPEN t_property_list_optional T_BCLOSE {
rofi_theme_widget_add_properties ( rofi_theme, $3);
if ( $3 ) {
g_hash_table_destroy ( $3 );
}
}
| T_CONFIGURATION T_BOPEN t_config_property_list_optional T_BCLOSE {
// Dummy at this point.
@ -322,7 +336,11 @@ t_property_list:
;
t_property
: t_property_name T_PSEP T_INT T_PCLOSE {
: t_property_name T_PSEP T_INHERIT T_PCLOSE {
$$ = rofi_theme_property_create ( P_INHERIT );
$$->name = $1;
}
| t_property_name T_PSEP T_INT T_PCLOSE {
$$ = rofi_theme_property_create ( P_INTEGER );
$$->name = $1;
$$->value.i = $3;
@ -352,17 +370,17 @@ t_property
$$->name = $1;
$$->value.padding = (RofiPadding){ $3, $3, $3, $3 };
}
| t_property_name T_PSEP t_property_distance t_property_distance T_PCLOSE {
| t_property_name T_PSEP t_property_distance_zero t_property_distance_zero T_PCLOSE {
$$ = rofi_theme_property_create ( P_PADDING );
$$->name = $1;
$$->value.padding = (RofiPadding){ $3, $4, $3, $4 };
}
| t_property_name T_PSEP t_property_distance t_property_distance t_property_distance T_PCLOSE {
| t_property_name T_PSEP t_property_distance_zero t_property_distance_zero t_property_distance_zero T_PCLOSE {
$$ = rofi_theme_property_create ( P_PADDING );
$$->name = $1;
$$->value.padding = (RofiPadding){ $3, $4, $5, $4 };
}
| t_property_name T_PSEP t_property_distance t_property_distance t_property_distance t_property_distance T_PCLOSE {
| t_property_name T_PSEP t_property_distance_zero t_property_distance_zero t_property_distance_zero t_property_distance_zero T_PCLOSE {
$$ = rofi_theme_property_create ( P_PADDING );
$$->name = $1;
$$->value.padding = (RofiPadding){ $3, $4, $5, $6 };
@ -452,6 +470,15 @@ t_property_highlight_style
| T_SMALLCAPS { $$ = ROFI_HL_SMALL_CAPS; }
;
t_property_distance_zero
: T_INT t_property_line_style {
$$.distance = (double) $1;
$$.type = ROFI_PU_PX;
$$.style = $2;
}
| t_property_distance { $$ = $1;}
;
/** Distance. */
t_property_distance
/** Interger unit and line style */
@ -611,6 +638,16 @@ t_property_name
: T_PROP_NAME { $$ = $1; }
;
t_entry_name_path_selectors:
t_entry_name_path { $$ = g_list_append ( NULL, $1 ); }
| t_entry_name_path_selectors T_SSEP t_entry_name_path {
$$ = g_list_append ( $1, $3);
}
| t_entry_name_path_selectors T_SSEP {
$$ = $1;
}
;
t_entry_name_path:
T_NAME_ELEMENT { $$ = g_list_append ( NULL, $1 );}
| t_entry_name_path T_NSEP T_NAME_ELEMENT { $$ = g_list_append ( $1, $3);}

View file

@ -167,12 +167,17 @@ function set_theme()
then
mkdir -p ${CDIR}
fi
if [ -f "${CDIR}/config" ]
if [ -f "${CDIR}/config.rasi" ]
then
${SED} -i "/rofi\.theme: .*\.rasi$/d" "${CDIR}/config"
fi
echo "rofi.theme: ${1}" >> "${CDIR}/config"
${SED} -i "/@import.*/d" "${CDIR}/config.rasi"
echo "@import \"${1}\"" >> "${CDIR}/config.rasi"
else
if [ -f "${CDIR}/config" ]
then
${SED} -i "/rofi\.theme: .*\.rasi$/d" "${CDIR}/config"
fi
echo "rofi.theme: ${1}" >> "${CDIR}/config"
fi
}
############################################################################################################

View file

@ -26,4 +26,6 @@ const char * const PropertyTypeName[P_NUM_TYPES] = {
"List",
/** Orientation */
"Orientation",
/** Inherit */
"Inherit",
};

View file

@ -74,6 +74,28 @@ Property *rofi_theme_property_create ( PropertyType type )
retv->type = type;
return retv;
}
Property* rofi_theme_property_copy ( Property *p)
{
Property *retv = rofi_theme_property_create ( p->type );
retv->name = g_strdup ( p->name );
switch ( p->type ) {
case P_STRING:
retv->value.s = g_strdup ( p->value.s );
break;
case P_LIST:
retv->value.list = g_list_copy_deep ( p->value.list, (GCopyFunc)g_strdup, NULL );
break;
case P_LINK:
retv->value.link.name = g_strdup ( p->value.link.name );
retv->value.link.ref = NULL;
break;
default:
retv->value = p->value;
}
return retv;
}
void rofi_theme_property_free ( Property *p )
{
if ( p == NULL ) {
@ -332,11 +354,11 @@ void yyerror ( YYLTYPE *yylloc, const char *what, const char* s )
rofi_add_error_message ( str );
}
static gboolean rofi_theme_steal_property_int ( gpointer key, gpointer value, gpointer user_data )
static void rofi_theme_copy_property_int ( gpointer key, gpointer value, gpointer user_data )
{
GHashTable *table = (GHashTable *) user_data;
g_hash_table_replace ( table, key, value );
return TRUE;
Property *p = rofi_theme_property_copy( (Property*) value);
g_hash_table_replace ( table, p->name, p );
}
void rofi_theme_widget_add_properties ( ThemeWidget *widget, GHashTable *table )
{
@ -344,11 +366,9 @@ void rofi_theme_widget_add_properties ( ThemeWidget *widget, GHashTable *table )
return;
}
if ( widget->properties == NULL ) {
widget->properties = table;
return;
widget->properties = g_hash_table_new_full ( g_str_hash, g_str_equal, NULL, (GDestroyNotify)rofi_theme_property_free );
}
g_hash_table_foreach_steal ( table, rofi_theme_steal_property_int, widget->properties );
g_hash_table_destroy ( table );
g_hash_table_foreach ( table, rofi_theme_copy_property_int, widget->properties );
}
/**
@ -357,7 +377,7 @@ void rofi_theme_widget_add_properties ( ThemeWidget *widget, GHashTable *table )
static inline ThemeWidget *rofi_theme_find_single ( ThemeWidget *widget, const char *name )
{
for ( unsigned int j = 0; j < widget->num_widgets; j++ ) {
for ( unsigned int j = 0; widget && j < widget->num_widgets; j++ ) {
if ( g_strcmp0 ( widget->widgets[j]->name, name ) == 0 ) {
return widget->widgets[j];
}
@ -429,6 +449,9 @@ Property *rofi_theme_find_property ( ThemeWidget *widget, PropertyType type, con
while ( widget ) {
if ( widget->properties && g_hash_table_contains ( widget->properties, property ) ) {
Property *p = g_hash_table_lookup ( widget->properties, property );
if ( p ->type == P_INHERIT ) {
return p;
}
if ( p->type == P_LINK ) {
if ( p->value.link.ref == NULL ) {
// Resolve link.
@ -454,6 +477,7 @@ Property *rofi_theme_find_property ( ThemeWidget *widget, PropertyType type, con
if ( exact ) {
return NULL;
}
// Fall back to defaults.
widget = widget->parent;
}
return NULL;
@ -461,7 +485,7 @@ Property *rofi_theme_find_property ( ThemeWidget *widget, PropertyType type, con
ThemeWidget *rofi_theme_find_widget ( const char *name, const char *state, gboolean exact )
{
// First find exact match based on name.
ThemeWidget *widget = rofi_theme_find ( rofi_theme, name, exact );
ThemeWidget *widget = rofi_theme_find_single ( rofi_theme, name );
widget = rofi_theme_find ( widget, state, exact );
return widget;
@ -472,6 +496,12 @@ int rofi_theme_get_position ( const widget *widget, const char *property, int de
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_POSITION, property, FALSE );
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
return rofi_theme_get_position ( widget->parent, property, def );
}
return def;
}
return p->value.i;
}
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
@ -483,27 +513,28 @@ int rofi_theme_get_integer ( const widget *widget, const char *property, int def
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_INTEGER, property, FALSE );
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
return rofi_theme_get_integer ( widget->parent, property, def );
}
return def;
}
return p->value.i;
}
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
return def;
}
int rofi_theme_get_integer_exact ( const widget *widget, const char *property, int def )
RofiDistance rofi_theme_get_distance ( const widget *widget, const char *property, int def )
{
// State is note considered when doing exact match, only base name.
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, NULL, TRUE );
Property *p = rofi_theme_find_property ( wid, P_INTEGER, property, TRUE );
if ( p ) {
return p->value.i;
}
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
return def;
}
static RofiDistance _rofi_theme_get_distance ( const widget *widget, const char *property, int def, gboolean exact )
{
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, exact );
Property *p = rofi_theme_find_property ( wid, P_PADDING, property, exact );
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_PADDING, property, FALSE );
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
return rofi_theme_get_distance ( widget->parent, property, def );
}
return (RofiDistance){ def, ROFI_PU_PX, ROFI_HL_SOLID };
}
if ( p->type == P_INTEGER ) {
return (RofiDistance){ p->value.i, ROFI_PU_PX, ROFI_HL_SOLID };
}
@ -515,20 +546,17 @@ static RofiDistance _rofi_theme_get_distance ( const widget *widget, const char
return (RofiDistance){ def, ROFI_PU_PX, ROFI_HL_SOLID };
}
RofiDistance rofi_theme_get_distance_exact ( const widget *widget, const char *property, int def )
{
return _rofi_theme_get_distance ( widget, property, def, TRUE );
}
RofiDistance rofi_theme_get_distance ( const widget *widget, const char *property, int def )
{
return _rofi_theme_get_distance ( widget, property, def, FALSE );
}
int rofi_theme_get_boolean ( const widget *widget, const char *property, int def )
{
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_BOOLEAN, property, FALSE );
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
return rofi_theme_get_boolean ( widget->parent, property, def );
}
return def;
}
return p->value.b;
}
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
@ -539,6 +567,12 @@ RofiOrientation rofi_theme_get_orientation ( const widget *widget, const char *p
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_ORIENTATION, property, FALSE );
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
return rofi_theme_get_orientation ( widget->parent, property, def );
}
return def;
}
return p->value.b;
}
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
@ -550,6 +584,12 @@ const char *rofi_theme_get_string ( const widget *widget, const char *property,
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_STRING, property, FALSE );
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
return rofi_theme_get_string ( widget->parent, property, def );
}
return def;
}
return p->value.s;
}
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
@ -560,6 +600,12 @@ double rofi_theme_get_double ( const widget *widget, const char *property, doubl
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_DOUBLE, property, FALSE );
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
return rofi_theme_get_double ( widget->parent, property, def );
}
return def;
}
return p->value.f;
}
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
@ -570,6 +616,12 @@ void rofi_theme_get_color ( const widget *widget, const char *property, cairo_t
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_COLOR, property, FALSE );
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
rofi_theme_get_color ( widget->parent, property, d );
}
return ;
}
cairo_set_source_rgba ( d,
p->value.color.red,
p->value.color.green,
@ -586,6 +638,12 @@ RofiPadding rofi_theme_get_padding ( const widget *widget, const char *property,
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_PADDING, property, FALSE );
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
return rofi_theme_get_padding ( widget->parent, property, pad );
}
return pad;
}
if ( p->type == P_PADDING ) {
pad = p->value.padding;
}
@ -603,7 +661,11 @@ GList *rofi_theme_get_list ( const widget *widget, const char * property, const
ThemeWidget *wid2 = rofi_theme_find_widget ( widget->name, widget->state, TRUE );
Property *p = rofi_theme_find_property ( wid2, P_LIST, property, TRUE );
if ( p ) {
if ( p->type == P_LIST ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
return rofi_theme_get_list ( widget->parent, property, defaults );
}
} else if ( p->type == P_LIST ) {
return g_list_copy_deep ( p->value.list, (GCopyFunc) g_strdup, NULL );
}
}
@ -624,6 +686,12 @@ RofiHighlightColorStyle rofi_theme_get_highlight ( widget *widget, const char *p
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_HIGHLIGHT, property, FALSE );
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
return rofi_theme_get_highlight ( widget->parent, property, th );
}
return th;
}
return p->value.highlight;
}
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
@ -764,47 +832,42 @@ void rofi_theme_convert_old ( void )
if ( config.separator_style != NULL ) {
if ( g_strcmp0 ( config.separator_style, "none" ) == 0 ) {
const char *const str = "#window.mainbox.listview box { border: 0px; }";
const char *const str = "#listview { border: 0px; }";
rofi_theme_parse_string ( str );
const char *const str2 = "#window.mainbox.sidebar box { border: 0px; }";
const char *const str2 = "#sidebar { border: 0px; }";
rofi_theme_parse_string ( str2 );
const char *const str3 = "#window.mainbox.message box { border: 0px; }";
const char *const str3 = "#message { border: 0px; }";
rofi_theme_parse_string ( str3 );
}
else if ( g_strcmp0 ( config.separator_style, "solid" ) == 0 ) {
const char *const str = "#window.mainbox.listview box { border: 2px solid 0px 0px 0px; }";
const char *const str = "#listview { border: 2px solid 0px 0px 0px; }";
rofi_theme_parse_string ( str );
const char *const str2 = "#window.mainbox.sidebar box { border: 2px solid 0px 0px 0px; }";
const char *const str2 = "#sidebar { border: 2px solid 0px 0px 0px; }";
rofi_theme_parse_string ( str2 );
const char *const str3 = "#window.mainbox.message box { border: 2px solid 0px 0px 0px; }";
const char *const str3 = "#message { border: 2px solid 0px 0px 0px; }";
rofi_theme_parse_string ( str3 );
} /* dash is default */
}
/* Line Margin */
{
char *str = g_strdup_printf ( "#window.mainbox.listview box { spacing: %dpx;}", config.line_margin );
char *str = g_strdup_printf ( "#listview { spacing: %dpx;}", config.line_margin );
rofi_theme_parse_string ( str );
g_free ( str );
}
/* Line Padding */
{
char *str = g_strdup_printf ( "#window.mainbox.listview.element { padding: %dpx;}", config.line_padding );
rofi_theme_parse_string ( str );
g_free ( str );
// inputbar
str = g_strdup_printf ( "#window.mainbox.inputbar { padding: %dpx;}\n" \
"#window.mainbox.inputbar.box { padding: 0px; }", config.line_padding );
char *str = g_strdup_printf ( "#element, inputbar, message { padding: %dpx;}", config.line_padding );
rofi_theme_parse_string ( str );
g_free ( str );
}
if ( config.hide_scrollbar ) {
const char *str = "#window.mainbox.listview.box { scrollbar: false; }";
const char *str = "#listview { scrollbar: false; }";
rofi_theme_parse_string ( str );
}
else {
const char *str = "#window.mainbox.listview.box { scrollbar: true; }";
const char *str = "#listview { scrollbar: true; }";
rofi_theme_parse_string ( str );
char *str2 = g_strdup_printf ( "#window.mainbox.listview.scrollbar { handle-width: %dpx; }", config.scrollbar_width );
char *str2 = g_strdup_printf ( "#scrollbar { handle-width: %dpx; }", config.scrollbar_width );
rofi_theme_parse_string ( str2 );
g_free ( str2 );
}

View file

@ -735,7 +735,7 @@ void __create_window ( MenuFlags menu_flags )
}
// Setup font.
// Dummy widget.
box *win = box_create ( "window.box_window", ROFI_ORIENTATION_HORIZONTAL );
box *win = box_create ( NULL, "window", ROFI_ORIENTATION_HORIZONTAL );
const char *font = rofi_theme_get_string ( WIDGET ( win ), "font", config.menu_font );
if ( font ) {
PangoFontDescription *pfd = pango_font_description_from_string ( font );
@ -1520,14 +1520,12 @@ static void rofi_view_add_widget ( RofiViewState *state, widget *parent_widget,
{
char *defaults = NULL;
widget *wid = NULL;
char *str = g_strjoin ( ".", parent, name, NULL );
char *strbox = g_strjoin ( ".", str, "box", NULL );
/**
* MAINBOX
*/
if ( strcmp ( name, "mainbox" ) == 0 ) {
wid = (widget *) box_create ( strbox, ROFI_ORIENTATION_VERTICAL );
wid = (widget *) box_create ( parent_widget, name, ROFI_ORIENTATION_VERTICAL );
box_add ( (box *) parent_widget, WIDGET ( wid ), TRUE );
defaults = "inputbar,message,listview,sidebar";
}
@ -1535,7 +1533,7 @@ static void rofi_view_add_widget ( RofiViewState *state, widget *parent_widget,
* INPUTBAR
*/
else if ( strcmp ( name, "inputbar" ) == 0 ) {
wid = (widget *) box_create ( strbox, ROFI_ORIENTATION_HORIZONTAL );
wid = (widget *) box_create ( parent_widget, name, ROFI_ORIENTATION_HORIZONTAL );
defaults = "prompt,entry,case-indicator";
box_add ( (box *) parent_widget, WIDGET ( wid ), FALSE );
}
@ -1548,7 +1546,7 @@ static void rofi_view_add_widget ( RofiViewState *state, widget *parent_widget,
return;
}
// Prompt box.
state->prompt = textbox_create ( WIDGET_TYPE_TEXTBOX_TEXT, str, TB_AUTOWIDTH | TB_AUTOHEIGHT, NORMAL, "", 0, 0 );
state->prompt = textbox_create ( parent_widget, WIDGET_TYPE_TEXTBOX_TEXT, name, TB_AUTOWIDTH | TB_AUTOHEIGHT, NORMAL, "", 0, 0 );
rofi_view_update_prompt ( state );
box_add ( (box *) parent_widget, WIDGET ( state->prompt ), FALSE );
defaults = NULL;
@ -1561,7 +1559,7 @@ static void rofi_view_add_widget ( RofiViewState *state, widget *parent_widget,
g_error ( "Case indicator widget can only be added once to the layout." );
return;
}
state->case_indicator = textbox_create ( WIDGET_TYPE_TEXTBOX_TEXT, str, TB_AUTOWIDTH | TB_AUTOHEIGHT, NORMAL, "*", 0, 0 );
state->case_indicator = textbox_create ( parent_widget, WIDGET_TYPE_TEXTBOX_TEXT, name, TB_AUTOWIDTH | TB_AUTOHEIGHT, NORMAL, "*", 0, 0 );
// Add small separator between case indicator and text box.
box_add ( (box *) parent_widget, WIDGET ( state->case_indicator ), FALSE );
textbox_text ( state->case_indicator, get_matching_state () );
@ -1577,7 +1575,7 @@ static void rofi_view_add_widget ( RofiViewState *state, widget *parent_widget,
// Entry box
TextboxFlags tfl = TB_EDITABLE;
tfl |= ( ( state->menu_flags & MENU_PASSWORD ) == MENU_PASSWORD ) ? TB_PASSWORD : 0;
state->text = textbox_create ( WIDGET_TYPE_EDITBOX, str, tfl | TB_AUTOHEIGHT, NORMAL, NULL, 0, 0 );
state->text = textbox_create ( parent_widget, WIDGET_TYPE_EDITBOX, name, tfl | TB_AUTOHEIGHT, NORMAL, NULL, 0, 0 );
box_add ( (box *) parent_widget, WIDGET ( state->text ), TRUE );
}
/**
@ -1588,13 +1586,11 @@ static void rofi_view_add_widget ( RofiViewState *state, widget *parent_widget,
g_error ( "Message widget can only be added once to the layout." );
return;
}
char *strmsg = g_strjoin ( ".", str, "textbox", NULL );
state->mesg_box = container_create ( strbox );
state->mesg_tb = textbox_create ( WIDGET_TYPE_TEXTBOX_TEXT, strmsg, TB_AUTOHEIGHT | TB_MARKUP | TB_WRAP, NORMAL, NULL, 0, 0 );
state->mesg_box = container_create ( parent_widget, name );
state->mesg_tb = textbox_create ( state->mesg_box, WIDGET_TYPE_TEXTBOX_TEXT, "textbox", TB_AUTOHEIGHT | TB_MARKUP | TB_WRAP, NORMAL, NULL, 0, 0 );
container_add ( state->mesg_box, WIDGET ( state->mesg_tb ) );
rofi_view_reload_message_bar ( state );
box_add ( (box *) parent_widget, WIDGET ( state->mesg_box ), FALSE );
g_free ( strmsg );
}
/**
* LISTVIEW
@ -1604,7 +1600,7 @@ static void rofi_view_add_widget ( RofiViewState *state, widget *parent_widget,
g_error ( "Listview widget can only be added once to the layout." );
return;
}
state->list_view = listview_create ( str, update_callback, state, config.element_height, 0 );
state->list_view = listview_create ( parent_widget, name, update_callback, state, config.element_height, 0 );
box_add ( (box *) parent_widget, WIDGET ( state->list_view ), TRUE );
// Set configuration
listview_set_multi_select ( state->list_view, ( state->menu_flags & MENU_INDICATOR ) == MENU_INDICATOR );
@ -1624,39 +1620,35 @@ static void rofi_view_add_widget ( RofiViewState *state, widget *parent_widget,
return;
}
if ( config.sidebar_mode ) {
state->sidebar_bar = box_create ( strbox, ROFI_ORIENTATION_HORIZONTAL );
state->sidebar_bar = box_create ( parent_widget, name,ROFI_ORIENTATION_HORIZONTAL );
box_add ( (box *) parent_widget, WIDGET ( state->sidebar_bar ), FALSE );
state->num_modi = rofi_get_num_enabled_modi ();
state->modi = g_malloc0 ( state->num_modi * sizeof ( textbox * ) );
char *strbutton = g_strjoin ( ".", str, "button", NULL );
for ( unsigned int j = 0; j < state->num_modi; j++ ) {
const Mode * mode = rofi_get_mode ( j );
state->modi[j] = textbox_create ( WIDGET_TYPE_SIDEBAR_MODI, strbutton, TB_AUTOHEIGHT, ( mode == state->sw ) ? HIGHLIGHT : NORMAL,
state->modi[j] = textbox_create ( WIDGET ( state->sidebar_bar ), WIDGET_TYPE_SIDEBAR_MODI, "button", TB_AUTOHEIGHT, ( mode == state->sw ) ? HIGHLIGHT : NORMAL,
mode_get_display_name ( mode ), 0.5, 0.5 );
box_add ( state->sidebar_bar, WIDGET ( state->modi[j] ), TRUE );
widget_set_trigger_action_handler ( WIDGET ( state->modi[j] ), textbox_sidebar_modi_trigger_action, state );
}
g_free ( strbutton );
}
}
else if ( g_ascii_strncasecmp ( name, "textbox", 7 ) == 0 ) {
textbox *t = textbox_create ( WIDGET_TYPE_TEXTBOX_TEXT, str, TB_WRAP, NORMAL, "", 0, 0 );
textbox *t = textbox_create ( parent_widget, WIDGET_TYPE_TEXTBOX_TEXT, name, TB_WRAP, NORMAL, "", 0, 0 );
box_add ( (box *) parent_widget, WIDGET ( t ), TRUE );
}
else {
wid = (widget *) box_create ( strbox, ROFI_ORIENTATION_VERTICAL );
wid = (widget *) box_create ( parent_widget, name, ROFI_ORIENTATION_VERTICAL );
box_add ( (box *) parent_widget, WIDGET ( wid ), TRUE );
//g_error("The widget %s does not exists. Invalid layout.", name);
}
if ( wid ) {
GList *list = rofi_theme_get_list ( wid, "children", defaults );
for ( const GList *iter = list; iter != NULL; iter = g_list_next ( iter ) ) {
rofi_view_add_widget ( state, wid, str, (const char *) iter->data );
rofi_view_add_widget ( state, wid, "", (const char *) iter->data );
}
g_list_free_full ( list, g_free );
}
g_free ( strbox );
g_free ( str );
}
RofiViewState *rofi_view_create ( Mode *sw,
@ -1686,7 +1678,7 @@ RofiViewState *rofi_view_create ( Mode *sw,
// Get active monitor size.
TICK_N ( "Get active monitor" );
state->main_window = box_create ( "window.box", ROFI_ORIENTATION_VERTICAL );
state->main_window = box_create ( NULL, "window", ROFI_ORIENTATION_VERTICAL );
// Get children.
GList *list = rofi_theme_get_list ( WIDGET ( state->main_window ), "children", "mainbox" );
for ( const GList *iter = list; iter != NULL; iter = g_list_next ( iter ) ) {
@ -1699,8 +1691,7 @@ RofiViewState *rofi_view_create ( Mode *sw,
textbox_cursor_end ( state->text );
}
state->overlay = textbox_create ( WIDGET_TYPE_TEXTBOX_TEXT, "window.overlay", TB_AUTOWIDTH | TB_AUTOHEIGHT, URGENT, "blaat", 0.5, 0 );
state->overlay->widget.parent = WIDGET ( state->main_window );
state->overlay = textbox_create ( WIDGET ( state->main_window), WIDGET_TYPE_TEXTBOX_TEXT, "overlay", TB_AUTOWIDTH | TB_AUTOHEIGHT, URGENT, "blaat", 0.5, 0 );
widget_disable ( WIDGET ( state->overlay ) );
// filtered list
@ -1737,10 +1728,10 @@ int rofi_view_error_dialog ( const char *msg, int markup )
state->menu_flags = MENU_ERROR_DIALOG;
state->finalize = process_result;
state->main_window = box_create ( "window.box", ROFI_ORIENTATION_VERTICAL );
box *box = box_create ( "window.mainbox.message.box", ROFI_ORIENTATION_VERTICAL );
state->main_window = box_create ( NULL, "window", ROFI_ORIENTATION_VERTICAL );
box *box = box_create ( WIDGET ( state->main_window ), "message", ROFI_ORIENTATION_VERTICAL );
box_add ( state->main_window, WIDGET ( box ), TRUE );
state->text = textbox_create ( WIDGET_TYPE_TEXTBOX_TEXT, "window.mainbox.message.textbox", ( TB_AUTOHEIGHT | TB_WRAP ) + ( ( markup ) ? TB_MARKUP : 0 ),
state->text = textbox_create ( WIDGET ( box ), WIDGET_TYPE_TEXTBOX_TEXT, "textbox", ( TB_AUTOHEIGHT | TB_WRAP ) + ( ( markup ) ? TB_MARKUP : 0 ),
NORMAL, ( msg != NULL ) ? msg : "", 0, 0 );
box_add ( box, WIDGET ( state->text ), TRUE );

View file

@ -289,7 +289,7 @@ void box_add ( box *box, widget *child, gboolean expand )
box->widget.h = height;
}
child->expand = rofi_theme_get_boolean ( child, "expand", expand );
child->parent = WIDGET ( box );
g_assert ( child->parent == WIDGET ( box ) );
box->children = g_list_append ( box->children, (void *) child );
widget_update ( WIDGET ( box ) );
}
@ -324,11 +324,11 @@ static widget *box_find_mouse_target ( widget *wid, WidgetType type, gint x, gin
return NULL;
}
box * box_create ( const char *name, RofiOrientation type )
box * box_create ( widget *parent, const char *name, RofiOrientation type )
{
box *b = g_malloc0 ( sizeof ( box ) );
// Initialize widget.
widget_init ( WIDGET ( b ), WIDGET_TYPE_UNKNOWN, name );
widget_init ( WIDGET ( b ), parent, WIDGET_TYPE_UNKNOWN, name );
b->type = type;
b->widget.draw = box_draw;
b->widget.free = box_free;
@ -337,7 +337,6 @@ box * box_create ( const char *name, RofiOrientation type )
b->widget.find_mouse_target = box_find_mouse_target;
b->widget.get_desired_height = box_get_desired_height;
b->widget.get_desired_width = box_get_desired_width;
b->widget.enabled = rofi_theme_get_boolean ( WIDGET ( b ), "enabled", TRUE );
b->type = rofi_theme_get_orientation ( WIDGET ( b ), "orientation", b->type );

View file

@ -74,7 +74,7 @@ void container_add ( container *container, widget *child )
return;
}
container->child = child;
child->parent = WIDGET ( container );
g_assert ( child->parent == WIDGET ( container ));
widget_update ( WIDGET ( container ) );
}
@ -100,18 +100,17 @@ static widget *container_find_mouse_target ( widget *wid, WidgetType type, gint
return widget_find_mouse_target ( b->child, type, x, y );
}
container * container_create ( const char *name )
container * container_create ( widget *parent, const char *name )
{
container *b = g_malloc0 ( sizeof ( container ) );
// Initialize widget.
widget_init ( WIDGET ( b ), WIDGET_TYPE_UNKNOWN, name );
widget_init ( WIDGET ( b ), parent, WIDGET_TYPE_UNKNOWN, name );
b->widget.draw = container_draw;
b->widget.free = container_free;
b->widget.resize = container_resize;
b->widget.update = container_update;
b->widget.find_mouse_target = container_find_mouse_target;
b->widget.get_desired_height = container_get_desired_height;
b->widget.enabled = rofi_theme_get_boolean ( WIDGET ( b ), "enabled", TRUE );
return b;
}

View file

@ -368,14 +368,12 @@ static void listview_recompute_elements ( listview *lv )
}
lv->boxes = g_realloc ( lv->boxes, newne * sizeof ( textbox* ) );
if ( newne > 0 ) {
char *name = g_strjoin ( ".", lv->listview_name, "element", NULL );
for ( unsigned int i = lv->cur_elements; i < newne; i++ ) {
TextboxFlags flags = ( lv->multi_select ) ? TB_INDICATOR : 0;
flags |= ( ( config.show_icons ) ? TB_ICON : 0 );
lv->boxes[i] = textbox_create ( WIDGET_TYPE_LISTVIEW_ELEMENT, name, flags, NORMAL, "", 0, 0 );
lv->boxes[i] = textbox_create ( WIDGET (lv), WIDGET_TYPE_LISTVIEW_ELEMENT, "element", flags, NORMAL, "", 0, 0 );
widget_set_trigger_action_handler ( WIDGET ( lv->boxes[i] ), listview_element_trigger_action, lv );
}
g_free ( name );
}
lv->rchanged = TRUE;
lv->cur_elements = newne;
@ -513,12 +511,10 @@ static WidgetTriggerActionResult listview_element_trigger_action ( widget *wid,
return WIDGET_TRIGGER_ACTION_RESULT_HANDLED;
}
listview *listview_create ( const char *name, listview_update_callback cb, void *udata, unsigned int eh, gboolean reverse )
listview *listview_create ( widget *parent, const char *name, listview_update_callback cb, void *udata, unsigned int eh, gboolean reverse )
{
listview *lv = g_malloc0 ( sizeof ( listview ) );
gchar *box = g_strjoin ( ".", name, "box", NULL );
widget_init ( WIDGET ( lv ), WIDGET_TYPE_LISTVIEW, box );
g_free ( box );
widget_init ( WIDGET ( lv ), parent, WIDGET_TYPE_LISTVIEW, name );
lv->listview_name = g_strdup ( name );
lv->widget.free = listview_free;
lv->widget.resize = listview_resize;
@ -526,19 +522,13 @@ listview *listview_create ( const char *name, listview_update_callback cb, void
lv->widget.find_mouse_target = listview_find_mouse_target;
lv->widget.trigger_action = listview_trigger_action;
lv->widget.get_desired_height = listview_get_desired_height;
lv->widget.enabled = rofi_theme_get_boolean ( WIDGET ( lv ), "enabled", TRUE );
lv->eh = eh;
char *n = g_strjoin ( ".", lv->listview_name, "scrollbar", NULL );
lv->scrollbar = scrollbar_create ( n );
g_free ( n );
lv->scrollbar->widget.parent = WIDGET ( lv );
lv->scrollbar = scrollbar_create ( WIDGET ( lv ) , "scrollbar" );
// Calculate height of an element.
//
char *tb_name = g_strjoin ( ".", lv->listview_name, "element", NULL );
textbox *tb = textbox_create ( WIDGET_TYPE_LISTVIEW_ELEMENT, tb_name, 0, NORMAL, "", 0, 0 );
textbox *tb = textbox_create ( WIDGET (lv), WIDGET_TYPE_LISTVIEW_ELEMENT, "element", 0, NORMAL, "", 0, 0 );
lv->element_height = textbox_get_estimated_height ( tb, lv->eh );
g_free ( tb_name );
widget_free ( WIDGET ( tb ) );
lv->callback = cb;

View file

@ -98,10 +98,10 @@ static gboolean scrollbar_motion_notify ( widget *wid, G_GNUC_UNUSED gint x, gin
return TRUE;
}
scrollbar *scrollbar_create ( const char *name )
scrollbar *scrollbar_create ( widget *parent, const char *name )
{
scrollbar *sb = g_malloc0 ( sizeof ( scrollbar ) );
widget_init ( WIDGET ( sb ), WIDGET_TYPE_SCROLLBAR, name );
widget_init ( WIDGET ( sb ), parent, WIDGET_TYPE_SCROLLBAR, name );
sb->widget.x = 0;
sb->widget.y = 0;
sb->width = rofi_theme_get_distance ( WIDGET ( sb ), "handle-width", DEFAULT_SCROLLBAR_WIDTH );
@ -119,8 +119,6 @@ scrollbar *scrollbar_create ( const char *name )
sb->pos = 0;
sb->pos_length = 4;
// Enabled by default
sb->widget.enabled = rofi_theme_get_boolean ( WIDGET ( sb ), "enabled", TRUE );
return sb;
}
@ -178,7 +176,6 @@ static void scrollbar_draw ( widget *wid, cairo_t *draw )
// Never go out of bar.
height = MAX ( 2, height );
// Cap length;
rofi_theme_get_color ( WIDGET ( sb ), "foreground", draw );
rofi_theme_get_color ( WIDGET ( sb ), "handle-color", draw );
cairo_rectangle ( draw,

View file

@ -130,26 +130,8 @@ static WidgetTriggerActionResult textbox_editable_trigger_action ( widget *wid,
return WIDGET_TRIGGER_ACTION_RESULT_IGNORED;
}
textbox* textbox_create ( WidgetType type, const char *name, TextboxFlags flags, TextBoxFontType tbft, const char *text, double xalign, double yalign )
static void textbox_initialize_font ( textbox *tb )
{
textbox *tb = g_slice_new0 ( textbox );
widget_init ( WIDGET ( tb ), type, name );
tb->widget.draw = textbox_draw;
tb->widget.free = textbox_free;
tb->widget.resize = textbox_resize;
tb->widget.get_width = textbox_get_width;
tb->widget.get_height = _textbox_get_height;
tb->widget.get_desired_height = textbox_get_desired_height;
tb->widget.get_desired_width = textbox_get_desired_width;
tb->flags = flags;
tb->changed = FALSE;
tb->layout = pango_layout_new ( p_context );
textbox_font ( tb, tbft );
tb->metrics = p_metrics;
const char * font = rofi_theme_get_string ( WIDGET ( tb ), "font", NULL );
tb->left_offset = textbox_get_estimated_char_height ();
@ -178,6 +160,31 @@ textbox* textbox_create ( WidgetType type, const char *name, TextboxFlags flags,
tb->left_offset = ( tbfc->height ) / (double) PANGO_SCALE;
}
}
}
textbox* textbox_create ( widget *parent, WidgetType type, const char *name, TextboxFlags flags, TextBoxFontType tbft, const char *text, double xalign, double yalign )
{
textbox *tb = g_slice_new0 ( textbox );
widget_init ( WIDGET ( tb ), parent, type, name );
tb->widget.draw = textbox_draw;
tb->widget.free = textbox_free;
tb->widget.resize = textbox_resize;
tb->widget.get_width = textbox_get_width;
tb->widget.get_height = _textbox_get_height;
tb->widget.get_desired_height = textbox_get_desired_height;
tb->widget.get_desired_width = textbox_get_desired_width;
tb->flags = flags;
tb->changed = FALSE;
tb->layout = pango_layout_new ( p_context );
textbox_font ( tb, tbft );
textbox_initialize_font ( tb );
if ( ( tb->flags & TB_ICON ) != TB_ICON ) {
tb->left_offset = 0;
}
@ -204,8 +211,6 @@ textbox* textbox_create ( WidgetType type, const char *name, TextboxFlags flags,
tb->yalign = MAX ( 0, MIN ( 1.0, tb->yalign ) );
tb->xalign = rofi_theme_get_double ( WIDGET ( tb ), "horizontal-align", yalign );
tb->xalign = MAX ( 0, MIN ( 1.0, tb->xalign ) );
// Enabled by default
tb->widget.enabled = rofi_theme_get_boolean ( WIDGET ( tb ), "enabled", TRUE );
return tb;
}
@ -442,9 +447,7 @@ static void textbox_draw ( widget *wid, cairo_t *draw )
// TODO check if this is still needed after flatning.
cairo_set_operator ( draw, CAIRO_OPERATOR_OVER );
cairo_set_source_rgb ( draw, 0.0, 0.0, 0.0 );
rofi_theme_get_color ( WIDGET ( tb ), "foreground", draw );
// Text
rofi_theme_get_color ( WIDGET ( tb ), "text", draw );
rofi_theme_get_color ( WIDGET ( tb ), "text-color", draw );
// draw the cursor
if ( tb->flags & TB_EDITABLE && tb->blink ) {
// We want to place the cursor based on the text shown.

View file

@ -34,19 +34,23 @@
/** Default padding. */
#define WIDGET_DEFAULT_PADDING 0
void widget_init ( widget *widget, WidgetType type, const char *name )
void widget_init ( widget *wid, widget *parent, WidgetType type, const char *name )
{
widget->type = type;
widget->name = g_strdup ( name );
widget->def_padding = (RofiPadding){ { WIDGET_DEFAULT_PADDING, ROFI_PU_PX, ROFI_HL_SOLID }, { WIDGET_DEFAULT_PADDING, ROFI_PU_PX, ROFI_HL_SOLID }, { WIDGET_DEFAULT_PADDING, ROFI_PU_PX, ROFI_HL_SOLID }, { WIDGET_DEFAULT_PADDING, ROFI_PU_PX, ROFI_HL_SOLID } };
widget->def_border = (RofiPadding){ { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID } };
widget->def_border_radius = (RofiPadding){ { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID } };
widget->def_margin = (RofiPadding){ { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID } };
wid->type = type;
wid->parent = parent;
wid->name = g_strdup ( name );
wid->def_padding = (RofiPadding){ { WIDGET_DEFAULT_PADDING, ROFI_PU_PX, ROFI_HL_SOLID }, { WIDGET_DEFAULT_PADDING, ROFI_PU_PX, ROFI_HL_SOLID }, { WIDGET_DEFAULT_PADDING, ROFI_PU_PX, ROFI_HL_SOLID }, { WIDGET_DEFAULT_PADDING, ROFI_PU_PX, ROFI_HL_SOLID } };
wid->def_border = (RofiPadding){ { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID } };
wid->def_border_radius = (RofiPadding){ { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID } };
wid->def_margin = (RofiPadding){ { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID }, { 0, ROFI_PU_PX, ROFI_HL_SOLID } };
widget->padding = rofi_theme_get_padding ( widget, "padding", widget->def_padding );
widget->border = rofi_theme_get_padding ( widget, "border", widget->def_border );
widget->border_radius = rofi_theme_get_padding ( widget, "border-radius", widget->def_border_radius );
widget->margin = rofi_theme_get_padding ( widget, "margin", widget->def_margin );
wid->padding = rofi_theme_get_padding ( wid, "padding", wid->def_padding );
wid->border = rofi_theme_get_padding ( wid, "border", wid->def_border );
wid->border_radius = rofi_theme_get_padding ( wid, "border-radius", wid->def_border_radius );
wid->margin = rofi_theme_get_padding ( wid, "margin", wid->def_margin );
// bled by default
wid->enabled = rofi_theme_get_boolean ( wid, "enabled", TRUE );
}
void widget_set_state ( widget *widget, const char *state )
@ -205,7 +209,7 @@ void widget_draw ( widget *widget, cairo_t *d )
cairo_close_path ( d );
cairo_set_source_rgba ( d, 1.0, 1.0, 1.0, 1.0 );
rofi_theme_get_color ( widget, "background", d );
rofi_theme_get_color ( widget, "background-color", d );
cairo_fill_preserve ( d );
cairo_clip ( d );
@ -218,7 +222,7 @@ void widget_draw ( widget *widget, cairo_t *d )
cairo_save ( d );
cairo_translate ( d, widget->x, widget->y );
cairo_new_path ( d );
rofi_theme_get_color ( widget, "foreground", d );
rofi_theme_get_color ( widget, "border-color", d );
if ( left > 0 ) {
double offset = ( radius_tl > 0 ) ? floor ( top / 2.0 ) : 0;
cairo_set_line_width ( d, left );

View file

@ -98,11 +98,12 @@ void rofi_view_get_current_monitor ( G_GNUC_UNUSED int *width, G_GNUC_UNUSED int
int main ( G_GNUC_UNUSED int argc, G_GNUC_UNUSED char **argv )
{
{
box *b = box_create ( "box", ROFI_ORIENTATION_HORIZONTAL );
box *b = box_create ( NULL, "box", ROFI_ORIENTATION_HORIZONTAL );
//box_set_padding ( b, 5 );
widget_resize ( WIDGET (b), 100, 20);
widget *wid1 = g_malloc0(sizeof(widget));
wid1->parent = WIDGET(b);
box_add ( b , WIDGET( wid1 ), TRUE );
// Widget not enabled. no width allocated.
TASSERTE ( wid1->h, 0);
@ -113,6 +114,7 @@ int main ( G_GNUC_UNUSED int argc, G_GNUC_UNUSED char **argv )
TASSERTE ( wid1->h, 20);
TASSERTE ( wid1->w, 100 );
widget *wid2 = g_malloc0(sizeof(widget));
wid2->parent = WIDGET (b) ;
widget_enable ( WIDGET ( wid2 ) );
box_add ( b , WIDGET( wid2 ), TRUE );
TASSERTE ( wid1->h, 20);
@ -121,6 +123,7 @@ int main ( G_GNUC_UNUSED int argc, G_GNUC_UNUSED char **argv )
TASSERTE ( wid2->w, 49);
widget *wid3 = g_malloc0(sizeof(widget));
wid3->parent = WIDGET (b);
widget_enable ( WIDGET ( wid3 ) );
box_add ( b , WIDGET( wid3 ), FALSE );
TASSERTE ( wid1->h, 20);
@ -148,11 +151,13 @@ int main ( G_GNUC_UNUSED int argc, G_GNUC_UNUSED char **argv )
// TASSERTE ( box_get_fixed_pixels ( b ) , 24 );
widget *wid4 = g_malloc0(sizeof(widget));
wid4->parent = WIDGET ( b );
widget_enable ( WIDGET ( wid4 ) );
widget_resize ( WIDGET ( wid4 ), 20, 20 );
box_add ( b , WIDGET( wid4 ), FALSE );
TASSERTE ( wid4->x, 200-20);
widget *wid5 = g_malloc0(sizeof(widget));
wid5->parent = WIDGET ( b );
widget_enable ( WIDGET ( wid5 ) );
widget_resize ( WIDGET ( wid5 ), 20, 20 );
box_add ( b , WIDGET( wid5 ), TRUE );
@ -160,11 +165,12 @@ int main ( G_GNUC_UNUSED int argc, G_GNUC_UNUSED char **argv )
widget_free ( WIDGET ( b ) );
}
{
box *b = box_create ( "box", ROFI_ORIENTATION_VERTICAL );
box *b = box_create ( NULL, "box", ROFI_ORIENTATION_VERTICAL );
widget_resize ( WIDGET (b), 20, 100);
//box_set_padding ( b, 5 );
widget *wid1 = g_malloc0(sizeof(widget));
wid1->parent = WIDGET ( b );
box_add ( b , WIDGET( wid1 ), TRUE );
// Widget not enabled. no width allocated.
TASSERTE ( wid1->h, 0);
@ -175,6 +181,7 @@ int main ( G_GNUC_UNUSED int argc, G_GNUC_UNUSED char **argv )
TASSERTE ( wid1->h, 100);
TASSERTE ( wid1->w, 20 );
widget *wid2 = g_malloc0(sizeof(widget));
wid2->parent = WIDGET ( b );
widget_enable ( WIDGET ( wid2 ) );
box_add ( b , WIDGET( wid2 ), TRUE );
TASSERTE ( wid1->w, 20);
@ -183,6 +190,7 @@ int main ( G_GNUC_UNUSED int argc, G_GNUC_UNUSED char **argv )
TASSERTE ( wid2->h, 49);
widget *wid3 = g_malloc0(sizeof(widget));
wid3->parent = WIDGET ( b );
widget_enable ( WIDGET ( wid3 ) );
box_add ( b , WIDGET( wid3 ), FALSE );
TASSERTE ( wid1->w, 20);
@ -209,11 +217,13 @@ int main ( G_GNUC_UNUSED int argc, G_GNUC_UNUSED char **argv )
TASSERTE ( wid3->h, 20);
// TASSERTE ( box_get_fixed_pixels ( b ) , 4 );
widget *wid4 = g_malloc0(sizeof(widget));
wid4->parent = WIDGET ( b );
widget_enable ( WIDGET ( wid4 ) );
widget_resize ( WIDGET ( wid4 ), 20, 20 );
box_add ( b , WIDGET( wid4 ), FALSE );
TASSERTE ( wid4->y, 180);
widget *wid5 = g_malloc0(sizeof(widget));
wid5->parent = WIDGET ( b );
widget_enable ( WIDGET ( wid5 ) );
widget_resize ( WIDGET ( wid5 ), 20, 20 );
box_add ( b , WIDGET( wid5 ), TRUE );
@ -221,18 +231,21 @@ int main ( G_GNUC_UNUSED int argc, G_GNUC_UNUSED char **argv )
widget_free ( WIDGET ( b ) );
}
{
box *b = box_create ( "box", ROFI_ORIENTATION_VERTICAL );
box *b = box_create ( NULL, "box", ROFI_ORIENTATION_VERTICAL );
widget_resize ( WIDGET (b), 20, 90);
//box_set_padding ( b, 5 );
widget *wid1 = g_malloc0(sizeof(widget));
wid1->parent = WIDGET ( b );
wid1->type = 1;
widget_enable(wid1);
box_add ( b , WIDGET( wid1 ), TRUE );
widget *wid2 = g_malloc0(sizeof(widget));
wid2->parent = WIDGET ( b );
wid2->type = 1;
widget_enable(wid2);
box_add ( b , WIDGET( wid2 ), TRUE );
widget *wid3 = g_malloc0(sizeof(widget));
wid3->parent = WIDGET ( b );
wid3->type = 2;
widget_enable(wid3);
box_add ( b , WIDGET( wid3 ), TRUE );

View file

@ -90,7 +90,7 @@ void rofi_view_get_current_monitor ( G_GNUC_UNUSED int *width, G_GNUC_UNUSED int
int main ( G_GNUC_UNUSED int argc, G_GNUC_UNUSED char **argv )
{
scrollbar * sb = scrollbar_create ( "scrollbar" );
scrollbar * sb = scrollbar_create ( NULL, "scrollbar" );
widget_resize ( WIDGET (sb), 10, 100);
scrollbar_set_handle ( NULL, 10213);

View file

@ -93,7 +93,7 @@ int main ( G_GNUC_UNUSED int argc, G_GNUC_UNUSED char **argv )
textbox_set_pango_context ( "default", p );
textbox *box = textbox_create ( WIDGET_TYPE_TEXTBOX_TEXT, "textbox", TB_EDITABLE | TB_AUTOWIDTH | TB_AUTOHEIGHT, NORMAL, "test",0,0 );
textbox *box = textbox_create ( NULL, WIDGET_TYPE_TEXTBOX_TEXT, "textbox", TB_EDITABLE | TB_AUTOWIDTH | TB_AUTOHEIGHT, NORMAL, "test",0,0 );
TASSERT ( box != NULL );
textbox_keybinding ( box, MOVE_END );

View file

@ -927,7 +927,7 @@ START_TEST ( test_properties_color_names )
char * str = g_strdup_printf("* { color: %s;}", CSSColors[iter].name);
rofi_theme_parse_string(str);
ThemeWidget *twid = rofi_theme_find_widget ( wid.name, wid.state, FALSE );
Property *p = rofi_theme_find_property ( twid, P_COLOR, "color", FALSE );
Property *p = rofi_theme_find_property ( twid, P_COLOR, "text-color", FALSE );
ck_assert_ptr_nonnull ( p );
ck_assert_double_eq ( p->value.color.alpha , 1.0 );
ck_assert_double_eq_tol ( p->value.color.red , CSSColors[iter].r/255.0, 0.004);
@ -939,7 +939,7 @@ START_TEST ( test_properties_color_names )
{
rofi_theme_parse_string("* {color: transparent;}");
ThemeWidget *twid = rofi_theme_find_widget ( wid.name, wid.state, FALSE );
Property *p = rofi_theme_find_property ( twid, P_COLOR, "color", FALSE );
Property *p = rofi_theme_find_property ( twid, P_COLOR, "text-color", FALSE );
ck_assert_ptr_nonnull ( p );
ck_assert_double_eq ( p->value.color.alpha , 0.0 );
ck_assert_double_eq_tol ( p->value.color.red , 0.0, 0.004);
@ -957,7 +957,7 @@ START_TEST ( test_properties_color_names_alpha )
char * str = g_strdup_printf("* { color: %s / %d %%;}", CSSColors[iter].name, iter%101);
rofi_theme_parse_string(str);
ThemeWidget *twid = rofi_theme_find_widget ( wid.name, wid.state, FALSE );
Property *p = rofi_theme_find_property ( twid, P_COLOR, "color", FALSE );
Property *p = rofi_theme_find_property ( twid, P_COLOR, "text-color", FALSE );
ck_assert_ptr_nonnull ( p );
ck_assert_double_eq ( p->value.color.alpha , (iter%101)/100.0);
ck_assert_double_eq_tol ( p->value.color.red , CSSColors[iter].r/255.0, 0.004);

View file

@ -1,89 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! Based on Adapta-Nokto GTK theme (https://github.com/adapta-project/adapta-gtk-theme)
//! User: PyGeek03
//! Copyright: PyGeek03
//! ------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 250, 251, 252, 100 % );
foreground: rgba ( 250, 251, 252, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 69, 90, 100, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 253, 246, 227, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 255, 82, 82, 100 % );
alternate-urgent-background: rgba ( 69, 90, 100, 100 % );
active-foreground: rgba ( 0, 188, 212, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 253, 246, 227, 100 % );
alternate-active-background: rgba ( 69, 90, 100, 100 % );
background: rgba ( 58, 76, 84, 100 % );
bordercolor: rgba ( 42, 55, 62, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 69, 90, 100, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 0, 188, 212, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 195, 198, 200, 100 % );
urgent-background: rgba ( 69, 90, 100, 100 % );
selected-urgent-background: rgba ( 255, 82, 82, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 69, 90, 100, 100 % );
selected-active-background: rgba ( 0, 150, 136, 100 % );
}
#window {
border: 2;
foreground: #C3C6C8FF;
padding: 5;
background: #3A4C54FF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #FAFBFCFF;
background: #455A64FF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #FAFBFCFF;
background: #455A64FF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #FF5252FF;
background: #455A64FF;
}
#window.mainbox.listview.element.normal.active {
foreground: #00BCD4FF;
background: #455A64FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #FAFBFCFF;
background: #00BCD4FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #FDF6E3FF;
background: #FF5252FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #FDF6E3FF;
background: #009688FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #FAFBFCFF;
background: #455A64FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #FF5252FF;
background: #455A64FF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #00BCD4FF;
background: #455A64FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #FAFBFCFF;
background: #455A64FF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,89 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: Sergio Morales
//! Copyright: Sergio Morales
//! ------------------------------------------------------------------------------
//! Use extended color scheme
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 255, 255, 255, 100 % );
foreground: rgba ( 82, 93, 118, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 245, 245, 245, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 220, 50, 47, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 220, 50, 47, 100 % );
alternate-urgent-background: rgba ( 245, 245, 245, 100 % );
active-foreground: rgba ( 194, 202, 208, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 194, 202, 208, 100 % );
alternate-active-background: rgba ( 245, 245, 245, 100 % );
background: rgba ( 255, 255, 255, 100 % );
bordercolor: rgba ( 245, 245, 245, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 255, 255, 255, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 82, 148, 226, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: @foreground;
urgent-background: rgba ( 255, 255, 255, 100 % );
selected-urgent-background: rgba ( 82, 148, 226, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 255, 255, 255, 100 % );
selected-active-background: rgba ( 82, 148, 226, 100 % );
}
#window {
border: 2;
foreground: #F5F5F5FF;
padding: 5;
background: #FFFFFFFF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
}
#window.mainbox.message.normal {
foreground: #525D76FF;
background: #FFFFFFFF;
}
#window.mainbox.listview {
fixed-height: 1;
#message {
border: 2px 0px 0px ;
columns: 1;
border-color: @separatorcolor;
padding: 1px ;
}
#textbox {
text-color: @foreground;
}
#listview {
fixed-height: 0;
border: 2px 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #525D76FF;
background: #FFFFFFFF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #DC322FFF;
background: #FFFFFFFF;
}
#window.mainbox.listview.element.normal.active {
foreground: #C2CAD0FF;
background: #FFFFFFFF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #FFFFFFFF;
background: #5294E2FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #DC322FFF;
background: #5294E2FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #C2CAD0FF;
background: #5294E2FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #525D76FF;
background: #F5F5F5FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #DC322FFF;
background: #F5F5F5FF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #C2CAD0FF;
background: #F5F5F5FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #525D76FF;
background: #FFFFFFFF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,94 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: qball
//! Copyright: Dave Davenport
//! ------------------------------------------------------------------------------
//! "Color scheme for normal row" Set from: File
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 2, 20, 63, 100 % );
foreground: rgba ( 219, 223, 188, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 0, 0, 0, 0 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 2, 20, 63, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 255, 129, 255, 100 % );
alternate-urgent-background: rgba ( 0, 0, 0, 0 % );
active-foreground: rgba ( 138, 196, 255, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 2, 20, 63, 100 % );
alternate-active-background: rgba ( 0, 0, 0, 0 % );
background: rgba ( 0, 0, 33, 87 % );
bordercolor: rgba ( 219, 223, 188, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 0, 0, 208, 0 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 219, 223, 188, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 219, 223, 188, 100 % );
urgent-background: rgba ( 0, 0, 208, 0 % );
selected-urgent-background: rgba ( 255, 129, 127, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 0, 0, 208, 0 % );
selected-active-background: rgba ( 138, 196, 255, 100 % );
}
#window {
border: 2;
foreground: #DBDFBCFF;
padding: 5;
background: #000021DD;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
}
#window.mainbox.message.normal {
foreground: #DBDFBCFF;
background: #00000000;
}
#window.mainbox.listview {
fixed-height: 1;
#message {
border: 2px 0px 0px ;
columns: 1;
border-color: @separatorcolor;
padding: 1px ;
}
#textbox {
text-color: @foreground;
}
#listview {
fixed-height: 0;
border: 2px 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #DBDFBCFF;
background: #00000000;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #FF81FFFF;
background: #00000000;
}
#window.mainbox.listview.element.normal.active {
foreground: #8AC4FFFF;
background: #00000000;
}
#window.mainbox.listview.element.selected.normal {
foreground: #02143FFF;
background: #DBDFBCFF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #02143FFF;
background: #FF817FFF;
}
#window.mainbox.listview.element.selected.active {
foreground: #02143FFF;
background: #8AC4FFFF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #DBDFBCFF;
background: #00000000;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #FF81FFFF;
background: #00000000;
}
#window.mainbox.listview.element.alternate.active {
foreground: #8AC4FFFF;
background: #00000000;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.sidebar.button selected{
border: 2px 0px 0px ;
foreground: #02143FFF;
background: #DBDFBCFF;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.box {
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #DBDFBCFF;
background: #00000000;
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,89 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: qball
//! Copyright: Dave Davenport
//! ------------------------------------------------------------------------------
//! "Color scheme for normal row" Set from: File
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 232, 234, 246, 100 % );
foreground: rgba ( 232, 234, 246, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 40, 53, 147, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 183, 28, 28, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 255, 205, 210, 100 % );
alternate-urgent-background: rgba ( 183, 28, 28, 100 % );
active-foreground: rgba ( 178, 235, 242, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 0, 96, 100, 100 % );
alternate-active-background: rgba ( 0, 96, 100, 100 % );
background: rgba ( 26, 35, 126, 100 % );
bordercolor: rgba ( 232, 234, 246, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 152, 108, 128, 3 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 63, 81, 181, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 232, 234, 246, 100 % );
urgent-background: rgba ( 223, 110, 0, 6 % );
selected-urgent-background: rgba ( 255, 205, 210, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 223, 110, 0, 6 % );
selected-active-background: rgba ( 178, 235, 242, 100 % );
}
#window {
border: 2;
foreground: #E8EAF6FF;
padding: 5;
background: #1A237EFF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
}
#window.mainbox.message.normal {
foreground: #E8EAF6FF;
background: #7986CB00;
}
#window.mainbox.listview {
fixed-height: 1;
#message {
border: 2px 0px 0px ;
columns: 1;
border-color: @separatorcolor;
padding: 1px ;
}
#textbox {
text-color: @foreground;
}
#listview {
fixed-height: 0;
border: 2px 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #E8EAF6FF;
background: #7986CB00;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #FFCDD2FF;
background: #FDF6E300;
}
#window.mainbox.listview.element.normal.active {
foreground: #B2EBF2FF;
background: #FDF6E300;
}
#window.mainbox.listview.element.selected.normal {
foreground: #E8EAF6FF;
background: #3F51B5FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #B71C1CFF;
background: #FFCDD2FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #006064FF;
background: #B2EBF2FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #E8EAF6FF;
background: #283593FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #FFCDD2FF;
background: #B71C1CFF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #B2EBF2FF;
background: #006064FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #E8EAF6FF;
background: #7986CB00;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,89 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: milouse
//! Copyright: Étienne Deparis
//! ------------------------------------------------------------------------------
//! "Color scheme for normal row" Set from: File
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 248, 248, 242, 100 % );
foreground: rgba ( 248, 248, 242, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 39, 40, 34, 0 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 248, 248, 242, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 249, 38, 114, 100 % );
alternate-urgent-background: rgba ( 39, 40, 34, 0 % );
active-foreground: rgba ( 166, 226, 42, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 166, 226, 42, 100 % );
alternate-active-background: rgba ( 39, 40, 34, 0 % );
background: rgba ( 39, 40, 34, 93 % );
bordercolor: rgba ( 0, 43, 54, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 39, 40, 34, 0 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 20, 20, 17, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 230, 219, 116, 100 % );
urgent-background: rgba ( 39, 40, 34, 0 % );
selected-urgent-background: rgba ( 249, 38, 114, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 39, 40, 34, 0 % );
selected-active-background: rgba ( 20, 20, 17, 100 % );
}
#window {
border: 2;
foreground: #E6DB74FF;
padding: 5;
background: #272822EE;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
}
#window.mainbox.message.normal {
foreground: #F8F8F2FF;
background: #27282200;
}
#window.mainbox.listview {
fixed-height: 1;
#message {
border: 2px 0px 0px ;
columns: 1;
border-color: @separatorcolor;
padding: 1px ;
}
#textbox {
text-color: @foreground;
}
#listview {
fixed-height: 0;
border: 2px 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #F8F8F2FF;
background: #27282200;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #F92672FF;
background: #27282200;
}
#window.mainbox.listview.element.normal.active {
foreground: #A6E22AFF;
background: #27282200;
}
#window.mainbox.listview.element.selected.normal {
foreground: #F8F8F2FF;
background: #141411FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #F8F8F2FF;
background: #F92672FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #A6E22AFF;
background: #141411FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #F8F8F2FF;
background: #27282200;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #F92672FF;
background: #27282200;
}
#window.mainbox.listview.element.alternate.active {
foreground: #A6E22AFF;
background: #27282200;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #F8F8F2FF;
background: #27282200;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,89 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: qball
//! Copyright: Dave Davenport
//! ------------------------------------------------------------------------------
//! "Color scheme for normal row" Set from: File
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 245, 245, 245, 100 % );
foreground: rgba ( 0, 43, 54, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 208, 208, 208, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 245, 245, 245, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 215, 95, 0, 100 % );
alternate-urgent-background: rgba ( 208, 208, 208, 100 % );
active-foreground: rgba ( 0, 95, 135, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 245, 245, 245, 100 % );
alternate-active-background: rgba ( 208, 208, 208, 100 % );
background: rgba ( 245, 245, 245, 100 % );
bordercolor: rgba ( 68, 68, 68, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 95, 95, 32, 6 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 66, 113, 174, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 68, 68, 68, 100 % );
urgent-background: rgba ( 245, 245, 245, 100 % );
selected-urgent-background: rgba ( 215, 95, 0, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 245, 245, 245, 100 % );
selected-active-background: rgba ( 0, 95, 135, 100 % );
}
#window {
border: 2;
foreground: #444444FF;
padding: 5;
background: #F5F5F5FF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
}
#window.mainbox.message.normal {
foreground: #002B36FF;
background: #F5F5F500;
}
#window.mainbox.listview {
fixed-height: 1;
#message {
border: 2px 0px 0px ;
columns: 1;
border-color: @separatorcolor;
padding: 1px ;
}
#textbox {
text-color: @foreground;
}
#listview {
fixed-height: 0;
border: 2px 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #002B36FF;
background: #F5F5F500;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #D75F00FF;
background: #F5F5F5FF;
}
#window.mainbox.listview.element.normal.active {
foreground: #005F87FF;
background: #F5F5F5FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #F5F5F5FF;
background: #4271AEFF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #F5F5F5FF;
background: #D75F00FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #F5F5F5FF;
background: #005F87FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #002B36FF;
background: #D0D0D0FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #D75F00FF;
background: #D0D0D0FF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #005F87FF;
background: #D0D0D0FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #002B36FF;
background: #F5F5F500;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -2,8 +2,8 @@
* Author: Primetoxinz
*/
* {
foreground: #f2f2f2;
background: #4e4743;
text-color: #f2f2f2;
background-color: #4e4743;
lightbg: #534c48;
red: #f15d22;
orange: #faa41a;
@ -33,85 +33,81 @@
}
#window {
border: 0;
foreground: @foreground;
background: rgba ( 0, 0, 0, 0 % );
text-color: @foreground;
background-color: rgba ( 0, 0, 0, 0 % );
padding: 5;
text-color: @bordercolor;
background-color: @background;
}
#window.box {
foreground: @bordercolor;
background: @background;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
#message {
border: 1px dash 0px 0px ;
foreground: @separatorcolor;
text-color: @separatorcolor;
padding: 2px 0px 0px ;
}
#window.mainbox.message.normal {
foreground: @foreground;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
#listview {
fixed-height: 0;
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
foreground: @separatorcolor;
text-color: @separatorcolor;
}
#window.mainbox.listview.element {
#element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: @normal-foreground;
background: @normal-background;
#element.normal.normal {
text-color: @normal-foreground;
background-color: @normal-background;
}
#window.mainbox.listview.element.normal.urgent {
foreground: @urgent-foreground;
background: @urgent-background;
#element.normal.urgent {
text-color: @urgent-foreground;
background-color: @urgent-background;
}
#window.mainbox.listview.element.normal.active {
foreground: @active-foreground;
background: @active-background;
#element.normal.active {
text-color: @active-foreground;
background-color: @active-background;
}
#window.mainbox.listview.element.selected.normal {
foreground: @selected-normal-foreground;
background: @selected-normal-background;
#element.selected.normal {
text-color: @selected-normal-foreground;
background-color: @selected-normal-background;
}
#window.mainbox.listview.element.selected.urgent {
foreground: @selected-urgent-foreground;
background: @selected-urgent-background;
#element.selected.urgent {
text-color: @selected-urgent-foreground;
background-color: @selected-urgent-background;
}
#window.mainbox.listview.element.selected.active {
foreground: @selected-active-foreground;
background: @selected-active-background;
#element.selected.active {
text-color: @selected-active-foreground;
background-color: @selected-active-background;
}
#window.mainbox.listview.element.alternate.normal {
foreground: @alternate-normal-foreground;
background: @alternate-normal-background;
#element.alternate.normal {
text-color: @alternate-normal-foreground;
background-color: @alternate-normal-background;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: @alternate-urgent-foreground;
background: @alternate-urgent-background;
#element.alternate.urgent {
text-color: @alternate-urgent-foreground;
background-color: @alternate-urgent-background;
}
#window.mainbox.listview.element.alternate.active {
foreground: @alternate-active-foreground;
background: @alternate-active-background;
#element.alternate.active {
text-color: @alternate-active-foreground;
background-color: @alternate-active-background;
}
#window.mainbox.sidebar.box {
#sidebar {
border: 1px dash 0px 0px ;
}
#window.mainbox.sidebar.button.selected {
foreground: @selected-normal-foreground;
background: @selected-normal-background;
#button selected {
text-color: @selected-normal-foreground;
background-color: @selected-normal-background;
}
#window.mainbox.inputbar {
#inputbar {
spacing: 0;
}
#window.mainbox.inputbar.box {
border: 0px ;
}
#window.mainbox.inputbar.normal {
foreground: @foreground;
#button normal {
text-color: @foreground;
}

View file

@ -1,88 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: Rasi
//! Copyright: Rasmus Steinke
//! ------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 255, 255, 255, 100 % );
foreground: rgba ( 193, 193, 193, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 39, 50, 56, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 255, 24, 68, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 255, 24, 68, 100 % );
alternate-urgent-background: rgba ( 39, 50, 56, 100 % );
active-foreground: rgba ( 128, 203, 196, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 128, 203, 196, 100 % );
alternate-active-background: rgba ( 39, 50, 56, 100 % );
background: rgba ( 39, 50, 56, 100 % );
bordercolor: rgba ( 39, 50, 56, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 39, 50, 56, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 57, 66, 73, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 30, 37, 41, 100 % );
urgent-background: rgba ( 39, 50, 56, 100 % );
selected-urgent-background: rgba ( 57, 66, 73, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 39, 50, 56, 100 % );
selected-active-background: rgba ( 57, 66, 73, 100 % );
}
#window {
border: 2;
foreground: #1E2529FF;
padding: 5;
background: #273238FF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #C1C1C1FF;
background: #273238FF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #C1C1C1FF;
background: #273238FF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #FF1844FF;
background: #273238FF;
}
#window.mainbox.listview.element.normal.active {
foreground: #80CBC4FF;
background: #273238FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #FFFFFFFF;
background: #394249FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #FF1844FF;
background: #394249FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #80CBC4FF;
background: #394249FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #C1C1C1FF;
background: #273238FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #FF1844FF;
background: #273238FF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #80CBC4FF;
background: #273238FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #C1C1C1FF;
background: #273238FF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,14 +1,32 @@
configuration {
// The display name of this browser
display-ssh: " ";
// The display name of this browser
display-run: "";
// The display name of this browser
display-drun: "";
// The display name of this browser
display-window: "";
display-combi: "";
show-icons: true;
}
/**
* User: Qball
* Copyright: Dave Davenport
*/
* {
foreground: #ffeedd;
background: rgba(0,0,0,0);
backlight: #ccffeedd;
background-color: rgba(0,0,0,0);
dark: #1c1c1c;
// Black
black: #3d352a;
lightblack: #554444;
tlightblack: #554444cc;
//
// Red
red: #cd5c5c;
@ -32,6 +50,7 @@
//
// Cyan
cyan: #b0c4de;
tcyan: #ccb0c4de;
lightcyan: #b0c4de;
//
// White
@ -39,61 +58,130 @@
lightwhite: #ddccbb;
//
// Bold, Italic, Underline
highlight: bold #ffffff;
highlight: underline bold #ffffff;
transparent: rgba(0,0,0,0);
font: "Sauce Code Powerline Medium 10";
}
#window {
location: center;
anchor: center;
}
#window box {
transparency: "screenshot";
padding: 10px;
border: 1px;
border-radius: 15px;
foreground: @magenta;
background: #1c1c1ccc;
border: 0px;
border-radius: 10px;
color: @magenta;
background-color: @transparent;
spacing: 0;
children: [vertb, mainbox];
orientation: horizontal;
}
#window mainbox inputbar {
background: @lightblack;
text: @lightgreen;
padding: 4px;
}
#window mainbox inputbar box {
border: 0px 0px 2px 0px;
}
#window mainbox box {
spacing: 0.3em;
#mainbox {
spacing: 0;
children: [ inputbar, listview ];
}
#window mainbox listview {
#message {
border-color: @foreground;
border: 0px 2px 2px 2px;
// border-radius: 10px;
padding: 5;
background-color: @tcyan;
}
#message {
font: "Sauce Code Powerline ExtraLight 8";
color: @black;
}
#inputbar {
color: @lightgreen;
padding: 11px;
background-color: @tlightblack;
border: 2px 2px 2px 2px;
border-radius: 15px 15px 0px 0px;
border-color: @foreground;
font: "Sauce Code Pro 18";
}
#entry,prompt,case-indicator {
text-font: inherit;
text-color:inherit;
}
#listview {
padding: 8px;
border-radius: 0px 0px 15px 15px;
border-color: @foreground;
border: 0px 2px 2px 2px;
background-color: #1c1c1ccc;
dynamic: false;
lines: 10;
}
#window mainbox listview element selected normal {
background: @blue;
#element {
padding: 3px;
vertical-align: 0.5;
// border: 2px;
border-radius: 4px;
background-color: transparent;
color: @foreground;
font:inherit;
}
#window mainbox listview element normal active {
#element selected.normal {
background-color: @blue;
}
#element normal active {
foreground: @lightblue;
}
#window mainbox listview element normal urgent {
#element normal urgent {
foreground: @lightred;
}
#window mainbox listview element alternate normal {
#element alternate normal {
}
#window mainbox listview element alternate active {
#element alternate active {
foreground: @lightblue;
}
#window mainbox listview element alternate urgent {
#element alternate urgent {
foreground: @lightred;
}
#window mainbox listview element selected active {
background: @lightblue;
#element selected active {
background-color: @lightblue;
foreground: @dark;
}
#window mainbox listview element selected urgent {
background: @lightred;
#element selected urgent {
background-color: @lightred;
foreground: @dark;
}
#window mainbox listview element normal normal {
#element normal normal {
}
#vertb {
expand: false;
children: [ dummy0, sidebar, dummy1 ];
}
#dummy0, dummy1 {
expand: true;
}
#sidebar {
expand: false;
orientation: vertical;
spacing: 0px;
border: 0px 0px 0px 0px;
}
#button {
font: "FontAwesome 22";
padding: 6px;
border: 2px 0px 2px 2px;
border-radius: 4px 0px 0px 4px;
background-color: @tlightblack;
border-color: @foreground;
color: @foreground;
horizontal-align: 0.5;
}
#button selected normal {
color: @dark;
border: 2px 0px 2px 2px;
background-color: @backlight;
border-color: @foreground;
}

View file

@ -1,89 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: qball
//! Copyright: Dave Davenport
//! ------------------------------------------------------------------------------
//! Use extended color scheme
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 0, 96, 160, 100 % );
foreground: rgba ( 0, 176, 239, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 0, 0, 0, 0 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 0, 96, 160, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 255, 160, 160, 100 % );
alternate-urgent-background: rgba ( 0, 0, 0, 0 % );
active-foreground: rgba ( 160, 255, 160, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 0, 96, 160, 100 % );
alternate-active-background: rgba ( 0, 0, 0, 0 % );
background: rgba ( 0, 96, 160, 93 % );
bordercolor: rgba ( 0, 176, 239, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 0, 0, 0, 0 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 0, 176, 239, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 0, 176, 239, 100 % );
urgent-background: rgba ( 0, 0, 0, 0 % );
selected-urgent-background: rgba ( 255, 160, 160, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 0, 0, 0, 0 % );
selected-active-background: rgba ( 160, 255, 160, 100 % );
}
#window {
border: 2;
foreground: #00B0EFFF;
padding: 5;
background: #0060A0EE;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #00B0EFFF;
background: #00000000;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #00B0EFFF;
background: #00000000;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #FFA0A0FF;
background: #00000000;
}
#window.mainbox.listview.element.normal.active {
foreground: #A0FFA0FF;
background: #00000000;
}
#window.mainbox.listview.element.selected.normal {
foreground: #0060A0FF;
background: #00B0EFFF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #0060A0FF;
background: #FFA0A0FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #0060A0FF;
background: #A0FFA0FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #00B0EFFF;
background: #00000000;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #FFA0A0FF;
background: #00000000;
}
#window.mainbox.listview.element.alternate.active {
foreground: #A0FFA0FF;
background: #00000000;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #00B0EFFF;
background: #00000000;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,88 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: Rasi
//! Copyright: Rasmus Steinke
//! ------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 255, 255, 255, 100 % );
foreground: rgba ( 79, 128, 255, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 0, 57, 255, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 255, 112, 71, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 255, 112, 71, 100 % );
alternate-urgent-background: rgba ( 0, 57, 255, 100 % );
active-foreground: rgba ( 104, 186, 80, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 104, 186, 80, 100 % );
alternate-active-background: rgba ( 0, 57, 255, 100 % );
background: rgba ( 0, 57, 255, 100 % );
bordercolor: rgba ( 0, 57, 255, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 0, 57, 255, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 79, 128, 255, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 79, 128, 255, 100 % );
urgent-background: rgba ( 0, 57, 255, 100 % );
selected-urgent-background: rgba ( 79, 128, 255, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 0, 57, 255, 100 % );
selected-active-background: rgba ( 79, 128, 255, 100 % );
}
#window {
border: 2;
foreground: #4F80FFFF;
padding: 5;
background: #0039FFFF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #4F80FFFF;
background: #0039FFFF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #4F80FFFF;
background: #0039FFFF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #FF7047FF;
background: #0039FFFF;
}
#window.mainbox.listview.element.normal.active {
foreground: #68BA50FF;
background: #0039FFFF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #FFFFFFFF;
background: #4F80FFFF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #FF7047FF;
background: #4F80FFFF;
}
#window.mainbox.listview.element.selected.active {
foreground: #68BA50FF;
background: #4F80FFFF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #4F80FFFF;
background: #0039FFFF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #FF7047FF;
background: #0039FFFF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #68BA50FF;
background: #0039FFFF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #4F80FFFF;
background: #0039FFFF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,44 +1,40 @@
* {
background: Black;
foreground: White;
background-color: Black;
border-color: White;
text-color: White;
font: "Times New Roman 12";
}
configuration {
show-icons: true;
drun-icon-theme: "gnome";
}
#window {
anchor: north;
location: north;
}
#window box {
width: 100%;
padding: 4px;
children: [ horibox ];
}
#window horibox box {
#horibox {
orientation: horizontal;
children: [ prompt, entry, listview ];
}
#window horibox listview box {
#listview {
layout: horizontal;
spacing: 5px;
lines: 10;
lines: 100;
}
#window horibox entry {
#entry {
expand: false;
width: 10em;
}
#window horibox listview element {
#element {
padding: 0px 2px;
}
#window horibox listview element selected {
background: SteelBlue;
#element selected {
background-color: SteelBlue;
}

View file

@ -1,88 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: Rasi
//! Copyright: Rasmus Steinke
//! ------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 255, 255, 255, 100 % );
foreground: rgba ( 255, 255, 255, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 57, 57, 57, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 255, 195, 156, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 243, 132, 61, 100 % );
alternate-urgent-background: rgba ( 57, 57, 57, 100 % );
active-foreground: rgba ( 38, 139, 210, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 32, 81, 113, 100 % );
alternate-active-background: rgba ( 57, 57, 57, 100 % );
background: rgba ( 57, 57, 57, 100 % );
bordercolor: rgba ( 57, 57, 57, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 57, 57, 57, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 38, 139, 210, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 38, 139, 210, 100 % );
urgent-background: rgba ( 57, 57, 57, 100 % );
selected-urgent-background: rgba ( 38, 139, 210, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 57, 57, 57, 100 % );
selected-active-background: rgba ( 38, 139, 210, 100 % );
}
#window {
border: 2;
foreground: #268BD2FF;
padding: 5;
background: #393939FF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #FFFFFFFF;
background: #393939FF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #FFFFFFFF;
background: #393939FF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #F3843DFF;
background: #393939FF;
}
#window.mainbox.listview.element.normal.active {
foreground: #268BD2FF;
background: #393939FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #FFFFFFFF;
background: #268BD2FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #FFC39CFF;
background: #268BD2FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #205171FF;
background: #268BD2FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #FFFFFFFF;
background: #393939FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #F3843DFF;
background: #393939FF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #268BD2FF;
background: #393939FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #FFFFFFFF;
background: #393939FF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,95 +1,127 @@
//!-------------------------------------------------------------------------------
//! Rofi color theme
//!
//! Based on the Gruvbox color scheme for Vim by morhetz
//! https://github.com/morhetz/gruvbox
//!
//! File: gruvbox-dark-hard.theme
//! Desc: Gruvbox dark (hard contrast) color theme for Rofi
//! Author: bardisty <b@bah.im>
//! Source: https://github.com/bardisty/gruvbox-rofi
//! Modified: Sat Oct 22 2016 03:12:10 PDT -0700
//!-------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 251, 241, 199, 100 % );
foreground: rgba ( 235, 219, 178, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 40, 40, 40, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 29, 32, 33, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 29, 32, 33, 100 % );
alternate-urgent-background: rgba ( 204, 36, 29, 100 % );
active-foreground: rgba ( 29, 32, 33, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 29, 32, 33, 100 % );
alternate-active-background: rgba ( 215, 153, 33, 100 % );
background: rgba ( 29, 32, 33, 100 % );
bordercolor: rgba ( 168, 153, 132, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 29, 32, 33, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 80, 73, 69, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 168, 153, 132, 100 % );
urgent-background: rgba ( 204, 36, 29, 100 % );
selected-urgent-background: rgba ( 251, 73, 52, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 215, 153, 33, 100 % );
selected-active-background: rgba ( 250, 189, 47, 100 % );
}
#window {
border: 2;
foreground: #A89984FF;
padding: 5;
background: #1D2021FF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #EBDBB2FF;
background: #1D2021FF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #EBDBB2FF;
background: #1D2021FF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #1D2021FF;
background: #CC241DFF;
}
#window.mainbox.listview.element.normal.active {
foreground: #1D2021FF;
background: #D79921FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #FBF1C7FF;
background: #504945FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #1D2021FF;
background: #FB4934FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #1D2021FF;
background: #FABD2FFF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #EBDBB2FF;
background: #282828FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #1D2021FF;
background: #CC241DFF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #1D2021FF;
background: #D79921FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #EBDBB2FF;
background: #1D2021FF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,95 +1,127 @@
//!-------------------------------------------------------------------------------
//! Rofi color theme
//!
//! Based on the Gruvbox color scheme for Vim by morhetz
//! https://github.com/morhetz/gruvbox
//!
//! File: gruvbox-dark-soft.theme
//! Desc: Gruvbox dark (soft contrast) color theme for Rofi
//! Author: bardisty <b@bah.im>
//! Source: https://github.com/bardisty/gruvbox-rofi
//! Modified: Sat Oct 22 2016 03:11:49 PDT -0700
//!-------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 251, 241, 199, 100 % );
foreground: rgba ( 235, 219, 178, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 60, 56, 54, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 50, 48, 47, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 50, 48, 47, 100 % );
alternate-urgent-background: rgba ( 204, 36, 29, 100 % );
active-foreground: rgba ( 50, 48, 47, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 50, 48, 47, 100 % );
alternate-active-background: rgba ( 215, 153, 33, 100 % );
background: rgba ( 50, 48, 47, 100 % );
bordercolor: rgba ( 168, 153, 132, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 50, 48, 47, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 102, 92, 84, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 168, 153, 132, 100 % );
urgent-background: rgba ( 204, 36, 29, 100 % );
selected-urgent-background: rgba ( 251, 73, 52, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 215, 153, 33, 100 % );
selected-active-background: rgba ( 250, 189, 47, 100 % );
}
#window {
border: 2;
foreground: #A89984FF;
padding: 5;
background: #32302FFF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #EBDBB2FF;
background: #32302FFF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #EBDBB2FF;
background: #32302FFF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #32302FFF;
background: #CC241DFF;
}
#window.mainbox.listview.element.normal.active {
foreground: #32302FFF;
background: #D79921FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #FBF1C7FF;
background: #665C54FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #32302FFF;
background: #FB4934FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #32302FFF;
background: #FABD2FFF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #EBDBB2FF;
background: #3C3836FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #32302FFF;
background: #CC241DFF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #32302FFF;
background: #D79921FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #EBDBB2FF;
background: #32302FFF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,95 +1,127 @@
//!-------------------------------------------------------------------------------
//! Rofi color theme
//!
//! Based on the Gruvbox color scheme for Vim by morhetz
//! https://github.com/morhetz/gruvbox
//!
//! File: gruvbox-dark.theme
//! Desc: Gruvbox dark color theme for Rofi
//! Author: bardisty <b@bah.im>
//! Source: https://github.com/bardisty/gruvbox-rofi
//! Modified: Sat Oct 22 2016 03:11:40 PDT -0700
//!-------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 251, 241, 199, 100 % );
foreground: rgba ( 235, 219, 178, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 50, 48, 47, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 40, 40, 40, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 40, 40, 40, 100 % );
alternate-urgent-background: rgba ( 204, 36, 29, 100 % );
active-foreground: rgba ( 40, 40, 40, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 40, 40, 40, 100 % );
alternate-active-background: rgba ( 215, 153, 33, 100 % );
background: rgba ( 40, 40, 40, 100 % );
bordercolor: rgba ( 168, 153, 132, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 40, 40, 40, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 102, 92, 84, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 168, 153, 132, 100 % );
urgent-background: rgba ( 204, 36, 29, 100 % );
selected-urgent-background: rgba ( 251, 73, 52, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 215, 153, 33, 100 % );
selected-active-background: rgba ( 250, 189, 47, 100 % );
}
#window {
border: 2;
foreground: #A89984FF;
padding: 5;
background: #282828FF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #EBDBB2FF;
background: #282828FF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #EBDBB2FF;
background: #282828FF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #282828FF;
background: #CC241DFF;
}
#window.mainbox.listview.element.normal.active {
foreground: #282828FF;
background: #D79921FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #FBF1C7FF;
background: #665C54FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #282828FF;
background: #FB4934FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #282828FF;
background: #FABD2FFF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #EBDBB2FF;
background: #32302FFF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #282828FF;
background: #CC241DFF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #282828FF;
background: #D79921FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #EBDBB2FF;
background: #282828FF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,95 +1,127 @@
//!-------------------------------------------------------------------------------
//! Rofi color theme
//!
//! Based on the Gruvbox color scheme for Vim by morhetz
//! https://github.com/morhetz/gruvbox
//!
//! File: gruvbox-light-hard.theme
//! Desc: Gruvbox light (hard contrast) color theme for Rofi
//! Author: bardisty <b@bah.im>
//! Source: https://github.com/bardisty/gruvbox-rofi
//! Modified: Sat Oct 22 2016 03:11:32 PDT -0700
//!-------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 40, 40, 40, 100 % );
foreground: rgba ( 60, 56, 54, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 251, 241, 199, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 253, 244, 193, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 253, 244, 193, 100 % );
alternate-urgent-background: rgba ( 204, 36, 29, 100 % );
active-foreground: rgba ( 253, 244, 193, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 253, 244, 193, 100 % );
alternate-active-background: rgba ( 181, 118, 20, 100 % );
background: rgba ( 249, 245, 215, 100 % );
bordercolor: rgba ( 124, 111, 100, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 249, 245, 215, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 235, 219, 178, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 124, 111, 100, 100 % );
urgent-background: rgba ( 204, 36, 29, 100 % );
selected-urgent-background: rgba ( 251, 73, 52, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 181, 118, 20, 100 % );
selected-active-background: rgba ( 215, 153, 33, 100 % );
}
#window {
border: 2;
foreground: #7C6F64FF;
padding: 5;
background: #F9F5D7FF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #3C3836FF;
background: #F9F5D7FF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #3C3836FF;
background: #F9F5D7FF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #FDF4C1FF;
background: #CC241DFF;
}
#window.mainbox.listview.element.normal.active {
foreground: #FDF4C1FF;
background: #B57614FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #282828FF;
background: #EBDBB2FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #FDF4C1FF;
background: #FB4934FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #FDF4C1FF;
background: #D79921FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #3C3836FF;
background: #FBF1C7FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #FDF4C1FF;
background: #CC241DFF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #FDF4C1FF;
background: #B57614FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #3C3836FF;
background: #F9F5D7FF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,95 +1,127 @@
//!-------------------------------------------------------------------------------
//! Rofi color theme
//!
//! Based on the Gruvbox color scheme for Vim by morhetz
//! https://github.com/morhetz/gruvbox
//!
//! File: gruvbox-light-soft.theme
//! Desc: Gruvbox light (soft contrast) color theme for Rofi
//! Author: bardisty <b@bah.im>
//! Source: https://github.com/bardisty/gruvbox-rofi
//! Modified: Sat Oct 22 2016 03:11:25 PDT -0700
//!-------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 40, 40, 40, 100 % );
foreground: rgba ( 60, 56, 54, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 235, 219, 178, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 242, 229, 188, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 242, 229, 188, 100 % );
alternate-urgent-background: rgba ( 204, 36, 29, 100 % );
active-foreground: rgba ( 242, 229, 188, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 242, 229, 188, 100 % );
alternate-active-background: rgba ( 181, 118, 20, 100 % );
background: rgba ( 242, 229, 188, 100 % );
bordercolor: rgba ( 124, 111, 100, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 242, 229, 188, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 213, 196, 161, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 124, 111, 100, 100 % );
urgent-background: rgba ( 204, 36, 29, 100 % );
selected-urgent-background: rgba ( 251, 73, 52, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 181, 118, 20, 100 % );
selected-active-background: rgba ( 215, 153, 33, 100 % );
}
#window {
border: 2;
foreground: #7C6F64FF;
padding: 5;
background: #F2E5BCFF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #3C3836FF;
background: #F2E5BCFF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #3C3836FF;
background: #F2E5BCFF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #F2E5BCFF;
background: #CC241DFF;
}
#window.mainbox.listview.element.normal.active {
foreground: #F2E5BCFF;
background: #B57614FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #282828FF;
background: #D5C4A1FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #F2E5BCFF;
background: #FB4934FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #F2E5BCFF;
background: #D79921FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #3C3836FF;
background: #EBDBB2FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #F2E5BCFF;
background: #CC241DFF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #F2E5BCFF;
background: #B57614FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #3C3836FF;
background: #F2E5BCFF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,95 +1,127 @@
//!-------------------------------------------------------------------------------
//! Rofi color theme
//!
//! Based on the Gruvbox color scheme for Vim by morhetz
//! https://github.com/morhetz/gruvbox
//!
//! File: gruvbox-light.theme
//! Desc: Gruvbox light color theme for rofi
//! Author: bardisty <b@bah.im>
//! Source: https://github.com/bardisty/gruvbox-rofi
//! Modified: Sat Oct 22 2016 03:11:11 PDT -0700
//!-------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 40, 40, 40, 100 % );
foreground: rgba ( 60, 56, 54, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 242, 229, 188, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 251, 241, 199, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 251, 241, 199, 100 % );
alternate-urgent-background: rgba ( 204, 36, 29, 100 % );
active-foreground: rgba ( 251, 241, 199, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 251, 241, 199, 100 % );
alternate-active-background: rgba ( 181, 118, 20, 100 % );
background: rgba ( 251, 241, 199, 100 % );
bordercolor: rgba ( 124, 111, 100, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 251, 241, 199, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 213, 196, 161, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 124, 111, 100, 100 % );
urgent-background: rgba ( 204, 36, 29, 100 % );
selected-urgent-background: rgba ( 251, 73, 52, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 181, 118, 20, 100 % );
selected-active-background: rgba ( 215, 153, 33, 100 % );
}
#window {
border: 2;
foreground: #7C6F64FF;
padding: 5;
background: #FBF1C7FF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #3C3836FF;
background: #FBF1C7FF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #3C3836FF;
background: #FBF1C7FF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #FBF1C7FF;
background: #CC241DFF;
}
#window.mainbox.listview.element.normal.active {
foreground: #FBF1C7FF;
background: #B57614FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #282828FF;
background: #D5C4A1FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #FBF1C7FF;
background: #FB4934FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #FBF1C7FF;
background: #D79921FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #3C3836FF;
background: #F2E5BCFF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #FBF1C7FF;
background: #CC241DFF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #FBF1C7FF;
background: #B57614FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #3C3836FF;
background: #FBF1C7FF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,88 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: qball
//! Copyright: Dave Davenport
//! ------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 51, 51, 51, 100 % );
foreground: rgba ( 17, 170, 170, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 255, 255, 255, 7 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 51, 51, 51, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 255, 153, 153, 100 % );
alternate-urgent-background: rgba ( 255, 255, 255, 7 % );
active-foreground: rgba ( 170, 170, 17, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 51, 51, 51, 100 % );
alternate-active-background: rgba ( 255, 255, 255, 7 % );
background: rgba ( 51, 51, 51, 93 % );
bordercolor: rgba ( 17, 170, 170, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 0, 0, 0, 0 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 17, 170, 170, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 17, 170, 170, 100 % );
urgent-background: rgba ( 0, 0, 0, 0 % );
selected-urgent-background: rgba ( 255, 153, 153, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 0, 0, 0, 0 % );
selected-active-background: rgba ( 170, 170, 17, 100 % );
}
#window {
border: 2;
foreground: #10A0A0FF;
padding: 5;
background: #333333EE;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px dash 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #10A0A0FF;
background: #00000000;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
columns: 1;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #10A0A0FF;
background: #00000000;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #F09090FF;
background: #00000000;
}
#window.mainbox.listview.element.normal.active {
foreground: #A0A010FF;
background: #00000000;
}
#window.mainbox.listview.element.selected.normal {
foreground: #303030FF;
background: #10A0A0FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #303030FF;
background: #F09090FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #303030FF;
background: #A0A010FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #10A0A0FF;
background: #FFFFFF11;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #F09090FF;
background: #FFFFFF11;
}
#window.mainbox.listview.element.alternate.active {
foreground: #A0A010FF;
background: #FFFFFF11;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px dash 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #10A0A0FF;
background: #00000000;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -11,111 +11,107 @@
grey: #eeeeee;
spacing: 2;
background: #00000000;
background-color: #00000000;
border-color: #444444FF;
anchor: north;
location: center;
}
#window {
transparency: "screenshot";
background: #00000000;
background-color: #00000000;
border: 0;
padding: 0% 0% 1em 0%;
foreground: #444444FF;
x-offset: 0;
y-offset: -10%;
}
#window.mainbox {
#mainbox {
padding: 0px;
}
#window.mainbox.box {
border: 0;
spacing: 1%;
}
#window.mainbox.message.box {
#message {
border: 2px;
padding: 1em;
background: @white;
foreground: @back;
background-color: @white;
text-color: @back;
}
#window.mainbox.message.normal {
foreground: #002B36FF;
#textbox normal {
text-color: #002B36FF;
padding: 0;
border: 0;
}
#window.mainbox.listview {
#listview {
fixed-height: 1;
border: 2px;
padding: 1em;
reverse: false;
columns: 1;
background: @white;
background-color: @white;
}
#window.mainbox.listview.element {
#element {
border: 0;
padding: 2px;
highlight: bold ;
}
#window.mainbox.listview.element.normal.normal {
foreground: #002B36FF;
background: #F5F5F500;
#element normal.normal {
text-color: #002B36FF;
background-color: #F5F5F500;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #D75F00FF;
background: #F5F5F5FF;
#element normal.urgent {
text-color: #D75F00FF;
background-color: #F5F5F5FF;
}
#window.mainbox.listview.element.normal.active {
foreground: #005F87FF;
background: #F5F5F5FF;
#element normal.active {
text-color: #005F87FF;
background-color: #F5F5F5FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #F5F5F5FF;
background: #4271AEFF;
#element selected.normal {
text-color: #F5F5F5FF;
background-color: #4271AEFF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #F5F5F5FF;
background: #D75F00FF;
#element selected.urgent {
text-color: #F5F5F5FF;
background-color: #D75F00FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #F5F5F5FF;
background: #005F87FF;
#element selected.active {
text-color: #F5F5F5FF;
background-color: #005F87FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #002B36FF;
background: #D0D0D0FF;
#element alternate.normal {
text-color: #002B36FF;
background-color: #D0D0D0FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #D75F00FF;
background: #D0D0D0FF;
#element alternate.urgent {
text-color: #D75F00FF;
background-color: #D0D0D0FF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #005F87FF;
background: #D0D0D0FF;
#element alternate.active {
text-color: #005F87FF;
background-color: #D0D0D0FF;
}
#window.mainbox.listview.scrollbar {
#scrollbar {
border: 0;
padding: 0;
}
#window.mainbox.inputbar {
#inputbar {
spacing: 0;
}
#window.mainbox.inputbar.box {
border: 2px;
padding: 0.5em 1em;
background: @grey;
background-color: @grey;
index: 0;
}
#window.mainbox.inputbar.normal {
foreground: #002B36FF;
background: #F5F5F500;
#inputbar normal {
foreground-color: #002B36FF;
background-color: #F5F5F500;
}
#window.mainbox.sidebar.box {
#sidebar {
border: 2px;
padding: 0.5em 1em;
background: @grey;
background-color: @grey;
index: 10;
}
#window.mainbox.sidebar.button selected {
text: #4271AEFF;
#button selected {
text-color: #4271AEFF;
}

View file

@ -1,89 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: Rasi
//! Copyright: Rasmus Steinke
//! ------------------------------------------------------------------------------
//! Use extended color scheme
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 255, 255, 255, 100 % );
foreground: rgba ( 180, 180, 180, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 47, 30, 46, 63 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 239, 97, 85, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 239, 97, 85, 100 % );
alternate-urgent-background: rgba ( 47, 30, 46, 18 % );
active-foreground: rgba ( 129, 91, 164, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 129, 91, 164, 100 % );
alternate-active-background: rgba ( 47, 30, 46, 18 % );
background: rgba ( 47, 30, 46, 100 % );
bordercolor: rgba ( 239, 97, 85, 21 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 47, 30, 46, 63 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 129, 91, 164, 33 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 239, 97, 85, 18 % );
urgent-background: rgba ( 47, 30, 46, 15 % );
selected-urgent-background: rgba ( 129, 91, 164, 33 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 47, 30, 46, 15 % );
selected-active-background: rgba ( 129, 91, 164, 33 % );
}
#window {
border: 2;
foreground: #EF61552F;
padding: 5;
background: #2F1E2EFF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px dash 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #B4B4B4FF;
background: #2F1E2EA0;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
columns: 1;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #B4B4B4FF;
background: #2F1E2EA0;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #EF6155FF;
background: #2F1E2E27;
}
#window.mainbox.listview.element.normal.active {
foreground: #815BA4FF;
background: #2F1E2E27;
}
#window.mainbox.listview.element.selected.normal {
foreground: #FFFFFFFF;
background: #815BA454;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #EF6155FF;
background: #815BA454;
}
#window.mainbox.listview.element.selected.active {
foreground: #815BA4FF;
background: #815BA454;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #B4B4B4FF;
background: #2F1E2EA0;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #EF6155FF;
background: #2F1E2E2F;
}
#window.mainbox.listview.element.alternate.active {
foreground: #815BA4FF;
background: #2F1E2E2F;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px dash 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #B4B4B4FF;
background: #2F1E2EA0;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -3,8 +3,8 @@
* Copyright: Dave Davenport
*/
* {
foreground: #ffeedd;
background: rgba(0,0,0,0);
text-color: #ffeedd;
background-color: rgba(0,0,0,0);
dark: #1c1c1c;
// Black
black: #3d352a;
@ -42,68 +42,70 @@
highlight: bold #ffffff;
}
#window {
width: 30em;
fullscreen: true;
location: west;
anchor: west;
}
#window box {
border: 0px 2px 0px 0px;
foreground: @lightwhite;
background: #1c1c1cee;
text-color: @lightwhite;
orientation: horizontal;
children: [mainbox, dummy];
}
#window mainbox sidebar box {
#dummy {
expand: true;
}
#sidebar {
border: 2px 0px 0px 0px;
background: @lightblack;
background-color: @lightblack;
padding: 10px;
}
#window mainbox sidebar selected {
foreground: @lightgreen;
text: @lightgreen;
#button selected {
border-color: @lightgreen;
text-color: @lightgreen;
}
#window mainbox inputbar {
background: @lightblack;
text: @lightgreen;
#entry {
width: 20em;
}
#inputbar {
background-color: @lightblack;
text-color: @lightgreen;
padding: 4px;
}
#window mainbox inputbar box {
border: 0px 0px 2px 0px;
}
#window mainbox box {
#mainbox {
expand: false;
background-color: #1c1c1cee;
spacing: 1em;
}
#window mainbox listview box {
#listview {
padding: 0em 0.4em 0em 1em;
}
#window mainbox listview {
dynamic: false;
lines: 0;
}
#window mainbox listview element selected normal {
background: @blue;
#element selected normal {
background-color: @blue;
}
#window mainbox listview element normal active {
foreground: @lightblue;
#element normal active {
text-color: @lightblue;
}
#window mainbox listview element normal urgent {
foreground: @lightred;
#element normal urgent {
text-color: @lightred;
}
#window mainbox listview element alternate normal {
#element alternate normal {
}
#window mainbox listview element alternate active {
foreground: @lightblue;
#element alternate active {
text-color: @lightblue;
}
#window mainbox listview element alternate urgent {
foreground: @lightred;
#element alternate urgent {
text-color: @lightred;
}
#window mainbox listview element selected active {
background: @lightblue;
foreground: @dark;
#element selected active {
background-color: @lightblue;
text-color: @dark;
}
#window mainbox listview element selected urgent {
background: @lightred;
foreground: @dark;
}
#window mainbox listview element normal normal {
#element selected urgent {
background-color: @lightred;
text-color: @dark;
}

View file

@ -1,88 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: Rasi
//! Copyright: Rasmus Steinke
//! ------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 129, 147, 150, 100 % );
foreground: rgba ( 129, 147, 150, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 0, 43, 55, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 218, 66, 129, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 218, 66, 129, 100 % );
alternate-urgent-background: rgba ( 0, 43, 55, 100 % );
active-foreground: rgba ( 0, 142, 212, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 0, 142, 212, 100 % );
alternate-active-background: rgba ( 0, 43, 55, 100 % );
background: rgba ( 0, 43, 55, 100 % );
bordercolor: rgba ( 0, 43, 55, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 0, 43, 55, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 0, 54, 66, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 0, 54, 66, 100 % );
urgent-background: rgba ( 0, 43, 55, 100 % );
selected-urgent-background: rgba ( 0, 54, 66, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 0, 43, 55, 100 % );
selected-active-background: rgba ( 0, 54, 66, 100 % );
}
#window {
border: 2;
foreground: #003642FF;
padding: 5;
background: #002B37FF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #819396FF;
background: #002B37FF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #819396FF;
background: #002B37FF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #DA4281FF;
background: #002B37FF;
}
#window.mainbox.listview.element.normal.active {
foreground: #008ED4FF;
background: #002B37FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #819396FF;
background: #003642FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #DA4281FF;
background: #003642FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #008ED4FF;
background: #003642FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #819396FF;
background: #002B37FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #DA4281FF;
background: #002B37FF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #008ED4FF;
background: #002B37FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #819396FF;
background: #002B37FF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}

View file

@ -1,88 +1,127 @@
//! ------------------------------------------------------------------------------
//! ROFI Color theme
//! User: Rasi
//! Copyright: Rasmus Steinke
//! ------------------------------------------------------------------------------
* {
spacing: 2;
background: #00000000;
selected-normal-foreground: rgba ( 255, 255, 255, 100 % );
foreground: rgba ( 129, 147, 150, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 0, 54, 67, 100 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 137, 6, 97, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 218, 66, 129, 100 % );
alternate-urgent-background: rgba ( 0, 54, 67, 100 % );
active-foreground: rgba ( 0, 142, 212, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 102, 198, 255, 100 % );
alternate-active-background: rgba ( 0, 54, 67, 100 % );
background: rgba ( 0, 43, 55, 100 % );
bordercolor: rgba ( 0, 43, 55, 100 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 0, 43, 55, 100 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 0, 142, 212, 100 % );
border-color: @foreground;
spacing: 2;
separatorcolor: rgba ( 0, 54, 66, 100 % );
urgent-background: rgba ( 0, 43, 55, 100 % );
selected-urgent-background: rgba ( 0, 142, 212, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 0, 43, 55, 100 % );
selected-active-background: rgba ( 0, 142, 212, 100 % );
}
#window {
border: 2;
foreground: #003642FF;
padding: 5;
background: #002B37FF;
background-color: @background;
border: 1;
padding: 5;
}
#window.mainbox {
#mainbox {
border: 0;
padding: 0;
}
#window.mainbox.message.box {
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#window.mainbox.message.normal {
foreground: #819396FF;
background: #002B37FF;
#textbox {
text-color: @foreground;
}
#window.mainbox.listview {
fixed-height: 1;
border: 2px 0px 0px ;
columns: 1;
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
#window.mainbox.listview.element {
border: 0;
}
#window.mainbox.listview.element.normal.normal {
foreground: #819396FF;
background: #002B37FF;
}
#window.mainbox.listview.element.normal.urgent {
foreground: #DA4281FF;
background: #002B37FF;
}
#window.mainbox.listview.element.normal.active {
foreground: #008ED4FF;
background: #002B37FF;
}
#window.mainbox.listview.element.selected.normal {
foreground: #FFFFFFFF;
background: #008ED4FF;
}
#window.mainbox.listview.element.selected.urgent {
foreground: #890661FF;
background: #008ED4FF;
}
#window.mainbox.listview.element.selected.active {
foreground: #66C6FFFF;
background: #008ED4FF;
}
#window.mainbox.listview.element.alternate.normal {
foreground: #819396FF;
background: #003643FF;
}
#window.mainbox.listview.element.alternate.urgent {
foreground: #DA4281FF;
background: #003643FF;
}
#window.mainbox.listview.element.alternate.active {
foreground: #008ED4FF;
background: #003643FF;
}
#window.mainbox.listview.scrollbar {
#element {
border: 0;
padding: 0;
padding: 1px ;
}
#window.mainbox.sidebar.box {
border: 2px 0px 0px ;
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#window.mainbox.inputbar {
spacing: 0;
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#window.mainbox.inputbar.box {
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#window.mainbox.inputbar.normal {
foreground: #819396FF;
background: #002B37FF;
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 0;
text-color: @normal-foreground;
}