summaryrefslogtreecommitdiff
path: root/raveos-theme/gnome/theme-data/extensions/installed/user-theme@gnome-shell-extensions.gcampax.github.com/util.js
diff options
context:
space:
mode:
Diffstat (limited to 'raveos-theme/gnome/theme-data/extensions/installed/user-theme@gnome-shell-extensions.gcampax.github.com/util.js')
-rw-r--r--raveos-theme/gnome/theme-data/extensions/installed/user-theme@gnome-shell-extensions.gcampax.github.com/util.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/raveos-theme/gnome/theme-data/extensions/installed/user-theme@gnome-shell-extensions.gcampax.github.com/util.js b/raveos-theme/gnome/theme-data/extensions/installed/user-theme@gnome-shell-extensions.gcampax.github.com/util.js
new file mode 100644
index 0000000..e02b464
--- /dev/null
+++ b/raveos-theme/gnome/theme-data/extensions/installed/user-theme@gnome-shell-extensions.gcampax.github.com/util.js
@@ -0,0 +1,26 @@
+// SPDX-FileCopyrightText: 2020 Florian Müllner <fmuellner@gnome.org>
+//
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+import GLib from 'gi://GLib';
+
+const fn = (...args) => GLib.build_filenamev(args);
+
+/**
+ * @returns {string[]} - an ordered list of theme directories
+ */
+export function getThemeDirs() {
+ return [
+ fn(GLib.get_home_dir(), '.themes'),
+ fn(GLib.get_user_data_dir(), 'themes'),
+ ...GLib.get_system_data_dirs().map(dir => fn(dir, 'themes')),
+ ];
+}
+
+/**
+ * @returns {string[]} - an ordered list of mode theme directories
+ */
+export function getModeThemeDirs() {
+ return GLib.get_system_data_dirs()
+ .map(dir => fn(dir, 'gnome-shell', 'theme'));
+}