Commit graph

2167 commits

Author SHA1 Message Date
Dave Davenport
137417dc6c [listview] Correctly check if hovered item is highlighted.
issue: 1423
2021-09-03 09:32:18 +02:00
Dave Davenport
cb12e6fc05 [main] tiny code tweaks. 2021-09-02 16:38:34 +02:00
Dave Davenport
4b3f6f6767
[I1405] Allow action to be taken on input change. (#1420)
Fixes: #1405
2021-09-02 09:55:31 +02:00
Dave Davenport
3f5d82ff56 [Theme] Don't truncate double default value.
Fixes: #1419
2021-09-02 09:48:33 +02:00
Dave Davenport
1d69aea295 [window] Remove completely broken feature close-on-delete.
Issue: 1406
2021-09-01 14:57:53 +02:00
Tuure Piitulainen
efb74c73ca
[Window] Fix typo in error message (#1401) 2021-08-30 23:19:32 +02:00
Dave Davenport
0b83ab96ce [Theme] double inheritance integer fallback fix 2021-08-27 00:18:14 +02:00
Dave Davenport
e4d5c10e47 [Theme] Try to fix inheritance (2nd attempt). 2021-08-26 23:34:07 +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
dec5c103dc [Theme] Ship default theme separately. 2021-08-24 17:17:00 +02:00
Dave Davenport
3c8ca2390d [main] Try to fix default theme loading.
* Add more debug output on failing to load theme.
 * Don't load default theme, if empty theme is explicitly loaded.
2021-08-23 22:57:39 +02:00
Dave Davenport
c64565e877 [CppCheck] Fix some shadowing variables. 2021-08-21 01:08:40 +02:00
Dave Davenport
e60e6bab2a [Doc] Try to fix some of the doxygen coverage warnings. 2021-08-20 11:37:03 +02:00
Dave Davenport
29abc052be [RofiIconFetcher] Remove stray debug printf. 2021-08-18 09:26:08 +02:00
Dave Davenport
954fc728b2 [Cleanup] Using clang-tidy 2021-08-18 01:16:45 +02:00
Dave Davenport
3a1b768bf4 [Cleanup] clang-tidy rofi-icon-fetcher.c 2021-08-18 00:32:04 +02:00
Dave Davenport
48de8e5ff8 [Cleanup] clang-tidy view.c 2021-08-18 00:29:24 +02:00
Dave Davenport
24ce72c98a [Cleanup] clang-tidy rofi.c 2021-08-18 00:25:54 +02:00
Dave Davenport
8720409ad3 [Window] Allow rofi to stay active on closing a window
```css
configuration {
  window {
      close-on-delete: false;
  }
}
```

fixes: #1071
2021-08-17 18:16:25 +02:00
Dave Davenport
411f09f4d8 [Rofi] Clear old theme before loading new one on -theme argument. 2021-08-17 16:43:45 +02:00
Dave Davenport
18e118a250 [Theme] Fix inheritance copy paste error. 2021-08-17 11:21:07 +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
Ian C
69c6004681
fix typo (#1355) 2021-07-29 20:46:23 +02:00
Dave Davenport
c4a156fb89 [Icon] Add a squared option. 2021-07-14 17:29:38 +02:00
TonCherAmi
c1ff6baecd
[FileBrowser] Add option to group directories ahead of files. (#1352) 2021-07-10 23:58:27 +02:00
Dave Davenport
9f71c4f78d [Config] Load default config file in at startup
* load via resources doc/default_configuration.rasi
* print the configuration options on dump-config
2021-07-10 00:25:20 +02:00
Dave Davenport
0c3d24136d [Listview] Fix wrong widget name.
Fixes: #1349
2021-07-08 15:55:38 +02:00
Dave Davenport
370287c2ca [Theme] Remove listview backwards compatibility hack. 2021-07-02 18:06:06 +02:00
Dave Davenport
0c304524fb [Icon|Button] Make action available on icon and use keyb name.
You can now bind a key-binding on mouse click to icons and buttons by setting
"action" property.

For example:

```css
icon-paste {
    expand: false;
    filename: "gtk-paste";
    size: 24;
    vertical-align: 0.5;
    action: "kb-primary-paste";
}
```
2021-06-30 14:12:09 +02:00
Dave Davenport
c1cd4540a4 [View] User-timeout: reset timeout on action 2021-06-30 13:38:20 +02:00
Dave Davenport
c9701b2a91 [View] Add support for user timeout + keybinding action
Configuration looks like:

```css
configuration {
  timeout {
      delay:  15;
      action: "kb-cancel";
  }
}
```

Both delay and action need to be set.
Action can be any of the keybindings as shown in `rofi -show keys`.

(-timeout-delay 15 -timeout-action "kb-cancel"  on commandline.).

Fixes: #1066
2021-06-30 13:29:54 +02:00
Dave Davenport
42dde494c1 [Config] Remove some debug printfs. 2021-06-27 12:23:20 +02:00
Dave Davenport
067a3b82ad [Config system] Add a bit of a hack to auto-add commandline options.
For new config system.
2021-06-27 12:21:26 +02:00
Dave Davenport
33248f511c [View] Don't refilter when no mode is selected. 2021-06-27 11:54:57 +02:00
TonCherAmi
0ff0866be7
[FileBrowser] Add sorting-method. (#1340)
* [FileBrowser] Add sorting-method.

* [FileBrowser] Convert -file-browser-directory to new config format.
2021-06-27 09:28:21 +02:00
Dave Davenport
330402aa13 [FileBrowser] rename file-browser to filebrowser
In preperation to a overhaul of config system.
2021-06-24 19:11:56 +02:00
Dave Davenport
4c1a74e15e [Widget] Add scaling option to background-image. 2021-06-15 17:18:34 +02:00
Dave Davenport
f72bae02bb [DRun] Add advanced parse-user and parse-system config option. 2021-06-15 16:19:57 +02:00
nick87720z
74ef588d4e
Fix regression in commit e52094ee7a (#1317)
I forgot about line style (dash) support which had to be tested too.
2021-06-15 14:55:44 +02:00
Markus Gräb
4fd4fb89af
New keybinding Ctrl-Shift-Enter (#874)
This function combines accept-custom with the functionality to start
the command in terminal

Co-authored-by: Markus Gräb <m_graeb11@cs.uni-kl.de>
Co-authored-by: Dave Davenport <DaveDavenport@users.noreply.github.com>
2021-06-15 14:43:30 +02:00
Zachary Freed
44140ac5b4
Made it so the presence of a field in drun-display-format is enough to parse the .desktop files for that field. Also fixed helper_string_replace_if_exists only allowing one guarded field in the display format by making the regex ungreedy (#911)
Co-authored-by: Dave Davenport <DaveDavenport@users.noreply.github.com>
2021-06-15 14:32:46 +02:00
Dave Davenport
3307d62c55 [Doc] Add new -display-{mode} method to manpage. 2021-06-15 14:04:34 +02:00
Dave Davenport
74144db77d [Test] Fix the test. 2021-06-15 12:31:32 +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
beccfe4178 [Widget] with background image, draw background-color first. 2021-06-13 21:41:31 +02:00
Dave Davenport
1e25ae03b7 [Widget] Extend the pattern when loading, good for bg patterns. 2021-06-13 21:35:42 +02:00
Dave Davenport
a0b8a05315 [Widget] Change scaling of background-image 2021-06-13 20:59:28 +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
00f290beed [Widget] Fix small compile warning. 2021-06-10 21:08:37 +02:00
Dave Davenport
9d85bcb914 Update copyright header. 2021-06-09 14:50:39 +02:00
Dave Davenport
3950204760 [DRun] Do not use show-icons options, handle no-icon desktopfile better. 2021-06-09 01:20:36 +02:00
Dave Davenport
af8e2865c1 [Theme] Allow theme to set icon independent of show-icons option. 2021-06-09 01:17:16 +02:00
Dave Davenport
0726ed9f33 [Config] Remove fake-transparency/background option.
* fake-transparency
* fake-background
2021-06-08 23:07:52 +02:00
Dave Davenport
e0a3067f69 [Config] Remove old unused options. 2021-06-08 23:04:19 +02:00
Dave Davenport
dc46457f71 Remove deprecated theme options
* color_window
* color_urgent
* color_active
* color_normal
2021-06-08 22:44:15 +02:00
Dave Davenport
1a9dac80a9 Remove some deprecated options.
* lines
 * columns
 * width
2021-06-08 22:33:23 +02:00
Dave Davenport
b478de3d7d Remove deprecated option, fix typo in manpage. 2021-06-08 22:02:29 +02:00
Dave Davenport
d18a887f03 [Combi] Disable completer. 2021-06-08 21:20:09 +02:00
TonCherAmi
62ec84b5e6
[Doc] Document -drun-url-launcher. (#1328) 2021-06-08 20:25:05 +02:00
Dave Davenport
cb250fa73a Add fallback icon option. 2021-06-08 20:21:28 +02:00
Dave Davenport
6178970499 [DRun] Only go to file completer if desktop file support url. 2021-06-08 19:35:51 +02:00
Dave Davenport
6b9de4644e [DRun] Add file completer to drun mode.
Add icons to run mode.
2021-06-08 19:28:13 +02:00
Dave Davenport
0db6412ae2 [Doc,Config] Remove line-margin|padding and fix doc mistake.
*Deprecated* option.
2021-06-08 12:17:59 +02:00
TonCherAmi
c1244b066f
[FileBrowser] Allow setting startup directory (#1325) 2021-06-05 14:22:48 +02:00
Dave Davenport
2eefd9b191 [Run] Allow (Ctrl-L) to complete files using file-browser.
Merge old setup from #1116

issue: #1116  #659
2021-06-01 13:14:45 +02:00
Dave Davenport
3598ebe603 [Config] Quick hackish workaround for handling dynamic options from config file
Quick hackish workaround for having options that are added *after*
config file is parsed.
This needs to be replaced once the config system is revamped.

Fixes: #905
2021-06-01 12:17:59 +02:00
Dave Davenport
3b297ee80d Re-indent the code using indenter. 2021-06-01 10:44:23 +02:00
Dave Davenport
5a7df38ccd [Configuration] Remove old configuration format. 2021-06-01 10:43:25 +02:00
Dave Davenport
d857122251 [Script] Don't enable custom keybindings by default, script needs to enable this.
Having it on by default broke the default rofi workflow. Make it an
option now.

Fixes: #1286,#1226
2021-05-31 14:21:09 +02:00
Dave Davenport
f14c5c2ada [X11Helper] Add exception for bspwm window placing above window.
fixes: #1169
2021-05-31 14:02:08 +02:00
Dave Davenport
ac179cd2d9 [DRun] Add support for service files
Untested as I do not have these files myself.

Issue: #1152
2021-05-30 23:21:42 +02:00
unisgn
c3e70d4e1a
add prefix matching method feature (#1237)
* add prefix matching method feature

* Update helper.c

* prefix matching regex memory leak fix

* prefix matching regex memory leak fix

Co-authored-by: francis <oxfrancis@outlook.com>
2021-05-29 13:39:31 +02:00
Jas
24dde58019
Implement pango markup for -window-format (#1288)
* Implement pango markup for -window-format

* Make sure role != null

Since g_markup_escape_text doesn't like null it seems

* Update formatting

To bring it more in line with surrounding code

* Address review comments

* Fix memory leaks

* Fix formatting
2021-05-29 13:36:34 +02:00
Dave Davenport
2c30035640 [DRun] Fix sorting when name is NULL.
Thanks to nick87720z
2021-05-23 00:31:38 +02:00
Dave Davenport
2b86ece655 Update links to irc.libera.chat 2021-05-23 00:24:06 +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
04c006a4a2 [FileBrowser] fix escaping of paths. 2021-05-10 21:34:17 +02:00
Dave Davenport
fa96f32846 More doxygen cleanups. (1 warning left I don't understand) 2021-05-05 22:39:03 +02:00
Dave Davenport
f69f8fcb7b Cleanup code documentation. 2021-05-05 21:53:29 +02:00
Dave Davenport
37044dc27e Remove -dump-xresources option update manpage. 2021-05-04 20:44:38 +02:00
Dave Davenport
2516173a3d Remove parsing of xresource config settings via Xserver.
This option is deprecated.
2021-05-04 19:50:23 +02:00
Dave Davenport
67eda1a776 Remove -fullscreen option, deprecated by new theme format.
Use 'window {fullscreen: true;}' instead.
2021-05-02 20:15:58 +02:00
Dave Davenport
d539e6478a Remove -show-match option, deprecated.
Use 'element {highlight: none;}' in theme/configuration to reproduce it.
2021-05-02 20:01:03 +02:00
rahulaggarwal965
e304dbc883
Added -hover-select option that automatically selects the entry under the cursor (#1234) 2021-04-13 11:45:20 +02:00
Dave Davenport
318a6d40ca Add 'steal-focus' option instead of 'restore-focus' option.
Disable steal-focus by default.

Fixes: #1275
2021-04-13 11:35:34 +02:00
Dave Davenport
a3f12837cb Partially fix switching between modi, does not work for script mode.
Issue: #1286
2021-04-10 23:04:05 +02:00
Dave Davenport
8ac9890e8b [Listview] Check max_rows on nav_right/left.
Fixes: #1297
2021-04-10 22:26:37 +02:00
Dave Davenport
44d8320e5c [Window] revert accidental changes to window.c 2021-03-29 13:59:26 +02:00
Dave Davenport
750dbad729 Add [no]focus restore option. 2021-03-27 16:28:27 +01:00
Dave Davenport
20d236100f [window] do the focus_revert fix at the right place. 2021-03-02 18:20:57 +01:00
Dave Davenport
eb544b48bc [Window] do not revert focus on window switch. 2021-03-02 17:20:59 +01:00
Dave Davenport
e9cf6fb2b0 Improve blur algorithm. 2021-02-16 01:46:04 +01:00
Dave Davenport
606d9d12bf Test blurring of background image (screenshot/background/image).
window {
    blur: {radius};
}

Does not work on true transparency.
2021-02-15 23:30:58 +01:00
Dave Davenport
4e363e0c3f [Window] small fix to pass screen to stacking window list.
Issue: #1225
2021-02-13 13:08:39 +01:00
Dave Davenport
653f023b21 Small fix in log domain container 2021-02-03 22:03:29 +01:00
Dave Davenport
01935064d8 Add -rasi-validate option.
Issue: #1260
2021-01-26 17:27:32 +01:00
Dave Davenport
9dd54ac6c6 [Textbox] Allow markup to be disabled in theme.
Change textbox for message from textbox to message-textbox.

Issue: #1255
2021-01-19 23:55:07 +01:00
Dave Davenport
75e361ecab Reduce scope of variables. 2021-01-17 16:15:04 +01:00
Dave Davenport
519b2a22eb Add check for input == NULL. 2021-01-17 16:09:58 +01:00
Dave Davenport
9313d7a8a0 [Textbox] Allow theme to force markup enabled on textbox.
rofi -theme-str 'prompt { markup: true; }' -show drun -display-drun '<i>d</i>ru<b>n</b>'

fixes: #1220
2020-12-28 22:45:58 +01:00
Dave Davenport
af6752c35d [Textbox] When estimating height, set correct font first.
fixes: #1247
2020-12-27 21:25:06 +01:00
Quentin Glidic
2e18133667
xcb: Restore focus in more places
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2020-12-20 14:11:56 +01:00
Quentin Glidic
11b677b521
xcb: Nicer focus stealing in O-R mode
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2020-12-13 15:56:37 +01:00
Dave Davenport
ec858dd305 Revert "xcb: Steal focus in O-R mode"
This reverts commit 1c9d975dd2.

Fixes: #1228
2020-12-09 16:04:04 +01:00
Quentin Glidic
1c9d975dd2
xcb: Steal focus in O-R mode
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2020-11-27 07:26:17 +01:00
Quentin Glidic
627bd43510
xcb: Ask for focus where possible
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2020-11-27 07:26:16 +01:00
Tim Gates
d27d7eb669
docs: fix simple typo, prefered -> preferred (#1224)
There is a small typo in source/xcb.c.

Should read `preferred` rather than `prefered`.
2020-11-15 00:14:02 +01:00
Dave Davenport
7061eb21ae Indent round. 2020-11-03 23:57:02 +01:00
Dave Davenport
4878c5bd13 [RofiIconFetcher] Add missing free 2020-10-20 20:40:47 +02:00
Dave Davenport
deb1e6a208 [RofiIconFetcher] Switch to gdk-pixbuf. 2020-10-20 20:38:13 +02:00
Dave Davenport
6e98290335 [RofiIconFetcher] Do image checking in icon fetcher, use nkutils-enum 2020-10-18 22:01:49 +02:00
Dave Davenport
5994df7f04 [IconLoader] add optional gif loader. 2020-10-18 21:37:05 +02:00
Dave Davenport
d8a420c952 [FileBrowser] Small restructure. 2020-10-18 20:54:03 +02:00
Dave Davenport
08a40d13ce [Icons] Check both small and big caps for extention. 2020-10-17 22:05:17 +02:00
Dave Davenport
cc5a1989d8 [RofiIconFetcher] Don't exit out on libjpeg error, but don't load image. 2020-10-17 21:59:12 +02:00
Dave Davenport
e00ef7d993 [FileBrowser] Save last directory. 2020-10-16 21:33:02 +02:00
Dave Davenport
10678e55d8 [FileBrowser] Prepend '@' before filename if link. 2020-10-16 21:10:04 +02:00
Dave Davenport
9a21040d0e [FileBrowser] Add SVG as file type. 2020-10-16 20:22:27 +02:00
Dave Davenport
0d45686914 [FileBrowser] If link, use stat to check out type.
Fixes: #1214
2020-10-15 19:19:51 +02:00
Dave Davenport
eea8897501 Fix some of the documentation 2020-10-12 21:39:36 +02:00
Dave Davenport
585538b428 Try fixing build on meson of readdir dirent args. 2020-10-12 20:32:25 +02:00
Dave Davenport
519d4d2818 [FileBrowser] Add file browser modi. 2020-10-12 20:17:21 +02:00
Dave Davenport
b4bbce4af5 [Helper] Add -normalize-match option.
Decomposes string and remove accent characters before matching.
This makes o match ö, é match e and more.
It is not a perfect implementation but works.
Currently disables the match highlighting.

Fixes: #1119
2020-09-30 21:56:37 +02:00
Hpl4r
30fb1bd4e8
[HELP] Fix typo in help msgs (#1198) 2020-09-17 12:29:06 +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
011908e1ff
issue 1187: If error on launching application, show error message and return to list` (#1193)
* Show error message, then possibly pop back to main window.

Fix drun/run dialog to use this for command execution.

Issue #1187

* [Combi] When no line selected, handle using the first entry.

* [Window] Add execute on invalid input to window dialog.

* Update view.h doxygen docu

* Update manpage with running application changes.
2020-09-13 21:56:25 +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
0a3734dce4 [Theme] Fix @media printing in -dump-theme. 2020-09-13 13:48:48 +02:00
Dave Davenport
31fc5c9d35 [Textbox] Try to fix estimated font height.
This was on newer pango 1 pixel off with actual font height.
This casues drawing issues.

Fixes: #1190
2020-09-13 10:24:59 +02:00
Dave Davenport
bff8948116 [DRun] Fix broken cache after URL type was added. 2020-09-09 22:46:18 +02:00
Dave Davenport
6a38f88e98 Split MENU_QUICK_SWITCH into MENU_CUSTOM_COMMAND/QUICK_SWITCH 2020-09-08 18:24:36 +02:00
nick87720z
96cd34d24f
Fix and optimize 20200908 (#1184)
* combi: Reuse own get_num_entries in self-init

* combi_mode_parse_switchers: Remove duplicated mode pointer

* combi_mode_parse_switchers: Regroup mode search lines

* combi_mode_result: Simplify switcher search quit

* mode_result: Check for mode switch actions before hook

These are over-mode actions, which should not be handled
in mode hooks at all.
2020-09-08 17:30:03 +02:00
Dave Davenport
88ac249d36 [Window] Try to clarify help.
Issue: #1183
2020-09-08 14:42:17 +02:00
Dave Davenport
f5bb9d2cbf [Widget] Fix border drawing code.
Fixes: #1177
2020-09-05 11:12:54 +02:00
lbonn
e4e59b99ea
Fix an unsafe use of strchr in dmenu mode (#1176)
Found with valgrind
2020-09-02 15:46:44 +02:00
Dave Davenport
30735791b4 Run indenter. 2020-08-28 16:41:59 +02:00
Mike Dalessio
5bec191d2e
Follow Type=Link standard desktop entries with drun (#1168)
* [DRun] Introduce data structure changes for Link desktop entries

From the [freedesktop spec][1]:

> This specification defines 3 types of desktop entries:
> Application (type 1), Link (type 2) and Directory (type 3). To allow
> the addition of new types in the future, implementations should
> ignore desktop entries with an unknown type.

This commit adds an enum to capture these types, and adds `type` to
DRunModeEntry.

  [1]: https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html

part of #1166

* [DRun] Sanity check Link entries and capture the URL

Note that we're introducing some logic that will differ depending on
the Desktop entry type (Application or Link). The logic is:

- if entry is Application type,
  - then Exec is required
  - and the value is saved in .exec
  - and drun_mode_result calls exec_cmd_entry
- if entry is Link type,
  - then URL is required (but is not saved in the DRunModeEntry)
  - and drun_mode_result calls new function launch_link_entry

part of #1166

* [DRun] Launch desktop links via xdg-open

Note that this introduces a new dependency on xdg-open, which may not
be installed. In that case, rofi will display an error dialog
with something like:

  "Failed to execute child process xdg-open (No such file or directory)"

which hopefully is explanatory enough for folks.

part of #1166

* Make drun options comments consistent and add a bit of whitespace

* [DRun] new config option drun-url-launcher for opening links

In previous commit, this was a hard-coded string.

part of #1166
2020-08-26 21:10:04 +02:00
Dave Davenport
97ac7c9348 [Matching] Make fuzzy matching non-greedy 2020-08-25 20:23:26 +02:00
Dave Davenport
4f1169e326 Add extra timing debug.
Issue: #1162
2020-08-19 22:44:55 +02:00
nick87720z
57ee69367d
micro-refactoring: widget.c (#1148)
* widget.c: microrefactoring

* widget.c: join enable/disable functions
2020-07-11 14:48:58 +02:00
Dave Davenport
641cd4ef46 [Widget] Fix inconsistency in argument checking. 2020-07-09 17:47:32 +02:00
Dave Davenport
fc0ea0b22e Update changelog a bit. 2020-07-05 11:41:04 +02:00
nick87720z
e52094ee7a
Widget bg draw (#1147)
* 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
2020-06-17 14:10:48 +02:00
Dave Davenport
bf17e1c65e When no dpi set (-1) set the default one for fonts handling. 2020-06-09 22:51:44 +02:00
nick87720z
fb2ba8ada3
Millimeter support for distance (#1144) 2020-06-09 22:19:43 +02:00
nick87720z
e275ed2283
Again final workaround for #303 (#1142) 2020-06-09 17:17:50 +02:00
Quentin Glidic
3d5f0f086c
script: Fix parsing of extras (#1141)
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2020-06-06 18:32:14 +02:00
nick87720z
ae701ce54e
Entry info was not used at entry selection (#1140) 2020-06-06 18:28:39 +02:00
Dave Davenport
4821320833 [Listview] Try to fix sizing of barview.
Issue: #1137
2020-06-02 09:17:06 +02:00
Dave Davenport
da8c666e80 [Script] Initialize info entry. Don't pass entry at custom input.
Fixes: #1138
2020-05-30 10:44:37 +02:00
Dave Davenport
1342b733af [Script] Add 'info' row option, that gets passed to ROFI_INFO environment. 2020-05-24 19:10:49 +02:00
Dave Davenport
0e880e76a2 [Window] On window name list, Check if we go out of range. 2020-05-24 17:14:12 +02:00
Dave Davenport
3604b12fde Add check that looks if rofi is running inside rofi script mode. 2020-05-21 09:35:55 +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
191f49dbea [LISTVIEW] Support more customization in element. 2020-05-13 17:17:15 +02:00
Dave Davenport
f2b6cf6b3c [Widget] Propaget set_state to children. 2020-05-13 16:25:12 +02:00
nick87720z
8a2e67f6fe
workaround for #303 (#1122)
* workaround for #303

Subpixel rendering may be disabled by some clip paths or when text
itself is clipped.

* optimize draw_pango_layout()
2020-05-12 12:05:56 +02:00
Dave Davenport
2ccc65ff52 Add some ui benchmark code 2020-05-12 10:40:50 +02:00
Dave Davenport
865821f829 Update help for option in source code. 2020-05-10 15:47:20 +02:00
Dave Davenport
1a9e6450e3 [Helper] Throw error when shell parsing fails. 2020-05-04 14:10:35 +02:00
Dave Davenport
86cdcae55b [Window] Update manpage and --help. 2020-04-29 12:59:49 +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
906b520daf [Script] Add no-custom mode. 2020-04-22 23:41:25 +02:00
Jaakko Luttinen
ccfecef936
fix xetc to config_path (#1097) 2020-04-19 19:07:58 +02:00
Dave Davenport
ed55b6c634 check before xresource config file parsing if it exist 2020-04-19 16:24:17 +02:00
Dave Davenport
e7554da627 Parse XDG_CONFIG_DIRS for default configuration file. 2020-04-19 11:55:53 +02:00
Dave Davenport
3a9c60804b Add ROFI_PLUGIN_PATH environment variable. 2020-04-19 11:34:28 +02:00
Dave Davenport
3e64e4422d [DMenu] Implement -keep-right
Fixes: #1089
2020-04-16 23:31:43 +02:00
Dave Davenport
1104d1d53a [DRun] cleanup debug message. 2020-04-15 19:08:01 +02:00
Dave Davenport
0214d5a6e4 [DRun] Adding %% as escape character. 2020-04-15 19:06:39 +02:00
Dave Davenport
7587149950 [Script] Update example and doc. 2020-04-07 13:20:16 +02:00
Dave Davenport
de38e0f4a9 [Script|Dmenu] Don't -1 in a unsigned variable. 2020-04-07 13:14:53 +02:00
Dave Davenport
34a278f943 [Combi] Remove strchrnull
Issue: #1083
2020-04-07 12:48:53 +02:00
Dave Davenport
f63da72ea6 [Dmenu] Fix possible crash.
Don't pass empty string.

Issue: #1083
2020-04-06 23:31:45 +02:00
Dave Davenport
825fe4ae58 [Script] Fix crash when custom input with custom keybinding. 2020-04-05 13:19:22 +02:00
Dave Davenport
bacecf3044 [Script] Add environment variable to indicate state.
* ROFI_RETV shows the state rofi was in before calling rofi.
2020-04-05 12:56:33 +02:00
Dave Davenport
5879fd6099 [Script] Free g_shell_parse result. 2020-04-05 11:48:03 +02:00
Dave Davenport
aa07b8ef94 [Script] Add option to set deliminter and example script.
Issue: #1041
2020-04-01 13:58:01 +02:00
Dave Davenport
8be08007f8 [Textbox] Round estimated size up. 2020-03-31 14:05:12 +02:00
Dave Davenport
c6a405e840 Fix hack for height calc. 2020-03-30 00:09:28 +02:00
Dave Davenport
ca067234ff [Textbox|Listview] Fix sizing of textbox.
- don't get height of layout, but calculate height using metrics.
- listview, set string with right number of lines.

Issue: #925, #1069
2020-03-29 16:31:47 +02:00
Dave Davenport
d8a0f540f0 Add selected-row option to normal operation. 2020-03-29 12:56:47 +02:00
Dave Davenport
e0e6c5e670 Fix detection no theme. 2020-03-02 12:21:34 +01:00
Dave Davenport
333d71af11 [IconFetcher] Do faster scaling. 2020-02-14 14:37:41 +01:00
Dave Davenport
855d09ded7 [IconFetcher] Add jpeg support, scale on load.
TODO: fix scaling speed.
2020-02-14 14:27:03 +01:00
Dave Davenport
3bf9d3d3b1 [Script] Reload dialog, on selecting non-selectable item. 2020-02-13 21:32:19 +01:00
Dave Davenport
c458047ef6 [Script] Fix next dialog option.
Error slipped in from previous patch.

Issue: #1059
2020-02-13 21:29:02 +01:00
Dave Davenport
03775378e0 [Script] init nonselectable.
Issue: #1057
2020-02-13 16:52:11 +01:00
Dave Davenport
bc2e1549fb Add rofi-script manpage, add meta option support to dmenu.
update ronn to go-md2man
2020-02-02 17:21:21 +01:00
Dave Davenport
7dcc3f450c Add option to make entry non-selectable in dmenu/script.
Fixes: #1024
2020-02-02 14:21:29 +01:00
Dave Davenport
b169289996 Indent all the code. 2020-02-02 13:56:37 +01:00
Jeff
83c2e467d5
Add support for additional field on script entries meta (#1052)
* Add test for hidden meta data in script mode

The purpose of this is to provide support for "hidden" fields on a
script item that work for search but don't get displayed.  This is
mostly to provide something similar to the optional display (but still
matchable) fields in drun like "categories" or "keywords".  This also
enables the choice to display unicode icons but still allow for
searching for the keywords without needing to print them.

* Ignore the output file from test runs

* Add support for the "meta" field on script entries

This fields provides a matchable but unprinted string for entries in a
script mode list match.  This means you can use one thing but provide
multiple options that can match that item without polluting the list
view or make confusing output.

* Add new test to test suite file
2020-02-01 13:49:11 +01:00
Dave Davenport
a35a898816 [DRun] Add desktop cache
Add a desktop cache file. Usable for system with slow filesystems.

* -drun-use-desktop-cache
* -drun-reload-desktop-cache

Fixes: #1040
2020-01-26 12:47:04 +01:00
Dave Davenport
7a6fcb20f4 Initialize all the configuration before upgrading config. 2020-01-02 18:57:53 +01:00