1
0
Fork 0
mirror of https://github.com/davatorium/rofi.git synced 2024-11-25 13:55:34 -05:00
Commit graph

27 commits

Author SHA1 Message Date
giomatfois62
75ae2a41f0
[WIP] xdg thumbnails fetching with fallback on mimetype icons (#1939)
* implemented xdg thumbnails fetching with fallback on mimetype icons for menu entries in filebrowser mode

* included original license text

* added md5 header and source file

* implemented xdg compatible thumbnail's creation

* added -preview-cmd string option to program settings

* support custom command to create images for entries with thumbnail:// prefix

* fix custom thumbnailer command crash caused by null uri when entry is not a valid filename

* check entry_name is not NULL or empty when generating thumbnails;
use snprintf to avoid static analyzer complains

* avoid using gstrvbuilder to build thumbnailer command args

* fixed static analyzer complain about always wrong condition

* use g_spawn_check_exit_status to avoid bump to glib 2.70

* removed md5-c dependency and use glib checksum implementation

* fixed meson build after md5-c library removal

* support thumbnail generation in recursivebrowser mode

* restored check rofi_icon_fetcher_file_is_image

* create thumbnail directories if not existing

* use g_malloc0, g_strdup and g_strdup_printf

* fixed formatting with clang-format

* don't wait for jobs in execution when finalizing the icon fetcher worker threadpool

* destroy and rebuild the icon fetcher worker threadpool when the current page is changed

* added query_started boolean member to IconFetcherEntry;
check if an icon fetcher query was started on an IconFetcherEntry and submit the query again otherwise

* force icon cache lookup even if the item has a valid icon_fetch_uid (the fetching job could have been discarded before starting)

* search binaries in PATH when executing thumbnailer command

* mark icon query as not started in threadpool item free_func

* added listview page_changed_callback; rebuild icon fetcher threadpool in page_changed_callback

* [listview] Add missing code documentation param

* Create rofi-thumbnails.5.markdown

* Updated documentation with apparmor issues and workaround

* [Doc] Ship rofi-thumbnails.5

With some formatting fixes

* use a more compact thumbnailer example

---------

Co-authored-by: giomatfois62 <giomatfois62@yahoo.it>
Co-authored-by: Dave Davenport <DaveDavenport@users.noreply.github.com>
Co-authored-by: lbonn <github@lbonnans.net>
2024-06-21 18:47:38 +02:00
Dave Davenport
afc65ac125 [script|dmenu] Add option to make row permanent.
fixes: #1952
2024-02-28 20:47:18 +01:00
Dave Davenport
dbc1f8dcb4 [Dmenu][Script] Add 'display' row option to override whats displayed. 2023-11-06 20:02:48 +01:00
Qball Cow
a5301b35ad Remove unused variable. 2023-06-29 23:59:25 +02:00
Dave Davenport
d27cee89fa Merging in the Recursive file browser.
Squashed commit of the following:

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

    [Doc] Add regex filtering to recursivebrowser.

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

    [recursivebrowser] Update manpage.

commit a24b68f523
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 cf497e8685
Author: Dave Davenport <qball@gmpclient.org>
Date:   Sun Jun 4 15:12:31 2023 +0200

    [Recursive browser] Make completer selectable.

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

    Add methods for completer to modes.

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

    Prepare updates for new APIs.

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

    [RB] Fix regex and cleanups

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

    [RB] Add (unfinished regex test)

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

    [RB] Pull the scanning into a separate thread.

commit f369a7f63f
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
b68f64ccee Small memory leaks fixed and other cleanups. 2023-04-21 12:50:55 +02:00
Dave Davenport
71570a92db [DMenu] Fix row initial tab if non-first column is shown first.
Issue: #1834
2023-04-12 20:24:09 +02:00
Dave Davenport
bb5868199f Re-indent the code using clang-format 2023-03-26 13:19:58 +02:00
Dave Davenport
ab1dfe7f61 [Dmenu] Small fix that disabled async mode when multi-select is enabled. 2023-02-11 18:53:31 +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
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
Dave Davenport
89e00ebb32
[Dmenu] Add a minimum update rate for dmenu reading. (#1681)
This avoid slow loading for some weird slow spaced out input stream.
(one input every 250ms).
Not sure what use-case this fixes.
This fix does cause a noticable slow-down on very large lists.

Issue: #1680
2022-08-19 21:35:23 +02:00
Dave Davenport
a22c81c4a9 [DMenu] Strip off delimiter in sync mode.
Fixes: #1679
2022-08-18 10:17:24 +02:00
Dave Davenport
952aaae295 [DMenu] Fix completion with multi-select 2022-07-26 22:12:20 +02:00
Dave Davenport
5a5d333fdf [dmenu] Fix missing - in find_arg 2022-07-23 23:25:37 +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
c6456d2c1b [DMenu] Fix 'loading' overlay. 2022-06-29 16:09:56 +02:00
Dave Davenport
ceb2b9d295 [Modes] Support icons off multiple icons. 2022-06-27 20:52:12 +02:00
Dave Davenport
e9af427b4a [Dmenu] use ssize_t instead of size_t. 2022-05-17 23:37:02 +02:00
Dave Davenport
9314e75af2 [dmenu] Fix small bug of passing right length. 2022-04-23 23:17:51 +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
534aa6ad54 Rename Dialogs -> Modes
Try to fix some of old syntax.
2022-02-23 23:18:53 +01:00
Renamed from source/dialogs/dmenu.c (Browse further)