From f738c2be9df300795bf7d9f44e6ac22792ef27ee Mon Sep 17 00:00:00 2001 From: "Jasper St. Pierre" Date: Mon, 14 Jan 2013 12:38:02 -0500 Subject: [PATCH] main: Remove isWindowActorDisplayedOnWorkspace We now have a convenience method in mutter. https://bugzilla.gnome.org/show_bug.cgi?id=691746 --- js/ui/main.js | 11 ++++------- js/ui/workspace.js | 7 ++++--- js/ui/workspaceThumbnail.js | 16 +++++++--------- 3 files changed, 15 insertions(+), 19 deletions(-) diff --git a/js/ui/main.js b/js/ui/main.js index a3db5936b..e97759506 100644 --- a/js/ui/main.js +++ b/js/ui/main.js @@ -472,14 +472,11 @@ function notifyError(msg, details) { notify(msg, details); } -function isWindowActorDisplayedOnWorkspace(win, workspaceIndex) { - return win.get_workspace() == workspaceIndex || - (win.get_meta_window() && win.get_meta_window().is_on_all_workspaces()); -} - function getWindowActorsForWorkspace(workspaceIndex) { - return global.get_window_actors().filter(function (win) { - return isWindowActorDisplayedOnWorkspace(win, workspaceIndex); + let workspace = global.screen.get_workspace_by_index(workspaceIndex); + return global.get_window_actors().filter(function (actor) { + let win = actor.meta_window; + return win.located_on_workspace(workspace); }); } diff --git a/js/ui/workspace.js b/js/ui/workspace.js index bea9a6197..8342b1883 100644 --- a/js/ui/workspace.js +++ b/js/ui/workspace.js @@ -1532,9 +1532,10 @@ const Workspace = new Lang.Class({ }, // Tests if @win belongs to this workspaces and monitor - _isMyWindow : function (win) { - return (this.metaWorkspace == null || Main.isWindowActorDisplayedOnWorkspace(win, this.metaWorkspace.index())) && - (!win.get_meta_window() || win.get_meta_window().get_monitor() == this.monitorIndex); + _isMyWindow : function (actor) { + let win = actor.meta_window; + return (this.metaWorkspace == null || win.located_on_workspace(this.metaWorkspace)) && + (!win.get_monitor() == this.monitorIndex); }, // Tests if @win should be shown in the Overview diff --git a/js/ui/workspaceThumbnail.js b/js/ui/workspaceThumbnail.js index b0300f603..fbdc6fb1d 100644 --- a/js/ui/workspaceThumbnail.js +++ b/js/ui/workspaceThumbnail.js @@ -176,7 +176,9 @@ const WorkspaceThumbnail = new Lang.Class({ let monitor = Main.layoutManager.primaryMonitor; this.setPorthole(monitor.x, monitor.y, monitor.width, monitor.height); - let windows = global.get_window_actors().filter(this._isWorkspaceWindow, this); + let windows = global.get_window_actors().filter(Lang.bind(this, function(win) { + return win.located_on_workspace(metaWorkspace); + })); // Create clones for windows that should be visible in the Overview this._windows = []; @@ -377,15 +379,11 @@ const WorkspaceThumbnail = new Lang.Class({ this.actor = null; }, - // Tests if @win belongs to this workspace - _isWorkspaceWindow : function (win) { - return Main.isWindowActorDisplayedOnWorkspace(win, this.metaWorkspace.index()); - }, - // Tests if @win belongs to this workspace and monitor - _isMyWindow : function (win) { - return this._isWorkspaceWindow(win) && - (!win.get_meta_window() || win.get_meta_window().get_monitor() == this.monitorIndex); + _isMyWindow : function (actor) { + let win = actor.meta_window; + return win.located_on_workspace(this.metaWorkspace) && + (!win.get_monitor() == this.monitorIndex); }, // Tests if @win should be shown in the Overview