From afa86abf16c1a1a05eaec6315db748301e77c52a Mon Sep 17 00:00:00 2001 From: Vinicius Moreira Date: Wed, 31 Jul 2019 12:20:05 -0300 Subject: [PATCH] fix: maximized window resize fix when filtering apps --- CHANGELOG.md | 1 + fpakman/view/qt/apps_table.py | 3 ++- fpakman/view/qt/window.py | 13 ++++++++----- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d0748b4d..3f70e1f2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ### Fixes: - apps table not showing empty descriptions - replacing default app icons by null icons +- maximized window resize fix when filtering apps - i18n ### Comments: - not adding Flatpak default remote (flathub) when initializing. It requires root actions, and will be addressed in a different way in future releases. diff --git a/fpakman/view/qt/apps_table.py b/fpakman/view/qt/apps_table.py index 5fd64cbd..bb51b7af 100644 --- a/fpakman/view/qt/apps_table.py +++ b/fpakman/view/qt/apps_table.py @@ -264,6 +264,7 @@ class AppsTable(QTableWidget): if app_v.model.base_data.version and app_v.model.base_data.latest_version and app_v.model.base_data.version < app_v.model.base_data.latest_version: tooltip = '{}. {}: {}'.format(tooltip, self.window.locale_keys['version.latest'], app_v.model.base_data.latest_version) + label_version.setText(label_version.text() + ' > {}'.format(app_v.model.base_data.latest_version)) col_version.setToolTip(tooltip) self.setCellWidget(idx, 1, col_version) @@ -313,4 +314,4 @@ class AppsTable(QTableWidget): def change_headers_policy(self, policy: QHeaderView = QHeaderView.ResizeToContents): header_horizontal = self.horizontalHeader() for i in range(self.columnCount()): - header_horizontal.setSectionResizeMode(i, policy) + header_horizontal.setSectionResizeMode(i, policy) diff --git a/fpakman/view/qt/window.py b/fpakman/view/qt/window.py index 0c92c8b7..600dfff4 100755 --- a/fpakman/view/qt/window.py +++ b/fpakman/view/qt/window.py @@ -195,6 +195,7 @@ class ManageWindow(QWidget): self.filter_only_apps = True self.filter_types = set() self.filter_updates = False + self._maximized = False def _handle_updates_filter(self, status: int): self.filter_updates = status == 2 @@ -222,9 +223,9 @@ class ManageWindow(QWidget): return spacer def changeEvent(self, e: QEvent): - if isinstance(e, QWindowStateChangeEvent): - policy = QHeaderView.Stretch if self.isMaximized() else QHeaderView.ResizeToContents + self._maximized = self.isMaximized() + policy = QHeaderView.Stretch if self._maximized else QHeaderView.ResizeToContents self.table_apps.change_headers_policy(policy) def closeEvent(self, event): @@ -369,9 +370,11 @@ class ManageWindow(QWidget): visible_apps -= 1 if hidden else 0 self.change_update_state(change_filters=False) - self.table_apps.change_headers_policy(QHeaderView.Stretch) - self.table_apps.change_headers_policy() - self.resize_and_center(accept_lower_width=visible_apps > 0) + + if not self._maximized: + self.table_apps.change_headers_policy(QHeaderView.Stretch) + self.table_apps.change_headers_policy() + self.resize_and_center(accept_lower_width=visible_apps > 0) def change_update_state(self, change_filters: bool = True): enable_bt_update = False