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.
This reverts commit 09d0a36e03.
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.
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.
- 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)
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).
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."
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.
- 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