Git Product home page Git Product logo

gebaar-libinput's People

Contributors

coffee2codenl avatar gabrielstedman avatar mosterdt avatar nicholas85 avatar oryasida avatar osleg avatar pro-roy avatar vimpostor avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

gebaar-libinput's Issues

Void package fails to build

I am currently creating a package for void linux of this and I can't get the build to go through. I added libinput-devel to the makedepends, but it always fails, like it can't link libinput. The failing output is this:

/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::initialize_context()':
input.cpp:(.text+0x16a): undefined reference to `libinput_udev_create_context'
/usr/bin/ld: input.cpp:(.text+0x17d): undefined reference to `libinput_udev_assign_seat'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::~Input()':
input.cpp:(.text+0x3bc): undefined reference to `libinput_unref'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::handle_touch_event_down(libinput_event_touch*)':
input.cpp:(.text+0x992): undefined reference to `libinput_event_touch_get_time'
/usr/bin/ld: input.cpp:(.text+0x99c): undefined reference to `libinput_event_touch_get_slot'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::handle_touch_event_motion(libinput_event_touch*)':
input.cpp:(.text+0xb45): undefined reference to `libinput_event_touch_get_slot'
/usr/bin/ld: input.cpp:(.text+0xb99): undefined reference to `libinput_event_touch_get_slot'
/usr/bin/ld: input.cpp:(.text+0xbf1): undefined reference to `libinput_event_touch_get_x'
/usr/bin/ld: input.cpp:(.text+0xc03): undefined reference to `libinput_event_touch_get_slot'
/usr/bin/ld: input.cpp:(.text+0xc56): undefined reference to `libinput_event_touch_get_y'
/usr/bin/ld: input.cpp:(.text+0xc69): undefined reference to `libinput_event_touch_get_slot'
/usr/bin/ld: input.cpp:(.text+0xcbe): undefined reference to `libinput_event_touch_get_x'
/usr/bin/ld: input.cpp:(.text+0xccc): undefined reference to `libinput_event_touch_get_y'
/usr/bin/ld: input.cpp:(.text+0xcd9): undefined reference to `libinput_event_touch_get_slot'
/usr/bin/ld: input.cpp:(.text+0xd79): undefined reference to `libinput_event_touch_get_slot'
/usr/bin/ld: input.cpp:(.text+0xdbc): undefined reference to `libinput_event_touch_get_slot'
/usr/bin/ld: input.cpp:(.text+0xe79): undefined reference to `libinput_event_touch_get_slot'
/usr/bin/ld: input.cpp:(.text+0xea0): undefined reference to `libinput_event_touch_get_x'
/usr/bin/ld: input.cpp:(.text+0xeae): undefined reference to `libinput_event_touch_get_y'
/usr/bin/ld: input.cpp:(.text+0xebb): undefined reference to `libinput_event_touch_get_slot'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::gesture_device_exists()':
input.cpp:(.text+0x1360): undefined reference to `libinput_event_destroy'
/usr/bin/ld: input.cpp:(.text+0x1369): undefined reference to `libinput_dispatch'
/usr/bin/ld: input.cpp:(.text+0x1389): undefined reference to `libinput_get_event'
/usr/bin/ld: input.cpp:(.text+0x139e): undefined reference to `libinput_event_get_device'
/usr/bin/ld: input.cpp:(.text+0x13f4): undefined reference to `libinput_device_get_name'
/usr/bin/ld: input.cpp:(.text+0x14a2): undefined reference to `libinput_device_has_capability'
/usr/bin/ld: input.cpp:(.text+0x14bb): undefined reference to `libinput_device_has_capability'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::initialize()':
input.cpp:(.text+0x17fa): undefined reference to `libinput_udev_create_context'
/usr/bin/ld: input.cpp:(.text+0x180d): undefined reference to `libinput_udev_assign_seat'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::test_above_threshold(unsigned long, double, libinput_device*)':
input.cpp:(.text+0x186f): undefined reference to `libinput_device_get_size'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::handle_touch_event_up(libinput_event_touch*)':
input.cpp:(.text+0x2da4): undefined reference to `libinput_event_touch_get_time'
/usr/bin/ld: input.cpp:(.text+0x2dae): undefined reference to `libinput_event_touch_get_slot'
/usr/bin/ld: input.cpp:(.text+0x3153): undefined reference to `libinput_event_touch_get_base_event'
/usr/bin/ld: input.cpp:(.text+0x315b): undefined reference to `libinput_event_get_device'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::handle_swipe_event_with_coords(libinput_event_gesture*)':
input.cpp:(.text+0x483c): undefined reference to `libinput_event_gesture_get_dx_unaccelerated'
/usr/bin/ld: input.cpp:(.text+0x484e): undefined reference to `libinput_event_gesture_get_dy_unaccelerated'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::handle_swipe_event_without_coords(libinput_event_gesture*, bool)':
input.cpp:(.text+0x4914): undefined reference to `libinput_event_gesture_get_finger_count'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::handle_pinch_event(libinput_event_gesture*, bool)':
input.cpp:(.text+0x6984): undefined reference to `libinput_event_gesture_get_scale'
/usr/bin/ld: input.cpp:(.text+0x6991): undefined reference to `libinput_event_gesture_get_angle_delta'
/usr/bin/ld: input.cpp:(.text+0x6a14): undefined reference to `libinput_event_gesture_get_finger_count'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::handle_switch_event(libinput_event_switch*)':
input.cpp:(.text+0x6ac0): undefined reference to `libinput_event_switch_get_switch_state'
/usr/bin/ld: input.cpp:(.text+0x6acc): undefined reference to `libinput_event_switch_get_switch'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::handle_event()':
input.cpp:(.text+0x758c): undefined reference to `libinput_dispatch'
/usr/bin/ld: input.cpp:(.text+0x7595): undefined reference to `libinput_get_event'
/usr/bin/ld: input.cpp:(.text+0x75aa): undefined reference to `libinput_event_get_type'
/usr/bin/ld: input.cpp:(.text+0x761d): undefined reference to `libinput_event_get_gesture_event'
/usr/bin/ld: input.cpp:(.text+0x76b1): undefined reference to `libinput_event_get_gesture_event'
/usr/bin/ld: input.cpp:(.text+0x76d1): undefined reference to `libinput_event_destroy'
/usr/bin/ld: input.cpp:(.text+0x76da): undefined reference to `libinput_dispatch'
/usr/bin/ld: input.cpp:(.text+0x76e8): undefined reference to `libinput_event_get_gesture_event'
/usr/bin/ld: input.cpp:(.text+0x7753): undefined reference to `libinput_event_get_touch_event'
/usr/bin/ld: input.cpp:(.text+0x77b8): undefined reference to `libinput_event_get_touch_event'
/usr/bin/ld: input.cpp:(.text+0x77dc): undefined reference to `libinput_event_get_switch_event'
/usr/bin/ld: input.cpp:(.text+0x7861): undefined reference to `libinput_event_get_touch_event'
/usr/bin/ld: input.cpp:(.text+0x78ba): undefined reference to `libinput_event_get_gesture_event'
/usr/bin/ld: input.cpp:(.text+0x78c2): undefined reference to `libinput_event_gesture_get_finger_count'
/usr/bin/ld: input.cpp:(.text+0x7903): undefined reference to `libinput_event_get_gesture_event'
/usr/bin/ld: CMakeFiles/gebaard.dir/src/io/input.cpp.o: in function `gebaar::io::Input::start_loop()':
input.cpp:(.text+0x79a9): undefined reference to `libinput_get_fd'

What am I doing wrong? Thanks for any help with this.

Segmentation fault on launch

Hello, again, thank you for enabling the issues.

As mentioned, I'm struggling to get this fork running. Running verbosely, it seems to correctly read the config, but then does a core dump. Not really sure how else to try and debug.

$ cat /home/hosh/.config/gebaar/gebaard.toml
[[swipe.commands]]
fingers = 3
type = "GESTURE"
up = "xdotool key ctrl+alt+Up"
down = "xdotool key ctrl+alt+Down"
left = "xdotool key alt+Right"
right = "xdotool key alt+Left"

[[swipe.commands]]
fingers = 4
type = "GESTURE"
up = "xdotool key super"
down = "xdotool key super"

$ gebaard -v
verbose mode
[2020-09-08 21:29:00.958] [main] [debug] [config] at 136 - config path generated: '/home/hosh/.config/gebaar/gebaard.toml'
[2020-09-08 21:29:00.958] [main] [debug] [config] at 40 - Config parsed
[2020-09-08 21:29:00.958] [main] [debug] [config] at 46 - Generating SWIPE_COMMANDS
[2020-09-08 21:29:00.958] [main] [debug] [config] at 61 - Generating PINCH_COMMANDS
[1]    2956004 segmentation fault (core dumped)  gebaard -v

Any help is appreciated!

Fails to build on Kubuntu 22.04

I know this hasn't been maintained in a little bit, but I still like using this fork because it's got the most features out of all the forks of gebaar that I can find actually. Not sure if the maintainer knows that lol. But anyway I got a new computer and was following my old system install script, and the instructions haven't changed from what's in the readme of this repo, but I get errors on the make -j$(nproc) step:

make -j$(nproc)
[ 33%] Building CXX object CMakeFiles/gebaard.dir/src/io/input.cpp.o
[ 33%] Building CXX object CMakeFiles/gebaard.dir/src/main.cpp.o
[ 50%] Building CXX object CMakeFiles/gebaard.dir/src/daemon/daemonizer.cpp.o
[ 66%] Building CXX object CMakeFiles/gebaard.dir/src/config/config.cpp.o
[ 83%] Building CXX object CMakeFiles/gebaard.dir/src/utils/string-from-char.cpp.o
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In static member function ‘static cpptoml::value_traits<T, typename std::enable_if<(((! cpptoml::valid_value_or_string_convertible<T>::value) && (! std::is_floating_point<typename std::decay<_Tp>::type>::value)) && std::is_signed<typename std::decay<_Tp>::type>::value)>::type>::value_type cpptoml::value_traits<T, typename std::enable_if<(((! cpptoml::valid_value_or_string_convertible<T>::value) && (! std::is_floating_point<typename std::decay<_Tp>::type>::value)) && std::is_signed<typename std::decay<_Tp>::type>::value)>::type>::construct(T&&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:344:25: error: ‘numeric_limits’ is not a member of ‘std’
  344 |         if (val < (std::numeric_limits<int64_t>::min)())
      |                         ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:344:47: error: expected primary-expression before ‘>’ token
  344 |         if (val < (std::numeric_limits<int64_t>::min)())
      |                                               ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:344:50: error: ‘::min’ has not been declared; did you mean ‘std::min’?
  344 |         if (val < (std::numeric_limits<int64_t>::min)())
      |                                                  ^~~
      |                                                  std::min
In file included from /usr/include/c++/11/algorithm:62,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:10,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/usr/include/c++/11/bits/stl_algo.h:3455:5: note: ‘std::min’ declared here
 3455 |     min(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:349:25: error: ‘numeric_limits’ is not a member of ‘std’
  349 |         if (val > (std::numeric_limits<int64_t>::max)())
      |                         ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:349:47: error: expected primary-expression before ‘>’ token
  349 |         if (val > (std::numeric_limits<int64_t>::max)())
      |                                               ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:349:50: error: ‘::max’ has not been declared; did you mean ‘std::max’?
  349 |         if (val > (std::numeric_limits<int64_t>::max)())
      |                                                  ^~~
      |                                                  std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:10,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In static member function ‘static cpptoml::value_traits<T, typename std::enable_if<((! cpptoml::valid_value_or_string_convertible<T>::value) && std::is_unsigned<typename std::decay<_Tp>::type>::value)>::type>::value_type cpptoml::value_traits<T, typename std::enable_if<((! cpptoml::valid_value_or_string_convertible<T>::value) && std::is_unsigned<typename std::decay<_Tp>::type>::value)>::type>::construct(T&&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:369:47: error: ‘numeric_limits’ is not a member of ‘std’
  369 |         if (val > static_cast<uint64_t>((std::numeric_limits<int64_t>::max)()))
      |                                               ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:369:69: error: expected primary-expression before ‘>’ token
  369 |         if (val > static_cast<uint64_t>((std::numeric_limits<int64_t>::max)()))
      |                                                                     ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:369:72: error: ‘::max’ has not been declared; did you mean ‘std::max’?
  369 |         if (val > static_cast<uint64_t>((std::numeric_limits<int64_t>::max)()))
      |                                                                        ^~~
      |                                                                        std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:10,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In function ‘typename std::enable_if<((! std::is_floating_point<_Tp>::value) && std::is_signed<_Tp>::value), cpptoml::option<T> >::type cpptoml::get_impl(const std::shared_ptr<cpptoml::base>&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1226:30: error: ‘numeric_limits’ is not a member of ‘std’
 1226 |         if (v->get() < (std::numeric_limits<T>::min)())
      |                              ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1226:46: error: expected primary-expression before ‘>’ token
 1226 |         if (v->get() < (std::numeric_limits<T>::min)())
      |                                              ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1226:49: error: ‘::min’ has not been declared; did you mean ‘std::min’?
 1226 |         if (v->get() < (std::numeric_limits<T>::min)())
      |                                                 ^~~
      |                                                 std::min
In file included from /usr/include/c++/11/algorithm:62,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:10,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/usr/include/c++/11/bits/stl_algo.h:3455:5: note: ‘std::min’ declared here
 3455 |     min(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1230:30: error: ‘numeric_limits’ is not a member of ‘std’
 1230 |         if (v->get() > (std::numeric_limits<T>::max)())
      |                              ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1230:46: error: expected primary-expression before ‘>’ token
 1230 |         if (v->get() > (std::numeric_limits<T>::max)())
      |                                              ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1230:49: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 1230 |         if (v->get() > (std::numeric_limits<T>::max)())
      |                                                 ^~~
      |                                                 std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:10,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In function ‘typename std::enable_if<((! std::is_same<T, bool>::value) && std::is_unsigned<_Tp>::value), cpptoml::option<T> >::type cpptoml::get_impl(const std::shared_ptr<cpptoml::base>&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1253:53: error: ‘numeric_limits’ is not a member of ‘std’
 1253 |         if (static_cast<uint64_t>(v->get()) > (std::numeric_limits<T>::max)())
      |                                                     ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1253:69: error: expected primary-expression before ‘>’ token
 1253 |         if (static_cast<uint64_t>(v->get()) > (std::numeric_limits<T>::max)())
      |                                                                     ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1253:72: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 1253 |         if (static_cast<uint64_t>(v->get()) > (std::numeric_limits<T>::max)())
      |                                                                        ^~~
      |                                                                        std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:10,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.cpp:19:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In member function ‘std::shared_ptr<cpptoml::base> cpptoml::parser::parse_number(std::__cxx11::basic_string<char>::iterator&, const iterator&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:2732:33: error: ‘numeric_limits’ is not a member of ‘std’
 2732 |                 auto val = std::numeric_limits<double>::infinity();
      |                                 ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:2732:48: error: expected primary-expression before ‘double’
 2732 |                 auto val = std::numeric_limits<double>::infinity();
      |                                                ^~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:2741:33: error: ‘numeric_limits’ is not a member of ‘std’
 2741 |                 auto val = std::numeric_limits<double>::quiet_NaN();
      |                                 ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:2741:48: error: expected primary-expression before ‘double’
 2741 |                 auto val = std::numeric_limits<double>::quiet_NaN();
      |                                                ^~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In member function ‘void cpptoml::toml_writer::write(const cpptoml::value<double>&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:3481:38: error: ‘numeric_limits’ is not a member of ‘std’
 3481 |            << std::setprecision(std::numeric_limits<double>::max_digits10)
      |                                      ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:3481:53: error: expected primary-expression before ‘double’
 3481 |            << std::setprecision(std::numeric_limits<double>::max_digits10)
      |                                                     ^~~~~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp: In member function ‘void cxxopts::values::detail::SignedCheck<T, true>::operator()(bool, U, const string&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:488:43: error: ‘numeric_limits’ is not a member of ‘std’
  488 |             if (u > static_cast<U>(-(std::numeric_limits<T>::min)()))
      |                                           ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:488:59: error: expected primary-expression before ‘>’ token
  488 |             if (u > static_cast<U>(-(std::numeric_limits<T>::min)()))
      |                                                           ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:488:62: error: ‘::min’ has not been declared; did you mean ‘std::min’?
  488 |             if (u > static_cast<U>(-(std::numeric_limits<T>::min)()))
      |                                                              ^~~
      |                                                              std::min
In file included from /usr/include/c++/11/algorithm:62,
                 from /usr/include/c++/11/regex:38,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:34,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/usr/include/c++/11/bits/stl_algo.h:3455:5: note: ‘std::min’ declared here
 3455 |     min(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:495:42: error: ‘numeric_limits’ is not a member of ‘std’
  495 |             if (u > static_cast<U>((std::numeric_limits<T>::max)()))
      |                                          ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:495:58: error: expected primary-expression before ‘>’ token
  495 |             if (u > static_cast<U>((std::numeric_limits<T>::max)()))
      |                                                          ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:495:61: error: ‘::max’ has not been declared; did you mean ‘std::max’?
  495 |             if (u > static_cast<U>((std::numeric_limits<T>::max)()))
      |                                                             ^~~
      |                                                             std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /usr/include/c++/11/regex:38,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:34,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp: In function ‘void cxxopts::values::detail::check_signed_range(bool, U, const string&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:515:29: error: ‘numeric_limits’ is not a member of ‘std’
  515 |         SignedCheck<T, std::numeric_limits<T>::is_signed>()(negative, value, text);
      |                             ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:515:45: error: template argument 2 is invalid
  515 |         SignedCheck<T, std::numeric_limits<T>::is_signed>()(negative, value, text);
      |                                             ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:515:57: error: qualified-id in declaration before ‘>’ token
  515 |         SignedCheck<T, std::numeric_limits<T>::is_signed>()(negative, value, text);
      |                                                         ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp: In function ‘void cxxopts::values::integer_parser(const string&, T&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:556:35: error: ‘numeric_limits’ is not a member of ‘std’
  556 |       constexpr auto umax = (std::numeric_limits<US>::max)();
      |                                   ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:556:52: error: expected primary-expression before ‘>’ token
  556 |       constexpr auto umax = (std::numeric_limits<US>::max)();
      |                                                    ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:556:55: error: ‘::max’ has not been declared; did you mean ‘std::max’?
  556 |       constexpr auto umax = (std::numeric_limits<US>::max)();
      |                                                       ^~~
      |                                                       std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /usr/include/c++/11/regex:38,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:34,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:557:39: error: ‘numeric_limits’ is not a member of ‘std’
  557 |       constexpr bool is_signed = std::numeric_limits<T>::is_signed;
      |                                       ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:557:55: error: expected primary-expression before ‘>’ token
  557 |       constexpr bool is_signed = std::numeric_limits<T>::is_signed;
      |                                                       ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:557:58: error: ‘::is_signed’ has not been declared; did you mean ‘std::is_signed’?
  557 |       constexpr bool is_signed = std::numeric_limits<T>::is_signed;
      |                                                          ^~~~~~~~~
      |                                                          std::is_signed
In file included from /usr/include/c++/11/bits/move.h:57,
                 from /usr/include/c++/11/bits/nested_exception.h:40,
                 from /usr/include/c++/11/exception:154,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:30,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/usr/include/c++/11/type_traits:795:12: note: ‘std::is_signed’ declared here
  795 |     struct is_signed
      |            ^~~~~~~~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:26:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In static member function ‘static cpptoml::value_traits<T, typename std::enable_if<(((! cpptoml::valid_value_or_string_convertible<T>::value) && (! std::is_floating_point<typename std::decay<_Tp>::type>::value)) && std::is_signed<typename std::decay<_Tp>::type>::value)>::type>::value_type cpptoml::value_traits<T, typename std::enable_if<(((! cpptoml::valid_value_or_string_convertible<T>::value) && (! std::is_floating_point<typename std::decay<_Tp>::type>::value)) && std::is_signed<typename std::decay<_Tp>::type>::value)>::type>::construct(T&&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:344:25: error: ‘numeric_limits’ is not a member of ‘std’
  344 |         if (val < (std::numeric_limits<int64_t>::min)())
      |                         ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:344:47: error: expected primary-expression before ‘>’ token
  344 |         if (val < (std::numeric_limits<int64_t>::min)())
      |                                               ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:344:50: error: ‘::min’ has not been declared; did you mean ‘std::min’?
  344 |         if (val < (std::numeric_limits<int64_t>::min)())
      |                                                  ^~~
      |                                                  std::min
In file included from /usr/include/c++/11/algorithm:62,
                 from /usr/include/c++/11/regex:38,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:34,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/usr/include/c++/11/bits/stl_algo.h:3455:5: note: ‘std::min’ declared here
 3455 |     min(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:26:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:349:25: error: ‘numeric_limits’ is not a member of ‘std’
  349 |         if (val > (std::numeric_limits<int64_t>::max)())
      |                         ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:349:47: error: expected primary-expression before ‘>’ token
  349 |         if (val > (std::numeric_limits<int64_t>::max)())
      |                                               ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:349:50: error: ‘::max’ has not been declared; did you mean ‘std::max’?
  349 |         if (val > (std::numeric_limits<int64_t>::max)())
      |                                                  ^~~
      |                                                  std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /usr/include/c++/11/regex:38,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:34,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:26:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In static member function ‘static cpptoml::value_traits<T, typename std::enable_if<((! cpptoml::valid_value_or_string_convertible<T>::value) && std::is_unsigned<typename std::decay<_Tp>::type>::value)>::type>::value_type cpptoml::value_traits<T, typename std::enable_if<((! cpptoml::valid_value_or_string_convertible<T>::value) && std::is_unsigned<typename std::decay<_Tp>::type>::value)>::type>::construct(T&&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:369:47: error: ‘numeric_limits’ is not a member of ‘std’
  369 |         if (val > static_cast<uint64_t>((std::numeric_limits<int64_t>::max)()))
      |                                               ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:369:69: error: expected primary-expression before ‘>’ token
  369 |         if (val > static_cast<uint64_t>((std::numeric_limits<int64_t>::max)()))
      |                                                                     ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:369:72: error: ‘::max’ has not been declared; did you mean ‘std::max’?
  369 |         if (val > static_cast<uint64_t>((std::numeric_limits<int64_t>::max)()))
      |                                                                        ^~~
      |                                                                        std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /usr/include/c++/11/regex:38,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:34,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:26:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In function ‘typename std::enable_if<((! std::is_floating_point<_Tp>::value) && std::is_signed<_Tp>::value), cpptoml::option<T> >::type cpptoml::get_impl(const std::shared_ptr<cpptoml::base>&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1226:30: error: ‘numeric_limits’ is not a member of ‘std’
 1226 |         if (v->get() < (std::numeric_limits<T>::min)())
      |                              ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1226:46: error: expected primary-expression before ‘>’ token
 1226 |         if (v->get() < (std::numeric_limits<T>::min)())
      |                                              ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1226:49: error: ‘::min’ has not been declared; did you mean ‘std::min’?
 1226 |         if (v->get() < (std::numeric_limits<T>::min)())
      |                                                 ^~~
      |                                                 std::min
In file included from /usr/include/c++/11/algorithm:62,
                 from /usr/include/c++/11/regex:38,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:34,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/usr/include/c++/11/bits/stl_algo.h:3455:5: note: ‘std::min’ declared here
 3455 |     min(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:26:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1230:30: error: ‘numeric_limits’ is not a member of ‘std’
 1230 |         if (v->get() > (std::numeric_limits<T>::max)())
      |                              ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1230:46: error: expected primary-expression before ‘>’ token
 1230 |         if (v->get() > (std::numeric_limits<T>::max)())
      |                                              ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1230:49: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 1230 |         if (v->get() > (std::numeric_limits<T>::max)())
      |                                                 ^~~
      |                                                 std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /usr/include/c++/11/regex:38,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:34,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:26:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In function ‘typename std::enable_if<((! std::is_same<T, bool>::value) && std::is_unsigned<_Tp>::value), cpptoml::option<T> >::type cpptoml::get_impl(const std::shared_ptr<cpptoml::base>&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1253:53: error: ‘numeric_limits’ is not a member of ‘std’
 1253 |         if (static_cast<uint64_t>(v->get()) > (std::numeric_limits<T>::max)())
      |                                                     ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1253:69: error: expected primary-expression before ‘>’ token
 1253 |         if (static_cast<uint64_t>(v->get()) > (std::numeric_limits<T>::max)())
      |                                                                     ^
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:1253:72: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 1253 |         if (static_cast<uint64_t>(v->get()) > (std::numeric_limits<T>::max)())
      |                                                                        ^~~
      |                                                                        std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /usr/include/c++/11/regex:38,
                 from /home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:34,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/config/config.h:22,
                 from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:26:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In member function ‘std::shared_ptr<cpptoml::base> cpptoml::parser::parse_number(std::__cxx11::basic_string<char>::iterator&, const iterator&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:2732:33: error: ‘numeric_limits’ is not a member of ‘std’
 2732 |                 auto val = std::numeric_limits<double>::infinity();
      |                                 ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:2732:48: error: expected primary-expression before ‘double’
 2732 |                 auto val = std::numeric_limits<double>::infinity();
      |                                                ^~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:2741:33: error: ‘numeric_limits’ is not a member of ‘std’
 2741 |                 auto val = std::numeric_limits<double>::quiet_NaN();
      |                                 ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:2741:48: error: expected primary-expression before ‘double’
 2741 |                 auto val = std::numeric_limits<double>::quiet_NaN();
      |                                                ^~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h: In member function ‘void cpptoml::toml_writer::write(const cpptoml::value<double>&)’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:3481:38: error: ‘numeric_limits’ is not a member of ‘std’
 3481 |            << std::setprecision(std::numeric_limits<double>::max_digits10)
      |                                      ^~~~~~~~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cpptoml/include/cpptoml.h:3481:53: error: expected primary-expression before ‘double’
 3481 |            << std::setprecision(std::numeric_limits<double>::max_digits10)
      |                                                     ^~~~~~
In file included from /home/jdnixx/Downloads/gebaar-libinput/src/main.cpp:25:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp: In instantiation of ‘void cxxopts::values::detail::check_signed_range(bool, U, const string&) [with T = unsigned char; U = unsigned char; std::string = std::__cxx11::basic_string<char>]’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:594:36:   required from ‘void cxxopts::values::integer_parser(const string&, T&) [with T = unsigned char; std::string = std::__cxx11::basic_string<char>]’
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:622:21:   required from here
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:31: error: unused parameter ‘negative’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                          ~~~~~^~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:43: error: unused parameter ‘value’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                         ~~^~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:69: error: unused parameter ‘text’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                                  ~~~~~~~~~~~~~~~~~~~^~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp: In instantiation of ‘void cxxopts::values::detail::check_signed_range(bool, U, const string&) [with T = signed char; U = unsigned char; std::string = std::__cxx11::basic_string<char>]’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:594:36:   required from ‘void cxxopts::values::integer_parser(const string&, T&) [with T = signed char; std::string = std::__cxx11::basic_string<char>]’
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:629:21:   required from here
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:31: error: unused parameter ‘negative’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                          ~~~~~^~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:43: error: unused parameter ‘value’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                         ~~^~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:69: error: unused parameter ‘text’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                                  ~~~~~~~~~~~~~~~~~~~^~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp: In instantiation of ‘void cxxopts::values::detail::check_signed_range(bool, U, const string&) [with T = short unsigned int; U = short unsigned int; std::string = std::__cxx11::basic_string<char>]’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:594:36:   required from ‘void cxxopts::values::integer_parser(const string&, T&) [with T = short unsigned int; std::string = std::__cxx11::basic_string<char>]’
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:636:21:   required from here
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:31: error: unused parameter ‘negative’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                          ~~~~~^~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:43: error: unused parameter ‘value’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                         ~~^~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:69: error: unused parameter ‘text’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                                  ~~~~~~~~~~~~~~~~~~~^~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp: In instantiation of ‘void cxxopts::values::detail::check_signed_range(bool, U, const string&) [with T = short int; U = short unsigned int; std::string = std::__cxx11::basic_string<char>]’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:594:36:   required from ‘void cxxopts::values::integer_parser(const string&, T&) [with T = short int; std::string = std::__cxx11::basic_string<char>]’
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:643:21:   required from here
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:31: error: unused parameter ‘negative’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                          ~~~~~^~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:43: error: unused parameter ‘value’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                         ~~^~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:69: error: unused parameter ‘text’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                                  ~~~~~~~~~~~~~~~~~~~^~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp: In instantiation of ‘void cxxopts::values::detail::check_signed_range(bool, U, const string&) [with T = unsigned int; U = unsigned int; std::string = std::__cxx11::basic_string<char>]’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:594:36:   required from ‘void cxxopts::values::integer_parser(const string&, T&) [with T = unsigned int; std::string = std::__cxx11::basic_string<char>]’
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:650:21:   required from here
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:31: error: unused parameter ‘negative’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                          ~~~~~^~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:43: error: unused parameter ‘value’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                         ~~^~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:69: error: unused parameter ‘text’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                                  ~~~~~~~~~~~~~~~~~~~^~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp: In instantiation of ‘void cxxopts::values::detail::check_signed_range(bool, U, const string&) [with T = int; U = unsigned int; std::string = std::__cxx11::basic_string<char>]’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:594:36:   required from ‘void cxxopts::values::integer_parser(const string&, T&) [with T = int; std::string = std::__cxx11::basic_string<char>]’
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:657:21:   required from here
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:31: error: unused parameter ‘negative’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                          ~~~~~^~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:43: error: unused parameter ‘value’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                         ~~^~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:69: error: unused parameter ‘text’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                                  ~~~~~~~~~~~~~~~~~~~^~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp: In instantiation of ‘void cxxopts::values::detail::check_signed_range(bool, U, const string&) [with T = long unsigned int; U = long unsigned int; std::string = std::__cxx11::basic_string<char>]’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:594:36:   required from ‘void cxxopts::values::integer_parser(const string&, T&) [with T = long unsigned int; std::string = std::__cxx11::basic_string<char>]’
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:664:21:   required from here
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:31: error: unused parameter ‘negative’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                          ~~~~~^~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:43: error: unused parameter ‘value’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                         ~~^~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:69: error: unused parameter ‘text’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                                  ~~~~~~~~~~~~~~~~~~~^~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp: In instantiation of ‘void cxxopts::values::detail::check_signed_range(bool, U, const string&) [with T = long int; U = long unsigned int; std::string = std::__cxx11::basic_string<char>]’:
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:594:36:   required from ‘void cxxopts::values::integer_parser(const string&, T&) [with T = long int; std::string = std::__cxx11::basic_string<char>]’
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:671:21:   required from here
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:31: error: unused parameter ‘negative’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                          ~~~~~^~~~~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:43: error: unused parameter ‘value’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                         ~~^~~~~
/home/jdnixx/Downloads/gebaar-libinput/libs/cxxopts/include/cxxopts.hpp:513:69: error: unused parameter ‘text’ [-Werror=unused-parameter]
  513 |       check_signed_range(bool negative, U value, const std::string& text)
      |                                                  ~~~~~~~~~~~~~~~~~~~^~~~
make[2]: *** [CMakeFiles/gebaard.dir/build.make:76: CMakeFiles/gebaard.dir/src/config/config.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
cc1plus: all warnings being treated as errors
make[2]: *** [CMakeFiles/gebaard.dir/build.make:118: CMakeFiles/gebaard.dir/src/main.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/gebaard.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

[BUG] Touch gestures are not aware of device orientation

Currently, all touch gestures are recognized based on the device's initial orientation. This becomes problematic for users who plan on using their device in different orientations and expect the gestures to adjust accordingly.
Libinput, as far as I'm aware, does not provide accelerometer data or device orientation data which could be used to change gestures accordingly.
One way of fixing this behavior is by reading accelerometer data through X11 like https://github.com/GuLinux/ScreenRotator does so.

The knowledge required to implement this functionality is above my skill level for now.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.