* Update xft_dpi on property change
* Added fallback calculation when Xft is disabled.
* Removed display_width/height and replaced it with workarea for
consistency.
* Make DPI work on X11 when Xft is disabled
* Make find_subwindow more specific, rename it
Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
* Fix dpi scaling maximum_width setting
* Set workspace dimensions from WL output_geometry
* Append script parent dir to lua package.path
* Fix issues with dpi_scale function selection
* Re-implement rounding through `type_traits` generically
Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
Rather than allowing the build to continue without gperf, we should
fail with an error so that the colour behaviour does not change in a
backward incompatible manner. The old colour behaviour should continue
to work going forward.
This resolves #1868.
Older versions of gperf use the `register` keyword which is deprecated
in C++17, and warnings are treated as errors.
This disables the warning on gperf's output (colour-names.hh). I also
renamed `colour-names.cc` -> `colour-names.hh` because we're including
it as a header, not compiling it separately.
This resolves #1865.
The behaviour of the RSS flag changed in 4936c74, previously it would
enable cURL support when it was switched on, but now you must pass both
BUILD_RSS=ON and BUILD_CURL=ON to CMake at configure time.
This fixes #1861.
- Separated displays so they don't have to all be included in build even when the features are disabled.
- Removed weird linker magic for display init and replaced it with straightforward (and faster) template functions that behave the same.
- Replaced `disabled_display_output` classes with log messages.
- Add explicit compiler errors when feature dependent headers get included where they shouldn't (wl, x11).
- Switch BUILD_MOUSE_EVENTS dependency from OWN_WINDOW to BUILD_X11.
- Other minor improvements to some existing code which shouldn't affect behavior.
- Improve documentation.
- Remove X11 from unrelated headers.
- This reaches 0% unneeded X11 polution in the sources.
- Reenabled parts of window_type which would work in Wayland.
- Remove unneeded guards.
- Display files are now no longer compiled if their features are disabled.
Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
- Separate cairo-xlib.h Lua bindings from cairo.h
- This allows cairo.h to be used from Lua on Wayland without X11 as requirement.
- Add pango dependency for Wayland (adds pangocairo).
- Make graphics related bindings depend on BUILD_GUI.
- Remove BUILD_GUI guard around options in platform checks.
- Keeping only checks that **directly contain module requirements**
A way of creating surfaces in Lua that uses Shm allocated buffers should
be added in future. This commit only cleans up build options to avoid weird
errors.
Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
I'm assuming sending None Atom in the request will cause an error.
I defined those properties on my platform so that's why the function
didn't fail.
Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
- This commit changes mouse events to use XInput exclusively if it's not disabled.
- Added support for changing valuator properties through device configuration (see wiki for details).
- Fixed and cleaned up a lot of previously added code.
XSendEvent propagate bool argument is actually "don't force propagation", so
True value means the event will only get propagated if it's not handled,
and False means the event will _always_ get propagated.
Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
Events now get correctly propagated to a window (or root if none) behind conky.
This was a necessary change to handle cases such as MATE+caja where caja
is used between conky and background to show icons and desktop menu.
* Don't change input focus on propagation
Could cause input focus flickering, so I'm leaving it up to WMs to manage focus.
Signed-off-by: Tin Švagelj <tin.svagelj@live.com>