[Themes] Fix inheritance with state set.

Update theme.c and included themes.
This should allow you to set `element-text { text-color: inherit;
background-color: inherit;}` to fix old themes.
This commit is contained in:
Dave Davenport 2021-08-14 13:58:21 +02:00 committed by Dave Davenport
parent 05ef90aa48
commit 0600e746f5
23 changed files with 244 additions and 73 deletions

View File

@ -767,12 +767,10 @@ if ( queue == NULL ) {
<PROPERTIES,PROPERTIES_ENV,PROPERTIES_VAR_DEFAULT,PROPERTIES_LIST>. { <PROPERTIES,PROPERTIES_ENV,PROPERTIES_VAR_DEFAULT,PROPERTIES_LIST>. {
yytext[yyleng-1] = '\0'; yytext[yyleng-1] = '\0';
fprintf(stderr,"prop found: |%s|\n", yytext);
return T_ERROR_PROPERTY; return T_ERROR_PROPERTY;
} }
<NAMESTR>. { <NAMESTR>. {
yytext[yyleng-1] = '\0'; yytext[yyleng-1] = '\0';
fprintf(stderr,"namestr found: |%s|\n", yytext);
return T_ERROR_NAMESTRING; return T_ERROR_NAMESTRING;
} }
%% %%

View File

@ -768,14 +768,36 @@ ThemeWidget *rofi_theme_find_widget ( const char *name, const char *state, gbool
return widget; return widget;
} }
static int rofi_theme_get_position_inside ( Property *p, const widget *widget, const char *property, int def )
{
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_position_inside ( p, widget, 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_position ( const widget *widget, const char *property, int def ) int rofi_theme_get_position ( const widget *widget, const char *property, int def )
{ {
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE ); ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_POSITION, property, FALSE ); Property *p = rofi_theme_find_property ( wid, P_POSITION, property, FALSE );
return rofi_theme_get_position_inside ( p, widget, property, def );
}
static int rofi_theme_get_integer_inside ( Property *p, const widget *widget, const char *property, int def )
{
if ( p ) { if ( p ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_get_position ( widget->parent, property, def ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_integer_inside ( p, widget, property, def );
} }
return def; return def;
} }
@ -784,31 +806,20 @@ int rofi_theme_get_position ( const widget *widget, const char *property, int de
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property ); g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
return def; return def;
} }
int rofi_theme_get_integer ( const widget *widget, const char *property, int def ) int rofi_theme_get_integer ( const widget *widget, const char *property, int def )
{ {
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE ); ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_INTEGER, property, FALSE ); Property *p = rofi_theme_find_property ( wid, P_INTEGER, property, FALSE );
if ( p ) { return rofi_theme_get_integer_inside ( p, widget, property, def );
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;
} }
RofiDistance rofi_theme_get_distance ( const widget *widget, const char *property, int def ) static RofiDistance rofi_theme_get_distance_inside ( Property *p, 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_PADDING, property, FALSE );
if ( p ) { if ( p ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_get_distance ( widget->parent, property, def ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_distance_inside ( p, widget->parent, property, def );
} }
return (RofiDistance){ .base = { def, ROFI_PU_PX, ROFI_DISTANCE_MODIFIER_NONE, NULL, NULL }, .style = ROFI_HL_SOLID }; return (RofiDistance){ .base = { def, ROFI_PU_PX, ROFI_DISTANCE_MODIFIER_NONE, NULL, NULL }, .style = ROFI_HL_SOLID };
} }
@ -822,15 +833,44 @@ RofiDistance rofi_theme_get_distance ( const widget *widget, const char *propert
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property ); g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
return (RofiDistance){ .base = { def, ROFI_PU_PX, ROFI_DISTANCE_MODIFIER_NONE, NULL, NULL }, .style = ROFI_HL_SOLID }; return (RofiDistance){ .base = { def, ROFI_PU_PX, ROFI_DISTANCE_MODIFIER_NONE, NULL, NULL }, .style = ROFI_HL_SOLID };
} }
RofiDistance rofi_theme_get_distance ( 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_PADDING, property, FALSE );
return rofi_theme_get_distance_inside ( p, widget, property, def );
}
static int rofi_theme_get_boolean_inside ( Property *p, const widget *widget, const char *property, int def )
{
if ( p ) {
if ( p->type == P_INHERIT ) {
if ( widget->parent ) {
ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_boolean_inside ( p, widget, property, def );
}
return def;
}
return p->value.b;
}
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
return def;
}
int rofi_theme_get_boolean ( const widget *widget, const char *property, int def ) int rofi_theme_get_boolean ( const widget *widget, const char *property, int def )
{ {
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE ); ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_BOOLEAN, property, FALSE ); Property *p = rofi_theme_find_property ( wid, P_BOOLEAN, property, FALSE );
return rofi_theme_get_boolean_inside ( p, widget, property, def );
}
static RofiOrientation rofi_theme_get_orientation_inside ( Property *p, const widget *widget, const char *property, RofiOrientation def )
{
if ( p ) { if ( p ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_get_boolean ( widget->parent, property, def ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_orientation_inside ( p, widget, property, def );
} }
return def; return def;
} }
@ -843,26 +883,17 @@ RofiOrientation rofi_theme_get_orientation ( const widget *widget, const char *p
{ {
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE ); ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_ORIENTATION, property, FALSE ); Property *p = rofi_theme_find_property ( wid, P_ORIENTATION, property, FALSE );
if ( p ) { return rofi_theme_get_orientation_inside ( p, widget, property, def );
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 );
return def;
} }
RofiCursorType rofi_theme_get_cursor_type ( const widget *widget, const char *property, RofiCursorType def )
static RofiCursorType rofi_theme_get_cursor_type_inside ( Property *p, const widget *widget, const char *property, RofiCursorType def )
{ {
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_CURSOR, property, FALSE );
if ( p ) { if ( p ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_get_cursor_type ( widget->parent, property, def ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_cursor_type_inside ( p, widget, property, def );
} }
return def; return def;
} }
@ -871,15 +902,20 @@ RofiCursorType rofi_theme_get_cursor_type ( const widget *widget, const char *pr
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property ); g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
return def; return def;
} }
RofiCursorType rofi_theme_get_cursor_type ( const widget *widget, const char *property, RofiCursorType def )
const char *rofi_theme_get_string ( const widget *widget, const char *property, const char *def )
{ {
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE ); ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_STRING, property, FALSE ); Property *p = rofi_theme_find_property ( wid, P_CURSOR, property, FALSE );
return rofi_theme_get_cursor_type_inside ( p, widget, property, def );
}
static const char *rofi_theme_get_string_inside ( Property *p, const widget *widget, const char *property, const char *def )
{
if ( p ) { if ( p ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_get_string ( widget->parent, property, def ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_string_inside ( p, widget, property, def );
} }
return def; return def;
} }
@ -888,14 +924,20 @@ const char *rofi_theme_get_string ( const widget *widget, const char *property,
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property ); g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
return def; return def;
} }
double rofi_theme_get_double ( const widget *widget, const char *property, double def ) const char *rofi_theme_get_string ( const widget *widget, const char *property, const char *def )
{ {
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE ); ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_DOUBLE, property, FALSE ); Property *p = rofi_theme_find_property ( wid, P_STRING, property, FALSE );
return rofi_theme_get_string_inside ( p, widget, property, def );
}
static double rofi_theme_get_double_inside ( ThemeWidget *wid, Property *p, const widget *widget, const char *property, double def )
{
if ( p ) { if ( p ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_get_double ( widget->parent, property, def ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_double_inside ( parent, p, widget, property, def );
} }
return def; return def;
} }
@ -906,7 +948,9 @@ double rofi_theme_get_double ( const widget *widget, const char *property, doubl
if ( p ) { if ( p ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_get_double ( widget->parent, property, def ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_double_inside ( parent, p, widget->parent, property, def );
} }
return def; return def;
} }
@ -915,36 +959,51 @@ double rofi_theme_get_double ( const widget *widget, const char *property, doubl
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property ); g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
return def; return def;
} }
void rofi_theme_get_color ( const widget *widget, const char *property, cairo_t *d ) double rofi_theme_get_double ( const widget *widget, const char *property, double def )
{ {
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE ); ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_COLOR, property, FALSE ); Property *p = rofi_theme_find_property ( wid, P_DOUBLE, property, FALSE );
return rofi_theme_get_double_inside ( wid, p, widget, property, def );
}
static void rofi_theme_get_color_inside ( const widget *widget, Property *p, const char *property, cairo_t *d )
{
if ( p ) { if ( p ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
rofi_theme_get_color ( widget->parent, property, d ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
rofi_theme_get_color_inside ( widget, p, property, d );
} }
return; return;
} }
cairo_set_source_rgba ( d, cairo_set_source_rgba ( d,
p->value.color.red, p->value.color.red,
p->value.color.green, p->value.color.green,
p->value.color.blue, p->value.color.blue,
p->value.color.alpha p->value.color.alpha
); );
} }
else { else {
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property ); g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
} }
} }
gboolean rofi_theme_get_image ( const widget *widget, const char *property, cairo_t *d )
void rofi_theme_get_color ( const widget *widget, const char *property, cairo_t *d )
{ {
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE ); ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_IMAGE , property, FALSE ); Property *p = rofi_theme_find_property ( wid, P_COLOR, property, FALSE );
rofi_theme_get_color_inside ( widget, p, property, d );
}
static gboolean rofi_theme_get_image_inside ( Property *p, const widget *widget, const char *property, cairo_t *d )
{
if ( p ) { if ( p ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_get_image ( widget->parent, property, d ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_image_inside ( p, widget, property, d );
} }
return FALSE; return FALSE;
} }
@ -1037,14 +1096,20 @@ gboolean rofi_theme_get_image ( const widget *widget, const char *property, cair
} }
return FALSE; return FALSE;
} }
RofiPadding rofi_theme_get_padding ( const widget *widget, const char *property, RofiPadding pad ) gboolean rofi_theme_get_image ( const widget *widget, const char *property, cairo_t *d )
{ {
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE ); ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_PADDING, property, FALSE ); Property *p = rofi_theme_find_property ( wid, P_IMAGE , property, FALSE );
return rofi_theme_get_image_inside (p, widget, property, d);
}
static RofiPadding rofi_theme_get_padding_inside ( Property *p, const widget *widget, const char *property, RofiPadding pad )
{
if ( p ) { if ( p ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_get_padding ( widget->parent, property, pad ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_padding_inside ( p, widget, property, pad );
} }
return pad; return pad;
} }
@ -1059,15 +1124,21 @@ RofiPadding rofi_theme_get_padding ( const widget *widget, const char *property,
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property ); g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
return pad; return pad;
} }
RofiPadding rofi_theme_get_padding ( const widget *widget, const char *property, RofiPadding pad )
GList *rofi_theme_get_list ( const widget *widget, const char * property, const char *defaults ) {
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_PADDING, property, FALSE );
return rofi_theme_get_padding_inside ( p, widget, property, pad );
}
static GList *rofi_theme_get_list_inside ( Property *p, const widget *widget, const char * property, const char *defaults )
{ {
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 ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_get_list ( widget->parent, property, defaults ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_list_inside ( p, widget, property, defaults );
} }
} }
else if ( p->type == P_LIST ) { else if ( p->type == P_LIST ) {
@ -1085,15 +1156,21 @@ GList *rofi_theme_get_list ( const widget *widget, const char * property, const
} }
return NULL; return NULL;
} }
GList *rofi_theme_get_list ( const widget *widget, const char * property, const char *defaults )
RofiHighlightColorStyle rofi_theme_get_highlight ( widget *widget, const char *property, RofiHighlightColorStyle th ) {
ThemeWidget *wid2 = rofi_theme_find_widget ( widget->name, widget->state, TRUE );
Property *p = rofi_theme_find_property ( wid2, P_LIST, property, TRUE );
return rofi_theme_get_list_inside ( p, widget, property, defaults );
}
static RofiHighlightColorStyle rofi_theme_get_highlight_inside ( Property *p, widget *widget, const char *property, RofiHighlightColorStyle th )
{ {
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 ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_get_highlight ( widget->parent, property, th ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_get_highlight_inside ( p, widget->parent, property, th );
} }
return th; return th;
} }
@ -1102,7 +1179,12 @@ RofiHighlightColorStyle rofi_theme_get_highlight ( widget *widget, const char *p
g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property ); g_debug ( "Theme entry: #%s %s property %s unset.", widget->name, widget->state ? widget->state : "", property );
return th; return th;
} }
RofiHighlightColorStyle rofi_theme_get_highlight ( widget *widget, const char *property, RofiHighlightColorStyle th )
{
ThemeWidget *wid = rofi_theme_find_widget ( widget->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( wid, P_HIGHLIGHT, property, FALSE );
return rofi_theme_get_highlight_inside ( p, widget, property, th );
}
static int get_pixels ( RofiDistanceUnit *unit, RofiOrientation ori ) static int get_pixels ( RofiDistanceUnit *unit, RofiOrientation ori )
{ {
int val = unit->distance; int val = unit->distance;
@ -1394,14 +1476,14 @@ ThemeMediaType rofi_theme_parse_media_type ( const char *type )
return THEME_MEDIA_TYPE_INVALID; return THEME_MEDIA_TYPE_INVALID;
} }
gboolean rofi_theme_has_property ( const widget *widget, const char *property ) static gboolean rofi_theme_has_property_inside ( Property *p, 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 ) {
if ( p->type == P_INHERIT ) { if ( p->type == P_INHERIT ) {
if ( widget->parent ) { if ( widget->parent ) {
return rofi_theme_has_property ( widget->parent, property ); ThemeWidget *parent= rofi_theme_find_widget ( widget->parent->name, widget->state, FALSE );
Property *p = rofi_theme_find_property ( parent, P_COLOR, property, FALSE );
return rofi_theme_has_property_inside ( p, widget, property );
} }
return FALSE; return FALSE;
} }
@ -1409,3 +1491,9 @@ gboolean rofi_theme_has_property ( const widget *widget, const char *property )
} }
return FALSE; return FALSE;
} }
gboolean rofi_theme_has_property ( 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 );
return rofi_theme_has_property_inside ( p, widget, property );
}

