Changes include:
* Much better encapsulation of textview/textbuffer, with each isolated
responsibility living independently on its own class/file.
* Less code overall
* Various small fixes around the components involved, such as:
* Indentation of nested lists (fixes#120)
* Unwanted scroll on select all (ctrl+a)
* Removal of unused code around the components involved
* Fixes for scrollbar location, now at the edge of the window
The Theme class encapsulates theme handling, by listing default themes
and providing means to access their gtk/web css.
Besides cleaning things up, it makes it easy to support custom themes
in the future. The user just needs to provide two CSS files, and we'll
be able to instantiate and use a Theme from that.
Fixes#121. Additional, fixes include:
* Light tables, title/hr underlines, code and quote blocks on the
dark theme
* Scrollbar not rendering on top of content
Cleanup includes:
* Removal of css rules that are internal to github (eg. octicon)
* Merging of duplicate or overridden declarations
* De-duplicating light and dark theme using import + custom properties
Improvements include:
* Using Fira / Fira Mono for rendering (as is done in the text editor)
* Using relative units as much as possible, making it much easier to
use a responsive design in the future
* Using the same background color for a more seamless experience
* Adjusting color contrast for the background changes, ensuring proper
accessibility while still using GitHub's style
These actions were not immediately recognizable as icons;
With GMenuModel there's no way to either add tooltips or use
icons _and_ text, so labels-only are the best option
usability-wise.
As per https://gitlab.gnome.org/GNOME/Initiatives/wikis/App-Menu-Retirement,
the new HIG has a few requirements:
* About should be "About <Application Name>"
* Preferences should be in the same section as About and Keyboard Shortcuts
* Shortcuts should be Keyboard Shortcuts
* Quit should be removed, as it's redundant