diff -Nru software-properties-0.96.24.33/.bzr-builddeb/default.conf software-properties-0.96.24.34/.bzr-builddeb/default.conf --- software-properties-0.96.24.33/.bzr-builddeb/default.conf 2018-05-08 14:47:43.000000000 +0000 +++ software-properties-0.96.24.34/.bzr-builddeb/default.conf 1970-01-01 00:00:00.000000000 +0000 @@ -1,3 +0,0 @@ -[BUILDDEB] -native = True - diff -Nru software-properties-0.96.24.33/debian/changelog software-properties-0.96.24.34/debian/changelog --- software-properties-0.96.24.33/debian/changelog 2018-05-08 14:58:48.000000000 +0000 +++ software-properties-0.96.24.34/debian/changelog 2018-07-04 13:38:24.000000000 +0000 @@ -1,3 +1,11 @@ +software-properties (0.96.24.34) cosmic; urgency=medium + + [ Andrea Azzarone ] + * Allow the user to disable livepatch if the gnome-online-account expired. + (lp: #1768797) + + -- Sebastien Bacher Wed, 04 Jul 2018 15:38:17 +0200 + software-properties (0.96.24.33) cosmic; urgency=medium * cloudarchive: Enable support for the Rocky Ubuntu Cloud Archive on diff -Nru software-properties-0.96.24.33/softwareproperties/gtk/SoftwarePropertiesGtk.py software-properties-0.96.24.34/softwareproperties/gtk/SoftwarePropertiesGtk.py --- software-properties-0.96.24.33/softwareproperties/gtk/SoftwarePropertiesGtk.py 2018-05-08 14:47:43.000000000 +0000 +++ software-properties-0.96.24.34/softwareproperties/gtk/SoftwarePropertiesGtk.py 2018-07-04 13:35:50.000000000 +0000 @@ -1530,13 +1530,21 @@ text = "" + text + "" self.label_livepatch_login.set_markup(text) else: - self.checkbutton_livepatch.set_sensitive(False) + if self.is_livepatch_enabled() and not self.waiting_livepatch_response: + # Allow the user to disable livepatch even if + # the account expired (see LP: #1768797) + self.checkbutton_livepatch.set_sensitive(True) + self.label_livepatch_login.set_label(_('Livepatch is active.')) + else: + self.checkbutton_livepatch.set_sensitive(False) + self.label_livepatch_login.set_label(_('To use Livepatch you need to sign in.')) + self.button_ubuntuone.set_label(_('Sign In…')) - self.label_livepatch_login.set_label(_('To use Livepatch you need to sign in.')) def on_livepatch_status_changed(self, file_monitor, file, other_file, event_type): if not self.waiting_livepatch_response: self.checkbutton_livepatch.set_active(self.is_livepatch_enabled()) + self.on_goa_auth_changed() def on_button_ubuntuone_clicked(self, button): if self.goa_auth.logged: @@ -1561,8 +1569,8 @@ self.checkbutton_livepatch.set_active(True) def do_logout(self): - self.goa_auth.logout() self.checkbutton_livepatch.set_active(False) + self.goa_auth.logout() def on_checkbutton_livepatch_toggled(self, checkbutton): if self.waiting_livepatch_response: @@ -1622,5 +1630,7 @@ error_handler=self.livepatch_enabled_error_handler, timeout=LIVEPATCH_TIMEOUT) + self.on_goa_auth_changed() + if self.quit_when_livepatch_responds: self.on_close_button(self.button_close)