Commit graph

850 commits

Author SHA1 Message Date
Dave Davenport
8061e4e7c2 Add an item-free method to the thread-pool 2024-03-01 15:28:48 +01:00
Dave Davenport
afc65ac125 [script|dmenu] Add option to make row permanent.
fixes: #1952
2024-02-28 20:47:18 +01:00
Qball Cow
13c2a61766 [ThreadPool] Sort items in the queue based on priority 2024-02-11 14:00:03 +01:00
Dave Davenport
dbc1f8dcb4 [Dmenu][Script] Add 'display' row option to override whats displayed. 2023-11-06 20:02:48 +01:00
Dave Davenport
b5f1e97e0f [XCB] Try to be smarter with where mouse click started.
fixes: #1896
2023-09-24 20:06:08 +02:00
Dave Davenport
664f1b9297 [Theme] Fix missing doxygen documentation 2023-08-15 19:34:11 +02:00
Dave Davenport
ad06fb9516 [Theme] Try to fix importing of theme.
- Fix the two place of resolving into one method.
- Do not accept file in CWD.
- Prefer file if it exists in same directory as parent file that
  imported it.

fixes: #1889
2023-08-15 19:12:14 +02:00
Qball Cow
a5301b35ad Remove unused variable. 2023-06-29 23:59:25 +02:00
Dave Davenport
e203084647 [Build] Fix autotools build system. 2023-06-12 19:46:14 +02:00
Dave Davenport
47f37f2bbc [Doc] Fix some missing/wrong doxygen headers. 2023-06-12 19:40:25 +02:00
Dave Davenport
e409322faf Print window manager in -help output 2023-06-12 19:16:46 +02:00
Dave Davenport
d27cee89fa Merging in the Recursive file browser.
Squashed commit of the following:

commit 92e730076d461622dc81e44e87ec456317514904
Author: Dave Davenport <qball@gmpclient.org>
Date:   Sun Jun 11 18:17:12 2023 +0200

    [Doc] Add regex filtering to recursivebrowser.

commit ee80c8487f9765b1e6e8ab8219a6baea089cf5af
Author: Dave Davenport <qball@gmpclient.org>
Date:   Sun Jun 11 17:49:29 2023 +0200

    [recursivebrowser] Update manpage.

commit a24b68f52362aaf1461935c2340e3bf5e31da59d
Author: Dave Davenport <qball@gmpclient.org>
Date:   Sun Jun 11 17:37:56 2023 +0200

    [Mode] Add some extra validating of the mode selected to complete.

commit cf497e8685e806521c0f61922827687adce268c9
Author: Dave Davenport <qball@gmpclient.org>
Date:   Sun Jun 4 15:12:31 2023 +0200

    [Recursive browser] Make completer selectable.

commit 722f07a803c28a406d8a610f31a24b3f7247b9ba
Author: Dave Davenport <qball@gmpclient.org>
Date:   Sun Jun 4 14:36:14 2023 +0200

    Add methods for completer to modes.

commit 7972420c30275514751802d1ed517a45bbd83da1
Author: Qball Cow <qball@blame.services>
Date:   Thu Jun 1 21:56:06 2023 +0200

    Prepare updates for new APIs.

commit dd3035a1a61f8196d394f6867701a0e1b3af30ac
Author: Dave Davenport <qball@gmpclient.org>
Date:   Wed May 10 19:24:48 2023 +0200

    [RB] Fix regex and cleanups

commit 4d2941caf32dfb946aee54c467c1319c7a89804a
Author: Dave Davenport <qball@blame.services>
Date:   Wed May 10 18:09:54 2023 +0200

    [RB] Add (unfinished regex test)

commit 848277001fc8cf9afc538067f2afa24a174f8c7f
Author: Dave Davenport <qball@blame.services>
Date:   Wed May 10 17:49:16 2023 +0200

    [RB] Pull the scanning into a separate thread.

commit f369a7f63f618bbcad10c18e73f7e2b117c515f1
Author: Dave Davenport <qball@gmpclient.org>
Date:   Wed May 3 18:35:15 2023 +0200

    [Recursive File Browser] First test version.
