Commit Graph

273 Commits

Author SHA1 Message Date
Scoopta
a9868654c2 Changed the function signature of config_get_mnemonic(). This new signature uses the correct types so that the default argument promotions caused by varargs is in spec. 2024-02-08 11:08:16 -08:00
Scoopta
a6e66d7cb7 Added wofi_exit(). This allows correct handling of custom exit status codes on non-glibc systems. This function should always be used for exiting wofi as libc exit() will no longer correctly handle error situations. 2024-02-07 18:16:11 -08:00
Scoopta
338917b194 Fixed bug reported in https://github.com/swaywm/sway/issues/7915 2024-01-22 22:38:44 -08:00
Scoopta
421ce981d8 Fixed malloc for pre_display_exec 2024-01-21 00:24:14 -08:00
Scoopta
7d84a6c9f3 Forgot to cleanup zombie processes 2024-01-21 00:23:20 -08:00
Scoopta
0ca83d416b Fixed closing the file handle when pre_display_exec=true 2024-01-20 22:11:27 -08:00
Scoopta
81e1877ac6 Added pre_display_exec which allows pre_display_cmd to be directly executed with fork/exec instead of through the shell 2024-01-20 22:08:33 -08:00
Scoopta
5af07b7410 Fixed segfault when running non shell safe inputs with --pre-display-cmd and --allow-images
Ex. echo '"' | wofi --dmenu --pre-display-cmd "echo %s" --allow-images
2024-01-20 20:07:03 -08:00
Scoopta
3410f97499 Fixed weird tabbing behavior 2024-01-19 00:14:42 -08:00
Scoopta
5015362414 Fixed indentation 2023-08-13 18:17:30 -07:00
otaj
fb6a7f7301 Make sure that the first calculation of percent size is done when the window is visible 2023-08-08 23:00:43 +02:00
zvon
c46d3ffdda Rename #expander to #expander-box 2023-07-09 11:02:19 +02:00
zvon
9611569db6 Add #expander selector so expanded actions can be themed 2023-07-09 00:41:44 +02:00
Scoopta
866fd2af31 on_exit_set_custom_key_return_code() now flushes stdio, this fixes #197 2023-03-02 23:12:34 -08:00
Andreas Schmidt
51c517b79c Add return codes for custom keys
In order to be able to execute various post actions.
When pressing these keys a return code 10 + X is returned
as soon as wofi is exited.
Currenty 20 custom keys have been defined.
2023-02-25 11:58:49 +01:00
Scoopta
ec569f3f36 Removed extraneous ; 2023-02-20 21:02:58 -08:00
jim jammer
f4ebbed7a8 Refactor key mapping modifier logic
- Consolidate a modifier's "left" and "right" variants to just one
  modifier referred to by its name or mask. E.g. Control_L and Control_R are
  resolved by detecting the mask and are both associated with the name "Ctrl".

- Store string representations of the modified key values as the keys to
  the key entry map (exactly how they appear in the config file). E.g.
  the string "Ctrl-m" would be the key to the map entry for a custom
  Ctrl-m binding (whereas before the key would've only been "m", a
  source of ambiguity and conflict).

- During init, pass through key mapping entry logic twice: once for
  inputting the defaults, and a second time for adding any custom
  mappings as defined by the config file. This allows defaults to stay
  in place unless a user chooses to blow them away. E.g. mapping Ctrl-p
  to key_up shouldn't blow away key_up's default mapping to up arrow,
  and this fixes that use case.

