From 3a2cf548586f45051b2ebe095151ed36f2005d60 Mon Sep 17 00:00:00 2001 From: Gordon Norman Squash Date: Thu, 25 Feb 2021 18:56:24 -0500 Subject: Rewrote README; added installation instructions; deleted overlay scrolling module --- README.md | 83 +++++++++++++++++++++++++++++++++++++++------------------------ 1 file changed, 51 insertions(+), 32 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index f233052..10c11ac 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ this repository only contains the code for the "sgm-flexible-mnemonics" module, but more are planned to follow. Similarly, this module is known not to work with GTK 4 yet, but support for GTK 4 should come eventually too, as long as the community doesn't drag their feet in adopting GTK 4 -but that's a different story). +(but that's a different story). ### sgm-flexible-mnemonics @@ -20,37 +20,6 @@ GTK+ 3.9.8, the latter mode is always used no matter the setting of `gtk-auto-mnemonics`. This module restores the classic mnemonic behavior to GTK+ 3.9.8 and later versions of GTK. -### sgm-overlay-scrolling **(COMING SOON)** - -Traditionally, scrollbars have appeared to the side of scrolled content. -In GTK+ 3.15.0, a new means of displaying scrollbars was introduced: -*overlay scrolling*. When overlay scrolling is enabled, scrollbars do not -initially appear; instead they wait for mouse movement before appearing, -and even then appear *on top* of scrolled content instead of *to the side* -of said content. This is good for users with little screen space, and it -would be tolerable to other users if there were an easy way to disable it; -however, until GTK+ 3.24.9 there was only an environment variable to -disable overlay scrolling globally. An environment variable is tolerable, -but it needs to be set every time a GTK application is run, or else overlay -scrolling will be enabled again. In GTK+ 3.24.9, a new setting was -introduced to disable overlay scrolling globally, `gtk-overlay-scrolling`. -But this setting left users of older versions of GTK in the lurch; even -today, some users continue to use GTK versions as old as 3.18 because that -is the latest version shipped by their distributor for an old Long Term -Support release of their distribution. This module adds the -`gtk-overlay-scrolling` setting to GTK versions prior to 3.24.9, so that -conservative themes can universally set the `gtk-overlay-scrolling` -property to `false` to disable overlay scrolling -- even on GTK versions -prior to 3.24.9. - -I created this module not so much because doing so is a necessity; it -is mostly because I admittedly have a big, fat mouth and told a friend of -mine that I could write a module for this. But it's also good to have a -module that brings the GTK+ 3.24.9-and-later behavior to older versions -of GTK, I suppose. Either way, my fat mouth has cost me and you're seeing -the fruits of my embarassing talkativeness. But that's enough on the -topic of my fat mouth. - ### Planned modules for the future * A "GTK Inspector"-like tool for GTK+ 2 would be quite cool and useful. @@ -66,6 +35,56 @@ issue on this repository! Pull requests are also welcome. If you find an issue in one of these modules, please start an issue for that, too. +### Building the code + +Building the code couldn't be much easier. You just need: + + - Meson + - Ninja + - GTK: currently only version 3.8 or later will suffice, not version 4. + +To build the modules in this package: + + 1. Clone this repository, or obtain a source tarball of this repository and + extract the tarball. + + 2. Change directory into the location where your copy of the code is stored. + + 3. Make a build directory, then change directory into that: + mkdir .build; cd .build + + 4. Run the setup: + meson .. + + 5. Compile the code: + ninja + + 6. Install the modules: + sudo ninja install + +To actually use the modules, you'll need to inform GTK about their existence +and, more importantly, that you want to use them. On GTK+ 3 you can create +a file `~/.config/gtk-3.0/settings.ini` that contains: + + [Settings] + gtk-modules = [list of modules separated by colons] + +Do *not* surround the list of modules with quotes! This has unintended side +effects including presentation of cryptic `Gtk-Message`s about failing to +find module *x* or *y*. + +On GTK 4, use the same method as on GTK+ 3, but change the `gtk-3.0` above to +`gtk-4.0`. + +On GTK+ 2 (few modules here are useful for GTK+ 2), create a file +`~/.config/gtk-2.0/gtkrc` which contains the following: + + gtk-modules = [quoted list of modules separated by colons] + +It is important to *surround the list of modules with double quotes on GTK+ 2*. +Otherwise, the modules will not load. Yes, it's inconsistent. But it's not +my fault. + *** Thanks for checking out (pun intended) this repository! -- cgit