Commit graph

397 commits

Author SHA1 Message Date
speedie eb053eae23 Remove and change some keybinds related to image size and gaps 2023-07-14 01:30:28 +02:00
speedie 48e3db316b Make sure number of lines/menu height cannot exceed monitor height 2023-07-14 01:16:35 +02:00
speedie 6ec63436d7 Regenerate cache if height of each item has changed (for example,
if a smaller/bigger font is used).

This fixes a flicker issue which can occur if the font/height
of each item is changed when cached icons are present. Icons
are recached for the new height and then displayed, as if
the cache did not exist in the first place.
2023-07-14 00:49:00 +02:00
Jacob 97ad50ce74 Fix segmentation fault when -NF and -pri, and fix fuzzy -pri 2023-07-11 17:21:30 +02:00
Jacob d935122998 Remove spmenu: syntax, it's basically useless 2023-07-11 17:01:57 +02:00
Jacob 9d6ae13eae Update docs, remove most .Xresources preferences 2023-07-11 16:53:26 +02:00
speedie c6397915f4 Cache icons too, not just normal images 2023-07-10 20:38:25 +02:00
speedie ad4e1ab7e1 Code cleanup 2023-07-09 23:56:34 +02:00
Jacob 5609c4d006 Improve incremental feature 2023-07-09 15:26:52 +02:00
Jacob 5d399c96e3 Use oleftpadding in drawhighlights 2023-07-07 16:05:01 +02:00
speedie 890457729c Make regex matching a separate mode inside insert mode 2023-07-06 22:02:53 +02:00
speedie 7aecc3edf9 Fix pango markup highlighting by disabling highlighting
There is no real reasonable way to fix highlighting while
using Pango markup to my knowledge. If there actually is, please
PR.
2023-07-06 16:52:58 +02:00
speedie 3e581ded2e Cleanup drawitemtext a bit 2023-07-06 16:19:20 +02:00
speedie f8ff87f669 Fix -b 2023-07-06 04:02:23 +02:00
speedie 9201b3ba18 Fix tab completion when no matches 2023-07-05 02:02:35 +02:00
speedie c8e0d08302 Cleanup fuzzymatch(); 2023-07-05 01:48:53 +02:00
speedie 4135cbc0f2 Add fuzzy matching using tiny-regex-c 2023-07-05 01:40:35 +02:00
speedie fbfbc44dec Fix some issues with the image gaps, fix image gaps size, remove some
more keybinds
2023-07-05 00:39:40 +02:00
speedie 7e963db38e Simplify default keybinds 2023-07-05 00:12:11 +02:00
speedie ad96d3fbb3 Oops, fix wacky highlighting, should be working perfectly now 2023-07-04 23:32:51 +02:00
speedie 7492eed0cf Simplify and fix SGR sequence removal 2023-07-04 23:10:06 +02:00
speedie cc8c3e988c Revert "Include colored text in the tab completed text as well."
This reverts commit 364020aa2c.
2023-07-04 21:58:36 +02:00
speedie 364020aa2c Include colored text in the tab completed text as well. 2023-07-04 21:42:32 +02:00
speedie 55a3b95e12 Clear input when resizing lines 2023-07-03 23:40:30 +02:00
speedie 7bb81a26b8 Add ClickImage click 2023-07-03 23:06:33 +02:00
speedie 247d5e768b Fix an oversight in the set_mode() function 2023-07-03 22:19:19 +02:00
speedie 98f324aafe Last commit for the regular configuration file 2023-07-03 22:07:51 +02:00
speedie 63229604e7 Add option to always use insert mode for binds.conf 2023-07-03 22:07:09 +02:00
speedie b06ea39b11 move binds file to another function 2023-07-03 21:58:32 +02:00
speedie f1b0ecd624 Change worddelimiters 2023-07-03 21:35:21 +02:00
speedie 5305303cd2 Don't indent if hideimage 2023-07-03 19:12:53 +02:00
speedie 4ac7119c5b Add WIP icon support to spmenu 2023-07-03 18:48:38 +02:00
Jacob 3f456f3a37 Feature: Add the ability to take "screenshots" of spmenu.
It doesn't actually capture your screen, but rather saves the Cairo
surface to an image. The path to the image and some other options
can also be configured in the config file.

By default, Print Screen can be pressed in Normal mode with no modifier
to take a screenshot. The default location is the user's home directory,
and the file has a date attached to it. Of course, this can be changed
as well.
2023-06-30 02:44:29 +02:00
speedie 8e257d5f6b Improve FreeBSD compatibility by moving meson.options to
meson_options.txt
Also fix a -Wsometimes-uninitialized
2023-06-26 18:09:03 +02:00
speedie c7632f342e Fix generate.sh
Fix generate.sh, it should now generate properly. Also remove the actual
protocols, the user should generate those, not me.
2023-06-24 21:12:18 +02:00
speedie 2cee004182 Remove more useless Xinerama code 2023-06-24 17:34:03 +02:00
speedie 336bdd5830 Simplify display width/height code
With this commit, display width/height is only grabbed once. This means
we don't need to deal with all that X11 and Xinerama code when we're
simply resizing the window.
2023-06-24 17:13:17 +02:00
speedie bd49d876cd Move to the first item when setting lines
This fixes an issue where you can resize beyond the number of items
2023-06-24 17:01:43 +02:00
speedie dfc4fe038c Remove fullscreen functionality
The fullscreen functionality is kind of cool, but adds a lot of code and
as commit history has shown, plenty of bugs and extra required testing.

I may reimplement this later in a less bad manner. Note that the
fullscreen behavior can be achieved by simply increasing image size to
the max. spmenu will let you do that.

Fixes issue #9
2023-06-24 04:53:44 +02:00
speedie 748db7eed1 simplify full screen 2023-06-24 04:43:05 +02:00
speedie 0a59088313 Fix keybind conflict, replace imageg, imagew and imageh in favor of
using the img struct
2023-06-24 04:20:51 +02:00
speedie aba3541d37 Disable fullscreen when no image 2023-06-24 03:00:00 +02:00
speedie 02c6c4ac5c Remove unnecessary else continue; from X11 and Wayland keybind
handling
2023-06-23 20:28:22 +02:00
speedie 8e0de8f556 Simplify some variables 2023-06-23 17:27:57 +02:00
speedie 152b14330f Xlib must now be included in spmenu.c
Also, we should be checking the length of wl_cbuttons, not cbuttons on
Wayland.
2023-06-23 04:04:02 +02:00
speedie 59983981c2 Rename libdrw functions to simply "draw" 2023-06-23 03:49:23 +02:00
speedie 6328edc5cd Use global structs 2023-06-23 03:38:21 +02:00
speedie ca624e1ca6 Default to the default value of $XDG_CACHE_DIR in case $XDG_CACHE_DIR is
not set.

Both the current behavior and this commit are valid according to the XDG
base directory standard, however realistically no one wants dotfiles in
their home directory, and that's what would happen if $XDG_CACHE_DIR
is unset.

Also fix key inconsistency between X and Wayland.
2023-06-22 00:17:23 +02:00
speedie dfc4ad0fa4 cleanup a bit, fix margin-vertical and fullscreen 2023-06-20 09:40:40 +02:00
speedie 180aa71fef fix clicks when one line is removed 2023-06-20 01:27:46 +02:00