These changes resolve several bugs due to key mapping resolution ambiguity and
conflicts, and generally make key mapping more intuitive. However, a new quirk
is that keys that are obtained using Shift (like "J", aka "capital j") now
require the use of Shift modifier when configuring that binding.
2022-12-11 05:04:34 -08:00
Scoopta
7966777dd5 Added wezterm to the default terminal list and moved termite to the end of the sane terminal section since it's now deprecated 2023-01-28 17:59:51 -08:00
mazunki
84c3d80560 Bugfix: removed malloc() exception caused when using --pre-display-cmd
Should we update the version number, too?
2022-07-17 02:32:05 +02:00
Scoopta
a3a8f3c3f9 Added the single_click config option 2022-07-13 21:36:38 -07:00
Scoopta
8ad0ee3ac4 Added wofi_widget_builder_insert_text_with_list() and wofi_widget_builder_insert_image_with_list() 2022-07-04 01:16:03 -07:00
Scoopta
fa0d3dfa5d Fixed indentation in match.c 2022-06-28 08:11:48 -07:00
"Michael Hauser-Raspe"
10a173f069 Fix insensitive mode. 2022-06-28 01:54:36 +01:00
"Michael Hauser-Raspe"
4aad9b7385 Stylistic improvements. 2022-06-27 19:58:04 +01:00
"Michael Hauser-Raspe"
77cd2b32c7 Extract text matching to it's own file. 2022-06-26 01:51:48 +01:00
"Michael Hauser-Raspe"
f6d3169bfc Create fuzzy scoring and fuzzy sort. 2022-06-25 00:41:32 +01:00
"Michael Hauser-Raspe"
a554ae22f3 Add fuzzy filtering. 2022-06-15 18:07:40 +01:00
"Michael Hauser-Raspe"
438b11038c Implement multi-contains matching algorithm.
This allows a new matching method that will be the equivalent
of contains on every word (delimited by space) that is given.
This is the same matching algorithm used by helm in emacs and
allows a way of iteratively refining your search.
2022-06-07 14:46:45 +01:00
Scoopta
a347a4cb10 Properly setup wayland protocol versioning 2022-05-14 22:03:28 -07:00
Scoopta
4ec3df5df5 Added foot to the default terminal list 2022-05-02 01:02:09 -07:00
Scoopta
d2cee86857 The help output for --show now mentions that a list of modes can be found in wofi(7) 2022-02-13 21:04:32 -08:00
Scoopta
2292d339ce Fixed the write error check printing under the wrong circumstances 2021-11-10 22:00:50 -08:00
mazunki
794789e01f explicit null checks are cool 2021-11-09 16:49:23 +01:00
mazunki
f89e3e56c6 fixed segfalt for drun, but drun still doesn't run pre-display-cmd 2021-11-09 16:47:12 +01:00
mazunki
82a98a81fa cleaned up some oopsies, more effs, and more linebreaks 2021-11-09 16:37:24 +01:00
mazunki
26c1897eda missing some effs in fprintf 2021-10-30 10:20:26 +02:00
mazunki
f8ddec11e8 we're moving back to create_label() to avoid potential unexistant nodes 2021-10-30 10:13:27 +02:00
mazunki
7956e253be fixed css doing the opposite check, writing errors to stderr, swapped !(==) for !=, fixed oopsies in manpage 2021-10-30 10:04:22 +02:00
mazunki
c597c088d6 added support for --pre-display-cmd / -r. also removed some compile-time warnings of unused variables by fact-checking runtime errors 2021-10-29 21:34:49 +02:00
Scoopta
dab17466a0 Fixed percentage based window sizing 2021-02-22 23:53:57 -08:00
Scoopta
6a14de6fd1 The return of g_dbus_proxy_call_sync() is only freed when error is not set 2021-02-19 21:00:40 -08:00
Scoopta
6da4859903 Fixed a memory leak when triggering the OSK 2021-02-19 20:59:39 -08:00
Scoopta
4c64259b3a Added the ability to copy the action text for the selected entry to your clipboard using wl-copy by default 2020-11-04 21:10:57 -08:00
Scoopta
ea9631678b Fixed wofi with new wlroots not allowing 0 width/height with unanchored surfaces 2020-10-10 18:04:04 -07:00
Scoopta
5a6118f097 The mode thread will not be joined multiple times as this causes segfaults under musl 2020-10-02 20:54:36 -07:00
Scoopta
952ec178f0 Fixed key_submit not properly working with multi-action entires 2020-08-27 19:18:42 -07:00
Scoopta
24a35e5022 gdk_display_get_default() is now called directly from inside of gdk_wayland_display_get_wl_display() 2020-08-11 19:07:49 -07:00
Scoopta
cd61e73f20 v1.2.1: widget_builder now only lets you assign classes. The name will be consistent with the image escape system 2020-07-28 16:18:44 -07:00
Scoopta
3c82c8ef9f wlr_layer is now initialized to ZWLR_LAYER_SHELL_V1_LAYER_TOP 2020-07-27 23:57:18 -07:00
Scoopta
3fcb32b2b5 data1 can be initialized to NULL 2020-07-27 23:55:33 -07:00