Commit Graph

40 Commits

Author SHA1 Message Date
Robert Günzler
52547807b0
support hiding filter input (#150)
* support hiding filter input

"password mode"

Signed-off-by: Robert Günzler <r@gnzler.io>
2021-02-05 13:12:48 +09:00
Peter Colberg
a9cee36e85 Support compilation with -fvisibility=hidden
When using a compiler with support for GNU C extensions (GCC, Clang),
explicitly mark functions shared across library boundaries as visible.

This is the default visibility and has no effect when compiling with the
default CFLAGS. When compiling with -fvisibility=hidden, however, this
exports only functions marked BM_PUBLIC and hides all others.

https://gcc.gnu.org/wiki/Visibility

This facilitates packaging for distributions that track shared library
symbols, e.g., Debian, which uses a symbol file to provide the minimal
version associated to each symbol exported by a library.

https://www.debian.org/doc/debian-policy/ch-sharedlibs.html#the-symbols-system
https://manpages.debian.org/unstable/dpkg-dev/dpkg-gensymbols.1.en.html
2020-12-13 17:09:44 +09:00
Bill Doyle
6350a4000d
Add transparency support (#96)
Add transparency support
2020-03-16 11:41:42 +09:00
Jari Vetoniemi
bc584cc5f0 menu: make SHIFT_RETURN handling more elegant
Don't handle this on client side. Instead have a filter item and return
it if filter text is requested.
2020-02-07 21:54:13 +02:00
Jari Vetoniemi
ac9790b059 Fixes and docs from osx 2020-02-07 23:35:01 +09:00
Jari Vetoniemi
5a4d364d50 Nuke CMake from existance
Welcome glorious GNU Makefile
2020-02-07 16:03:08 +02:00
Alyssa Ross
93cde4831b
bemenu: add --line-height / -H option
Text is displayed vertically centered in a line. If unspecified, or 0,
the previous behaviour of making the height the size of the text, plus
two pixels on either side, is used, so there will be no change in
behaviour if this option is not used.

Fixes https://github.com/Cloudef/bemenu/issues/44.
2019-05-31 23:20:54 +00:00
Ilia Bozhinov
38069992ec Add option to respect panel position (#48)
* implement option to make menu respect panel boundaries

* fixup! implement option to make menu respect panel boundaries
2019-03-25 23:21:17 +02:00
Jari Vetoniemi
bf5fd83491 Fix mac os x build 2015-02-02 12:25:56 +02:00
Jari Vetoniemi
c2eabf2be1 Make scrollbar autohideable 2015-01-18 02:07:30 +02:00
Jari Vetoniemi
9c541d0b42 Add --scrollbar option 2015-01-18 01:08:10 +02:00
Jari Vetoniemi
074b2d1b58 Remove --backend and --prioritory options, change prioritory -> priorty
and provide BEMENU_BACKEND env variable. Change API to reflect this
change.

There is no reliable way to detect when running on terminal (especially
when stdin is a pipe), so we need to make curses backend explicit with
BEMENU_BACKEND=curses or bm_menu_new("curses"), otherwise GUI backend
will be choosed automatically.
2015-01-17 18:53:29 +02:00
Jari Vetoniemi
6ac8d8c4d8 Change font functions to function on pango style font descriptions instead of size
and name.
2015-01-17 15:25:50 +02:00
Jari Vetoniemi
ada6edc175 Add X11 renderer. 2015-01-16 01:59:09 +02:00
Jari Vetoniemi
a44b001e82 Mkae highlighted item prefix configurable. 2014-10-26 15:42:09 +02:00
Jari Vetoniemi
d3db039136 Single line mode, color customization, etc.. 2014-10-25 20:02:34 +03:00
Jari Vetoniemi
b03cd1ea53 Use BM_PLUGIN_VERSION for renderers. 2014-10-25 16:39:39 +03:00
Jari Vetoniemi
3f5e21a83f Cleanup wayland renderer and plugin support. 2014-10-25 01:38:30 +03:00
Jari Vetoniemi
0abad19b3e Pass bm_menu struct on each render api call. 2014-10-22 23:10:11 +03:00
Jari Vetoniemi
0b02230935 Call constructor of activated renderer. 2014-10-22 22:52:14 +03:00
Jari Vetoniemi
014c20099d Refactor code to snake_style, turn renderers into plugins, and start
wayland (cairo) renderer.
2014-10-22 22:46:51 +03:00
Jari Vetoniemi
617c4ab827 Add selection wrapping (-w). 2014-04-14 19:25:16 +03:00
Jari Vetoniemi
f03e03cdd9 Make filter to pointer. 2014-04-12 20:52:29 +03:00
Jari Vetoniemi
d54381f009 Fix out of bound access, and provide better tokenize api. 2014-04-12 20:16:33 +03:00
Jari Vetoniemi
311e4b3676 Use strcspn instead of strtok 2014-04-12 19:59:21 +03:00
Jari Vetoniemi
ad4e0425a6 Make page scrolling work like it should. (Shfit+pgup/pgdwn for old
behaviour)
2014-04-12 18:42:30 +03:00
Jari Vetoniemi
9e9b671fa3 Remove highlight logic from filters, it does not belong there.
Plus it seems dmenu always just highlights first item on filter change.
2014-04-12 14:36:12 +03:00
Jari Vetoniemi
471046d1b2 Make comparator functions follow standard more. 2014-04-12 12:55:05 +03:00
Jari Vetoniemi
71beb7583f Make it possible filter manually, and optimized filtering. 2014-04-10 23:05:13 +03:00
Jari Vetoniemi
45502a2fd9 Proper filtering functions. 2014-04-10 22:02:47 +03:00
Jari Vetoniemi
702d808b28 Make it possible to set and get userdata pointers. 2014-04-10 20:09:34 +03:00
Jari Vetoniemi
a6d0413b97 Implement list structure, and feature for multiple selections. 2014-04-10 20:04:06 +03:00
Jari Vetoniemi
8631506d9d Update documentation, include only public API in doxygen output. 2014-04-10 17:26:42 +03:00
Jari Vetoniemi
78713f23ac Document internal.h 2014-04-10 13:23:42 +03:00
Jari Vetoniemi
04dede1f96 Remove unused internal function. 2014-04-10 12:07:23 +03:00
Jari Vetoniemi
ff8ad3a804 Remove @file from non-public library files. 2014-04-10 11:08:10 +03:00
Jari Vetoniemi
67be25fbe4 Basic working bemenu with curses backend 2014-04-10 01:10:05 +03:00
Jari Vetoniemi
92aa6367b8 These structs are not typedefs. 2014-03-28 22:14:13 +02:00
Jari Vetoniemi
13c470fb39 Remove unused function prototype. 2014-03-28 22:03:47 +02:00
Jari Vetoniemi
908749cfdf Add basic API code.
=> bmMenu instancing.
=> "Rendering"
=> bmMenu releasing.
2014-03-28 21:35:32 +02:00