diff --git a/data/theme/gnome-shell.css b/data/theme/gnome-shell.css index 78ff5b320..bb184c92a 100644 --- a/data/theme/gnome-shell.css +++ b/data/theme/gnome-shell.css @@ -70,7 +70,6 @@ StScrollBar StButton#vhandle:hover padding: 4px; border: 1px solid rgba(0,0,172,0.85); border-radius: 4px; - font-family: Monospace; color: #88ff66; } diff --git a/js/ui/lookingGlass.js b/js/ui/lookingGlass.js index 0c22bda40..fea5c1a84 100644 --- a/js/ui/lookingGlass.js +++ b/js/ui/lookingGlass.js @@ -305,6 +305,13 @@ LookingGlass.prototype = { this.actor = new St.BoxLayout({ name: "LookingGlassDialog", vertical: true, visible: false }); + + let gconf = Shell.GConf.get_default(); + gconf.watch_directory("/desktop/gnome/interface"); + gconf.connect("changed::/desktop/gnome/interface/monospace_font_name", + Lang.bind(this, this._updateFont)); + this._updateFont(); + global.stage.add_actor(this.actor); let toolbar = new St.BoxLayout({ name: "Toolbar" }); @@ -409,6 +416,19 @@ LookingGlass.prototype = { })); }, + _updateFont: function() { + let gconf = Shell.GConf.get_default(); + let fontName = gconf.get_string("/desktop/gnome/interface/monospace_font_name"); + // This is mishandled by the scanner - should by Pango.FontDescription_from_string(fontName); + // https://bugzilla.gnome.org/show_bug.cgi?id=595889 + let fontDesc = Pango.Font.description_from_string(fontName); + // We ignore everything but size and style; you'd be crazy to set your system-wide + // monospace font to be bold/oblique/etc. Could easily be added here. + this.actor.style = + 'font-size: ' + fontDesc.get_size() / 1024. + (fontDesc.get_size_is_absolute() ? 'px' : 'pt') + ';' + + 'font-family: "' + fontDesc.get_family() + '";'; + }, + _readHistory: function () { if (!this._historyFile.query_exists(null)) return;