After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 792809 - Register text difficult to read with GTK 3.0 dark themes
Register text difficult to read with GTK 3.0 dark themes
Status: RESOLVED FIXED
Product: GnuCash
Classification: Other
Component: User Interface General
2.7.x
Other Linux
: Normal normal
: ---
Assigned To: gnucash-ui-maint
gnucash-ui-maint
Depends on:
Blocks:
 
 
Reported: 2018-01-23 03:59 UTC by Jack Coulter
Modified: 2018-06-30 00:03 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Screenshot demonstrating issue (54.55 KB, image/png)
2018-01-23 03:59 UTC, Jack Coulter
Details

Description Jack Coulter 2018-01-23 03:59:21 UTC
Created attachment 367275 [details]
Screenshot demonstrating issue

As of 2.7, GnuCash now uses GTK3. Several standard GTK3 themes, such as Adawaita come with dark variants.

When using such a theme, the text in the register view uses the theme-provided light text colour, but with the Gnucash-specific yellow & green alternating background colours, resulting in poor legibility.

As far as I can tell, there is no way to override the text and/or background colours. As a workaround it is possible to disable the Gnucash-specific colour theme in the preferences dialog. This results in readable text on individual rows, but reduces the readability of this UI as a whole, due to the lack of alternating row colours, and lack of text highlighting during auto-completion.
Comment 1 Geert Janssens 2018-01-24 13:33:04 UTC
Thanks, this is clearly suboptimal and unintended.

When the gnucash theme colors are used the text color (and probably the text selection color as well) should also be set to match the green/yellow theme.

While waiting for a fix, there *is* a way to override colors, but unfortunately it's not documented yet:
You can add a snippet of css code in
$HOME/.gtk-3.0-gnucash.css
such as this:

*.register-header {
  color: black;
}

*.register-primary {
  color: black;
}

*.register-primary:insensitive {
  color: black;
}

*.register-secondary {
  color: black;
}

*.register-secondary:insensitive {
  color: grey;
}

*.register-split {
  color: black;
}

*.register-split:insensitive {
  color: grey;
}

*.register-cursor {
  color: black;
}

*.register-cursor:insensitive {
  color: grey;
}

As a sidenote to the developers, the location $HOME/.gtk-3.0-gnucash.css should be fixed to $HOME/.config/gtk-3.0-gnucash.css. Preferably before the gnucash 3.0 release still!
Comment 2 Geert Janssens 2018-01-31 18:18:49 UTC
The unreadable dark theme fix has been merged into unstable. The issue of
the config file location needs some more work. I'll comment on the PR.
Comment 3 Geert Janssens 2018-03-01 19:11:33 UTC
And meanwhile the location of the config file has been settled as well.
As of gnucash 2.7.5 it will be
- $HOME/.config/gnucash/gtk-3.0.css (linux and other platforms following freedesktop specs)
- CSIDL_APPDATA/Gnucash/gtk-3.0.css (Windows)
- $HOME/Application Support/Gnucash/gtk-3.0.css
Comment 4 Geert Janssens 2018-03-01 19:17:56 UTC
Hmm, that should probably be $HOME/Library/Application Support/Gnucash/gtk-3.0.css instead...
Comment 5 John Ralls 2018-06-30 00:03:36 UTC
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=792809. Please update any external references or bookmarks.