* 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.
* [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
* 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