GTK: ensure the editor always uses contrasting colors.

On some configurations, it seems that the default GTK theme
has a transparent background, which makes black text on black
(GL) background illegible.
This commit is contained in:
whitequark 2017-03-19 18:41:47 +00:00
parent 911c67b2d8
commit 827f54f2c4

View File

@ -17,6 +17,7 @@
#include <glibmm/convert.h>
#include <giomm/file.h>
#include <gdkmm/cursor.h>
#include <gtkmm/cssprovider.h>
#include <gtkmm/drawingarea.h>
#include <gtkmm/glarea.h>
#include <gtkmm/scrollbar.h>
@ -1410,6 +1411,18 @@ int main(int argc, char** argv) {
Gtk::Main main(argc, argv);
// Add our application-specific styles, to override GTK defaults.
Glib::RefPtr<Gtk::CssProvider> style_provider = Gtk::CssProvider::create();
style_provider->load_from_data(R"(
entry {
background: white;
color: black;
}
)");
Gtk::StyleContext::add_provider_for_screen(Gdk::Screen::get_default(),
style_provider,
600 /*Gtk::STYLE_PROVIDER_PRIORITY_APPLICATION*/);
#ifdef HAVE_SPACEWARE
gdk_window_add_filter(NULL, GdkSpnavFilter, NULL);
#endif