TaskView: Fix scrolling

Broken by qtbase commit 934f06220391eb0e0ebf66a2eb037f48adb4c43c

Change-Id: Iafbeab63cca8b6f328276eaf0a4d27a749b30087
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
Daniel Teske
2013-10-24 16:54:24 +02:00
parent deeeda162d
commit c033fc3a34

View File

@@ -48,6 +48,7 @@
#include <QStyledItemDelegate>
#include <QMenu>
#include <QToolButton>
#include <QScrollBar>
namespace {
const int ELLIPSIS_GRADIENT_WIDTH = 16;
@@ -74,6 +75,8 @@ class TaskDelegate : public QStyledItemDelegate
{
Q_OBJECT
friend class TaskView; // for using Positions::minimumSize()
public:
TaskDelegate(QObject * parent = 0);
~TaskDelegate();
@@ -126,11 +129,11 @@ private:
int right() const { return m_totalWidth - ITEM_MARGIN; }
int bottom() const { return m_bottom; }
int firstLineHeight() const { return m_fontHeight + 1; }
int minimumHeight() const { return taskIconHeight() + 2 * ITEM_MARGIN; }
static int minimumHeight() { return taskIconHeight() + 2 * ITEM_MARGIN; }
int taskIconLeft() const { return left(); }
int taskIconWidth() const { return TASK_ICON_SIZE; }
int taskIconHeight() const { return TASK_ICON_SIZE; }
static int taskIconWidth() { return TASK_ICON_SIZE; }
static int taskIconHeight() { return TASK_ICON_SIZE; }
int taskIconRight() const { return taskIconLeft() + taskIconWidth(); }
QRect taskIcon() const { return QRect(taskIconLeft(), top(), taskIconWidth(), taskIconHeight()); }
@@ -169,6 +172,13 @@ TaskView::TaskView(QWidget *parent)
{
setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
setVerticalScrollMode(QAbstractItemView::ScrollPerPixel);
QFontMetrics fm(font());
int vStepSize = fm.height() + 3;
if (vStepSize < TaskDelegate::Positions::minimumHeight())
vStepSize = TaskDelegate::Positions::minimumHeight();
verticalScrollBar()->setSingleStep(vStepSize);
}
TaskView::~TaskView()