Commit Graph

249 Commits

Author SHA1 Message Date
Quentin Rameau 657122f781 Partially revert 44c7de3: 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
S. Gilles 76eb578304 fix: Do not crash on e.g. dmenu < /dev/null 2016-06-28 17:51:28 +02:00
Markus Teich 44c7de3dcf 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
Quentin Rameau 120e840107 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 cc596365ac unboolify dmenu 2015-11-08 23:03:34 +01:00
Hiltjo Posthuma da0b9eb6c9 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 164986763a free schemes as array
this makes it slightly easier to add custom schemes aswell
2015-10-18 18:37:20 +02:00
Quentin Rameau 09d0a36e03 fix input text matching
just compare the size of the input string
2015-10-04 15:04:59 +02:00
Davide Del Zompo acbf35a5e3 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 240a7810e4 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 d5ce8df9d9 minor style fix 2015-09-28 00:38:17 +02:00
FRIGN ba75bb30fa Remove function prototypes and reorder functions accordingly 2015-09-28 00:33:29 +02:00
FRIGN 10fd4f275f 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 b048eacc9d Fix the conversion from microseconds to nanoseconds 2015-09-28 00:27:09 +02:00
Quentin Rameau c42c378027 Replace deprecated usleep() with nanosleep() 2015-09-28 00:15:13 +02:00
Hiltjo Posthuma cf0fb79cd8 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 bc20c13db0 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
Eric Pruitt bbf7b95dc9 Fixed typo introduced by shared code 2015-08-06 12:47:51 +02:00
Hiltjo Posthuma 1c242df124 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 4b1fecd44e 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 13a529ce63 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 aa69426670 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 4c50e43df4 updated copyright notices in LICENSE and dmenu.c file 2014-05-29 18:03:53 +02:00
Anselm R Garbe 13f787306f 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 597d4b4337 accepted vi'is exit approach ^[ (suggested by Arkaduisz) 2013-06-28 22:06:02 +02:00
Anselm R Garbe 14f72a2763 adopted Alex Sedov's config.h revival patch to tip 2013-04-17 21:04:05 +02:00
Anselm R Garbe ec64f273fb applied Alex Sedov's Tab buffer termination patch, thanks 2013-04-17 20:59:12 +02:00
Anselm R Garbe 0d12a47415 applied multisel patch to mainline 2013-04-17 20:56:54 +02:00
Moritz Wilhelmy 1299e41447 ignore prompt if it is empty in addition to NULL 2012-05-15 11:47:54 +02:00
Connor Lane Smith 1f11faf7b5 listen for C-S-[jm] 2012-02-10 00:37:42 +00:00
Karl F 50145384c8 add ^G escape keybinding 2012-01-19 22:52:17 +00:00
Connor Lane Smith 3402a8d53a align M-[hjkl] closer to vi keys 2012-01-02 19:48:11 +01:00
Connor Lane Smith d3e9bd152e happy new year! 2012-01-01 20:33:56 +01:00
Connor Lane Smith b95fb20269 add Mod1Mask keybindings 2012-01-01 20:32:40 +01:00
Connor Lane Smith 3f9b10c86a set window background_pixel 2011-11-23 14:40:21 +01:00
Connor Lane Smith a02a1a6623 faster dmenu_run -f 2011-11-19 21:24:07 +01:00
Connor Lane Smith ebd94a6c00 limit direction keys in vline 2011-11-15 20:32:39 +01:00
Connor Lane Smith 2b31952731 fix C-n / C-p directions (thanks bastien) 2011-11-14 20:02:16 +01:00
Connor Lane Smith c01f36a1f3 new default colour scheme 2011-11-14 00:46:56 +01:00
Connor Lane Smith dc77337ef3 add paste from clipboard 2011-10-26 13:28:15 +01:00
Connor Lane Smith 7b1493a631 add lots of comments 2011-10-26 13:20:14 +01:00
Connor Lane Smith dd29c5d480 input focus: calculate areas of intersection 2011-10-26 12:14:50 +01:00
Connor Lane Smith cf641ae496 merge xim -> default 2011-10-17 10:11:48 +01:00
Connor Lane Smith 24565608cb xim: check for corner cases 2011-10-17 01:18:57 +01:00
Connor Lane Smith 05026fb5ce fix extra warning 2011-10-16 18:26:11 +01:00
Troels Henriksen c8f0a37638 add xim support 2011-10-16 17:21:33 +01:00
Connor Lane Smith 1cf3864464 limit lines to input 2011-10-13 20:43:59 +01:00
Connor Lane Smith 8e302717cb input focus: fix for reparenting wms 2011-10-04 21:39:56 +01:00
Connor Lane Smith e30ad490b2 fix monitor select when no focus 2011-09-30 21:08:37 +01:00
Connor Lane Smith 5020734408 merge token -> default 2011-09-20 00:11:01 +01:00
Connor Lane Smith 4c8d43ab73 tweak match 2011-09-20 00:09:20 +01:00
Connor Lane Smith f1848a3ef0 detect active monitor using input focus 2011-09-19 18:15:03 +01:00
Connor Lane Smith b26d3f54ee add token matching 2011-09-19 10:40:56 +01:00
Connor Lane Smith 1636e12210 tweaks 2011-07-17 14:06:53 +01:00
Connor Lane Smith 2b92c95230 efficiency tweaks 2011-07-14 20:03:08 +01:00
Connor Lane Smith 5867c53390 simpler vline 2011-07-06 13:40:36 +01:00
Connor Lane Smith 34a816f87d rebind ^N ^P 2011-07-04 16:55:09 +01:00
Connor Lane Smith 723cbabc12 add ^M 2011-06-13 19:25:40 +01:00
Connor Lane Smith 2103ae2891 bugfix 2011-05-18 17:01:44 +01:00
Connor Lane Smith bb3e33def3 no -m, cleanup 2011-05-18 16:20:03 +01:00
Connor Lane Smith 3a60b19514 fix possible overflow 2011-05-16 23:35:14 +01:00
Connor Lane Smith dd2f298252 fixed extra warnings 2011-05-16 12:59:31 +01:00
Connor Lane Smith 11ea52d170 portability 2011-05-15 21:54:26 +01:00
Connor Lane Smith 4354074607 efficient incremental search 2011-05-15 16:05:32 +01:00
Connor Lane Smith 4776d6dc61 match first 2011-05-15 14:21:00 +01:00
Connor Lane Smith d0051e7bb8 faster grab 2011-05-15 14:13:31 +01:00
Connor Lane Smith fb67bd666e cleanup 2011-05-15 13:58:54 +01:00
Connor Lane Smith f5bd1eed8d fast but inexact 2011-05-15 13:02:33 +01:00
Connor Lane Smith d066975e78 cleanup 2011-05-14 22:43:42 +01:00
Connor Lane Smith 86468aafe5 instant ^E 2011-05-14 18:39:27 +01:00
Connor Lane Smith be9afce035 fix typo 2011-05-14 17:47:12 +01:00
Connor Lane Smith 3c067598fc use array for items 2011-05-14 17:46:20 +01:00
Connor Lane Smith 86019c5855 fixed xinerama corner case 2011-05-12 13:17:41 +01:00
Connor Lane Smith 0291c722fb fixed -m bug (thanks Rob) 2011-05-11 12:25:50 +01:00
Connor Lane Smith e0e6b071c6 fast grab patch (thanks Rob) 2011-05-08 15:15:24 +01:00
Connor Lane Smith cd3b4915c3 helpful errors 2011-05-06 21:13:02 +01:00
Connor Lane Smith 210b303941 paring 2011-05-05 15:46:48 +01:00
Connor Lane Smith 47e3e8be7b update license 2011-01-07 18:55:00 +00:00
Connor Lane Smith 8d9ade36de moved main, updated args 2010-11-17 04:33:34 +00:00
Connor Lane Smith eeba6221b1 rebound paste to ^Y 2010-11-12 00:00:32 +00:00
Connor Lane Smith a0a99d10e1 removed libdc dependence 2010-11-11 23:56:39 +00:00
Connor Lane Smith 7cf66b443a -m flag to fix dwm selmon bug 2010-11-02 12:15:15 +00:00
Connor Lane Smith 610a0a8d12 fixed linking bug (thanks Jacob Nixdorf) & iscntrl corner case 2010-09-13 14:22:02 +01:00
Connor Lane Smith f0818217b3 simplification 2010-09-11 19:48:10 +01:00
Connor Lane Smith 3c366bd73d update to libdc, fixed utf8 bug 2010-09-11 13:37:01 +01:00
Connor Lane Smith 75a19c35bd arrow offset 2010-08-20 19:57:13 +01:00
Connor Lane Smith a5f31f5707 fixed width bug 2010-08-20 19:42:58 +01:00
Connor Lane Smith b81c1e88cd rebound paste, removed useless max widths 2010-08-20 13:50:44 +01:00
Connor Lane Smith 5376113039 new libdraw 2010-08-19 16:43:39 +01:00
Connor Lane Smith c7a8f17bd2 new libdraw 2010-08-19 16:17:57 +01:00
Connor Lane Smith 128d4cf376 resorted globals 2010-08-18 17:35:23 +01:00
Connor Lane Smith e4fdaba88d signed ints, ignore negative -l value 2010-08-18 17:33:34 +01:00
Connor Lane Smith 849f1dd7a3 fixed insert segfault, added nextrune 2010-08-12 15:35:51 +01:00
Connor Lane Smith 402dc2bc95 fixed paste 2010-08-11 15:02:03 +01:00
Connor Lane Smith 00a60cb7b2 new libdraw, replaced cistrstr with fstrstr, simpler readstdin 2010-08-11 14:24:25 +01:00
Connor Lane Smith e149c531b8 more efficient initfont 2010-08-10 18:09:02 +01:00
Connor Lane Smith 605e9b6c03 reverted calcoffsets 2010-08-10 14:14:37 +01:00
Connor Lane Smith caf5246268 simplifications 2010-08-10 13:38:49 +01:00
Connor Lane Smith 93af72e116 cursor fix + style 2010-08-09 11:54:46 +01:00
Connor Lane Smith 0b8072a5a9 added ^D, removed ^M 2010-08-06 14:16:08 +01:00