Merge branch 'staging' into fpakpart

This commit is contained in:
Vinícius Moreira
2020-01-10 17:44:13 -03:00
2 changed files with 11 additions and 6 deletions

View File

@@ -1,4 +1,6 @@
import operator
import os import os
from functools import reduce
from threading import Lock from threading import Lock
from typing import List from typing import List
@@ -6,7 +8,7 @@ from PyQt5.QtCore import Qt, QUrl, QSize
from PyQt5.QtGui import QPixmap, QIcon, QCursor from PyQt5.QtGui import QPixmap, QIcon, QCursor
from PyQt5.QtNetwork import QNetworkAccessManager, QNetworkRequest, QNetworkReply from PyQt5.QtNetwork import QNetworkAccessManager, QNetworkRequest, QNetworkReply
from PyQt5.QtWidgets import QTableWidget, QTableView, QMenu, QAction, QTableWidgetItem, QToolButton, QWidget, \ from PyQt5.QtWidgets import QTableWidget, QTableView, QMenu, QAction, QTableWidgetItem, QToolButton, QWidget, \
QHeaderView, QLabel, QHBoxLayout, QPushButton, QToolBar QHeaderView, QLabel, QHBoxLayout, QPushButton, QToolBar, QSizePolicy
from bauh.api.abstract.cache import MemoryCache from bauh.api.abstract.cache import MemoryCache
from bauh.api.abstract.model import PackageStatus from bauh.api.abstract.model import PackageStatus
@@ -28,7 +30,7 @@ class UpdateToggleButton(QWidget):
def __init__(self, app_view: PackageView, root: QWidget, i18n: I18n, checked: bool = True, clickable: bool = True): def __init__(self, app_view: PackageView, root: QWidget, i18n: I18n, checked: bool = True, clickable: bool = True):
super(UpdateToggleButton, self).__init__() super(UpdateToggleButton, self).__init__()
self.setSizePolicy(QSizePolicy.Minimum, QSizePolicy.Minimum)
self.app_view = app_view self.app_view = app_view
self.root = root self.root = root
@@ -73,9 +75,11 @@ class AppsTable(QTableWidget):
self.setShowGrid(False) self.setShowGrid(False)
self.verticalHeader().setVisible(False) self.verticalHeader().setVisible(False)
self.horizontalHeader().setVisible(False) self.horizontalHeader().setVisible(False)
self.horizontalHeader().setSizePolicy(QSizePolicy.Minimum, QSizePolicy.Minimum)
self.setSelectionBehavior(QTableView.SelectRows) self.setSelectionBehavior(QTableView.SelectRows)
self.setHorizontalHeaderLabels(['' for _ in range(self.columnCount())]) self.setHorizontalHeaderLabels(['' for _ in range(self.columnCount())])
self.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) self.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
self.setSizePolicy(QSizePolicy.Minimum, QSizePolicy.Minimum)
self.icon_logo = QIcon(resource.get_path('img/logo.svg')) self.icon_logo = QIcon(resource.get_path('img/logo.svg'))
self.pixmap_verified = QIcon(resource.get_path('img/verified.svg')).pixmap(QSize(10, 10)) self.pixmap_verified = QIcon(resource.get_path('img/verified.svg')).pixmap(QSize(10, 10))
@@ -450,6 +454,7 @@ class AppsTable(QTableWidget):
bt.setEnabled(bool(settings)) bt.setEnabled(bool(settings))
item.addWidget(bt) item.addWidget(bt)
item.setSizePolicy(QSizePolicy.Minimum, QSizePolicy.Minimum)
self.setCellWidget(pkg.table_index, col, item) self.setCellWidget(pkg.table_index, col, item)
def change_headers_policy(self, policy: QHeaderView = QHeaderView.ResizeToContents): def change_headers_policy(self, policy: QHeaderView = QHeaderView.ResizeToContents):
@@ -458,7 +463,4 @@ class AppsTable(QTableWidget):
header_horizontal.setSectionResizeMode(i, policy) header_horizontal.setSectionResizeMode(i, policy)
def get_width(self): def get_width(self):
w = self.verticalHeader().width() + 4 # +4 seems to be needed return reduce(operator.add, [self.columnWidth(i) for i in range(self.columnCount())])
for i in range(self.columnCount()):
w += self.columnWidth(i) # seems to include gridline (on my machine)
return w

View File

@@ -837,6 +837,9 @@ class ManageWindow(QWidget):
new_width = max(table_width, toolbar_width, topbar_width) new_width = max(table_width, toolbar_width, topbar_width)
if self.bt_upgrade.isVisible():
new_width *= 1.03 # this extra size is not because of the toolbar button, but the table upgrade buttons
if (self.pkgs and accept_lower_width) or new_width > self.width(): if (self.pkgs and accept_lower_width) or new_width > self.width():
self.resize(new_width, self.height()) self.resize(new_width, self.height())