Consolidate window tracking filters between app monitor and overview.
The windows we considered for both the app monitor and the overview workspaces were the same, but the code was duplicated once in C, once in Javascript.
This commit is contained in:
parent
3d499219da
commit
bcc3dc0711
@ -745,11 +745,8 @@ Workspace.prototype = {
|
||||
|
||||
// Tests if @win should be shown in the Overview
|
||||
_isOverviewWindow : function (win) {
|
||||
let wintype = win.get_window_type();
|
||||
if (wintype == Meta.WindowType.DESKTOP ||
|
||||
wintype == Meta.WindowType.DOCK)
|
||||
return false;
|
||||
return !win.is_override_redirect();
|
||||
let appMon = Shell.AppMonitor.get_default()
|
||||
return appMon.is_window_usage_tracked(win.get_meta_window());
|
||||
},
|
||||
|
||||
_createWindowIcon: function(window) {
|
||||
|
@ -345,7 +345,7 @@ window_is_tracked (MetaWindow *window)
|
||||
}
|
||||
|
||||
/**
|
||||
* window_is_usage_tracked:
|
||||
* shell_app_monitor_is_window_usage_tracked:
|
||||
*
|
||||
* Determine if it makes sense to track the given window for application
|
||||
* usage. An example of a window we don't want to track is the root
|
||||
@ -358,8 +358,8 @@ window_is_tracked (MetaWindow *window)
|
||||
*
|
||||
* Returns: %TRUE iff we want to record focus time spent in this window
|
||||
*/
|
||||
static gboolean
|
||||
window_is_usage_tracked (MetaWindow *window)
|
||||
gboolean
|
||||
shell_app_monitor_is_window_usage_tracked (MetaWindow *window)
|
||||
{
|
||||
if (!window_is_tracked (window))
|
||||
return FALSE;
|
||||
@ -562,7 +562,7 @@ get_active_window (ShellAppMonitor *monitor)
|
||||
display = meta_screen_get_display (screen);
|
||||
window = meta_display_get_focus_window (display);
|
||||
|
||||
if (window != NULL && window_is_usage_tracked (window))
|
||||
if (window != NULL && shell_app_monitor_is_window_usage_tracked (window))
|
||||
return window;
|
||||
return NULL;
|
||||
}
|
||||
@ -756,7 +756,7 @@ track_window (ShellAppMonitor *self,
|
||||
* tracked it doesn't count for the purposes of an application
|
||||
* running.
|
||||
*/
|
||||
if (!window_is_usage_tracked (window))
|
||||
if (!shell_app_monitor_is_window_usage_tracked (window))
|
||||
return;
|
||||
|
||||
usage = get_app_usage_from_window (self, window);
|
||||
@ -812,7 +812,7 @@ disassociate_window (ShellAppMonitor *self,
|
||||
if (window == self->watched_window)
|
||||
self->watched_window = NULL;
|
||||
|
||||
if (window_is_usage_tracked (window))
|
||||
if (shell_app_monitor_is_window_usage_tracked (window))
|
||||
{
|
||||
AppUsage *usage;
|
||||
const char *context;
|
||||
@ -930,7 +930,7 @@ shell_app_monitor_get_windows_for_app (ShellAppMonitor *self,
|
||||
ShellAppInfo *app = value;
|
||||
const char *id = shell_app_info_get_id (app);
|
||||
|
||||
if (!window_is_usage_tracked (window))
|
||||
if (!shell_app_monitor_is_window_usage_tracked (window))
|
||||
continue;
|
||||
|
||||
if (strcmp (id, appid) != 0)
|
||||
@ -1181,7 +1181,7 @@ shell_app_monitor_get_running_apps (ShellAppMonitor *monitor,
|
||||
if (strcmp (get_window_context (window), context) != 0)
|
||||
continue;
|
||||
|
||||
if (!window_is_usage_tracked (window))
|
||||
if (!shell_app_monitor_is_window_usage_tracked (window))
|
||||
continue;
|
||||
|
||||
id = shell_app_info_get_id (app);
|
||||
|
@ -44,6 +44,8 @@ GList *shell_app_monitor_get_most_used_apps (ShellAppMonitor *monitor,
|
||||
|
||||
GSList *shell_app_monitor_get_windows_for_app (ShellAppMonitor *monitor, const char *appid);
|
||||
|
||||
gboolean shell_app_monitor_is_window_usage_tracked (MetaWindow *window);
|
||||
|
||||
/* Get whatever's running right now */
|
||||
GSList *shell_app_monitor_get_running_apps (ShellAppMonitor *monitor, const char *context);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user