1
0
mirror of https://github.com/Cloudef/bemenu synced 2024-11-22 17:02:05 +01:00
Commit Graph

50 Commits

Author SHA1 Message Date
Willow Barraco
877ca82cc1 Reapply "implement wayland fractional scaling"
This reverts commit 943d74600eb3791f3fe8344a844e5bc6d17899bb.

This fix the BEMENU_SCALE that was left unused when fractionnal scale
support was detected.

This is rebased over origin/master.
2024-02-02 18:13:22 +09:00
Jari Vetoniemi
943d74600e Revert "implement wayland fractional scaling"
This reverts commit b1439df42c70c9add91926aa4b7ab06a0f86adbf.
2024-02-02 14:40:40 +09:00
Willow Barraco
b1439df42c implement wayland fractional scaling 2024-02-02 13:26:28 +09:00
Willow Barraco
c22cc64bdb Wayland: fix monitor and scaling detection
The whole management of monitor_name with the Wayland backend seems heavily
broken, and doesn't allow to (1) select the target output with -m, and (2) to
correctly detect the used output and use correct attributes.

When used with two monitors with different scale values, depending on
the output order, you get a blurry menu.

To fix this we attach a listener to wayland surfaces to store which outputs
it belongs to. This rewrite almost completly the "recreate_windows"
function.

This also drop completly the xdg-output-unstable-v1 protocol, cause v4
already add the "name" event to fetch the output name.

