Commit graph

833 commits

Author SHA1 Message Date
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
Dave Davenport
534aa6ad54 Rename Dialogs -> Modes
Try to fix some of old syntax.
2022-02-23 23:18:53 +01:00
Dave Davenport
4e06bff706 Change modi -> modes
issues: #1599
2022-02-23 22:42:56 +01:00
Dave Davenport
eff3b86c94 Bump copyright date. 2022-02-07 23:17:15 +01:00
Dave Davenport
a34c13bdb2 [Theme] Validate variables in theme and throw error on fail.
issue: #1580
2022-01-31 23:19:51 +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
Jakub Jirutka
6e3feee179
Add support for setting tabs stops on textboxes (#1571)
* Document new array of values type

* Move WIDGET_PADDING_INIT from widget.c to widget-internal.h

* Refactor WIDGET_PADDING_INIT macro

* Add support for setting tab stops on textbox

This allows to emulate a multi-column layout inside the text boxes.

The implementation is kinda hackish due to the limitations of the theme
parser. The only property type that can contain multiple distance values
is Padding, so I used that.

* Use new array syntax for tab-stops
2022-01-24 22:20:41 +01:00
Dave Davenport
4bef336b9c What is in a name. 2022-01-24 20:33:19 +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
Jakub Jirutka
50b85ba954
Add -combi-display-format (#1570)
Implement a new option -combi-display-format (analogous to
-drun-display-format) that allows to change position appearance of
the mode name in the combi entries.
2022-01-22 22:03:10 +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
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
f0500a5a0e [Help] Print out the parsed config/theme files. 2021-12-12 20:56:32 +01:00
Dave Davenport
dac09b8728 Cleanups based on cppcheck. 2021-12-01 13:14:36 +01:00
Quentin Glidic
bde8175d39
gitmodules: Update libnkutils
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2021-10-28 06:33:12 +00: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