diff -Nru chrome-gnome-shell-8.2/CMakeLists.txt chrome-gnome-shell-8.2.1/CMakeLists.txt --- chrome-gnome-shell-8.2/CMakeLists.txt 2017-03-02 19:44:02.000000000 +0000 +++ chrome-gnome-shell-8.2.1/CMakeLists.txt 2017-03-24 15:35:06.000000000 +0000 @@ -9,7 +9,7 @@ endif(NOT DEFINED CMAKE_SIZEOF_VOID_P) # Variables -set(PROJECT_VERSION "8.2") +set(PROJECT_VERSION "8.2.1") set(ARCHIVE_NAME ${CMAKE_PROJECT_NAME}-${PROJECT_VERSION}) set(ARCHIVE_FULL_NAME ${ARCHIVE_NAME}.tar.xz) diff -Nru chrome-gnome-shell-8.2/debian/changelog chrome-gnome-shell-8.2.1/debian/changelog --- chrome-gnome-shell-8.2/debian/changelog 2017-03-27 16:06:55.000000000 +0000 +++ chrome-gnome-shell-8.2.1/debian/changelog 2017-03-28 12:44:20.000000000 +0000 @@ -1,52 +1,31 @@ -chrome-gnome-shell (8.2-0ubuntu2) zesty; urgency=medium +chrome-gnome-shell (8.2.1-1ubuntu1) zesty; urgency=medium - * Add git_fix-messaging-for-firefox54.patch: - - Make compatible with Firefox 54+ - * Add git_handle-gnome-shell-not-running.patch: - - Don't show error popup when gnome-shell isn't running (LP: #1671572) - - -- Jeremy Bicha Mon, 27 Mar 2017 12:06:55 -0400 - -chrome-gnome-shell (8.2-0ubuntu1) zesty; urgency=medium - - * New upstream release - * Drop patches applied in new release - - -- Jeremy Bicha Tue, 07 Mar 2017 14:33:37 -0500 - -chrome-gnome-shell (8-2ubuntu4) zesty; urgency=medium - - * Add patches from Debian 8-3 (cherrypicked from upstream 8.1) to fix - crashes (LP: #1660063) - - array-duplicates.patch - - assume-version-1.patch - - dont-use-get_dbus_connection.patch - - -- Jeremy Bicha Thu, 23 Feb 2017 23:03:57 -0500 - -chrome-gnome-shell (8-2ubuntu3) zesty; urgency=medium - - * Don't try to use alternate Enhances + * Sync with Debian. Remaining changes: + - Only apply debian-distribution.patch on Debian since it's not needed + on Ubuntu and breaks integration with the official Google Chrome + (Closes: #840804) + - Add git_handle-gnome-shell-not-running.patch: + + Don't show error popup when gnome-shell isn't running (LP: #1671572) - -- Jeremy Bicha Sun, 15 Jan 2017 16:07:31 -0500 + -- Jeremy Bicha Tue, 28 Mar 2017 08:44:20 -0400 -chrome-gnome-shell (8-2ubuntu2) zesty; urgency=medium +chrome-gnome-shell (8.2.1-1) experimental; urgency=medium - * debian/control, debian/rules: Use python3 instead of python - (Closes: #851479) - * Update description and README.Debian now that Firefox is - also supported + * Update description and add pointers to browser extension. + Thanks to Jeremy Bicha (Closes: #851479) + * Really build for Python3. Thanks to Jeremy Bicha + * Fix typo in spelling. Thanks Michael Biebl + * New upstream version 8.2.1 + * Drop patches, new upstream release - -- Jeremy Bicha Sun, 15 Jan 2017 14:42:14 -0500 + -- Ritesh Raj Sarraf Tue, 28 Mar 2017 17:26:46 +0530 -chrome-gnome-shell (8-2ubuntu1) zesty; urgency=medium +chrome-gnome-shell (8-3) unstable; urgency=medium - * Sync with Debian (LP: #1652537). Remaining change: - - Only apply debian-distribution.patch on Debian since it's not needed - on Ubuntu and breaks integration with the official Google Chrome - (Closes: #840804) + * [0f30fa7] Cherry pick fixes from upstream, fixing crashes and + exceptions - -- Jeremy Bicha Sun, 15 Jan 2017 05:51:51 -0500 + -- Ritesh Raj Sarraf Tue, 24 Jan 2017 22:46:42 +0530 chrome-gnome-shell (8-2) unstable; urgency=medium diff -Nru chrome-gnome-shell-8.2/debian/patches/array-duplicates.patch chrome-gnome-shell-8.2.1/debian/patches/array-duplicates.patch --- chrome-gnome-shell-8.2/debian/patches/array-duplicates.patch 1970-01-01 00:00:00.000000000 +0000 +++ chrome-gnome-shell-8.2.1/debian/patches/array-duplicates.patch 2017-03-28 12:44:20.000000000 +0000 @@ -0,0 +1,29 @@ +From 1de3c56c636adfdb74970bf9d7a5424af3830d92 Mon Sep 17 00:00:00 2001 +From: Yuri Konotopov +Date: Mon, 23 Jan 2017 19:43:30 +0400 +Subject: [PATCH] connector: assume that "enabled-extensions" array can + contains duplicates + +See-Also: https://bugzilla.gnome.org/show_bug.cgi?id=777650 +Fixes: https://github.com/nE0sIghT/chrome-gnome-shell-mirror/issues/26 +--- + connector/chrome-gnome-shell.py | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/connector/chrome-gnome-shell.py b/connector/chrome-gnome-shell.py +index 719a347..0b92d83 100755 +--- a/connector/chrome-gnome-shell.py ++++ b/connector/chrome-gnome-shell.py +@@ -424,9 +424,10 @@ def process_request(self, request): + continue + + if extension['enable']: +- uuids.append(extension['uuid']) ++ if not extension['uuid'] in uuids: ++ uuids.append(extension['uuid']) + elif extension['uuid'] in uuids: +- uuids.remove(extension['uuid']) ++ uuids = [value for value in uuids if value != extension['uuid']] + + settings.set_strv(ENABLED_EXTENSIONS_KEY, uuids) + diff -Nru chrome-gnome-shell-8.2/debian/patches/assume-version-1.patch chrome-gnome-shell-8.2.1/debian/patches/assume-version-1.patch --- chrome-gnome-shell-8.2/debian/patches/assume-version-1.patch 1970-01-01 00:00:00.000000000 +0000 +++ chrome-gnome-shell-8.2.1/debian/patches/assume-version-1.patch 2017-03-28 12:44:20.000000000 +0000 @@ -0,0 +1,25 @@ +From 48ded6911e60fb8415190b252ca420b994e6c525 Mon Sep 17 00:00:00 2001 +From: Yuri Konotopov +Date: Mon, 23 Jan 2017 22:29:12 +0400 +Subject: [PATCH] connector: assume version 1 for extensions without version in + metadata + +Bug: https://github.com/nE0sIghT/chrome-gnome-shell-mirror/issues/27 +See-Also: https://git.gnome.org/browse/extensions-web/commit/?id=214f03ee90f0f391d3d4fdec23feedf45e3d0507 +--- + connector/chrome-gnome-shell.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/connector/chrome-gnome-shell.py b/connector/chrome-gnome-shell.py +index 0b92d83..0f6e5f1 100755 +--- a/connector/chrome-gnome-shell.py ++++ b/connector/chrome-gnome-shell.py +@@ -506,7 +506,7 @@ def check_update(self, update_url): + http_request['installed'][uuid] = { + 'version': int(extensions[uuid]['version']) + } +- except ValueError: ++ except (ValueError, KeyError): + http_request['installed'][uuid] = { + 'version': 1 + } diff -Nru chrome-gnome-shell-8.2/debian/patches/debian.series chrome-gnome-shell-8.2.1/debian/patches/debian.series --- chrome-gnome-shell-8.2/debian/patches/debian.series 2017-03-27 16:06:55.000000000 +0000 +++ chrome-gnome-shell-8.2.1/debian/patches/debian.series 2017-03-28 12:44:20.000000000 +0000 @@ -1,2 +1,3 @@ relax-chromium-policy.patch debian-distribution.patch +git_handle-gnome-shell-not-running.patch diff -Nru chrome-gnome-shell-8.2/debian/patches/dont-use-get_dbus_connection.patch chrome-gnome-shell-8.2.1/debian/patches/dont-use-get_dbus_connection.patch --- chrome-gnome-shell-8.2/debian/patches/dont-use-get_dbus_connection.patch 1970-01-01 00:00:00.000000000 +0000 +++ chrome-gnome-shell-8.2.1/debian/patches/dont-use-get_dbus_connection.patch 2017-03-28 12:44:20.000000000 +0000 @@ -0,0 +1,88 @@ +From dca4a3538f86d8e2e957945a691430573192716d Mon Sep 17 00:00:00 2001 +From: Yuri Konotopov +Date: Tue, 24 Jan 2017 19:42:19 +0400 +Subject: [PATCH] connector: do not use get_dbus_connection after GApplication + was released. + +Fixes: https://github.com/nE0sIghT/chrome-gnome-shell-mirror/issues/27 +--- + connector/chrome-gnome-shell.py | 22 +++++++++++++--------- + 1 file changed, 13 insertions(+), 9 deletions(-) + +diff --git a/connector/chrome-gnome-shell.py b/connector/chrome-gnome-shell.py +index 0f6e5f1..ac6740a 100755 +--- a/connector/chrome-gnome-shell.py ++++ b/connector/chrome-gnome-shell.py +@@ -106,21 +106,26 @@ def __init__(self, run_as_service): + self.hold() + + # Is there any way to hook this to shutdown? +- def cleanup(self): +- debug('Cleanup') ++ def clean_release(self): ++ debug('Release') + + if self.shellAppearedId: + Gio.bus_unwatch_name(self.shellAppearedId) + + if self.shellSignalId: +- self.get_dbus_connection().signal_unsubscribe(self.shellSignalId) ++ dbus_connection = self.get_dbus_connection() ++ ++ if dbus_connection is not None: ++ dbus_connection.signal_unsubscribe(self.shellSignalId) ++ ++ self.release() + + def default_exception_hook(self, exception_type, value, tb): + log_error("Uncaught exception of type %s occured" % exception_type) + traceback.print_tb(tb) + log_error("Exception: %s" % value) + +- self.release() ++ self.clean_release() + + def add_simple_action(self, name, callback, parameter_type): + action = Gio.SimpleAction.new( +@@ -191,7 +196,7 @@ def on_notification_clicked(self, notification, notification_name): + # noinspection PyUnusedLocal + def on_service_timeout(self, data): + debug('On service timeout') +- self.release() ++ self.clean_release() + + return False + +@@ -203,7 +208,7 @@ def on_input(self, source, condition, data): + + if len(text_length_bytes) == 0: + debug('Release condition: %s' % str(condition)) +- self.release() ++ self.clean_release() + return + + # Unpack message length as 4 byte integer. +@@ -255,14 +260,14 @@ def on_shell_appeared(self, connection, name, name_owner): + # noinspection PyUnusedLocal + def on_hup(self, source, condition, data): + debug('On hup: %s' % str(condition)) +- self.release() ++ self.clean_release() + + return False + + # noinspection PyUnusedLocal + def on_sigint(self, data): + debug('On sigint') +- self.release() ++ self.clean_release() + + return False + +@@ -545,6 +550,5 @@ def check_update(self, update_url): + app = ChromeGNOMEShell('--gapplication-service' in sys.argv) + + app.run(sys.argv) +- app.cleanup() + + debug('Quit') diff -Nru chrome-gnome-shell-8.2/debian/patches/git_fix-messaging-for-firefox54.patch chrome-gnome-shell-8.2.1/debian/patches/git_fix-messaging-for-firefox54.patch --- chrome-gnome-shell-8.2/debian/patches/git_fix-messaging-for-firefox54.patch 2017-03-27 16:06:55.000000000 +0000 +++ chrome-gnome-shell-8.2.1/debian/patches/git_fix-messaging-for-firefox54.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,53 +0,0 @@ -From 7d99523e90805cb65027cc2f5f1191a957dcf276 Mon Sep 17 00:00:00 2001 -From: Yuri Konotopov -Date: Fri, 24 Mar 2017 00:53:50 +0400 -Subject: compat: fixed external messaging for Firefox 54. - -In Firefox 54 runtime.onMessageExternal was implemented, however external -messaging still in progress. -Make sure that compatibility code is used for Firefox 54+ instead of -native runtime.onMessageExternal. -Also runtime.id is differs from i18n.getMessage('@@extension_id') in -Firefox so make sure to use first one. - -Fixes: https://github.com/nE0sIghT/chrome-gnome-shell-mirror/issues/52 -Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=780393 ---- - extension/include/compat-common.js | 2 +- - extension/include/compat-content-script.js | 2 +- - extension/include/constants.js | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - ---- a/extension/include/compat-common.js -+++ b/extension/include/compat-common.js -@@ -32,7 +32,7 @@ if(typeof(chrome.runtime.onInstalled) == - COMPAT.ON_INSTALLED = false; - } - --if(typeof(chrome.runtime.onMessageExternal) === 'undefined') -+if(COMPAT.IS_FIREFOX) - { - chrome.runtime.onMessageExternal = { - addListener: chrome.runtime.onMessage.addListener ---- a/extension/include/compat-content-script.js -+++ b/extension/include/compat-content-script.js -@@ -15,7 +15,7 @@ if(COMPAT.IS_FIREFOX) - var externalMessaging = { - runtime: { - sendMessage: function (extensionId, message, options, responseCallback) { -- if(extensionId !== chrome.i18n.getMessage('@@extension_id')) -+ if(extensionId !== chrome.runtime.id) - { - console.error('Wrong extension id provided.') - return; ---- a/extension/include/constants.js -+++ b/extension/include/constants.js -@@ -8,7 +8,7 @@ - (at your option) any later version. - */ - --GS_CHROME_ID = chrome.i18n.getMessage('@@extension_id'); -+GS_CHROME_ID = chrome.runtime.id; - PLATFORMS_WHITELIST = ["linux", "openbsd"]; - - COMPAT = { diff -Nru chrome-gnome-shell-8.2/debian/patches/series chrome-gnome-shell-8.2.1/debian/patches/series --- chrome-gnome-shell-8.2/debian/patches/series 2017-03-27 16:06:55.000000000 +0000 +++ chrome-gnome-shell-8.2.1/debian/patches/series 2017-03-28 12:44:20.000000000 +0000 @@ -1,3 +1,3 @@ relax-chromium-policy.patch git_handle-gnome-shell-not-running.patch -git_fix-messaging-for-firefox54.patch + diff -Nru chrome-gnome-shell-8.2/extension/include/compat-common.js chrome-gnome-shell-8.2.1/extension/include/compat-common.js --- chrome-gnome-shell-8.2/extension/include/compat-common.js 2017-03-02 19:44:02.000000000 +0000 +++ chrome-gnome-shell-8.2.1/extension/include/compat-common.js 2017-03-24 15:35:06.000000000 +0000 @@ -10,29 +10,11 @@ /* global chrome, COMPAT */ -COMPAT.ON_INSTALLED = true; -COMPAT.ON_STARTUP = true; COMPAT.PERMISSIONS_CONTAINS = true; COMPAT.SYNC_STORAGE = (!COMPAT.IS_OPERA || false); COMPAT.NOTIFICATIONS_BUTTONS = (!COMPAT.IS_OPERA && !COMPAT.IS_FIREFOX || false); -if (typeof (chrome.runtime.onStartup) === 'undefined') -{ - chrome.runtime.onStartup = { - addListener: function() { } - }; - COMPAT.ON_STARTUP = false; -} - -if(typeof(chrome.runtime.onInstalled) === 'undefined') -{ - chrome.runtime.onInstalled = { - addListener: function() { } - }; - COMPAT.ON_INSTALLED = false; -} - -if(typeof(chrome.runtime.onMessageExternal) === 'undefined') +if(COMPAT.IS_FIREFOX) { chrome.runtime.onMessageExternal = { addListener: chrome.runtime.onMessage.addListener diff -Nru chrome-gnome-shell-8.2/extension/include/compat-content-script.js chrome-gnome-shell-8.2.1/extension/include/compat-content-script.js --- chrome-gnome-shell-8.2/extension/include/compat-content-script.js 2017-03-02 19:44:02.000000000 +0000 +++ chrome-gnome-shell-8.2.1/extension/include/compat-content-script.js 2017-03-24 15:35:06.000000000 +0000 @@ -15,7 +15,7 @@ var externalMessaging = { runtime: { sendMessage: function (extensionId, message, options, responseCallback) { - if(extensionId !== chrome.i18n.getMessage('@@extension_id')) + if(extensionId !== chrome.runtime.id) { console.error('Wrong extension id provided.') return; diff -Nru chrome-gnome-shell-8.2/extension/include/constants.js chrome-gnome-shell-8.2.1/extension/include/constants.js --- chrome-gnome-shell-8.2/extension/include/constants.js 2017-03-02 19:44:02.000000000 +0000 +++ chrome-gnome-shell-8.2.1/extension/include/constants.js 2017-03-24 15:35:06.000000000 +0000 @@ -8,7 +8,7 @@ (at your option) any later version. */ -GS_CHROME_ID = chrome.i18n.getMessage('@@extension_id'); +GS_CHROME_ID = chrome.runtime.id; PLATFORMS_WHITELIST = ["linux", "openbsd"]; COMPAT = { diff -Nru chrome-gnome-shell-8.2/extension/include/gsc.js chrome-gnome-shell-8.2.1/extension/include/gsc.js --- chrome-gnome-shell-8.2/extension/include/gsc.js 2017-03-02 19:44:02.000000000 +0000 +++ chrome-gnome-shell-8.2.1/extension/include/gsc.js 2017-03-24 15:35:06.000000000 +0000 @@ -54,7 +54,8 @@ if ( chrome.runtime.lastError && chrome.runtime.lastError.message && - chrome.runtime.lastError.message.indexOf("host not found") === -1 + chrome.runtime.lastError.message.indexOf("host not found") === -1 && // Chrome + chrome.runtime.lastError.message.indexOf("disconnected port") === -1 // Firefox ) { // Some error occured. Show to user diff -Nru chrome-gnome-shell-8.2/extension/include/notifications.js chrome-gnome-shell-8.2.1/extension/include/notifications.js --- chrome-gnome-shell-8.2/extension/include/notifications.js 2017-03-02 19:44:02.000000000 +0000 +++ chrome-gnome-shell-8.2.1/extension/include/notifications.js 2017-03-24 15:35:06.000000000 +0000 @@ -52,11 +52,9 @@ */ var browser = (function() { function init() { - if(COMPAT.ON_STARTUP) { - chrome.runtime.onStartup.addListener(function() { - // Do nothing. We just need this callback to restore notifications - }); - } + chrome.runtime.onStartup.addListener(function() { + // Do nothing. We just need this callback to restore notifications + }); chrome.notifications.onClosed.addListener(function (notificationId, byUser) { if (!byUser) diff -Nru chrome-gnome-shell-8.2/extension/manifest.firefox.json chrome-gnome-shell-8.2.1/extension/manifest.firefox.json --- chrome-gnome-shell-8.2/extension/manifest.firefox.json 2017-03-02 19:44:02.000000000 +0000 +++ chrome-gnome-shell-8.2.1/extension/manifest.firefox.json 2017-03-24 15:35:06.000000000 +0000 @@ -2,7 +2,7 @@ "applications": { "gecko": { "id": "chrome-gnome-shell@gnome.org", - "strict_min_version": "50.0" + "strict_min_version": "52.0" } }, "permissions": [ diff -Nru chrome-gnome-shell-8.2/extension/manifest.json chrome-gnome-shell-8.2.1/extension/manifest.json --- chrome-gnome-shell-8.2/extension/manifest.json 2017-03-02 19:44:02.000000000 +0000 +++ chrome-gnome-shell-8.2.1/extension/manifest.json 2017-03-24 15:35:06.000000000 +0000 @@ -4,7 +4,7 @@ "name": "__MSG_gs_chrome__", "short_name": "GS Chrome", "description": "__MSG_manifest_description__", - "version": "8.2", + "version": "8.2.1", "default_locale": "en", diff -Nru chrome-gnome-shell-8.2/extension/options.js chrome-gnome-shell-8.2.1/extension/options.js --- chrome-gnome-shell-8.2/extension/options.js 2017-03-02 19:44:02.000000000 +0000 +++ chrome-gnome-shell-8.2.1/extension/options.js 2017-03-24 15:35:06.000000000 +0000 @@ -118,11 +118,6 @@ { $('#show_network_errors_yes').parents('dl:first').hide(); } - - if(!COMPAT.ON_INSTALLED) - { - $('#show_release_notes_yes').parents('dl:first').hide(); - } } function retrieveUpdateTimes()