Commit graph

58 commits

Author SHA1 Message Date
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 6328edc5cd Use global structs 2023-06-23 03:38:21 +02:00
speedie c1058dfb00 add option to enable/disable setting lines/columns using keybinds 2023-06-19 01:46:05 +02:00
speedie 4d505459b1 significantly clean up the image size functions 2023-06-12 00:15:29 +02:00
speedie 5745b52bc9 Add work in progress support for images on Wayland
This commit also adds MASSIVE speed improvements to image drawing, due
to code cleanup. There are still a *few* issues to resolve, one is
X11 related, and one is caused by alpha/blending.
2023-06-08 19:40:30 +02:00
speedie a9ee831159 add X11 toggle, so now Xlib, Xinerama and Xrender aren't dependencies if
you only use Wayland
2023-06-05 17:16:26 +02:00
speedie 692e3abc68 Add experimental native Wayland support 2023-06-02 18:37:51 +02:00
speedie 7ca66d674f last few commits again 2023-05-24 22:01:35 +02:00
speedie 0258974bf0 code cleanup, add moveitem function 2023-05-22 16:35:57 +02:00
speedie 620cb0ca63 add option to not allow selecting multiple items to spmenu itself 2023-05-19 02:13:13 +02:00
speedie ea3e7ed458 remove unnecessary match() calls in setlines() and setcolumns() 2023-05-16 21:04:32 +02:00
speedie 5aefbf249a fix some bugs, add multisel for spmenu_run 2023-05-16 20:03:52 +02:00
speedie 12b69656a7 add support for marking items (ie. multi selection) 2023-05-16 18:54:26 +02:00
speedie 8c9d33d01f add LICENSE notice to all code 2023-05-14 00:21:16 +02:00
speedie 15141c230d add the ability to full screen an image + code cleanup
images are drawn quite slowly, something needs to be done about that
soon
2023-05-14 00:10:24 +02:00
speedie 60f588f003 Remove some commented code 2023-05-13 17:37:37 +02:00
speedie 671dbffa1b fix bug where the caret may be moved if a different item is selected
this code made sense back when spmenu couldn't define keybinds manually,
as then moving between items and moving the caret was one single case.
2023-05-09 17:55:10 +02:00
speedie 5efe236380 indent lots of code using vim gg=G 2023-05-08 23:00:45 +02:00
speedie 6673afc8b7 disable insert mode completely when !type 2023-05-07 15:38:51 +02:00
speedie 5ff1abc849 add ability to print item number rather than the item itself 2023-05-06 23:29:41 +02:00
speedie c1d36670fa replace a lot of suckless coding decisions with my own 2023-05-06 14:29:45 +02:00
speedie be13a65ff5 some improvements, dmenu.conf is now theme.conf compatible 2023-05-01 18:01:47 +02:00
speedie c3b9687e21 add comments to config file for keybinds 2023-04-29 22:53:00 +02:00
speedie 5b2cbc0c7e fix keybind for setprofile, fix mac support 2023-04-26 10:01:11 +02:00
speedie 9c3bd4caab basic keybind config file 2023-04-25 09:56:11 +02:00
speedie 46f87587ab rewrite the way the profile script running works 2023-04-23 20:08:34 +02:00
speedie d512351828 actually add hidecaps, oops 2023-04-22 21:34:37 +02:00
speedie c0611034aa add a keybind for toggling highlighting 2023-04-21 12:10:02 +02:00
speedie 7c301a0bd4 prefix die() calls with spmenu: 2023-04-21 11:56:45 +02:00
speedie eca13f2896 fix lots of issues/bad code 2023-04-21 09:49:38 +02:00
speedie 96ebb6ab8e don't allow columns to be lower than 1, previously this would hide items
but we have hideitems now making this useless
2023-04-07 23:53:19 +02:00
speedie 6c927b8a7c fix potential segmentation fault if clntext is NULL 2023-04-07 22:54:56 +02:00
speedie 10495b48bf add experimental configuration file
profiles still need to be rewritten
2023-04-04 21:40:22 +02:00
speedie 6ac2afb240 add plenty of comments to spmenu 2023-03-31 12:42:42 +02:00
speedie 0607f9f607 add support for profiles 2023-03-29 23:45:54 +02:00
speedie 78138025d2 some minor changes, new bind 2023-03-28 19:49:05 +02:00
speedie fa82afad48 add function for clear that also puts you in insert mode 2023-03-26 20:34:41 +02:00
speedie eebad002cd fix issues with movement 2023-03-24 14:38:28 +01:00
speedie 1c6c041f5e fixed: tab completion with sgr sequences 2023-03-24 03:48:56 +01:00
speedie b8e7fd27db some changes to the general codebase. also add spmenu:about which
displays information about the compiled spmenu build
2023-03-24 03:14:24 +01:00
speedie b59f851fdc Rewrite the way moving around works
It seemed like a good thing at first to combine all the movement stuff
in a single function, however as soon as you want to move multiple lines
at once it becomes very difficult to do that, especially if you aren't
familiar with C.

This commit splits it into 4 separate functions, where the argument
(arg->i) is how many times we move. This means it is now possible to
choose how many lines to move without even editing the function itself,
just through keybinds. This also makes the "fastmove" keybindings
redundant.

Note that calcoffsets() and drawmenu() after that must be called AFTER the for loop added with this commit, otherwise
you can see the selection moving from each line to the next which is
rather ugly.
2023-03-20 18:05:53 +01:00
speedie 13d6ba9065 add keybind for navigating items quickly 2023-03-20 16:33:23 +01:00
speedie cca8ca373c add ability to delete word, some other small changes to previous commit 2023-03-20 15:59:41 +01:00
speedie ba5af9883b add moving left/right in input using arrow keys 2023-03-20 15:59:41 +01:00
speedie 1153d416ab replace almost all /* style comments with // where it makes sense 2023-03-16 16:54:36 +01:00
speedie 71090e7aa3 add keybinds for setting line/columns 2023-03-13 22:45:04 +01:00
speedie 21d75d806e Add pango toggle, it is now optional for those of you who want a minimal
spmenu instance.
2023-03-08 21:12:37 +01:00