From be4a943a4974a9c37fabbfd4afd0f698b7d6f068 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Sat, 14 Mar 2020 14:45:42 +0100 Subject: [PATCH 6/6] js: Always use AppSystem to lookup apps There is no good reason for bypassing the application cache in AppSystem and loading .desktop files again. https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1093 --- js/ui/appDisplay.js | 4 ++-- js/ui/calendar.js | 16 ++++++++++------ 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js index 3798fac57..76d05efc9 100644 --- a/js/ui/appDisplay.js +++ b/js/ui/appDisplay.js @@ -1111,8 +1111,8 @@ var AppSearchProvider = new Lang.Class({ let results = []; groups.forEach(group => { group = group.filter(appID => { - let app = Gio.DesktopAppInfo.new(appID); - return app && app.should_show(); + const app = this._appSys.lookup_app(appID); + return app && app.app_info.should_show(); }); results = results.concat(group.sort( (a, b) => usage.compare('', a, b) diff --git a/js/ui/calendar.js b/js/ui/calendar.js index 651aac610..0b2c61bf5 100644 --- a/js/ui/calendar.js +++ b/js/ui/calendar.js @@ -834,8 +834,9 @@ var EventsSection = new Lang.Class({ this._title.connect('clicked', this._onTitleClicked.bind(this)); this._title.connect('key-focus-in', this._onKeyFocusIn.bind(this)); - Shell.AppSystem.get_default().connect('installed-changed', - this._appInstalledChanged.bind(this)); + this._appSys = Shell.AppSystem.get_default(); + this._appSys.connect('installed-changed', + this._appInstalledChanged.bind(this)); this._appInstalledChanged(); }, @@ -933,10 +934,13 @@ var EventsSection = new Lang.Class({ Main.overview.hide(); Main.panel.closeCalendar(); - let app = this._getCalendarApp(); - if (app.get_id() == 'evolution.desktop') - app = Gio.DesktopAppInfo.new('evolution-calendar.desktop'); - app.launch([], global.create_app_launch_context(0, -1)); + let appInfo = this._getCalendarApp(); + if (app.get_id() == 'evolution.desktop') { + let app = this._appSys.lookup_app('evolution-calendar.desktop'); + if (app) + appInfo = app.app_info; + } + appInfo.launch([], global.create_app_launch_context(0, -1)); }, setDate(date) { -- 2.26.0