diff -Nru update-manager-20.04.10.13/debian/changelog update-manager-20.04.10.14/debian/changelog --- update-manager-20.04.10.13/debian/changelog 2023-01-26 10:56:31.000000000 +0000 +++ update-manager-20.04.10.14/debian/changelog 2023-02-03 01:43:45.000000000 +0000 @@ -1,3 +1,10 @@ +update-manager (1:20.04.10.14) focal; urgency=medium + + * Fix Ubuntu Pro updates checkbox and expander widget from overlapping + (LP: #1990450) + + -- Robert Ancell Fri, 03 Feb 2023 14:43:45 +1300 + update-manager (1:20.04.10.13) focal; urgency=medium * Update of the parsing for pro client changes (lp: #1990450) diff -Nru update-manager-20.04.10.13/UpdateManager/Core/UpdateList.py update-manager-20.04.10.14/UpdateManager/Core/UpdateList.py --- update-manager-20.04.10.13/UpdateManager/Core/UpdateList.py 2023-01-26 10:56:31.000000000 +0000 +++ update-manager-20.04.10.14/UpdateManager/Core/UpdateList.py 2023-02-03 01:43:45.000000000 +0000 @@ -390,7 +390,7 @@ return True return False - def _make_groups(self, cache, pkgs, eventloop_callback, to_remove=False): + def _make_groups(self, cache, pkgs, eventloop_callback, to_remove=False, sensitive=True): if not pkgs: return [] ungrouped_pkgs = [] @@ -400,7 +400,7 @@ for pkg in pkgs: app = self._get_application_for_package(pkg) if app is not None: - app_group = UpdateApplicationGroup(pkg, app, to_remove) + app_group = UpdateApplicationGroup(pkg, app, to_remove, sensitive) app_groups.append(app_group) else: ungrouped_pkgs.append(pkg) @@ -439,7 +439,7 @@ "linux-doc.*") linux_regexp = re.compile("(" + "|".join( ["^" + n for n in linux_names]) + ")") - ubuntu_base_group = UpdateGroup(None, None, None, to_remove) + ubuntu_base_group = UpdateGroup(None, None, None, to_remove, sensitive) flavor_package = utils.get_ubuntu_flavor_package(cache=cache) ubuntu_base_pkgs = [flavor_package, "ubuntu-standard", @@ -457,10 +457,10 @@ if ubuntu_base_group.is_dependency(pkg, cache, eventloop_callback): if system_group is None: - system_group = UpdateSystemGroup(cache, to_remove) + system_group = UpdateSystemGroup(cache, to_remove, sensitive) system_group.add(pkg) else: - pkg_groups.append(UpdatePackageGroup(pkg, to_remove)) + pkg_groups.append(UpdatePackageGroup(pkg, to_remove, sensitive)) app_groups.sort(key=lambda a: a.name.lower()) pkg_groups.sort(key=lambda a: a.name.lower()) @@ -499,6 +499,8 @@ version, size) self.marked_install = False self.marked_upgrade = False + self.marked_delete = False + self.installed_files = [] def mark_install(self): pass @@ -575,10 +577,5 @@ cache, kernel_autoremove_pkgs, eventloop_callback, True) self.duplicate_groups = self._make_groups( cache, duplicate_pkgs, eventloop_callback, True) - if len(fake_ua_packages) > 0: - ubuntu_pro_group = UpdateGroup(None, - "Ubuntu Pro (enable in Settingsā€¦)", - None, False, False) - for package in fake_ua_packages: - ubuntu_pro_group.add(package) - self.ubuntu_pro_groups = [ubuntu_pro_group] + self.ubuntu_pro_groups = self._make_groups( + cache, fake_ua_packages, eventloop_callback, sensitive=False) diff -Nru update-manager-20.04.10.13/UpdateManager/UpdatesAvailable.py update-manager-20.04.10.14/UpdateManager/UpdatesAvailable.py --- update-manager-20.04.10.13/UpdateManager/UpdatesAvailable.py 2023-01-26 10:56:31.000000000 +0000 +++ update-manager-20.04.10.14/UpdateManager/UpdatesAvailable.py 2023-02-03 01:43:45.000000000 +0000 @@ -1002,7 +1002,7 @@ self.window_main.end_user_resizable() return False - def _add_header(self, name, groups): + def _add_header(self, name, groups, sensitive=True): total_size = 0 for group in groups: total_size = total_size + group.get_total_size() @@ -1011,7 +1011,7 @@ UpdateData(groups, None, None), humanize_size(total_size), True, - True + sensitive ] return self.store.append(None, header_row) @@ -1091,6 +1091,7 @@ self.list.duplicate_groups) self._add_groups(self.list.duplicate_groups) if self.list.ubuntu_pro_groups: + self._add_header(_("Ubuntu Pro (enable in Settingsā€¦)"), self.list.ubuntu_pro_groups, sensitive=False) self._add_groups(self.list.ubuntu_pro_groups) self.treeview_update.set_model(self.store)