Jente Hidskes ccb9f83c10 MouseMap: save & restore GtkStyleContext to prevent hogging the CPU
Since Gtk 3.18 passing a state other than the current state isn't
recommended and can apparently lead to hogging the CPU due to triggering
a loop: requesting style context triggers pixel cache refresh, which triggers
do_draw, which requests the style context that triggers the pixel cache again,
et cetera.

For background, see https://bugzilla.gnome.org/show_bug.cgi?id=760462
and the linked blog post https://blogs.gnome.org/mclasen/2015/11/20/a-gtk-update/.
Note that the advice of using the gtk_render_* API doesn't work for the
MouseMap, so we have to use the suggested workaround.

Fixes #133.
2017-08-18 03:59:23 +10:00
2017-07-26 10:07:28 +02:00
2017-07-06 15:23:18 +02:00
2017-07-26 10:07:28 +02:00
2016-03-08 10:38:20 +10:00
2017-06-07 17:07:13 +02:00
2017-08-17 10:01:13 +02:00
2017-06-30 13:45:01 +02:00

Piper CircleCI

Piper is a GTK+ application to configure gaming mice, using libratbag via ratbagd. For the design mockups, see the Redesign Wiki.

In order to run Piper, ratbagd has to be running (without it, you'll get to see a pretty mouse trap). To see how, see its README.

Installing Piper

Piper uses the meson build system which in turn uses ninja to build and install itself. Run the following commands to clone Piper and initialize the build:

$ git clone https://github.com/libratbag/piper.git
$ cd piper
$ meson builddir --prefix=/usr/

To build or re-build after code-changes, run:

$ ninja -C builddir
$ sudo ninja -C builddir install

Note: builddir is the build output directory and can be changed to any other directory name.

Contributing

Yes please. It's best to contact us first to see what you could do. Note that the devices displayed by Piper come from libratbag.

Piper tries to conform to Python's PEP8 style guide. To verify your code before opening a PR, please install flake8 and run the following commands to install its pre-commit hook:

$ flake8 --install-hook git
$ git config --bool flake8.strict true

Source

git clone https://github.com/libratbag/piper.git

Bugs

Bugs can be reported in the issue tracker on our GitHub repo: https://github.com/libratbag/piper/issues

License

Licensed under the GPLv2. See the COPYING file for the full license information.

Description
No description provided
Readme 4.3 MiB
Languages
Python 93.1%
Meson 5.1%
Shell 1.6%
Roff 0.2%