2023-06-12 19:07:00 +02:00
Dave Davenport
bb5868199f Re-indent the code using clang-format 2023-03-26 13:19:58 +02:00
notuxic
c870d512ff
Add support for adding textbox widgets to listview elements (#1792)
* Add support for adding textbox-widgets to listview entries

* Add support for adding icons and buttons to listview elements
2023-03-05 11:17:25 +01:00
Dave Davenport
6caece77d4
I785 (#1789)
* [Textbox] Add history to the entrybox.
* [Textbox] Add comments and move into sub functions.
* [doc] Add conflicting constraint section to manpage.
* [Script] Some small memory leak fixes.
* [Entry History] Add documentation.

fixes: #785
2023-01-22 17:25:17 +01:00
Dave Davenport
727d7c579d Update copyright dates. 2023-01-14 13:02:35 +01:00
Dave Davenport
9fda280be1 [DMenu|Script] Add per row urgent/active option.
Instead of having a global list of entries to highlight urgent/active,
you can now to it per row.
2023-01-08 12:10:40 +01:00
Dave Davenport
d464822505 [Theme] support rasinc for theme include files. 2022-12-30 11:54:15 +01:00
Dave Davenport
d47b1515b5 [listview] Don't calculate infinite rows on empty height.
Issue: #1769
2022-12-29 18:41:51 +01:00
Dave Davenport
09b9039718 [Theme] Move some definitions header around for plugin. 2022-12-24 11:46:03 +01:00
Dave Davenport
bdeede53e4 [Doc] Add documentation for new functions. 2022-11-19 21:56:12 +01:00
Dave Davenport
d9935e594e [Doc] Fix some missing docu. 2022-11-19 21:50:34 +01:00
Dave Davenport
063195922f [DMenu] Add -ellipsize-mode option. 2022-11-19 21:03:22 +01:00
Dave Davenport
66d782e0e7 Move config.h
small updates

Tweak header a bit

[CI] Add lto build to sh ci.

[CI] Fix artifact upload

[CI] no wildcard for artifact
2022-11-19 20:35:52 +01:00
duarm
6d02648d3a
input method (#1735)
* input method draft

* restoring relese event

* using unused macro, removing debug code, handling disconnection

* review fixes, new update_im_window_pos method

* initializing variables correctly

* initializing im pos queue correctly

* ime window positioning

* add widget_get_y_pos() position

* [Build] Update makefile with imdkit

* [CI] Add imdkit as dependency.

* [XCB] rofi_view_paste don't throw warning, print debug.

* [XCB] rofi_view_paste lower 'failed to convert selection'

* [Build] Add minimum version check to imdkit

* new macro XCB_IMDKIT_1_0_3_LOWER

* [Build] Try to support old version of imdkit in meson/makefile.

* [Build] Fix typo in meson.build

* [XIM] Don't set use compound/set use utf8 when on old version.

* [Build] Allow building without imdkit.

* [Doc] Add imdkit to dependency list.

Co-authored-by: Dave Davenport <qball@gmpclient.org>
2022-11-08 19:18:45 +01:00
Dave Davenport
62ebb863ed [Textbox] Add a 'get_cursor_x_pos' function. 2022-10-27 22:22:11 +02:00
Dave Davenport
96a69a54c3 [Window] Add -window-prefer-icon-theme option.
Fixes: #1702
2022-10-22 11:03:11 +02:00
Dave Davenport
5ae8fa5a3f [Keyb] Add a -list-keybindings command. 2022-09-18 20:28:38 +02:00
Dave Davenport
fce721a105 [Textbox] Add 'placeholder-markup' flag.
Fixes: #1690
2022-08-28 21:47:05 +02:00
Dave Davenport
fc07619ac6 [View|Xcb] Add support to copy current selected item to clipboard
Adds control-v binding that copies it to the clipboard.
THIS ONLY WORKS WITH CLIPBOARD MANAGER!!! once rofi is closes, the data is
gone!

This needs to be tested. Documentation on this is lacking so reversed
engineered from other applications.

TODO: how do we do the SAVE_TARGETS?

fixes: #378
2022-08-22 21:44:52 +02:00
Dave Davenport
b45adf2864 [helper] More typo fixing in comments 2022-07-30 15:30:47 +02:00
Dave Davenport
75d13b4e67 [Helper] Fix typo in header. 2022-07-30 15:21:56 +02:00
Dave Davenport
77af850200 [textbox] Implement text-transform add upper/lower/capitalize transform
fixes: #1010
2022-07-30 14:50:05 +02:00
Dave Davenport
2efd6a98a5 [Doxy] Fix the doxygen check and some warnings. 2022-07-28 00:23:21 +02:00
Dave Davenport
fb24fc0999 Add a warning list and append it to the message box. 2022-07-27 23:44:56 +02:00
Dave Davenport
be6fe8ac61 [Textbox] Remove the dot indicator.
Weird hack from dmenu that dripped through rofi code-base for multi-select.
Change it so it is just a prefix to the string of ☐ and ☑.
2022-07-23 20:21:00 +02:00
Dave Davenport
0e90fb065f [Build] Fix some compile warnings. 2022-07-23 00:28:55 +02:00
Dave Davenport
af976c3779 [XCB] Add a flag to enable work around for #611.
In issue #611 there is a workaround implemented for an issue within
xserver: https://bugs.freedesktop.org/show_bug.cgi?id=104323#c1,
https://gitlab.freedesktop.org/xorg/xserver/-/issues/300.
With a latest update in xkeyboard-config this workaround breaks rofi,
see #1642 and
https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/issues/341.

This commits disabled this work-around (can be re-enabled with
-xserver-i300-workaround flag).

Hopefully this restores correct rofi functionality.

issue: #611 #1642
2022-07-19 15:50:42 +02:00
Dave Davenport
386877dd22 [Theme] Add enabled property with env support. 2022-07-15 23:28:57 +02:00
Dave Davenport
ceb2b9d295 [Modes] Support icons off multiple icons. 2022-06-27 20:52:12 +02:00
Dave Davenport
9c18aaef22 [View] Add icon-current-entry widget. 2022-06-27 17:09:21 +02:00
Dave Davenport
8ee05a718e [View] Add textbox-current-entry widget. 2022-06-27 16:56:59 +02:00
Dave Davenport
40ecfcd1f1 [Script] Print list of user scripts in -h 2022-06-12 17:49:04 +02:00
Dave Davenport
ffa1d11e3c [Script] Look into ~/.config/rofi/scripts/ for user scripts. 2022-06-12 15:22:56 +02:00
Dave Davenport
fc64265343 [1633][Mode] Add generic fallback option for modes.
Add config option:

```css
configuration {
   <mode> {
   	fallback-icon: "<icon name>";
   }
}
```

fixes: #1633
2022-05-11 17:15:18 +02:00
Dave Davenport
f5fce95330
[#1079]: Option to hide listview elements when not filtered (#1622)
* [listview] Optional don't show elements when not filtered (#1079)

* [Listview] Fix auto-complete error.
2022-04-20 23:24:52 +02:00
Dave Davenport
e2a7cfdd52
[DMenu] Huge list speedups (#1621)
* Don´t refilter on each key-press.

* Make sure refiltering is not completely starved.

* Force refilter before accepting entry

* Go into 'timeout' refilter mode only after certain # elements.

* [DMenu] threading with getdelim to speed up reading.

* [View] Remove debug output.

* [dmenu] Fix pre-read.

* [DMenu] Make sure that async mode cannot block

* Remove mutex for IPC via pipes.

* [Dmenu] Small cleanup.

* [Scrollbar] Fix scrollbar overflowing on big lists.

* Fix stack overflow by creating to many filter jobs.

* [Doc] Add new option to manpage
2022-04-20 21:53:44 +02:00
Dave Davenport
f088d75ee4 Cleanup some duplicate checks. 2022-03-15 01:00:56 +01:00
Dave Davenport
47d785758a
[listview] Allow settings of flow direction of elements (#1605)
* [Listview] Initial implementation for left to right packing.
* [Listview] fix movement in pack-left-to-right.
* Add element-next/prev keybinding and remap tab.
* [Listview] Change option name to 'flow' and use rofi orientation type.
* [Listview] Make listview work with reverse property.
* Update test for 2 new keybindings.

fixes: #1058
2022-03-07 20:37:58 +01:00
Dave Davenport
e6dbc8fbd3 Fix dialog -> mode
Fix more old naming.
2022-02-23 23:25:56 +01:00