I did not pushed this to support v6, with the new
"preferred_buffer_scale" event, cause anyway we need to fetch the
output max_height.
2023-11-05 17:29:20 +09:00
Leonardo EugĂȘnio
1f0a47b359
Fix Makefile to support submodule setups (#329) 2023-02-18 18:33:20 +09:00
Jochen Sprickerhof
b132d018a5 Make pkg-config configurable
Needed for crossbuilds.
2022-10-29 07:06:21 +09:00
Luca Nimmrichter
bcf53bcb25 Add basic vim bindings 2022-10-21 03:17:29 +09:00
Jari Vetoniemi
b8eba1f464 make: do not copy man pages if no scdoc installed 2022-02-19 09:38:02 +09:00
Jari Vetoniemi
81f10dfed7 ci: add symbol validation
checks for missing public symbols, leaked symbols and that plugins only
contains the register_plugin symbol.
2022-02-19 09:38:02 +09:00
Jari Vetoniemi
d201c48421 get rid of all the internal symbols 2022-02-19 08:00:26 +09:00
Jari Vetoniemi
9143f513c3 make: make scdoc optional (no manpage) 2022-02-19 07:41:23 +09:00
Jari Vetoniemi
7f39f19ae4 make: hide all symbols by default 2022-02-19 07:41:23 +09:00
Zach DeCook
2f416efd5e makefile: Add uninstall target 2022-02-10 04:24:22 +09:00
Jari Vetoniemi
7f6aff52ee makefile: add install-docs rule 2022-02-08 21:41:16 +09:00
Maxim Karasev
9cac33857d Update manpage to use scdoc, document margin and width-factor
This also adds scdoc as a dependency.

scdoc is almost as easy as markdown and therefore it's much nicer to
write and maintain manpages making use of it instead of plain roff.
2021-12-29 17:22:10 +09:00
Maxim Karasev
43255bbbe8 Add relative width option
It works on Wayland and X11 and acts as a complement to margin. Exact
behavior is as follows:
- If width factor is 0, width minus margin is used.
- If width multiplied by factor is greater than width minus margin,
  width minus is used. (so margin may be used to make sure that bemenu
  is at least N pixels away from the view border)
- Otherwise width multiplied by factor is used.

I think it's fine to disable warnings about floating point numbers
comparision. We don't do any arithmetics on them anyway, so we can't
suffer from inaccuracy.
2021-12-29 17:22:10 +09:00
Jari Vetoniemi
752ab983d1 make: -fPIC static libs that link to shared libs 2021-06-09 09:12:57 +09:00
Thomas Weißschuh
44958c3a9b pkgconfig: set include path for header file 2021-05-25 17:49:04 +09:00
Jari Vetoniemi
fa9dcee2e4 make: use bemenu-$(VERSION) as tarball prefix 2021-05-23 14:12:13 +09:00
Jari Vetoniemi
d5683f3633 ci: add actions for CI and release automation 2021-05-20 11:33:53 +09:00
Jari Vetoniemi
ebd7338bd5 s/cairo/cairo_renderer/ and fix cairo include
The documented canonical include for cairo is #include <cairo.h>
2021-05-07 23:38:15 +09:00
Stephen Gregoratto
92bc5329ca Rewrite manpage
- Much of the existing text was reworded for better understandability.
- The new manpage uses mdoc(7) for better formatting.
  Because of this, we can merge bemenu and bemenu-run into a single
  file.
2021-04-01 19:07:07 +09:00
Harley Swick
e74224a406 Use -m option for setting monitor name and monitor + cleanup 2021-02-05 16:53:43 +09:00
Jari Vetoniemi
116cb5479f make: do not break the documented make/install way
also use cp / mkdir for compatibility
2020-05-07 14:54:09 +09:00
Jari Vetoniemi
d5ad43bae5 make: use -soname, instead of -soname= 2020-05-07 14:47:42 +09:00
Ivy Foster
f47d753135 GNUmakefile: add individual install rules for each renderer
This eases split packaging as suggested in
https://github.com/Cloudef/bemenu/issues/79#issuecomment-572867783
2020-05-07 14:34:23 +09:00
Jari Vetoniemi
f51f13a028 make: wayland-client dependency for protocols 2020-04-13 12:29:53 +03:00
Jari Vetoniemi
fdcf8e9b39 make: fix soname 2020-03-17 12:03:53 +02:00
Matthew Thode
f888a0306f add soname to shared libraries
Found in Gentoo QA

* QA Notice: The following shared libraries lack a SONAME
* /usr/lib/libbemenu.so.0.4.0

Signed-off-by: Matthew Thode <mthode@mthode.org>
2020-03-16 04:39:17 +02:00
Jari Vetoniemi
1873f7460f make: install include file as well 2020-02-27 13:59:43 +09:00
Earnestly
ba30c39cd9 Update GNUmakefile 2020-02-10 05:36:33 +09:00
Earnestly
3f28c34be2 Update GNUmakefile 2020-02-10 05:36:33 +09:00
Earnestly
c1b687aea5 Don't attempt to chmod everything under PREFIX
Fixes #90
2020-02-10 05:36:33 +09:00
Jari Vetoniemi
2a1e54994a make: don't track wayland-protocols xml
Sadly there is no way to lazily evaluate the prerequsite in rule,
so the pkg-config expansion will always get expanded and throws error
even when you are not compiling wayland.
2020-02-09 18:51:55 +02:00
Jari Vetoniemi
e78e241a6a make: better clean for osx shenigans 2020-02-09 07:22:16 +02:00
Jari Vetoniemi
b322e50798 make: support out-of-git builds
E.g. releases would be these with git archive and such.
2020-02-08 12:05:41 +02:00
Jari Vetoniemi
9295dc0016 make: track version from file, implement GIT_SHA1
We track the version from file, so the targets depending on version will
be rebuilt. We also track .git/index, so library and renderers get
rebuilt for new BM_PLUGIN_VERSION on each commit.
2020-02-08 11:48:41 +02:00
Jari Vetoniemi
0d7e1aa9bd make: depends on ncursesw not ncurses 2020-02-08 10:53:35 +02:00
Jari Vetoniemi
e4798aa43d make: provide a .pc file 2020-02-08 10:49:22 +02:00
Jari Vetoniemi
fa83f1cc21 make: track wayland xml files 2020-02-08 10:48:07 +02:00
Jari Vetoniemi
3a289e6ce9 wayland-scanner: generate using private-code
code is deprecated
2020-02-07 21:32:44 +02:00
Jari Vetoniemi
05c06319ca make: osx troubles 2020-02-08 04:29:32 +09:00
Jari Vetoniemi
4315a980dd make: use $(shell) $$() and cp/chmod 2020-02-08 04:29:32 +09:00
Jari Vetoniemi
ee700c11ea make: _DEFAULT_SOURCE is required 2020-02-07 18:32:22 +02:00
Jari Vetoniemi
2f370033f3 make: clean the xdg-shell.c 2020-02-07 17:29:35 +02:00
Jari Vetoniemi
2a6134cd68 make: quote the wayland-protocols path 2020-02-07 17:28:36 +02:00
Jari Vetoniemi
f0af8bdd9c Fix missing dependencies from renderers 2020-02-07 17:27:40 +02:00
Jari Vetoniemi
33e0d18aab GNUmakefile: remove whitespace 2020-02-07 16:50:02 +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