From 2fc4987c7377feeb1c98f6233e5e1b43303e6eb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Mon, 19 Aug 2019 20:50:33 +0200 Subject: [PATCH] cleanup: Stop using Mainloop module It is deprecated in favor of the regular GLib functions. https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/718 --- js/misc/ibusManager.js | 25 +++++++------- js/ui/altTab.js | 26 +++++++------- js/ui/animation.js | 3 +- js/ui/appDisplay.js | 9 +++-- js/ui/components/automountManager.js | 9 +++-- js/ui/components/telepathyClient.js | 17 +++++----- js/ui/dash.js | 11 +++--- js/ui/endSessionDialog.js | 6 ++-- js/ui/lookingGlass.js | 4 +-- js/ui/magnifier.js | 5 ++- js/ui/main.js | 5 ++- js/ui/messageTray.js | 17 +++++----- js/ui/notificationDaemon.js | 3 +- js/ui/osdWindow.js | 9 +++-- js/ui/overview.js | 7 ++-- js/ui/panel.js | 7 ++-- js/ui/pointerWatcher.js | 7 ++-- js/ui/screenShield.js | 25 +++++++------- js/ui/scripting.js | 3 +- js/ui/sessionMode.js | 8 ++--- js/ui/status/accessibility.js | 3 +- js/ui/status/network.js | 5 ++- js/ui/switcherPopup.js | 43 +++++++++++++----------- js/ui/windowManager.js | 11 +++--- js/ui/workspace.js | 21 ++++++------ js/ui/workspaceSwitcherPopup.js | 9 +++-- js/ui/workspaceThumbnail.js | 3 +- tests/interactive/box-shadow-animated.js | 5 ++- tests/interactive/entry.js | 5 ++- tests/interactive/test-title.js | 5 ++- 30 files changed, 151 insertions(+), 165 deletions(-) diff --git a/js/misc/ibusManager.js b/js/misc/ibusManager.js index 210315e04..2011321ee 100644 --- a/js/misc/ibusManager.js +++ b/js/misc/ibusManager.js @@ -2,7 +2,6 @@ /* exported getIBusManager */ const { Gio, GLib, IBus } = imports.gi; -const Mainloop = imports.mainloop; const Signals = imports.signals; const IBusCandidatePopup = imports.ui.ibusCandidatePopup; @@ -216,21 +215,23 @@ var IBusManager = class { return; if (this._preloadEnginesId != 0) { - Mainloop.source_remove(this._preloadEnginesId); + GLib.source_remove(this._preloadEnginesId); this._preloadEnginesId = 0; } this._preloadEnginesId = - Mainloop.timeout_add_seconds(this._PRELOAD_ENGINES_DELAY_TIME, - () => { - this._ibus.preload_engines_async( - ids, - -1, - null, - null); - this._preloadEnginesId = 0; - return GLib.SOURCE_REMOVE; - }); + GLib.timeout_add_seconds( + GLib.PRIORITY_DEFAULT, + this._PRELOAD_ENGINES_DELAY_TIME, + () => { + this._ibus.preload_engines_async( + ids, + -1, + null, + null); + this._preloadEnginesId = 0; + return GLib.SOURCE_REMOVE; + }); } }; Signals.addSignalMethods(IBusManager.prototype); diff --git a/js/ui/altTab.js b/js/ui/altTab.js index 55c680877..f846d1020 100644 --- a/js/ui/altTab.js +++ b/js/ui/altTab.js @@ -3,7 +3,6 @@ WindowCyclerPopup */ const { Atk, Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; -const Mainloop = imports.mainloop; const Main = imports.ui.main; const SwitcherPopup = imports.ui.switcherPopup; @@ -292,7 +291,7 @@ class AppSwitcherPopup extends SwitcherPopup.SwitcherPopup { if (this._thumbnails) this._destroyThumbnails(); if (this._thumbnailTimeoutId != 0) - Mainloop.source_remove(this._thumbnailTimeoutId); + GLib.source_remove(this._thumbnailTimeoutId); } /** @@ -327,7 +326,7 @@ class AppSwitcherPopup extends SwitcherPopup.SwitcherPopup { } if (this._thumbnailTimeoutId != 0) { - Mainloop.source_remove(this._thumbnailTimeoutId); + GLib.source_remove(this._thumbnailTimeoutId); this._thumbnailTimeoutId = 0; } @@ -344,7 +343,8 @@ class AppSwitcherPopup extends SwitcherPopup.SwitcherPopup { this._thumbnails.highlight(window, forceAppFocus); } else if (this._items[this._selectedIndex].cachedWindows.length > 1 && !forceAppFocus) { - this._thumbnailTimeoutId = Mainloop.timeout_add ( + this._thumbnailTimeoutId = GLib.timeout_add( + GLib.PRIORITY_DEFAULT, THUMBNAIL_POPUP_TIME, this._timeoutPopupThumbnails.bind(this)); GLib.Source.set_name_by_id(this._thumbnailTimeoutId, '[gnome-shell] this._timeoutPopupThumbnails'); @@ -712,7 +712,7 @@ class AppSwitcher extends SwitcherPopup.SwitcherList { _onDestroy() { if (this._mouseTimeOutId != 0) - Mainloop.source_remove(this._mouseTimeOutId); + GLib.source_remove(this._mouseTimeOutId); this.icons.forEach(icon => { icon.app.disconnect(icon._stateChangedId); @@ -791,14 +791,16 @@ class AppSwitcher extends SwitcherPopup.SwitcherList { // activation when the thumbnail list is open _onItemEnter(index) { if (this._mouseTimeOutId != 0) - Mainloop.source_remove(this._mouseTimeOutId); + GLib.source_remove(this._mouseTimeOutId); if (this._altTabPopup.thumbnailsVisible) { - this._mouseTimeOutId = Mainloop.timeout_add(APP_ICON_HOVER_TIMEOUT, - () => { - this._enterItem(index); - this._mouseTimeOutId = 0; - return GLib.SOURCE_REMOVE; - }); + this._mouseTimeOutId = GLib.timeout_add( + GLib.PRIORITY_DEFAULT, + APP_ICON_HOVER_TIMEOUT, + () => { + this._enterItem(index); + this._mouseTimeOutId = 0; + return GLib.SOURCE_REMOVE; + }); GLib.Source.set_name_by_id(this._mouseTimeOutId, '[gnome-shell] this._enterItem'); } else { this._itemEntered(index); diff --git a/js/ui/animation.js b/js/ui/animation.js index 528fb8220..a1f257efc 100644 --- a/js/ui/animation.js +++ b/js/ui/animation.js @@ -2,7 +2,6 @@ /* exported Animation, AnimatedIcon, Spinner */ const { Clutter, GLib, Gio, St } = imports.gi; -const Mainloop = imports.mainloop; var ANIMATED_ICON_UPDATE_TIMEOUT = 16; var SPINNER_ANIMATION_TIME = 300; @@ -45,7 +44,7 @@ var Animation = class { stop() { if (this._timeoutId > 0) { - Mainloop.source_remove(this._timeoutId); + GLib.source_remove(this._timeoutId); this._timeoutId = 0; } diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js index f5cf549cd..6cc0e154f 100644 --- a/js/ui/appDisplay.js +++ b/js/ui/appDisplay.js @@ -3,7 +3,6 @@ const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; const Signals = imports.signals; -const Mainloop = imports.mainloop; const AppFavorites = imports.ui.appFavorites; const BoxPointer = imports.ui.boxpointer; @@ -1639,14 +1638,14 @@ var FolderIcon = class FolderIcon { _removeMenuTimeout() { if (this._popupTimeoutId > 0) { - Mainloop.source_remove(this._popupTimeoutId); + GLib.source_remove(this._popupTimeoutId); this._popupTimeoutId = 0; } } _setPopupTimeout() { this._removeMenuTimeout(); - this._popupTimeoutId = Mainloop.timeout_add(MENU_POPUP_TIMEOUT, () => { + this._popupTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, MENU_POPUP_TIMEOUT, () => { this._popupTimeoutId = 0; this._popupRenamePopup(); return GLib.SOURCE_REMOVE; @@ -2076,7 +2075,7 @@ var AppIcon = class AppIcon { _removeMenuTimeout() { if (this._menuTimeoutId > 0) { - Mainloop.source_remove(this._menuTimeoutId); + GLib.source_remove(this._menuTimeoutId); this._menuTimeoutId = 0; } } @@ -2090,7 +2089,7 @@ var AppIcon = class AppIcon { _setPopupTimeout() { this._removeMenuTimeout(); - this._menuTimeoutId = Mainloop.timeout_add(MENU_POPUP_TIMEOUT, () => { + this._menuTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, MENU_POPUP_TIMEOUT, () => { this._menuTimeoutId = 0; this.popupMenu(); return GLib.SOURCE_REMOVE; diff --git a/js/ui/components/automountManager.js b/js/ui/components/automountManager.js index 399a41986..c9ae392d5 100644 --- a/js/ui/components/automountManager.js +++ b/js/ui/components/automountManager.js @@ -2,7 +2,6 @@ /* exported Component */ const { Gio, GLib } = imports.gi; -const Mainloop = imports.mainloop; const Params = imports.misc.params; const GnomeSession = imports.misc.gnomeSession; @@ -39,7 +38,7 @@ var AutomountManager = class { this._driveDisconnectedId = this._volumeMonitor.connect('drive-disconnected', this._onDriveDisconnected.bind(this)); this._driveEjectButtonId = this._volumeMonitor.connect('drive-eject-button', this._onDriveEjectButton.bind(this)); - this._mountAllId = Mainloop.idle_add(this._startupMountAll.bind(this)); + this._mountAllId = GLib.idle_add(GLib.PRIORITY_DEFAULT, this._startupMountAll.bind(this)); GLib.Source.set_name_by_id(this._mountAllId, '[gnome-shell] this._startupMountAll'); } @@ -51,7 +50,7 @@ var AutomountManager = class { this._volumeMonitor.disconnect(this._driveEjectButtonId); if (this._mountAllId > 0) { - Mainloop.source_remove(this._mountAllId); + GLib.source_remove(this._mountAllId); this._mountAllId = 0; } } @@ -220,7 +219,7 @@ var AutomountManager = class { _onVolumeRemoved(monitor, volume) { if (volume._allowAutorunExpireId && volume._allowAutorunExpireId > 0) { - Mainloop.source_remove(volume._allowAutorunExpireId); + GLib.source_remove(volume._allowAutorunExpireId); delete volume._allowAutorunExpireId; } this._volumeQueue = @@ -249,7 +248,7 @@ var AutomountManager = class { } _allowAutorunExpire(volume) { - let id = Mainloop.timeout_add_seconds(AUTORUN_EXPIRE_TIMEOUT_SECS, () => { + let id = GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, AUTORUN_EXPIRE_TIMEOUT_SECS, () => { volume.allowAutorun = false; delete volume._allowAutorunExpireId; return GLib.SOURCE_REMOVE; diff --git a/js/ui/components/telepathyClient.js b/js/ui/components/telepathyClient.js index 71311467d..6d4915d53 100644 --- a/js/ui/components/telepathyClient.js +++ b/js/ui/components/telepathyClient.js @@ -3,7 +3,6 @@ const { Clutter, Gio, GLib, GObject, St } = imports.gi; const Lang = imports.lang; -const Mainloop = imports.mainloop; var Tpl = null; var Tp = null; @@ -546,8 +545,8 @@ var ChatSource = class extends MessageTray.Source { // Wait a bit before notifying for the received message, a handler // could ack it in the meantime. if (this._notifyTimeoutId != 0) - Mainloop.source_remove(this._notifyTimeoutId); - this._notifyTimeoutId = Mainloop.timeout_add(500, + GLib.source_remove(this._notifyTimeoutId); + this._notifyTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, 500, this._notifyTimeout.bind(this)); GLib.Source.set_name_by_id(this._notifyTimeoutId, '[gnome-shell] this._notifyTimeout'); } @@ -641,7 +640,7 @@ var ChatNotification = class extends MessageTray.Notification { destroy(reason) { if (this._timestampTimeoutId) - Mainloop.source_remove(this._timestampTimeoutId); + GLib.source_remove(this._timestampTimeoutId); this._timestampTimeoutId = 0; super.destroy(reason); } @@ -729,7 +728,7 @@ var ChatNotification = class extends MessageTray.Notification { // Reset the old message timeout if (this._timestampTimeoutId) - Mainloop.source_remove(this._timestampTimeoutId); + GLib.source_remove(this._timestampTimeoutId); this._timestampTimeoutId = 0; let message = { realMessage: props.group != 'meta', @@ -747,7 +746,8 @@ var ChatNotification = class extends MessageTray.Notification { } else { // Schedule a new timestamp in SCROLLBACK_IMMEDIATE_TIME // from the timestamp of the message. - this._timestampTimeoutId = Mainloop.timeout_add_seconds( + this._timestampTimeoutId = GLib.timeout_add_seconds( + GLib.PRIORITY_DEFAULT, SCROLLBACK_IMMEDIATE_TIME - (currentTime - timestamp), this.appendTimestamp.bind(this)); GLib.Source.set_name_by_id(this._timestampTimeoutId, '[gnome-shell] this.appendTimestamp'); @@ -952,14 +952,15 @@ var ChatNotificationBanner = class extends MessageTray.NotificationBanner { // Remove composing timeout. if (this._composingTimeoutId > 0) { - Mainloop.source_remove(this._composingTimeoutId); + GLib.source_remove(this._composingTimeoutId); this._composingTimeoutId = 0; } if (text != '') { this.notification.source.setChatState(Tp.ChannelChatState.COMPOSING); - this._composingTimeoutId = Mainloop.timeout_add_seconds( + this._composingTimeoutId = GLib.timeout_add_seconds( + GLib.PRIORITY_DEFAULT, COMPOSING_STOP_TIMEOUT, this._composingStopTimeout.bind(this)); GLib.Source.set_name_by_id(this._composingTimeoutId, '[gnome-shell] this._composingStopTimeout'); diff --git a/js/ui/dash.js b/js/ui/dash.js index c866dabbf..3d95ddab2 100644 --- a/js/ui/dash.js +++ b/js/ui/dash.js @@ -2,7 +2,6 @@ /* exported Dash */ const { Clutter, GLib, GObject, Meta, Shell, St } = imports.gi; -const Mainloop = imports.mainloop; const Signals = imports.signals; const AppDisplay = imports.ui.appDisplay; @@ -500,7 +499,7 @@ var Dash = class Dash { // that the notify::hover handler does everything we need to. if (opened) { if (this._showLabelTimeoutId > 0) { - Mainloop.source_remove(this._showLabelTimeoutId); + GLib.source_remove(this._showLabelTimeoutId); this._showLabelTimeoutId = 0; } @@ -514,7 +513,7 @@ var Dash = class Dash { if (shouldShow) { if (this._showLabelTimeoutId == 0) { let timeout = this._labelShowing ? 0 : DASH_ITEM_HOVER_TIMEOUT; - this._showLabelTimeoutId = Mainloop.timeout_add(timeout, + this._showLabelTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, timeout, () => { this._labelShowing = true; item.showLabel(); @@ -523,17 +522,17 @@ var Dash = class Dash { }); GLib.Source.set_name_by_id(this._showLabelTimeoutId, '[gnome-shell] item.showLabel'); if (this._resetHoverTimeoutId > 0) { - Mainloop.source_remove(this._resetHoverTimeoutId); + GLib.source_remove(this._resetHoverTimeoutId); this._resetHoverTimeoutId = 0; } } } else { if (this._showLabelTimeoutId > 0) - Mainloop.source_remove(this._showLabelTimeoutId); + GLib.source_remove(this._showLabelTimeoutId); this._showLabelTimeoutId = 0; item.hideLabel(); if (this._labelShowing) { - this._resetHoverTimeoutId = Mainloop.timeout_add(DASH_ITEM_HOVER_TIMEOUT, + this._resetHoverTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, DASH_ITEM_HOVER_TIMEOUT, () => { this._labelShowing = false; this._resetHoverTimeoutId = 0; diff --git a/js/ui/endSessionDialog.js b/js/ui/endSessionDialog.js index f51eb7bee..6267152f1 100644 --- a/js/ui/endSessionDialog.js +++ b/js/ui/endSessionDialog.js @@ -17,8 +17,6 @@ * along with this program; if not, see . */ -const Mainloop = imports.mainloop; - const { AccountsService, Clutter, Gio, GLib, GObject, Pango, Polkit, Shell, St } = imports.gi; @@ -565,7 +563,7 @@ class EndSessionDialog extends ModalDialog.ModalDialog { let startTime = GLib.get_monotonic_time(); this._secondsLeft = this._totalSecondsToStayOpen; - this._timerId = Mainloop.timeout_add_seconds(1, () => { + this._timerId = GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, 1, () => { let currentTime = GLib.get_monotonic_time(); let secondsElapsed = ((currentTime - startTime) / 1000000); @@ -587,7 +585,7 @@ class EndSessionDialog extends ModalDialog.ModalDialog { _stopTimer() { if (this._timerId > 0) { - Mainloop.source_remove(this._timerId); + GLib.source_remove(this._timerId); this._timerId = 0; } diff --git a/js/ui/lookingGlass.js b/js/ui/lookingGlass.js index 1143dedb5..9f692f4aa 100644 --- a/js/ui/lookingGlass.js +++ b/js/ui/lookingGlass.js @@ -3,7 +3,6 @@ const { Clutter, Cogl, Gio, GLib, GObject, Meta, Pango, Shell, St } = imports.gi; -const Mainloop = imports.mainloop; const Signals = imports.signals; const System = imports.system; @@ -20,7 +19,6 @@ const CHEVRON = '>>> '; /* Imports...feel free to add here as needed */ var commandHeader = 'const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; ' + 'const Main = imports.ui.main; ' + - 'const Mainloop = imports.mainloop; ' + /* Utility functions...we should probably be able to use these * in the shell core code too. */ 'const stage = global.stage; ' + @@ -821,7 +819,7 @@ var LookingGlass = class LookingGlass { gcIcon.connect('button-press-event', () => { gcIcon.icon_name = 'user-trash'; System.gc(); - this._timeoutId = Mainloop.timeout_add(500, () => { + this._timeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, 500, () => { gcIcon.icon_name = 'user-trash-full'; this._timeoutId = 0; return GLib.SOURCE_REMOVE; diff --git a/js/ui/magnifier.js b/js/ui/magnifier.js index 379ff5b4d..9d3ad6473 100644 --- a/js/ui/magnifier.js +++ b/js/ui/magnifier.js @@ -2,7 +2,6 @@ const { Atspi, Clutter, GDesktopEnums, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; -const Mainloop = imports.mainloop; const Signals = imports.signals; const Background = imports.ui.background; @@ -1144,7 +1143,7 @@ var ZoomRegion = class ZoomRegion { _clearScrollContentsTimer() { if (this._scrollContentsTimerId != 0) { - Mainloop.source_remove(this._scrollContentsTimerId); + GLib.source_remove(this._scrollContentsTimerId); this._scrollContentsTimerId = 0; } } @@ -1156,7 +1155,7 @@ var ZoomRegion = class ZoomRegion { } this._clearScrollContentsTimer(); - this._scrollContentsTimerId = Mainloop.timeout_add(POINTER_REST_TIME, () => { + this._scrollContentsTimerId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, POINTER_REST_TIME, () => { this._scrollContentsToDelayed(x, y); return GLib.SOURCE_REMOVE; }); diff --git a/js/ui/main.js b/js/ui/main.js index d5d18b2ce..4300dba67 100644 --- a/js/ui/main.js +++ b/js/ui/main.js @@ -9,7 +9,6 @@ initializeDeferredWork, getThemeStylesheet, setThemeStylesheet */ const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; -const Mainloop = imports.mainloop; const AccessDialog = imports.ui.accessDialog; const AudioDeviceSelection = imports.ui.audioDeviceSelection; @@ -620,7 +619,7 @@ function _runDeferredWork(workId) { _deferredWorkQueue.splice(index, 1); _deferredWorkData[workId].callback(); if (_deferredWorkQueue.length == 0 && _deferredTimeoutId > 0) { - Mainloop.source_remove(_deferredTimeoutId); + GLib.source_remove(_deferredTimeoutId); _deferredTimeoutId = 0; } } @@ -708,7 +707,7 @@ function queueDeferredWork(workId) { _queueBeforeRedraw(workId); return; } else if (_deferredTimeoutId == 0) { - _deferredTimeoutId = Mainloop.timeout_add_seconds(DEFERRED_TIMEOUT_SECONDS, () => { + _deferredTimeoutId = GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, DEFERRED_TIMEOUT_SECONDS, () => { _runAllDeferredWork(); _deferredTimeoutId = 0; return GLib.SOURCE_REMOVE; diff --git a/js/ui/messageTray.js b/js/ui/messageTray.js index 801b28818..eca670b12 100644 --- a/js/ui/messageTray.js +++ b/js/ui/messageTray.js @@ -4,7 +4,6 @@ SystemNotificationSource, MessageTray */ const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; -const Mainloop = imports.mainloop; const Signals = imports.signals; const Calendar = imports.ui.calendar; @@ -1091,7 +1090,7 @@ var MessageTray = class MessageTray { _resetNotificationLeftTimeout() { this._useLongerNotificationLeftTimeout = false; if (this._notificationLeftTimeoutId) { - Mainloop.source_remove(this._notificationLeftTimeoutId); + GLib.source_remove(this._notificationLeftTimeoutId); this._notificationLeftTimeoutId = 0; this._notificationLeftMouseX = -1; this._notificationLeftMouseY = -1; @@ -1137,7 +1136,7 @@ var MessageTray = class MessageTray { // We wait for a longer period if the notification popped up where the mouse pointer was already positioned. // That gives the user more time to mouse away from the notification and mouse back in in order to expand it. let timeout = this._useLongerNotificationLeftTimeout ? LONGER_HIDE_TIMEOUT : HIDE_TIMEOUT; - this._notificationLeftTimeoutId = Mainloop.timeout_add(timeout, this._onNotificationLeftTimeout.bind(this)); + this._notificationLeftTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, timeout, this._onNotificationLeftTimeout.bind(this)); GLib.Source.set_name_by_id(this._notificationLeftTimeoutId, '[gnome-shell] this._onNotificationLeftTimeout'); } } @@ -1166,8 +1165,10 @@ var MessageTray = class MessageTray { x < this._notificationLeftMouseX + MOUSE_LEFT_ACTOR_THRESHOLD && x > this._notificationLeftMouseX - MOUSE_LEFT_ACTOR_THRESHOLD) { this._notificationLeftMouseX = -1; - this._notificationLeftTimeoutId = Mainloop.timeout_add(LONGER_HIDE_TIMEOUT, - this._onNotificationLeftTimeout.bind(this)); + this._notificationLeftTimeoutId = GLib.timeout_add( + GLib.PRIORITY_DEFAULT, + LONGER_HIDE_TIMEOUT, + this._onNotificationLeftTimeout.bind(this)); GLib.Source.set_name_by_id(this._notificationLeftTimeoutId, '[gnome-shell] this._onNotificationLeftTimeout'); } else { this._notificationLeftTimeoutId = 0; @@ -1345,13 +1346,13 @@ var MessageTray = class MessageTray { _updateNotificationTimeout(timeout) { if (this._notificationTimeoutId) { - Mainloop.source_remove(this._notificationTimeoutId); + GLib.source_remove(this._notificationTimeoutId); this._notificationTimeoutId = 0; } if (timeout > 0) { this._notificationTimeoutId = - Mainloop.timeout_add(timeout, - this._notificationTimeout.bind(this)); + GLib.timeout_add(GLib.PRIORITY_DEFAULT, timeout, + this._notificationTimeout.bind(this)); GLib.Source.set_name_by_id(this._notificationTimeoutId, '[gnome-shell] this._notificationTimeout'); } } diff --git a/js/ui/notificationDaemon.js b/js/ui/notificationDaemon.js index 580174c65..34b149628 100644 --- a/js/ui/notificationDaemon.js +++ b/js/ui/notificationDaemon.js @@ -2,7 +2,6 @@ /* exported NotificationDaemon */ const { GdkPixbuf, Gio, GLib, Shell, St } = imports.gi; -const Mainloop = imports.mainloop; const Config = imports.misc.config; const Main = imports.ui.main; @@ -171,7 +170,7 @@ var FdoNotificationDaemon = class FdoNotificationDaemon { // Ignore replacesId since we already sent back a // NotificationClosed for that id. id = this._nextNotificationId++; - let idleId = Mainloop.idle_add(() => { + let idleId = GLib.idle_add(GLib.PRIORITY_DEFAULT, () => { this._emitNotificationClosed(id, NotificationClosedReason.DISMISSED); return GLib.SOURCE_REMOVE; }); diff --git a/js/ui/osdWindow.js b/js/ui/osdWindow.js index 0f85dce38..8c9234790 100644 --- a/js/ui/osdWindow.js +++ b/js/ui/osdWindow.js @@ -2,7 +2,6 @@ /* exported OsdWindowManager */ const { Clutter, GLib, GObject, Meta, St } = imports.gi; -const Mainloop = imports.mainloop; const BarLevel = imports.ui.barLevel; const Layout = imports.ui.layout; @@ -143,9 +142,9 @@ var OsdWindow = class { } if (this._hideTimeoutId) - Mainloop.source_remove(this._hideTimeoutId); - this._hideTimeoutId = Mainloop.timeout_add(HIDE_TIMEOUT, - this._hide.bind(this)); + GLib.source_remove(this._hideTimeoutId); + this._hideTimeoutId = GLib.timeout_add( + GLib.PRIORITY_DEFAULT, HIDE_TIMEOUT, this._hide.bind(this)); GLib.Source.set_name_by_id(this._hideTimeoutId, '[gnome-shell] this._hide'); } @@ -153,7 +152,7 @@ var OsdWindow = class { if (!this._hideTimeoutId) return; - Mainloop.source_remove(this._hideTimeoutId); + GLib.source_remove(this._hideTimeoutId); this._hide(); } diff --git a/js/ui/overview.js b/js/ui/overview.js index 49907b9d2..f8b603305 100644 --- a/js/ui/overview.js +++ b/js/ui/overview.js @@ -2,7 +2,6 @@ /* exported Overview */ const { Clutter, GLib, Meta, Shell, St } = imports.gi; -const Mainloop = imports.mainloop; const Signals = imports.signals; const Background = imports.ui.background; @@ -300,7 +299,7 @@ var Overview = class { _resetWindowSwitchTimeout() { if (this._windowSwitchTimeoutId != 0) { - Mainloop.source_remove(this._windowSwitchTimeoutId); + GLib.source_remove(this._windowSwitchTimeoutId); this._windowSwitchTimeoutId = 0; } } @@ -323,7 +322,9 @@ var Overview = class { if (targetIsWindow) { this._lastHoveredWindow = dragEvent.targetActor._delegate.metaWindow; - this._windowSwitchTimeoutId = Mainloop.timeout_add(DND_WINDOW_SWITCH_TIMEOUT, + this._windowSwitchTimeoutId = GLib.timeout_add( + GLib.PRIORITY_DEFAULT, + DND_WINDOW_SWITCH_TIMEOUT, () => { this._windowSwitchTimeoutId = 0; Main.activateWindow(dragEvent.targetActor._delegate.metaWindow, diff --git a/js/ui/panel.js b/js/ui/panel.js index b5da45432..49c0038fa 100644 --- a/js/ui/panel.js +++ b/js/ui/panel.js @@ -3,7 +3,6 @@ const { Atk, Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; const Cairo = imports.cairo; -const Mainloop = imports.mainloop; const Animation = imports.ui.animation; const Config = imports.misc.config; @@ -451,8 +450,8 @@ class ActivitiesButton extends PanelMenu.Button { return DND.DragMotionResult.CONTINUE; if (this._xdndTimeOut != 0) - Mainloop.source_remove(this._xdndTimeOut); - this._xdndTimeOut = Mainloop.timeout_add(BUTTON_DND_ACTIVATION_TIMEOUT, () => { + GLib.source_remove(this._xdndTimeOut); + this._xdndTimeOut = GLib.timeout_add(GLib.PRIORITY_DEFAULT, BUTTON_DND_ACTIVATION_TIMEOUT, () => { this._xdndToggleOverview(); }); GLib.Source.set_name_by_id(this._xdndTimeOut, '[gnome-shell] this._xdndToggleOverview'); @@ -496,7 +495,7 @@ class ActivitiesButton extends PanelMenu.Button { if (pickedActor == this && Main.overview.shouldToggleByCornerOrButton()) Main.overview.toggle(); - Mainloop.source_remove(this._xdndTimeOut); + GLib.source_remove(this._xdndTimeOut); this._xdndTimeOut = 0; return GLib.SOURCE_REMOVE; } diff --git a/js/ui/pointerWatcher.js b/js/ui/pointerWatcher.js index 6c61fe64b..9dbdcf623 100644 --- a/js/ui/pointerWatcher.js +++ b/js/ui/pointerWatcher.js @@ -2,7 +2,6 @@ /* exported getPointerWatcher */ const { GLib, Meta } = imports.gi; -const Mainloop = imports.mainloop; // We stop polling if the user is idle for more than this amount of time var IDLE_TIME = 1000; @@ -87,7 +86,7 @@ var PointerWatcher = class { _updateTimeout() { if (this._timeoutId) { - Mainloop.source_remove(this._timeoutId); + GLib.source_remove(this._timeoutId); this._timeoutId = 0; } @@ -98,8 +97,8 @@ var PointerWatcher = class { for (let i = 1; i < this._watches.length; i++) minInterval = Math.min(this._watches[i].interval, minInterval); - this._timeoutId = Mainloop.timeout_add(minInterval, - this._onTimeout.bind(this)); + this._timeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, minInterval, + this._onTimeout.bind(this)); GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._onTimeout'); } diff --git a/js/ui/screenShield.js b/js/ui/screenShield.js index 8e4fba1ee..898e999fa 100644 --- a/js/ui/screenShield.js +++ b/js/ui/screenShield.js @@ -3,7 +3,6 @@ const { AccountsService, Clutter, Cogl, Gio, GLib, GnomeDesktop, GObject, Meta, Shell, St } = imports.gi; const Cairo = imports.cairo; -const Mainloop = imports.mainloop; const Signals = imports.signals; const Background = imports.ui.background; @@ -833,12 +832,14 @@ var ScreenShield = class { let lockTimeout = Math.max( STANDARD_FADE_TIME, this._settings.get_uint(LOCK_DELAY_KEY) * 1000); - this._lockTimeoutId = Mainloop.timeout_add(lockTimeout, - () => { - this._lockTimeoutId = 0; - this.lock(false); - return GLib.SOURCE_REMOVE; - }); + this._lockTimeoutId = GLib.timeout_add( + GLib.PRIORITY_DEFAULT, + lockTimeout, + () => { + this._lockTimeoutId = 0; + this.lock(false); + return GLib.SOURCE_REMOVE; + }); GLib.Source.set_name_by_id(this._lockTimeoutId, '[gnome-shell] this.lock'); } @@ -1028,7 +1029,7 @@ var ScreenShield = class { this._arrowActiveWatchId = 0; if (!this._arrowAnimationId) { - this._arrowAnimationId = Mainloop.timeout_add(6000, this._animateArrows.bind(this)); + this._arrowAnimationId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, 6000, this._animateArrows.bind(this)); GLib.Source.set_name_by_id(this._arrowAnimationId, '[gnome-shell] this._animateArrows'); this._animateArrows(); } @@ -1040,7 +1041,7 @@ var ScreenShield = class { _pauseArrowAnimation() { if (this._arrowAnimationId) { - Mainloop.source_remove(this._arrowAnimationId); + GLib.source_remove(this._arrowAnimationId); this._arrowAnimationId = 0; } @@ -1050,7 +1051,7 @@ var ScreenShield = class { _stopArrowAnimation() { if (this._arrowAnimationId) { - Mainloop.source_remove(this._arrowAnimationId); + GLib.source_remove(this._arrowAnimationId); this._arrowAnimationId = 0; } if (this._arrowActiveWatchId) { @@ -1097,7 +1098,7 @@ var ScreenShield = class { if (params.fadeToBlack && params.animateFade) { // Take a beat - let id = Mainloop.timeout_add(MANUAL_FADE_TIME, () => { + let id = GLib.timeout_add(GLib.PRIORITY_DEFAULT, MANUAL_FADE_TIME, () => { this._activateFade(this._shortLightbox, MANUAL_FADE_TIME); return GLib.SOURCE_REMOVE; }); @@ -1240,7 +1241,7 @@ var ScreenShield = class { } if (this._lockTimeoutId != 0) { - Mainloop.source_remove(this._lockTimeoutId); + GLib.source_remove(this._lockTimeoutId); this._lockTimeoutId = 0; } diff --git a/js/ui/scripting.js b/js/ui/scripting.js index 5e779e6a8..7a14fcf55 100644 --- a/js/ui/scripting.js +++ b/js/ui/scripting.js @@ -4,7 +4,6 @@ collectStatistics, runPerfScript */ const { Gio, GLib, Meta, Shell } = imports.gi; -const Mainloop = imports.mainloop; const Main = imports.ui.main; const Params = imports.misc.params; @@ -41,7 +40,7 @@ const { loadInterfaceXML } = imports.misc.fileUtils; */ function sleep(milliseconds) { return new Promise(resolve => { - let id = Mainloop.timeout_add(milliseconds, () => { + let id = GLib.timeout_add(GLib.PRIORITY_DEFAULT, milliseconds, () => { resolve(); return GLib.SOURCE_REMOVE; }); diff --git a/js/ui/sessionMode.js b/js/ui/sessionMode.js index f8b38f609..583780111 100644 --- a/js/ui/sessionMode.js +++ b/js/ui/sessionMode.js @@ -2,7 +2,6 @@ /* exported SessionMode, listModes */ const GLib = imports.gi.GLib; -const Mainloop = imports.mainloop; const Signals = imports.signals; const FileUtils = imports.misc.fileUtils; @@ -141,15 +140,16 @@ function _loadModes() { function listModes() { _loadModes(); - let id = Mainloop.idle_add(() => { + let loop = new GLib.MainLoop(null, false); + let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, () => { let names = Object.getOwnPropertyNames(_modes); for (let i = 0; i < names.length; i++) if (_modes[names[i]].isPrimary) print(names[i]); - Mainloop.quit('listModes'); + loop.quit(); }); GLib.Source.set_name_by_id(id, '[gnome-shell] listModes'); - Mainloop.run('listModes'); + loop.run(); } var SessionMode = class { diff --git a/js/ui/status/accessibility.js b/js/ui/status/accessibility.js index ad2c2b406..56d7802b3 100644 --- a/js/ui/status/accessibility.js +++ b/js/ui/status/accessibility.js @@ -2,7 +2,6 @@ /* exported ATIndicator */ const { Gio, GLib, GObject, St } = imports.gi; -const Mainloop = imports.mainloop; const PanelMenu = imports.ui.panelMenu; const PopupMenu = imports.ui.popupMenu; @@ -96,7 +95,7 @@ class ATIndicator extends PanelMenu.Button { if (this._syncMenuVisibilityIdle) return; - this._syncMenuVisibilityIdle = Mainloop.idle_add(this._syncMenuVisibility.bind(this)); + this._syncMenuVisibilityIdle = GLib.idle_add(GLib.PRIORITY_DEFAULT, this._syncMenuVisibility.bind(this)); GLib.Source.set_name_by_id(this._syncMenuVisibilityIdle, '[gnome-shell] this._syncMenuVisibility'); } diff --git a/js/ui/status/network.js b/js/ui/status/network.js index 4bb012d88..93f95a226 100644 --- a/js/ui/status/network.js +++ b/js/ui/status/network.js @@ -1,7 +1,6 @@ // -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*- /* exported NMApplet */ const { Clutter, Gio, GLib, GObject, NM, St } = imports.gi; -const Mainloop = imports.mainloop; const Signals = imports.signals; const Animation = imports.ui.animation; @@ -719,7 +718,7 @@ class NMWirelessDialog extends ModalDialog.ModalDialog { this._updateSensitivity(); this._syncView(); - this._scanTimeoutId = Mainloop.timeout_add_seconds(15, this._onScanTimeout.bind(this)); + this._scanTimeoutId = GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, 15, this._onScanTimeout.bind(this)); GLib.Source.set_name_by_id(this._scanTimeoutId, '[gnome-shell] this._onScanTimeout'); this._onScanTimeout(); @@ -757,7 +756,7 @@ class NMWirelessDialog extends ModalDialog.ModalDialog { } if (this._scanTimeoutId) { - Mainloop.source_remove(this._scanTimeoutId); + GLib.source_remove(this._scanTimeoutId); this._scanTimeoutId = 0; } } diff --git a/js/ui/switcherPopup.js b/js/ui/switcherPopup.js index c311026c3..9bb690c6e 100644 --- a/js/ui/switcherPopup.js +++ b/js/ui/switcherPopup.js @@ -2,7 +2,6 @@ /* exported SwitcherPopup, SwitcherList */ const { Clutter, GLib, GObject, Meta, St } = imports.gi; -const Mainloop = imports.mainloop; const Main = imports.ui.main; @@ -142,13 +141,15 @@ var SwitcherPopup = GObject.registerClass({ // We delay showing the popup so that fast Alt+Tab users aren't // disturbed by the popup briefly flashing. - this._initialDelayTimeoutId = Mainloop.timeout_add(POPUP_DELAY_TIMEOUT, - () => { - Main.osdWindowManager.hideAll(); - this.opacity = 255; - this._initialDelayTimeoutId = 0; - return GLib.SOURCE_REMOVE; - }); + this._initialDelayTimeoutId = GLib.timeout_add( + GLib.PRIORITY_DEFAULT, + POPUP_DELAY_TIMEOUT, + () => { + Main.osdWindowManager.hideAll(); + this.opacity = 255; + this._initialDelayTimeoutId = 0; + return GLib.SOURCE_REMOVE; + }); GLib.Source.set_name_by_id(this._initialDelayTimeoutId, '[gnome-shell] Main.osdWindow.cancel'); return true; } @@ -249,9 +250,9 @@ var SwitcherPopup = GObject.registerClass({ this.mouseActive = false; if (this._motionTimeoutId != 0) - Mainloop.source_remove(this._motionTimeoutId); + GLib.source_remove(this._motionTimeoutId); - this._motionTimeoutId = Mainloop.timeout_add(DISABLE_HOVER_TIMEOUT, this._mouseTimedOut.bind(this)); + this._motionTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, DISABLE_HOVER_TIMEOUT, this._mouseTimedOut.bind(this)); GLib.Source.set_name_by_id(this._motionTimeoutId, '[gnome-shell] this._mouseTimedOut'); } @@ -263,14 +264,16 @@ var SwitcherPopup = GObject.registerClass({ _resetNoModsTimeout() { if (this._noModsTimeoutId != 0) - Mainloop.source_remove(this._noModsTimeoutId); + GLib.source_remove(this._noModsTimeoutId); - this._noModsTimeoutId = Mainloop.timeout_add(NO_MODS_TIMEOUT, - () => { - this._finish(global.get_current_time()); - this._noModsTimeoutId = 0; - return GLib.SOURCE_REMOVE; - }); + this._noModsTimeoutId = GLib.timeout_add( + GLib.PRIORITY_DEFAULT, + NO_MODS_TIMEOUT, + () => { + this._finish(global.get_current_time()); + this._noModsTimeoutId = 0; + return GLib.SOURCE_REMOVE; + }); } _popModal() { @@ -302,11 +305,11 @@ var SwitcherPopup = GObject.registerClass({ this._popModal(); if (this._motionTimeoutId != 0) - Mainloop.source_remove(this._motionTimeoutId); + GLib.source_remove(this._motionTimeoutId); if (this._initialDelayTimeoutId != 0) - Mainloop.source_remove(this._initialDelayTimeoutId); + GLib.source_remove(this._initialDelayTimeoutId); if (this._noModsTimeoutId != 0) - Mainloop.source_remove(this._noModsTimeoutId); + GLib.source_remove(this._noModsTimeoutId); } _select(num) { diff --git a/js/ui/windowManager.js b/js/ui/windowManager.js index ca9c31fd6..7559b6f30 100644 --- a/js/ui/windowManager.js +++ b/js/ui/windowManager.js @@ -2,7 +2,6 @@ /* exported WindowManager */ const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; -const Mainloop = imports.mainloop; const Signals = imports.signals; const AltTab = imports.ui.altTab; @@ -71,13 +70,13 @@ class DisplayChangeDialog extends ModalDialog.ModalDialog { action: this._onSuccess.bind(this), default: true }); - this._timeoutId = Mainloop.timeout_add(ONE_SECOND, this._tick.bind(this)); + this._timeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, ONE_SECOND, this._tick.bind(this)); GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._tick'); } close(timestamp) { if (this._timeoutId > 0) { - Mainloop.source_remove(this._timeoutId); + GLib.source_remove(this._timeoutId); this._timeoutId = 0; } @@ -281,9 +280,9 @@ var WorkspaceTracker = class { keepWorkspaceAlive(workspace, duration) { if (workspace._keepAliveId) - Mainloop.source_remove(workspace._keepAliveId); + GLib.source_remove(workspace._keepAliveId); - workspace._keepAliveId = Mainloop.timeout_add(duration, () => { + workspace._keepAliveId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, duration, () => { workspace._keepAliveId = 0; this._queueCheckWorkspaces(); return GLib.SOURCE_REMOVE; @@ -294,7 +293,7 @@ var WorkspaceTracker = class { _windowRemoved(workspace, window) { workspace._lastRemovedWindow = window; this._queueCheckWorkspaces(); - let id = Mainloop.timeout_add(LAST_WINDOW_GRACE_TIME, () => { + let id = GLib.timeout_add(GLib.PRIORITY_DEFAULT, LAST_WINDOW_GRACE_TIME, () => { if (workspace._lastRemovedWindow == window) { workspace._lastRemovedWindow = null; this._queueCheckWorkspaces(); diff --git a/js/ui/workspace.js b/js/ui/workspace.js index a8f57fd17..d866e843f 100644 --- a/js/ui/workspace.js +++ b/js/ui/workspace.js @@ -2,7 +2,6 @@ /* exported Workspace */ const { Atk, Clutter, GLib, GObject, Meta, Pango, Shell, St } = imports.gi; -const Mainloop = imports.mainloop; const Signals = imports.signals; const DND = imports.ui.dnd; @@ -636,7 +635,7 @@ var WindowOverlay = class { _onDestroy() { if (this._idleHideOverlayId > 0) { - Mainloop.source_remove(this._idleHideOverlayId); + GLib.source_remove(this._idleHideOverlayId); this._idleHideOverlayId = 0; } this._windowClone.metaWindow.disconnect(this._updateCaptionId); @@ -688,7 +687,7 @@ var WindowOverlay = class { _onHideChrome() { if (this._idleHideOverlayId == 0) { - this._idleHideOverlayId = Mainloop.timeout_add(WINDOW_OVERLAY_IDLE_HIDE_TIMEOUT, this._idleHideOverlay.bind(this)); + this._idleHideOverlayId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, WINDOW_OVERLAY_IDLE_HIDE_TIMEOUT, this._idleHideOverlay.bind(this)); GLib.Source.set_name_by_id(this._idleHideOverlayId, '[gnome-shell] this._idleHideOverlay'); } } @@ -705,7 +704,7 @@ var WindowOverlay = class { hideOverlay() { if (this._idleHideOverlayId > 0) { - Mainloop.source_remove(this._idleHideOverlayId); + GLib.source_remove(this._idleHideOverlayId); this._idleHideOverlayId = 0; } this.closeButton.hide(); @@ -1269,7 +1268,7 @@ var Workspace = class { _realRecalculateWindowPositions(flags) { if (this._repositionWindowsId > 0) { - Mainloop.source_remove(this._repositionWindowsId); + GLib.source_remove(this._repositionWindowsId); this._repositionWindowsId = 0; } @@ -1479,7 +1478,7 @@ var Workspace = class { // remove old handler if (this._repositionWindowsId > 0) { - Mainloop.source_remove(this._repositionWindowsId); + GLib.source_remove(this._repositionWindowsId); this._repositionWindowsId = 0; } @@ -1489,7 +1488,7 @@ var Workspace = class { this._cursorY = y; this._currentLayout = null; - this._repositionWindowsId = Mainloop.timeout_add(WINDOW_REPOSITIONING_DELAY, + this._repositionWindowsId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, WINDOW_REPOSITIONING_DELAY, this._delayedWindowRepositioning.bind(this)); GLib.Source.set_name_by_id(this._repositionWindowsId, '[gnome-shell] this._delayedWindowRepositioning'); } @@ -1503,7 +1502,7 @@ var Workspace = class { if (!win) { // Newly-created windows are added to a workspace before // the compositor finds out about them... - let id = Mainloop.idle_add(() => { + let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, () => { if (this.actor && metaWin.get_compositor_private() && metaWin.get_workspace() == this.metaWorkspace) @@ -1649,7 +1648,7 @@ var Workspace = class { this._windows[i].remove_all_transitions(); if (this._repositionWindowsId > 0) { - Mainloop.source_remove(this._repositionWindowsId); + GLib.source_remove(this._repositionWindowsId); this._repositionWindowsId = 0; } @@ -1734,7 +1733,7 @@ var Workspace = class { this._windows[i].remove_all_transitions(); if (this._repositionWindowsId > 0) { - Mainloop.source_remove(this._repositionWindowsId); + GLib.source_remove(this._repositionWindowsId); this._repositionWindowsId = 0; } this._overviewHiddenId = Main.overview.connect('hidden', this._doneLeavingOverview.bind(this)); @@ -1795,7 +1794,7 @@ var Workspace = class { global.display.disconnect(this._windowLeftMonitorId); if (this._repositionWindowsId > 0) { - Mainloop.source_remove(this._repositionWindowsId); + GLib.source_remove(this._repositionWindowsId); this._repositionWindowsId = 0; } diff --git a/js/ui/workspaceSwitcherPopup.js b/js/ui/workspaceSwitcherPopup.js index d5519fa8b..ee2ea92ad 100644 --- a/js/ui/workspaceSwitcherPopup.js +++ b/js/ui/workspaceSwitcherPopup.js @@ -2,7 +2,6 @@ /* exported WorkspaceSwitcherPopup */ const { Clutter, GLib, GObject, Meta, St } = imports.gi; -const Mainloop = imports.mainloop; const Main = imports.ui.main; @@ -195,14 +194,14 @@ class WorkspaceSwitcherPopup extends St.Widget { this._redisplay(); if (this._timeoutId != 0) - Mainloop.source_remove(this._timeoutId); - this._timeoutId = Mainloop.timeout_add(DISPLAY_TIMEOUT, this._onTimeout.bind(this)); + GLib.source_remove(this._timeoutId); + this._timeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, DISPLAY_TIMEOUT, this._onTimeout.bind(this)); GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._onTimeout'); this._show(); } _onTimeout() { - Mainloop.source_remove(this._timeoutId); + GLib.source_remove(this._timeoutId); this._timeoutId = 0; this._container.ease({ opacity: 0.0, @@ -215,7 +214,7 @@ class WorkspaceSwitcherPopup extends St.Widget { _onDestroy() { if (this._timeoutId) - Mainloop.source_remove(this._timeoutId); + GLib.source_remove(this._timeoutId); this._timeoutId = 0; let workspaceManager = global.workspace_manager; diff --git a/js/ui/workspaceThumbnail.js b/js/ui/workspaceThumbnail.js index fd60c31d2..0c9bed12a 100644 --- a/js/ui/workspaceThumbnail.js +++ b/js/ui/workspaceThumbnail.js @@ -2,7 +2,6 @@ /* exported WorkspaceThumbnail, ThumbnailsBox */ const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; -const Mainloop = imports.mainloop; const Signals = imports.signals; const Background = imports.ui.background; @@ -389,7 +388,7 @@ var WorkspaceThumbnail = GObject.registerClass({ if (!win) { // Newly-created windows are added to a workspace before // the compositor finds out about them... - let id = Mainloop.idle_add(() => { + let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, () => { if (!this._removed && metaWin.get_compositor_private() && metaWin.get_workspace() == this.metaWorkspace) diff --git a/tests/interactive/box-shadow-animated.js b/tests/interactive/box-shadow-animated.js index 5facee3dc..cf117a7f3 100644 --- a/tests/interactive/box-shadow-animated.js +++ b/tests/interactive/box-shadow-animated.js @@ -3,7 +3,6 @@ const UI = imports.testcommon.ui; const { Clutter, GLib, St } = imports.gi; -const Mainloop = imports.mainloop; const DELAY = 2000; @@ -59,14 +58,14 @@ function test() { resize_animated(label1); resize_animated(label2); - Mainloop.timeout_add(DELAY, () => { + GLib.timeout_add(GLib.PRIORITY_DEFAULT, DELAY, () => { log(label1 + label1.get_size()); resize_animated(label1); resize_animated(label2); return true; }); - Mainloop.timeout_add(2 * DELAY, () => { + GLib.timeout_add(GLib.PRIORITY_DEFAULT, 2 * DELAY, () => { iter += 1; iter %= shadowStyles.length; label1.set_style(get_css_style(shadowStyles[iter])); diff --git a/tests/interactive/entry.js b/tests/interactive/entry.js index 2f0abeab1..9ae010604 100644 --- a/tests/interactive/entry.js +++ b/tests/interactive/entry.js @@ -2,8 +2,7 @@ const UI = imports.testcommon.ui; -const { Clutter, St } = imports.gi; -const Mainloop = imports.mainloop; +const { Clutter, GLib, St } = imports.gi; function test() { let stage = new Clutter.Stage({ width: 400, height: 400 }); @@ -39,7 +38,7 @@ function test() { let entryHintBoth = new St.Entry({ style: 'border: 1px solid black; text-shadow: 0 2px red;', hint_actor: hintActor2 }); let idx = 0; - Mainloop.timeout_add_seconds(1, function() { + GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, 1, function() { idx++; if (idx % 2 == 0) diff --git a/tests/interactive/test-title.js b/tests/interactive/test-title.js index 9df90218a..0a468ddd5 100755 --- a/tests/interactive/test-title.js +++ b/tests/interactive/test-title.js @@ -2,8 +2,7 @@ imports.gi.versions.Gtk = '3.0'; -const Gtk = imports.gi.Gtk; -const Mainloop = imports.mainloop; +const { GLib, Gtk } = imports.gi; function nextTitle() { let length = Math.random() * 20; @@ -26,7 +25,7 @@ function main() { }); win.present(); - Mainloop.timeout_add(5000, function() { + GLib.timeout_add(GLib.PRIORITY_DEFAULT, 5000, function() { win.title = nextTitle(); return true; });