summaryrefslogtreecommitdiff
path: root/raveos-theme/gnome/theme-data/extensions/installed/dash-to-dock@micxgx.gmail.com/launcherAPI.js
diff options
context:
space:
mode:
authorAlexanderCurl <alexc@alexc.hu>2026-04-18 17:46:06 +0100
committerAlexanderCurl <alexc@alexc.hu>2026-04-18 17:46:06 +0100
commit70ca3fef77ee8bdc6e3ac28589a6fa08c024cc69 (patch)
treeab1123d4067c1b086dd6faa7ee4ea643236b565a /raveos-theme/gnome/theme-data/extensions/installed/dash-to-dock@micxgx.gmail.com/launcherAPI.js
parent5d94c0a7d44a2255b81815a52a7056a94a39842d (diff)
downloadRaveOS-PKGBUILD-70ca3fef77ee8bdc6e3ac28589a6fa08c024cc69.tar.gz
RaveOS-PKGBUILD-70ca3fef77ee8bdc6e3ac28589a6fa08c024cc69.zip
Replaced file structures for themes in the correct format
Diffstat (limited to 'raveos-theme/gnome/theme-data/extensions/installed/dash-to-dock@micxgx.gmail.com/launcherAPI.js')
-rw-r--r--raveos-theme/gnome/theme-data/extensions/installed/dash-to-dock@micxgx.gmail.com/launcherAPI.js287
1 files changed, 0 insertions, 287 deletions
diff --git a/raveos-theme/gnome/theme-data/extensions/installed/dash-to-dock@micxgx.gmail.com/launcherAPI.js b/raveos-theme/gnome/theme-data/extensions/installed/dash-to-dock@micxgx.gmail.com/launcherAPI.js
deleted file mode 100644
index 8778d32..0000000
--- a/raveos-theme/gnome/theme-data/extensions/installed/dash-to-dock@micxgx.gmail.com/launcherAPI.js
+++ /dev/null
@@ -1,287 +0,0 @@
-// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
-
-import {Gio} from './dependencies/gi.js';
-import {DBusMenuUtils} from './imports.js';
-
-const DBusMenu = await DBusMenuUtils.haveDBusMenu();
-
-export class LauncherEntryRemoteModel {
- constructor() {
- this._entrySourceStacks = new Map();
- this._remoteMaps = new Map();
-
- this._launcher_entry_dbus_signal_id =
- Gio.DBus.session.signal_subscribe(null, // sender
- 'com.canonical.Unity.LauncherEntry', // iface
- 'Update', // member
- null, // path
- null, // arg0
- Gio.DBusSignalFlags.NONE,
- (_connection, senderName, _objectPath, _interfaceName, _signalName, parameters) =>
- this._onUpdate(senderName, ...parameters.deep_unpack()));
-
- this._dbus_name_owner_changed_signal_id =
- Gio.DBus.session.signal_subscribe('org.freedesktop.DBus', // sender
- 'org.freedesktop.DBus', // interface
- 'NameOwnerChanged', // member
- '/org/freedesktop/DBus', // path
- null, // arg0
- Gio.DBusSignalFlags.NONE,
- (connection, _senderName, _objectPath, _interfaceName, _signalName, parameters) =>
- this._onDBusNameChange(...parameters.deep_unpack().slice(1)));
-
- this._acquireUnityDBus();
- }
-
- destroy() {
- if (this._launcher_entry_dbus_signal_id)
- Gio.DBus.session.signal_unsubscribe(this._launcher_entry_dbus_signal_id);
-
-
- if (this._dbus_name_owner_changed_signal_id)
- Gio.DBus.session.signal_unsubscribe(this._dbus_name_owner_changed_signal_id);
-
-
- this._releaseUnityDBus();
- }
-
- _lookupStackById(appId) {
- let sourceStack = this._entrySourceStacks.get(appId);
- if (!sourceStack) {
- sourceStack = new PropertySourceStack(new LauncherEntry(),
- launcherEntryDefaults);
- this._entrySourceStacks.set(appId, sourceStack);
- }
-
- return sourceStack;
- }
-
- lookupById(appId) {
- return this._lookupStackById(appId).target;
- }
-
- _acquireUnityDBus() {
- if (!this._unity_bus_id) {
- this._unity_bus_id = Gio.DBus.session.own_name('com.canonical.Unity',
- Gio.BusNameOwnerFlags.ALLOW_REPLACEMENT | Gio.BusNameOwnerFlags.REPLACE,
- null, () => (this._unity_bus_id = 0));
- }
- }
-
- _releaseUnityDBus() {
- if (this._unity_bus_id) {
- Gio.DBus.session.unown_name(this._unity_bus_id);
- this._unity_bus_id = 0;
- }
- }
-
- _onDBusNameChange(before, after) {
- if (!before || !this._remoteMaps.size)
- return;
-
- const remoteMap = this._remoteMaps.get(before);
- if (!remoteMap)
- return;
-
- this._remoteMaps.delete(before);
- if (after && !this._remoteMaps.has(after)) {
- this._remoteMaps.set(after, remoteMap);
- } else {
- for (const [appId, remote] of remoteMap) {
- const sourceStack = this._entrySourceStacks.get(appId);
- const changed = sourceStack.remove(remote);
- if (changed)
- sourceStack.target._emitChangedEvents(changed);
- }
- }
- }
-
- _onUpdate(senderName, appUri, properties) {
- if (!senderName)
- return;
-
-
- const appId = appUri.replace(/(^\w+:|^)\/\//, '');
- if (!appId)
- return;
-
-
- let remoteMap = this._remoteMaps.get(senderName);
- if (!remoteMap)
- this._remoteMaps.set(senderName, remoteMap = new Map());
-
- let remote = remoteMap.get(appId);
- if (!remote)
- remoteMap.set(appId, remote = Object.assign({}, launcherEntryDefaults));
-
- for (const name in properties) {
- if (name === 'quicklist' && DBusMenu) {
- const quicklistPath = properties[name].unpack();
- if (quicklistPath &&
- (!remote._quicklistMenuClient ||
- remote._quicklistMenuClient.dbus_object !== quicklistPath)) {
- remote.quicklist = null;
- let menuClient = remote._quicklistMenuClient;
- if (menuClient) {
- menuClient.dbus_object = quicklistPath;
- } else {
- // This property should not be enumerable
- Object.defineProperty(remote, '_quicklistMenuClient', {
- writable: true,
- value: menuClient = new DBusMenu.Client({
- dbus_name: senderName,
- dbus_object: quicklistPath,
- }),
- });
- }
- const handler = () => {
- const root = menuClient.get_root();
- if (remote.quicklist !== root) {
- remote.quicklist = root;
- if (sourceStack.isTop(remote)) {
- sourceStack.target.quicklist = root;
- sourceStack.target._emitChangedEvents(['quicklist']);
- }
- }
- };
- menuClient.connect(DBusMenu.CLIENT_SIGNAL_ROOT_CHANGED, handler);
- }
- } else {
- remote[name] = properties[name].unpack();
- }
- }
-
- const sourceStack = this._lookupStackById(appId);
- sourceStack.target._emitChangedEvents(sourceStack.update(remote));
- }
-}
-
-const launcherEntryDefaults = Object.freeze({
- count: 0,
- progress: 0,
- urgent: false,
- updating: false,
- quicklist: null,
- 'count-visible': false,
- 'progress-visible': false,
-});
-
-const LauncherEntry = class DashToDockLauncherEntry {
- constructor() {
- this._connections = new Map();
- this._handlers = new Map();
- this._nextId = 0;
- }
-
- connect(eventNames, callback) {
- if (typeof eventNames === 'string')
- eventNames = [eventNames];
-
- callback(this, this);
- const id = this._nextId++;
- const handler = {id, callback};
- eventNames.forEach(name => {
- let handlerList = this._handlers.get(name);
- if (!handlerList)
- this._handlers.set(name, handlerList = []);
-
- handlerList.push(handler);
- });
- this._connections.set(id, eventNames);
- return id;
- }
-
- disconnect(id) {
- const eventNames = this._connections.get(id);
- if (!eventNames)
- return;
-
- this._connections.delete(id);
- eventNames.forEach(name => {
- const handlerList = this._handlers.get(name);
- if (handlerList) {
- for (let i = 0, iMax = handlerList.length; i < iMax; i++) {
- if (handlerList[i].id === id) {
- handlerList.splice(i, 1);
- break;
- }
- }
- }
- });
- }
-
- _emitChangedEvents(propertyNames) {
- const handlers = new Set();
- propertyNames.forEach(name => {
- const handlerList = this._handlers.get(`${name}-changed`);
- if (handlerList) {
- for (let i = 0, iMax = handlerList.length; i < iMax; i++)
- handlers.add(handlerList[i]);
- }
- });
- Array.from(handlers).sort((x, y) => x.id - y.id).forEach(handler => handler.callback(this, this));
- }
-};
-
-for (const [name, defaultValue] of Object.entries(launcherEntryDefaults)) {
- const jsName = name.replaceAll('-', '_');
- LauncherEntry.prototype[jsName] = defaultValue;
- if (jsName !== name) {
- Object.defineProperty(LauncherEntry.prototype, name, {
- get() {
- return this[jsName];
- },
- set(value) {
- this[jsName] = value;
- },
- });
- }
-}
-
-const PropertySourceStack = class DashToDockPropertySourceStack {
- constructor(target, bottom) {
- this.target = target;
- this._bottom = bottom;
- this._stack = [];
- }
-
- isTop(source) {
- return this._stack.length > 0 && this._stack[this._stack.length - 1] === source;
- }
-
- update(source) {
- if (!this.isTop(source)) {
- this.remove(source);
- this._stack.push(source);
- }
- return this._assignFrom(source);
- }
-
- remove(source) {
- const stack = this._stack;
- const top = stack[stack.length - 1];
- if (top === source) {
- stack.length--;
- return this._assignFrom(stack.length > 0 ? stack[stack.length - 1] : this._bottom);
- }
- for (let i = 0, iMax = stack.length; i < iMax; i++) {
- if (stack[i] === source) {
- stack.splice(i, 1);
- break;
- }
- }
-
- return null;
- }
-
- _assignFrom(source) {
- const changedProperties = [];
- for (const name in source) {
- if (this.target[name] !== source[name]) {
- this.target[name] = source[name];
- changedProperties.push(name);
- }
- }
- return changedProperties;
- }
-};