extensionSystem: Allow extensions to provide mode-specific styling
Allow extensions to integrate with modes that provide a distinct style by providing a mode-specific stylesheet. https://bugzilla.gnome.org/show_bug.cgi?id=693219
This commit is contained in:
parent
fcc32fca7e
commit
2344706462
@ -106,11 +106,15 @@ function enableExtension(uuid) {
|
|||||||
|
|
||||||
extensionOrder.push(uuid);
|
extensionOrder.push(uuid);
|
||||||
|
|
||||||
let stylesheetFile = extension.dir.get_child('stylesheet.css');
|
let stylesheetNames = [global.session_mode + '.css', 'stylesheet.css'];
|
||||||
|
for (let i = 0; i < stylesheetNames.length; i++) {
|
||||||
|
let stylesheetFile = extension.dir.get_child(stylesheetNames[i]);
|
||||||
if (stylesheetFile.query_exists(null)) {
|
if (stylesheetFile.query_exists(null)) {
|
||||||
let theme = St.ThemeContext.get_for_stage(global.stage).get_theme();
|
let theme = St.ThemeContext.get_for_stage(global.stage).get_theme();
|
||||||
theme.load_stylesheet(stylesheetFile.get_path());
|
theme.load_stylesheet(stylesheetFile.get_path());
|
||||||
extension.stylesheet = stylesheetFile;
|
extension.stylesheet = stylesheetFile;
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
extension.stateObj.enable();
|
extension.stateObj.enable();
|
||||||
|
Loading…
Reference in New Issue
Block a user