mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2025-12-18 14:38:04 -06:00
Fix status list widget height issue on style change (closes #603342)
This commit is contained in:
@@ -4,6 +4,7 @@
|
|||||||
- BUGFIX: Several search plugins fixed
|
- BUGFIX: Several search plugins fixed
|
||||||
- BUGFIX: Auto-disable the shutdown feature
|
- BUGFIX: Auto-disable the shutdown feature
|
||||||
- BUGFIX: Remember the current property tab on startup
|
- BUGFIX: Remember the current property tab on startup
|
||||||
|
- BUGFIX: Fix status list widget height issue on style change
|
||||||
|
|
||||||
* Tue Oct 19 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.7
|
* Tue Oct 19 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.7
|
||||||
- BUGFIX: Display the priority column when the queueing system gets enabled
|
- BUGFIX: Display the priority column when the queueing system gets enabled
|
||||||
|
|||||||
@@ -210,13 +210,7 @@ GUI::GUI(QWidget *parent, QStringList torrentCmdLine) : QMainWindow(parent), for
|
|||||||
properties->readSettings();
|
properties->readSettings();
|
||||||
|
|
||||||
// Limit status filters list height
|
// Limit status filters list height
|
||||||
int cur_height = 80;
|
transferListFilters->getStatusFilters()->updateHeight();
|
||||||
do {
|
|
||||||
transferListFilters->getStatusFilters()->setFixedHeight(cur_height);
|
|
||||||
cur_height += 10;
|
|
||||||
transferListFilters->getStatusFilters()->scrollToBottom();
|
|
||||||
}while(transferListFilters->getStatusFilters()->verticalScrollBar()->sliderPosition() > 0);
|
|
||||||
transferListFilters->getStatusFilters()->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
|
||||||
|
|
||||||
if(ui_locked) {
|
if(ui_locked) {
|
||||||
hide();
|
hide();
|
||||||
|
|||||||
@@ -41,6 +41,7 @@
|
|||||||
#include <QDragMoveEvent>
|
#include <QDragMoveEvent>
|
||||||
#include <QStandardItemModel>
|
#include <QStandardItemModel>
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
|
#include <QScrollBar>
|
||||||
|
|
||||||
#include "transferlistdelegate.h"
|
#include "transferlistdelegate.h"
|
||||||
#include "transferlistwidget.h"
|
#include "transferlistwidget.h"
|
||||||
@@ -57,6 +58,7 @@ public:
|
|||||||
itemHover = 0;
|
itemHover = 0;
|
||||||
// Accept drop
|
// Accept drop
|
||||||
setAcceptDrops(true);
|
setAcceptDrops(true);
|
||||||
|
setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Redefine addItem() to make sure the list stays sorted
|
// Redefine addItem() to make sure the list stays sorted
|
||||||
@@ -145,22 +147,43 @@ protected:
|
|||||||
};
|
};
|
||||||
|
|
||||||
class StatusFiltersWidget : public QListWidget {
|
class StatusFiltersWidget : public QListWidget {
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
StatusFiltersWidget(QWidget *parent) : QListWidget(parent) {
|
StatusFiltersWidget(QWidget *parent) : QListWidget(parent), m_shown(false) {
|
||||||
setFixedHeight(120);
|
//setFixedHeight(120);
|
||||||
|
setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public slots:
|
||||||
|
void updateHeight() {
|
||||||
|
qDebug("Adjusting statuslist widget height...");
|
||||||
|
m_shown = true;
|
||||||
|
setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded);
|
||||||
|
int cur_height = 50;
|
||||||
|
do {
|
||||||
|
setFixedHeight(cur_height);
|
||||||
|
cur_height += 10;
|
||||||
|
}while(verticalScrollBar()->isVisible());
|
||||||
|
setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||||||
|
}
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void changeEvent(QEvent *e) {
|
void changeEvent(QEvent *e) {
|
||||||
QListWidget::changeEvent(e);
|
QListWidget::changeEvent(e);
|
||||||
switch (e->type()) {
|
switch (e->type()) {
|
||||||
case QEvent::StyleChange:
|
case QEvent::StyleChange:
|
||||||
setSpacing(0);
|
qDebug("Style has changed, adapting the statusfilters widget height");
|
||||||
setFixedHeight(120);
|
if(m_shown)
|
||||||
|
updateHeight();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
bool m_shown;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -245,7 +268,7 @@ public:
|
|||||||
delete vLayout;
|
delete vLayout;
|
||||||
}
|
}
|
||||||
|
|
||||||
QListWidget* getStatusFilters() const {
|
StatusFiltersWidget* getStatusFilters() const {
|
||||||
return statusFilters;
|
return statusFilters;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user