diff options
author | Liang Qi <liang.qi@qt.io> | 2018-01-11 18:01:13 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2018-01-11 18:10:41 +0100 |
commit | f4d8cafc1b034f544ca84b849c23ab99bc1600e7 (patch) | |
tree | f1150b5aeaec4753f2ddfcd17643666b3a82dd9d /src/gui/kernel | |
parent | e5b422382a512a8267a0eb24e6543a8cf84478d9 (diff) | |
parent | b03133231b99922a72831c4ec23faf55516ef404 (diff) |
Merge remote-tracking branch 'origin/5.10' into dev
Conflicts:
src/3rdparty/harfbuzz-ng/src/hb-private.hh
src/sql/doc/snippets/code/doc_src_sql-driver.cpp
src/sql/doc/src/sql-driver.qdoc
Change-Id: I38f0e82fcd37926cbf3c1915e009a731040d4598
Diffstat (limited to 'src/gui/kernel')
-rw-r--r-- | src/gui/kernel/qevent.cpp | 1 | ||||
-rw-r--r-- | src/gui/kernel/qpalette.cpp | 32 |
2 files changed, 18 insertions, 15 deletions
diff --git a/src/gui/kernel/qevent.cpp b/src/gui/kernel/qevent.cpp index 158b83e087..e2a7297ca6 100644 --- a/src/gui/kernel/qevent.cpp +++ b/src/gui/kernel/qevent.cpp @@ -979,6 +979,7 @@ QWheelEvent::QWheelEvent(const QPointF &pos, const QPointF& globalPos, \li scrolling is about to begin, but the distance did not yet change (Qt::ScrollBegin), \li or scrolling has ended and the distance did not change anymore (Qt::ScrollEnd). \endlist + \note On X11 this value is driver specific and unreliable, use angleDelta() instead */ /*! diff --git a/src/gui/kernel/qpalette.cpp b/src/gui/kernel/qpalette.cpp index 665cc430cc..4905e51e01 100644 --- a/src/gui/kernel/qpalette.cpp +++ b/src/gui/kernel/qpalette.cpp @@ -751,21 +751,24 @@ const QBrush &QPalette::brush(ColorGroup gr, ColorRole cr) const void QPalette::setBrush(ColorGroup cg, ColorRole cr, const QBrush &b) { Q_ASSERT(cr < NColorRoles); - detach(); - if(cg >= (int)NColorGroups) { - if(cg == All) { - for(int i = 0; i < (int)NColorGroups; i++) - d->br[i][cr] = b; - data.resolve_mask |= (1<<cr); - return; - } else if(cg == Current) { - cg = (ColorGroup)data.current_group; - } else { - qWarning("QPalette::setBrush: Unknown ColorGroup: %d", (int)cg); - cg = Active; - } + + if (cg == All) { + for (uint i = 0; i < NColorGroups; i++) + setBrush(ColorGroup(i), cr, b); + return; + } + + if (cg == Current) { + cg = ColorGroup(data.current_group); + } else if (cg >= NColorGroups) { + qWarning("QPalette::setBrush: Unknown ColorGroup: %d", cg); + cg = Active; + } + + if (d->br[cg][cr] != b) { + detach(); + d->br[cg][cr] = b; } - d->br[cg][cr] = b; data.resolve_mask |= (1<<cr); } @@ -1091,7 +1094,6 @@ void QPalette::setColorGroup(ColorGroup cg, const QBrush &foreground, const QBru const QBrush &link, const QBrush &link_visited, const QBrush &toolTipBase, const QBrush &toolTipText) { - detach(); setBrush(cg, WindowText, foreground); setBrush(cg, Button, button); setBrush(cg, Light, light); |