Blob Blame History Raw
From dcdf2c26467818b2ee9999dc103242b3e3cd1416 Mon Sep 17 00:00:00 2001
From: Rui Matos <tiagomatos@gmail.com>
Date: Fri, 8 Nov 2013 13:58:09 +0100
Subject: [PATCH 2/2] extensions: Add a SESSION_MODE extension type

This allows e.g. gnome-tweak-tool to present these extensions in a
different way since they can't be disabled.
---
 js/misc/extensionUtils.js | 3 ++-
 js/ui/extensionSystem.js  | 2 ++
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/js/misc/extensionUtils.js b/js/misc/extensionUtils.js
index afdc3cd..8541cf6 100644
--- a/js/misc/extensionUtils.js
+++ b/js/misc/extensionUtils.js
@@ -15,7 +15,8 @@ const FileUtils = imports.misc.fileUtils;
 
 const ExtensionType = {
     SYSTEM: 1,
-    PER_USER: 2
+    PER_USER: 2,
+    SESSION_MODE: 3
 };
 
 // Maps uuid -> metadata object
diff --git a/js/ui/extensionSystem.js b/js/ui/extensionSystem.js
index 11a75c6..a69308d 100644
--- a/js/ui/extensionSystem.js
+++ b/js/ui/extensionSystem.js
@@ -295,6 +295,8 @@ function _loadExtensions() {
     let finder = new ExtensionUtils.ExtensionFinder();
     finder.connect('extension-found', function(finder, extension) {
         loadExtension(extension);
+        if (Main.sessionMode.enabledExtensions.indexOf(extension.uuid) != -1)
+            extension.type = ExtensionUtils.ExtensionType.SESSION_MODE;
     });
     finder.scanExtensions();
 }
-- 
2.3.3