Fix a bug that got revealed by 604c51f1fc5c79b7fad12cda911b06b9e6e5005f
authorJan-Arve Sæther <jan-arve.saether@nokia.com>
Fri, 17 Dec 2010 13:41:43 +0000 (14:41 +0100)
committerJason McDonald <jason.mcdonald@nokia.com>
Wed, 19 Jan 2011 08:30:21 +0000 (18:30 +1000)
commit101ecddd24e194761cde0d84a421657c1206c506
tree97630668a2f467d482a5728e26dae4da9f0ff93d
parent923f7c6b07b27cf51de31dc9c2456010bd8434d5
Fix a bug that got revealed by 604c51f1fc5c79b7fad12cda911b06b9e6e5005f

The bug has been around for a while, but change 604c51f1fc5c7 made it
emerge.
The problem was that stretches were combined by always *maxing* them.
The values of 'stretch' can be interpreted as this:

-1: (the default) it means that the items should be stretched with
    the stretch factor dervived from the size hints. (In practice this
    means that they are distributed fairly).
 0: Means that the item should not be stretched
>0: Means that the item should be stretch with that number as a factor.

This meant that combining one item with a fixed size(0) and another
item with a default stretch (-1) the combined row stretch would end
up being fixed.

This also fixes how stretches are combined for spanning items too.

Task-number: QTBUG-13551
Reviewed-by: John Tapsell
(cherry picked from commit 7fbf1829e11504eca6a55f1e5dbddf2f658b5302)
src/gui/graphicsview/qgridlayoutengine.cpp
tests/auto/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp