1
0
Commit Graph

601 Commits

Author SHA1 Message Date
Hiltjo Posthuma
4c8974afef Fix handling of input strings 2018-04-22 14:09:05 +02:00
Quentin Rameau
0d33e98f56 Update LICENSE
Only "meaningful" commits and contributors who made changes over the
years have been added.
2018-03-15 18:29:32 +01:00
Hiltjo Posthuma
e63e924b0b bump version to 4.8 2018-03-14 19:48:05 +01:00
Quentin Rameau
030e904de9 add key bindings for moving to the word start or end
Mod1+b/^Left and Mod1+f/^Right
2018-03-13 20:10:46 +01:00
Hiltjo Posthuma
81a97e2e20 Fix regression in 48cbe83
Reported by Jochen Sprickerhof, thanks!

Applied patch with minor change (only initialize `i` for XINERAMA).
2018-01-04 23:45:49 +01:00
Vincent Carluer
48cbe831f7 Instantiate j var outside #ifdef XINEMARA directive because it is used in loop outside directive 2018-01-04 18:14:41 +01:00
Hiltjo Posthuma
10ffecd377 drw: drw_scm_create: use Clr type
in this context XftColor is a too low-level type.
2017-11-03 21:10:38 +01:00
Hiltjo Posthuma
442e9da11d fix a possible free of a uninitialize variable in paste() 2017-11-03 21:07:02 +01:00
Hiltjo Posthuma
2b4ccf1ef4 init colors using SchemeLast
this makes it slightly easier to add colors to schemes.
2017-11-03 21:05:29 +01:00
Omar Sandoval
fe7bd767e3 Set class name on menu window
WM_CLASS is a standard ICCCM property which is used to identify windows.
Window managers and compositors use it to allow per-application
configurable behavior.
2017-11-03 20:41:03 +01:00
Hiltjo Posthuma
ff69dad6de release 4.7 2017-05-02 18:32:04 +02:00
Andrew Gregory
7a5a9a64fb Revert "fix input text matching"
This reverts commit a69a065b02.

Using strncmp with the length of the user input turns it into a prefix
match rather than an exact match as it's supposed to be.
2016-12-11 12:33:16 +01:00
Thomas Gardner
2340d5c41f Xinerama: correct variable declarations in preprocessor conditional 2016-11-25 14:21:40 +01:00
Hiltjo Posthuma
b3a715ceb2 die() on calloc failure
thanks Markus Teich and David!
2016-11-05 11:36:42 +01:00
Quentin Rameau
aee768e103 add embedding support with -w option 2016-10-14 15:26:35 +02:00
Quentin Rameau
2aa4cd6f57 dmenu.1: group single options 2016-10-14 15:26:34 +02:00
Quentin Rameau
156decd127 dmenu.1: fix -l option 2016-10-14 15:26:34 +02:00
Hiltjo Posthuma
804388e386 die() consistency: always add newline 2016-08-12 14:39:30 +02:00
Hiltjo Posthuma
4faac60229 fix crash if negative monitor (< -1) was passed
for example: dmenu -m '-9001'
2016-07-26 23:13:06 +02:00
Hiltjo Posthuma
794fbe736b Revert "Print highlighted input text only on single match"
This reverts commit b7238b05a6.

My bad, was working on the wrong branch and accidently pushed it...
*facepalm*
2016-07-26 23:02:34 +02:00
Quentin Rameau
b7238b05a6 Print highlighted input text only on single match
When the input text fully matches a single item, do not draw the item
and highlight the input text to show that it matches an item in
opposition to regular input text not matching anything.
2016-07-26 18:29:42 +02:00
Quentin Rameau
8f22508821 Partially revert d76952c: fix items text width offset calculation
Without this, we discard the item if it's longer than assigned width
instead of truncating it.
2016-07-25 19:57:31 +02:00
Hiltjo Posthuma
92e5d3b964 config.def.h: style improvement, use color Scheme enum 2016-06-28 17:56:25 +02:00
S. Gilles
1019ddd56b fix: Do not crash on e.g. dmenu < /dev/null 2016-06-28 17:51:28 +02:00
Markus Teich
d76952cd7e import new drw from libsl and minor fixes.
- extract drawitem function (code deduplication)
- fix bug where inputw was not correctly calculated from the widest item, but
  just from the one with the longest strlen() which is not the same. It's better
  now, but does not account for fallback fonts, since it would be too slow to
  calculate all the correct item widths on startup.
- minor code style fixes (indentation, useless line breaks)
2016-06-03 19:13:15 +02:00
Lucas Gabriel Vuotto
c57ba0384a arg.h: fixed argv checks order
This prevents accessing to a potentially out-of-bounds memory section.

Signed-off-by: Lucas Gabriel Vuotto <l.vuotto92@gmail.com>
2016-02-23 00:31:03 +01:00
Klemens Nanni
08979a3abd Typofix 2016-01-14 23:02:27 +01:00
Quentin Rameau
d948f58bbb Shut up glibc about _BSD_SOURCE being deprecated 2015-12-19 20:32:17 +01:00
Quentin Rameau
30f13c7bb7 Add config option for word delimiters
Let the user configure word boundaries other than ' ', only works with
the portable character set.
2015-12-19 20:32:14 +01:00
Hiltjo Posthuma
4de104cf77 arg.h: remove unused ARGNUM* macros 2015-11-08 23:37:47 +01:00
Hiltjo Posthuma
dcb45f75e8 unboolify dmenu 2015-11-08 23:03:34 +01:00
Hiltjo Posthuma
1a5372e60a Makefile: package config.def.h on make dist 2015-11-08 16:46:34 +01:00
Hiltjo Posthuma
d0ec76ff7b remove .hgtags file 2015-11-08 16:44:41 +01:00
Hiltjo Posthuma
14c7bed1b9 dmenu.1: clarify monitor numbers are starting from 0 (first mon) 2015-11-07 12:53:00 +01:00
Hiltjo Posthuma
5c1c550164 fix: multimon: always spawn client on first monitor if specified with -m 0
This was always broken.

Reproduce:
	focus client on second monitor, spawn dmenu with -m 0.

Result:
	Old wrong behaviour: dmenu spawns on second monitor (focused client).
	Now: dmenu spawns on specified monitor (first).
2015-11-07 12:43:00 +01:00
Hiltjo Posthuma
e426a3aa42 drw: cleanup drw_text, prevent gcc warning false-positive of unused var
... we don't allow passing text is NULL anymore either, for that behaviour
just use drw_rect() (it is used in dwm).
2015-10-20 22:56:57 +02:00
Hiltjo Posthuma
8648aacd5f drw: simplify drw_font_xcreate and prevent a potential unneeded allocation 2015-10-20 22:55:39 +02:00
Hiltjo Posthuma
eb26bb684d drw: a valid (non-NULL) Drw and Fnt context must be passed
don't do these checks on this level. However for resource drw_*_free
we will allow it.
2015-10-20 22:53:55 +02:00
Hiltjo Posthuma
d98328474a add sbase-style ecalloc(), calloc: or die
... remove intermediary variables
2015-10-20 22:51:57 +02:00
Hiltjo Posthuma
faf0f4d0ea free schemes as array
this makes it slightly easier to add custom schemes aswell
2015-10-18 18:37:20 +02:00
Quentin Rameau
a69a065b02 fix input text matching
just compare the size of the input string
2015-10-04 15:04:59 +02:00
Davide Del Zompo
c168112042 fix incorrect ordering of match results
look for exact matches comparing the user input against the item text
2015-10-04 14:03:07 +02:00
Hiltjo Posthuma
5b6ac44274 fix paste from clipboard (ctrl+shift+y)
from Joshua Lloret on the ML:

"attached is a small patch to enable pasting from clipboard, as well as primary.

