* Improved background draw code
- Better to read (precalculated coordinates)
- Unnecessary line_to in the end
- Don't use radius in calculations if zero
* Background draw - separate rounded rect function
* Limit background & border overlap size
Overlap is too good against artifacts when stiching antialiased areas to
be avoided, unless intermediate image is used for additive stiching. But
it doesn't look good with transparent borders, when overlaping background
is visible. It seems, that 1px overlap is right enough to completely
prevent artifacts. Though things may differ if one if side is 1px or
even 0px, while adjacent is still enough thick.
* Style: alignment, less noise, limit var scope
* 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.
* Man pages: Add version and dump-* options
* Man pages: Add -display and -markup to rofi.1
* Man pages: Use the metavariable in -async-pre-read
* Man pages: document the dmenu -w option
* Man pages/help: correct -only-match description
* Man pages/help: -normal-window does not only apply in dmenu mode
* Man page: modi are lowercase
Entering the modi as the man page had them would not work
* Man page: minor formatting/grammar tweaks
* modi and command names are `backticked`
* rofi is **bold**
* other man pages are **bold(1)**
* Pango is capitalised according to their own website.
* Option arguments are *like1*,*this2*
* Man pages: fix Pango markup link
* fix: Fix Travis CI builds and (some) tests
https://config.travis-ci.com/explore recommendations:
* Set the `os` key
* Removes the `sudo` key
Fixes:
* Missing dependencies
Cleanups:
* Set `build_command_prepend` and `build_command` to match the process
performed by the before_script and script.
* Removed unnecessary apt package dependencies.
* Ran the file through prettier (https://prettier.io/).
Enhancements:
* Bumps dist to Ubuntu 18.04 (Bionic)
* This bump allows us to install a few packages that were previously
installed manually.
* Added a Clang build.
TODOs:
* X11 tests are broken. I've commented them out for the time being.
* Create multiple jobs
Jobs (4 total):
Compilers:
* Clang
* GCC
Build tools:
* Autotools
* Meson
Enhancements:
* DRY out the CI config.
Failure (seemingly related to `check`?) here:
https://travis-ci.org/github/davatorium/rofi/jobs/680265096#L1125
* [Travis] More debug output
* [Travis] Add ldconfig
* [Travis] try to fix doxy tests.
* [Travis] Try to fix doxygen stuff.
* [Travis] Trying to fix meson doxy gen tests.
* Minor cleanups
Co-authored-by: Dave Davenport <qball@gmpclient.org>
* 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.