View File

@ -65,7 +65,12 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element.normal.normal { element-text {
background-color: inherit;
text-color: inherit;
}
element normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;
} }

View File

@ -63,6 +63,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -64,6 +64,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -64,6 +64,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -64,6 +64,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -64,6 +64,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -64,6 +64,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -60,6 +60,10 @@ listview {
element { element {
border: 0; border: 0;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
text-color: @normal-foreground; text-color: @normal-foreground;
background-color: @normal-background; background-color: @normal-background;

View File

@ -64,6 +64,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -111,6 +111,10 @@ element {
color: @foreground; color: @foreground;
font:inherit; font:inherit;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element selected.normal { element selected.normal {
background-color: @blue; background-color: @blue;
} }

View File

@ -64,6 +64,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -67,6 +67,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -148,6 +148,10 @@ element {
border-color: transparent; border-color: transparent;
padding: 4px ; padding: 4px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -63,6 +63,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -125,3 +125,7 @@ textbox-prompt-sep {
text-color: @normal-foreground; text-color: @normal-foreground;
margin: 0 0.3em 0 0; margin: 0 0.3em 0 0;
} }
element-text {
background-color: inherit;
text-color: inherit;
}

View File

@ -64,6 +64,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -55,6 +55,10 @@ element {
padding: 2px; padding: 2px;
highlight: bold ; highlight: bold ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element normal.normal { element normal.normal {
text-color: #002B36FF; text-color: #002B36FF;
background-color: #F5F5F500; background-color: #F5F5F500;

View File

@ -63,6 +63,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -76,6 +76,10 @@ listview {
dynamic: false; dynamic: false;
lines: 0; lines: 0;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element selected normal { element selected normal {
background-color: @blue; background-color: @blue;
} }

View File

@ -63,6 +63,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;

View File

@ -63,6 +63,10 @@ element {
border: 0; border: 0;
padding: 1px ; padding: 1px ;
} }
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal { element.normal.normal {
background-color: @normal-background; background-color: @normal-background;
text-color: @normal-foreground; text-color: @normal-foreground;