It seems like there was already code in there to allow this, but since there was never any case to match the upper case 'Y', that inline if would always evaluate to false."
2015-10-04 12:32:07 +02:00
Hiltjo Posthuma
a0e777abfa minor style fix 2015-09-28 00:38:17 +02:00
FRIGN
8a309cbf3f Remove function prototypes and reorder functions accordingly 2015-09-28 00:33:29 +02:00
FRIGN
0afc13c10d Untypedef struct item
Adds clarity. Typedefs for structs are definitely a discussion matter,
but there's no reason to hide a simple data-structure behind a
meaningless typedef.
2015-09-28 00:33:26 +02:00
Quentin Rameau
84184ff29d Fix the conversion from microseconds to nanoseconds 2015-09-28 00:27:09 +02:00
Quentin Rameau
57c147c7dd Replace deprecated usleep() with nanosleep() 2015-09-28 00:15:13 +02:00
Hiltjo Posthuma
c5ff29c1bf config.mk: use -std=c99 2015-09-28 00:02:28 +02:00
Hiltjo Posthuma
803f9e4e30 dmenu: style improvements
- move main to bottom, usage above main.
- dont use variable names with function prototypes.
- space before if, for, while, etc: 'if(' -> 'if ('.

this makes the code-style more consistent
2015-09-27 23:57:39 +02:00
Hiltjo Posthuma
7d4dff565a drw style improvements
this makes the code-style more consistent aswell.
2015-09-27 23:56:02 +02:00
Hiltjo Posthuma
046475f73e separate program-specific c99 bool and X11
True, False are X11-specific, make sure to use c99 stdbool for
program-specific things.

... also remove left-over vim mode string in config.
2015-09-27 23:02:33 +02:00
Hiltjo Posthuma
9ca5186346 config.mk: fix _XOPEN_SOURCE=700 for getline() 2015-09-27 22:55:21 +02:00
Hiltjo Posthuma
e8767b2e70 config.mk: improve feature test check
this fixes a crash on NetBSD because it requires -D_XOPEN_SOURCE (strdup, usleep).

thanks k0ga and stateless for reporting and fixing this issue!
2015-09-27 22:38:14 +02:00
Eric Pruitt
845d009877 Fixed typo introduced by shared code 2015-08-06 12:47:51 +02:00
Hiltjo Posthuma
2ee4123d1f stest: get rid of getopt, use suckless arg.h
... also some style improvements.
2015-07-19 21:38:42 +02:00
Hiltjo Posthuma
aa6aca092d config.mk: add FREETYPELIBS and FREETYPEINC
These variables make it simpler to change the paths to this for ports.
`pkg-config` is avoided because it sucks, in particular for cross-compilation.

A commented path for *BSD is added, the Xft includes are located at:
/usr/X11R6/include there.

Also already bump the version number to 4.6, a release will come
approximately in August.
2015-07-19 20:32:08 +02:00
Hiltjo Posthuma
5205d3ee61 fix prompt color style how it used to be
This is the style how it was before the big Xft change. The colors were
inverted, this was not the case before the change.

