Commit graph

177 commits

Author SHA1 Message Date
Dave Davenport
386877dd22 [Theme] Add enabled property with env support. 2022-07-15 23:28:57 +02:00
Dave Davenport
f583641914 More cleanup of unused data. 2022-05-24 23:40:43 +02:00
Dave Davenport
141bd3d197 [Doc][Config] Update documentation for new fallback icon
* Allow multiple config be combined.
2022-05-12 19:52:35 +02:00
Dave Davenport
58a5b9d277 [Grammar] Fix parsing of calc as element name
issue: #1582
2022-02-01 16:35:44 +01:00
Dave Davenport
85c6545a43
Merge List and Array type into one. (#1572)
* Merge list and array into one.

* [Lexer] Only use string without " in list

* Some cleanups

* Cleanups based on feedback.
2022-01-25 09:57:59 +01:00
Dave Davenport
4bef336b9c What is in a name. 2022-01-24 20:33:19 +01:00
Dave Davenport
f9ea58f7c5 [Theme] Fix lexer for SET. 2022-01-24 19:49:16 +01:00
Dave Davenport
55b043bcfa [Theme] Add set type for testing.
Allows a set of properties, f.e.:
test: { "aap", "noot", "mies"}

or

tabs: { 1px, 10px, 1px, 3em }

Issue: #1571
2022-01-24 19:43:08 +01:00
Dave Davenport
b6ce41825c [#1569] Add initial round,floor,ceil function
a round b
 rounds a to the closest multiple off b

 a ceil b
 ceil a to the multiple off b

 a floor b
 floor a to the multiple off b

 Completely untested.
2022-01-18 11:01:56 +01:00
Dave Davenport
dac09b8728 Cleanups based on cppcheck. 2021-12-01 13:14:36 +01:00
Dave Davenport
9b219afc5b [Config] Allow configuration block again in theme.
Avoid confusion/breakage.
2021-11-30 18:52:37 +01:00
Dave Davenport
dee9c526d3 [Rofi] Don't try to parse commandline options using theme engine if theme parsing failed.
Issues: #1531
2021-11-28 17:08:09 +01:00
Quentin Glidic
2ae7348df8
theme-parser: Include config.h
It avoids deprecation warnings wrt GLib.

Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2021-10-28 06:30:59 +00:00
Dave Davenport
3b81f639e7 [Lexer] Fix regex for env() 2021-09-24 10:31:23 +02:00
Dave Davenport
76a271570d [Lexer] Add _ to environement variable.
Fixes: #1475
2021-09-24 10:22:16 +02:00
Dave Davenport
0e70d8a5c9 [Config] Add 'in your face' error message about deprecated theme setting.
Issue: #1468
2021-09-21 12:51:57 +02:00
Dave Davenport
4face975a9 [Theme] Print known colors as color name.
When printing look if the set color has a known color name, print this.
2021-09-20 19:57:12 +02:00
Dave Davenport
562146730b
[THEME] I1442 Fix parsing of nested media blocks.
* [1442] Fix widget media nested
* [Theme] Fix memory leak in P_LIST
* [I1442] Support merging down default block.
2021-09-08 14:16:28 +02:00
Dave Davenport
294a22f3dd Fix some memory leaks. 2021-09-06 21:26:04 +02:00
Dave Davenport
68e79b66a9 [Grammar] Add support for env();
Add support for `env(ENV,default)`.

Fixes: #1411
2021-09-01 21:27:25 +02:00
Dave Davenport
d3cd5b3e43 [Lexer] Fix lexer parsing default theme from resource. 2021-08-24 21:37:57 +02:00
Dave Davenport
de69f5290e [Parser] Set ordering correctly when loading theme with reset. 2021-08-24 21:07:00 +02:00
Dave Davenport
acb1979f10 [Theme] Undo part of default theme changes, always pick build-in 2021-08-24 18:19:25 +02:00
Dave Davenport
47f26ca2f1 [IconFetcher] Look for images in theme directories. 2021-08-17 11:05:03 +02:00
Dave Davenport
9f777a7a7b [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.
2021-08-14 13:58:21 +02:00
a1346054
c62137f8ab
Simple maintenance improvements (#1370)
* rofi moved to libera.chat

* unify some theme headers and whitespace

* consistently use the same hashbang for bash

* improve obsolete way of testing equality

see https://github.com/koalaman/shellcheck/wiki/SC2268 for explanation

* use consistent function definitions in bash scripts

* remove duplicated author and fix whitespace

* quote all variables in scripts

fixes many warnings identified through shellcheck

* fix whitespace in scripts

* fix whitespace in non-source files

* fix spelling in non-source files

* fix whitespace and indentation in source files

* fix spelling in source files
2021-08-14 13:03:16 +02:00
Dave Davenport
b7dfb423a1 [Config] Small fix config dump fix. 2021-07-10 00:28:21 +02:00
Dave Davenport
4c1a74e15e [Widget] Add scaling option to background-image. 2021-06-15 17:18:34 +02:00
Dave Davenport
0f21541327 [Configuration] Add start of more 'theme' based configuration.
Nested CSS blocks in configuration {} are parsed into
rofi_configuration.
2021-06-14 19:29:05 +02:00
Dave Davenport
828aaa231a [Theme] Add angle support to linear-gradient. 2021-06-14 16:04:15 +02:00
Dave Davenport
5c5428bd11 [Theme] Add direction support to linear-gradient. 2021-06-14 15:14:41 +02:00
Dave Davenport
7cf0385681 [Theme] Support multiple stops in linear-gradient
* Fix anchor dumping
* Fix image dumping
2021-06-13 22:57:35 +02:00
Dave Davenport
2c325b3f09 [Widget] Add initial support for background-image.
* Supports url("path") and linear-gradient(start,stop).
2021-06-13 20:50:25 +02:00
Dave Davenport
eb602b34fa [DSL] Move theme reset into the grammer parser and out of lexer. 2021-06-09 02:03:29 +02:00
TonCherAmi
dc28a97437
Add cursor property (#1313)
* Change mouse cursor on widget hover

Currently only listview element and editbox are supported.

* Add cursor property
2021-05-23 00:17:27 +02:00
Dave Davenport
7c9a01ffc7 [Lexer] Fix parsing string in dict not to match " in middle of string.
Fixes: 1205
2020-10-02 19:15:19 +02:00
Dave Davenport
7c331b130b [Calc] Add min/max operator support to calc()
Fixes: #1172
2020-09-14 20:34:39 +02:00
Dave Davenport
3499e1dad0 [Theme] First attempt at more cleanups and nested media support.
First throw at nested media support.

Issue: #1189
2020-09-13 15:11:12 +02:00
Dave Davenport
1d2453a948 [Parser] Small restructure in parser.
Preparing for nested @media.
2020-09-13 14:15:33 +02:00
Dave Davenport
6ba878e44a [Lexer] Fix media parser. 2020-09-11 18:10:49 +02:00
nick87720z
fb2ba8ada3
Millimeter support for distance (#1144) 2020-06-09 22:19:43 +02:00
Jason Kim
a4c5a92199
Support rasi config character type options (#1131)
* style: remove extra space

* feat: handle xrm_Char in config parser

Handle the `xrm_Char` case in the (rasi theme) config file parser.  This
should properly handle configuration like

```
matching-negate-char: "\0";
```

and

```
matching-negate-char: "-";
```

* refactor: don't handle mem in xrm_Char case

`mem` shouldn't ever be set when `XrmOption` is `type` `xrm_Char`.
Therefore, there is no need to check it and free it.  Remove that logic.

* refactor: further condense logic

* style: s/Everythin/Everything/

* style: s/parsing an section/parsing a section/

...and missing period.

* feat(lexer): add CHAR token

Add a `CHAR` token that takes things of the form `'<char>'` or some
specific backslash escape sequences like `'\''` and `'\0'`.  For now,
save it as a `T_STRING`.

* refactor: define char property type

* feat(parser): add cval and T_CHAR

* refactor: use char property for xrm_Char

Instead of using strings for property elements of type char, use
characters, which were recently added to the grammar.
2020-05-17 14:50:38 +02:00
Dave Davenport
9a3d4b1d2e [Test] Fix compiler warning, theme test (bug in lexer) and more. 2020-04-26 11:43:14 +02:00
Dave Davenport
151547a99e
[Themes] add calc() support to distance in theme format. (#1105)
* Initial test to allow math in distances.

Support + and -
Needs spaces around + and -.

* [THEME] Fix printing theme with math in distance.

* [Theme] use calc() syntax.

* [Theme] Add * and /  to calc().

* [Theme] Fix the precedense ordering in parsing. Also avoid making copies.

* [Theme] Don't print unneeded ().

* [Theme] Add modulo to calc.
2020-04-24 19:54:08 +02:00
Dave Davenport
7c613f6a4c
Issue893: Add support for @media in the theme format. (#1015)
* [Lexer] Add support for @media.

Issue: #893

* [Theme] @media limit to px.

* [Theme@Media] add *{} support.

* [Theme@Media] Add support for monitor-id media.

* [Theme@Media] Code cleanup.

* [Theme@Media] Add min/max-aspect-ratio.

* [Theme@Media] Remove some debug output

Fixes: #893
2019-09-20 15:05:36 +02:00
Quentin Glidic
7416f344a3
Use g_list_free_full()
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2019-04-19 10:00:58 +02:00
Quentin Glidic
a9dae788d1
Correctly include config.h first
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2019-04-19 09:59:53 +02:00
Dave Davenport
e17d63f5ae [Lexer] Fix nested () in variable default field.
- var ( a, rgba(0,0,0,0)) was broke

Fixes: #936
2019-03-21 10:33:50 +01:00
Dave Davenport
40da1b25e2 [Theme3.0] Change reference to use the CSS like var() syntax.
Supports defaults var(name, default); var(name);
Where default can be another property.
(https://www.w3schools.com/css/css3_variables.asp)

This deprecates the @name syntax.

Fixes: #876
2019-01-29 17:56:45 +01:00
Dave Davenport
0dfc671bcc [GrammarParser] Fix memory leak of Property after parsing config entry. 2019-01-29 07:32:07 +01:00