Commit graph

2161 commits

Author SHA1 Message Date
Dave Davenport
f5eafcc04c [1566] Extra debug for monitor resolving for m=-1. 2022-01-13 20:55:26 +01:00
Dave Davenport
5543e6497f [XCB] Fix small memory leak. 2022-01-07 18:31:31 +01:00
Dave Davenport
addfc1d367 [Helper] Remove font sanity check as it is insufficient, and old format. 2022-01-07 18:16:47 +01:00
Dave Davenport
e563cd3ad0 Add -replace option
Issue: #568
2021-12-22 21:03:54 +01:00
Dave Davenport
0424dc6f2e Small rename switcher --> mode. 2021-12-22 20:33:22 +01:00
Dave Davenport
91050eaf74 [XCB] Cache lookup of monitor. 2021-12-18 20:38:51 +01:00
Dave Davenport
5f7563dae3 Update cmdline separator and add to manpage. 2021-12-17 19:04:02 +01:00
Dave Davenport
a5f76b9d56 [X11Helper] add some extra debug. 2021-12-17 10:23:21 +01:00
Dave Davenport
8f5d9b425e [KeyBindings] Fix keybinding modified by -theme-str. 2021-12-15 20:49:53 +01:00
Dave Davenport
f0500a5a0e [Help] Print out the parsed config/theme files. 2021-12-12 20:56:32 +01:00
Dave Davenport
2614fe4425 [Config] Change separator to '#'. 2021-12-04 22:13:31 +01:00
Dave Davenport
8f1aa8481d [Config] when parsing -theme- cmd option, allow throwing errors. 2021-12-02 08:51:32 +01:00
Dave Davenport
50ac47e24e [Config] Skip single element options. 2021-12-02 08:47:26 +01:00
Dave Davenport
e3f41474fd [Config] Allow all theme properties to be set from commandline
Bit hack solution, but `listview { scrollbar: false; }` can be reached
by: -theme-listview-scrollbar false
2021-12-02 08:42:06 +01:00
Dave Davenport
dac09b8728 Cleanups based on cppcheck. 2021-12-01 13:14:36 +01:00
Dave Davenport
f72d6135bd [Config] on -dump-config do not include -theme option.
But print the right line at the bottom.

fixes: #1534
2021-11-29 19:31:31 +01:00
Dave Davenport
b03c072aaa [Build] Allow rofi to build without window mode
fixes: #1533
2021-11-29 19:15:19 +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
Dave Davenport
8d943e4a55 [Rofi] Fix error message to have right syntax. 2021-11-12 23:51:12 +01:00
Dave Davenport
b77de4c00d [Theme] Accept just color for highlight 2021-11-08 21:46:55 +01:00
Dave Davenport
c45fc38856 [Combi] Add a check against recursion.
Fixes: #1510
2021-10-29 00:39:51 +02:00
Quentin Glidic
bde8175d39
gitmodules: Update libnkutils
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2021-10-28 06:33:12 +00:00
Quentin Glidic
f24cbe270e
script: Include config.h
It avoids deprecation warnings wrt GLib.

Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2021-10-28 06:31:20 +00:00
Dave Davenport
06bb72d39b [DMenu] Do not crash when no entry is available.
Issue: #1504
2021-10-16 01:39:21 +02:00
Dave Davenport
ccaaaf6a46 [RUN|DRUN] Only initialize file-completer on first use. 2021-10-12 13:35:00 +02:00
Dave Davenport
e3860c89e8 [FileBrowser] Reduce number of re-allocs. 2021-10-12 10:34:47 +02:00
Dave Davenport
6ec5bfba64 [Config] Downgrade unknown options from error to warning. 2021-10-09 18:28:55 +02:00
Dave Davenport
324cbd7746 [DMenu] Fix uninitialized memory (nonselectable). 2021-09-23 10:22:19 +02:00
Dave Davenport
e081feec27 [FileBrowser] if text cannot be converted, try to mangle it into something.
Issue: #1471
2021-09-22 19:08:32 +02:00
Dave Davenport
e116aa5bc1 [Textbox|FileBrowser] Fix crash on invalid filename
Try to fix some crash on invalid filenames.

Issue: #1471
2021-09-22 15:45:02 +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
af3464a1c3 [Window] Lower class name before icon lookup 2021-09-15 18:10:22 +02:00
Dave Davenport
ca47ffee9c [Helper] Don't tell g_utf8_strlen to ignore length.
Fixes: #1459
2021-09-13 11:26:48 +02:00
Dave Davenport
b9e28942bf [CMD] If failed to convert commandline option to new config do not stop.
Fixes: #1425
2021-09-08 14:20:24 +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
c10ee955bd
#1437 - Fix sizing logic for widgets and textboxes. (#1444)
* [I1437] Textbox make get_desired_width depend on width.

Should fix some weird sizing issues on creation of widgest.


* [i1437] [View] Do the sizing based on the desired window width.

issue: #1437

* [i1437] Fix header documentation.
2021-09-07 19:40:07 +02:00
Dave Davenport
f4e5fd328a Revert "[I1437] Textbox make get_desired_width depend on width."
This reverts commit 154e03efc1.
2021-09-06 22:47:35 +02:00
Dave Davenport
965d3631cb Revert "[i1437] [View] Do the sizing based on the desired window width."
This reverts commit 46ac770fcc.
2021-09-06 22:47:26 +02:00
Dave Davenport
46ac770fcc [i1437] [View] Do the sizing based on the desired window width.
issue: #1437
2021-09-06 22:42:33 +02:00
Dave Davenport
154e03efc1 [I1437] Textbox make get_desired_width depend on width.
Should fix some weird sizing issues on creation of widgest.

Issue: #1437
2021-09-06 22:36:21 +02:00
Dave Davenport
294a22f3dd Fix some memory leaks. 2021-09-06 21:26:04 +02:00
Dave Davenport
c63e03fd49 [Window] Try to fix the autosizing of desktop name for non-i3 dekstop.
Issue: #1439
2021-09-06 20:32:36 +02:00
Dave Davenport
4d0eaf1463
[Window] Issue 1406 fix the broken close-on-delete (#1421)
* [1406] Add watcher for new/removed windows and reload based on that.
* [1406] Add a small timeout before reloading to avoid reloading several times in a row.
* [1406] close rofi if you receive a destroy window on rofi.
2021-09-03 13:53:43 +02:00
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