Reported by "zvz" on #suckless IRC, thanks!
2015-07-19 20:29:26 +02:00
Hiltjo Posthuma
a2e8616d0e Use libdraw: add Xft and fallback-fonts support to graphics lib
- libdraw, util: add drw.{c,h}, util.{c,h} and update code.
- libdraw: fix drw_rect(): use w and h parameter.
- libdraw: print errstr if last character in string was ":" (sbase).
- libdraw: drw_clr_free() allow valid free(NULL).
- config.def.h: set default font to monospace.
- cleanup() on exit.
- LICENSE: update license string for dmenu -v to 2015.
- LICENSE: add myself to LICENSE
2015-06-27 21:47:10 +02:00
Anselm R Garbe
8ec422a3dc applied Hiltjo's patch as suggested on the ml to fix ControlMask for C-j and C-m 2014-09-17 13:40:11 +02:00
Hiltjo Posthuma
4669af9d8e fix crash with ctrl-enter as input
reproduce: ./dmenu; send EOF; press ctrl+enter.
2014-07-30 20:07:47 +01:00
Anselm R Garbe
3673394bdc updated copyright notices in LICENSE and dmenu.c file 2014-05-29 18:03:53 +02:00
Anselm R Garbe
8d707f76cf applied Martin Kühl's inverse matching flag to stest 2013-08-13 19:15:04 +02:00
Anselm R Garbe
e35061137a applied Martti Kühne's dmenu monitor patch
f6581ca966/monarg.patch becomes upstream now
2013-08-02 22:30:20 +02:00
Anselm R Garbe
e749e527f6 accepted vi'is exit approach ^[ (suggested by Arkaduisz) 2013-06-28 22:06:02 +02:00
Anselm R Garbe
edae6ee0ab forgot to add config.def.h, thanks William 2013-04-17 21:16:51 +02:00
Anselm R Garbe
06ee65a7b9 adopted Alex Sedov's config.h revival patch to tip 2013-04-17 21:04:05 +02:00
Anselm R Garbe
5f0f8e4db7 applied Alex Sedov's Tab buffer termination patch, thanks 2013-04-17 20:59:12 +02:00
Anselm R Garbe
873fa55944 applied multisel patch to mainline 2013-04-17 20:56:54 +02:00
Quentin Glidic
93c482544c dmenu_run: Split cache logic to dmenu_path again
This allows to run dmenu_path to update the cache using
a packager manager hook system
2012-07-30 17:02:12 +02:00
Moritz Wilhelmy
987d1e80dc ignore prompt if it is empty in addition to NULL 2012-05-15 11:47:54 +02:00
Connor Lane Smith
53d7808eed _POSIX_C_SOURCE=200809L 2012-04-06 16:38:01 +01:00
Connor Lane Smith
3b11538d35 listen for C-S-[jm] 2012-02-10 00:37:42 +00:00
Karl F
0473f39359 add ^G escape keybinding 2012-01-19 22:52:17 +00:00
Connor Lane Smith
8746d52a84 remove _POSIX_C_SOURCE cflag 2012-01-18 23:56:13 +00:00
Connor Lane Smith
4eaf6706c5 update version 4.5-hg 2012-01-08 13:13:00 +01:00
anselm@garbe.us
495768286f config.mk cleanup 2012-01-04 13:30:47 +01:00
Connor Lane Smith
a70c695cfe align M-[hjkl] closer to vi keys 2012-01-02 19:48:11 +01:00
Connor Lane Smith
c394e16ee3 happy new year! 2012-01-01 20:33:56 +01:00
Connor Lane Smith
c18f75412e add Mod1Mask keybindings 2012-01-01 20:32:40 +01:00
Connor Lane Smith
5bc637e6b1 merge stest -> default 2011-12-19 16:52:48 +01:00
Connor Lane Smith
3b3945e806 comment xdg fallback behaviour 2011-12-19 16:05:55 +01:00
Connor Lane Smith
1d944814cf stest: restore stream testing 2011-12-09 11:49:44 +01:00
Connor Lane Smith
7fd7a3bfc7 fork dmenu_run to disown child shell 2011-12-09 11:36:26 +01:00
Connor Lane Smith
2ef2230c91 stest: cleanup 2011-11-27 23:40:48 +01:00
Connor Lane Smith
38cb254399 stest: remove unneeded lstat 2011-11-27 23:37:01 +01:00
Connor Lane Smith
a8ee2aa230 simplify stest 2011-11-27 23:35:09 +01:00
Connor Lane Smith
3503bfba65 dmenu_run: use $SHELL 2011-11-23 15:17:32 +01:00
Connor Lane Smith
e8e70769d4 set window background_pixel 2011-11-23 14:40:21 +01:00
Connor Lane Smith
0f7ffd38a5 fix dmenu_path exec sh 2011-11-19 21:31:18 +01:00
Connor Lane Smith
9edfe41b9d faster dmenu_run -f 2011-11-19 21:24:07 +01:00
Connor Lane Smith
de04dff5d5 replace lsx with stest 2011-11-19 19:54:55 +01:00
Connor Lane Smith
cf719ccccb update manpage 2011-11-16 11:26:15 +01:00
Connor Lane Smith
0f02fab145 limit direction keys in vline 2011-11-15 20:32:39 +01:00
Connor Lane Smith
e6a86af5e1 fix C-n / C-p directions (thanks bastien) 2011-11-14 20:02:16 +01:00
Connor Lane Smith
2359502757 new default colour scheme 2011-11-14 00:46:56 +01:00
Connor Lane Smith
1ff6048402 makefile: *.o depend on draw.h 2011-10-26 14:16:12 +01:00
Connor Lane Smith
f0a09bc70d add paste from clipboard 2011-10-26 13:28:15 +01:00
Connor Lane Smith
fdd4605f65 add lots of comments 2011-10-26 13:20:14 +01:00
Connor Lane Smith
04ccbaceb2 input focus: calculate areas of intersection 2011-10-26 12:14:50 +01:00