summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Dialogs: avoid setting invalid geometryv5.3.0release5.3.0Shawn Rutledge2014-05-141-2/+2
| | | | | | | | | | | QRect::setX() and setY() can change the width and height, even to a negative value, which will make the dialog's intended geometry invalid. The intention was that QQuickAbstractDialog::setX() and setY() should move the window, so it should be done with QRect::moveLeft and moveTop. Task-number: QTBUG-38898 Change-Id: I59104395ed39b09f6b7a99eb177820edb5e46cf6 Reviewed-by: Liang Qi <liang.qi@digia.com>
* Remove redundant button clicked handler in QQuickMessageBoxBerthold Krevert2014-05-142-49/+0
| | | | | | | | | | | Change c286b4fccb2d83fcc01b21913b95c5e4f21f2982 added the QQuickAbstractMessageDialog::click() handler, which made the QQuickMessageDialog::clicked() handler redundant. (cherry-picked from qtdeclarative/a5669568904b37b1d6b297e7190d18306e198604) Change-Id: Ifd770a3c67b35fd9a4929fc55b9e5298c36fb960 Task-number: QTBUG-35933 Reviewed-by: Liang Qi <liang.qi@digia.com>
* FileDialog: update icon whenever the filename changesv5.3.0-rc1Shawn Rutledge2014-05-051-2/+1
| | | | | | | | | | | | | | view.model.get(styleData.row, "fileIsDir") is unreliable for some reason, but each filename usually changes when we go into a different directory. Maybe it could still fail if you navigate from a directory containing a directory, to another directory which has a file with exactly the same name in the same position. Since most files have extensions, this is unlikely... Task-number: QTBUG-38683 Change-Id: If080c4f1a7a01b20f6c468fcb06653e3c2314a1a Reviewed-by: Liang Qi <liang.qi@digia.com> Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Menu: Fix QPA related crash on exitGabriel de Dietrich2014-05-041-0/+3
| | | | | | | | | | | | In QPA world, menus are always referenced by a menu item. (This is the menu item either on the menu bar or in the parent menu.) So, the same way that we set the menu item's menu in the menu's constructor, we must clear it. Specially since qtbase commit 8605f44097a986e10c2ddaf4b4eae0b2331d98d1 which checks for the menu reference in the menu item's destructor. Change-Id: Id196fc7c2082dbff1d9006cbd82b7237532c4e3c Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Add Window declaration to plugins.qmltypesFawzi Mohamed2014-04-301-0/+195
| | | | | | | | | | QmlDesigner needs to know that Application window is derived from QQuickWindow. Task-number: QTBUG-38663 Change-Id: I4a90dc6a0d69ad5688431c86014cbdb36259caab Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com> Reviewed-by: Yuchen Deng <loaden@gmail.com>
* Add changelog for 5.3.0Jens Bache-Wiig2014-04-251-0/+107
| | | | | | | Change-Id: I99fadbd5dff0a4ec5e6abd5b8a6b5b19cbfcace7 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com> Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Correct positioning for popups in QQuickWidgetPaul Olav Tvete2014-04-253-6/+27
| | | | | | | | | | Handle the case where the QQuickWindow is hidden and the content is rendered somewhere else using QQuickRenderControl. Task-number: QTBUG-38116 Change-Id: I51fb9001c307f53bf7d724860b2a66287982724e Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Fix missing tabs in touch exampleJens Bache-Wiig2014-04-231-2/+1
| | | | | | | | | | | | | | | | The only reason that the we calculated the tab count explicitly before was that we were using an array. Now that we are using a model there is no longer any need to keep track of the count independently of the model. This fix prevents the count from originally showing as 0 and prevents an extra value change. In addition the count is now correctly marked as readonly. Task-number: QTBUG-38421 Change-Id: I53a5d0df3367c850a7c6846729660dd0f63238d5 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Jonathan Liu <net147@gmail.com>
* Update plugins.qmltypes for QtQuick.ControlsJ-P Nurmi2014-04-221-286/+404
| | | | | Change-Id: I393b926f80e96296df03898fa49fd83140d36460 Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
* Update plugins.qmltypes for QtQuick.PrivateWidgetsShawn Rutledge2014-04-171-56/+68
| | | | | | Change-Id: I53236f5698b2430e533d94ebb146beb72ce49c21 Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com> Reviewed-by: Liang Qi <liang.qi@digia.com>
* Update plugins.qmltypes for QtQuick.DialogsShawn Rutledge2014-04-171-102/+249
| | | | | | Change-Id: I7e12acab9b958533d3065257f507304984f117d2 Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com> Reviewed-by: Liang Qi <liang.qi@digia.com>
* Docs: fix QtQuick.Controls.Styles import versionJ-P Nurmi2014-04-161-3/+3
| | | | | Change-Id: I8d3571843302ffb39e7b9f6d53f6eb76e923d3d8 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Dialogs: implementation prop renamed to contentItem; API cleanupShawn Rutledge2014-04-159-105/+94
| | | | | | | | | | | | | | | | | | | | | - contentItem is a common name for an item inside something such as a window or a flickable. We now consider it adequate API that you can directly set this to some item which you want to fill the whole dialog instead of adding an item as a child of the default property and being subject to the dialog's margins and space reservation for buttons. - contentItem MUST be an Item. Allowing the old "implementation" property to alternatively be a ready-made Window was just a hypothetical use case, but if anyone made use of that, then it would be a problem to have that kind of dialog on a GUI that cannot have windows (such as Android or EGLFS). So there's no point in having the possibility as long as we cannot emulate windows as items. - standardButtonsRightModel and standardButtonsLeftModel are implementation details so they should not be exposed as properties which Creator can discover; users shouldn't depend on them. Task-number: QTBUG-38056 Change-Id: Iefa3def314353495cfe8d1ef9f775a8e46d5bcf4 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Fix tab visibility regressionJ-P Nurmi2014-04-152-2/+2
| | | | | | | | | Division by 0 caused strange behavior and made the tabs not get a valid size even when the available size changed later. Task-number: QTBUG-38294 Change-Id: I456e7a0cc244a76c81832fa580377674bcc5a828 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Doc: Adding information about how to run the example.Jerome Pasion2014-04-151-0/+14
| | | | | | | | | -includes a file from qtbase/doc/global/includes -added to example pages (\example) Task-number: QTBUG-33597 Change-Id: I1356e12826a7702b4431f815d6ec42b28e21003c Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Ensure that styleData.row is initialized in delegatesJens Bache-Wiig2014-04-152-2/+21
| | | | | | | | | | | | | While we specifically documented that you should not depend on the value being correct in onCompleted for 5.3, it is not optimal that the initial value is consistently set to 0 and later changed to it's appropriate value. This patch ensures that delegates are not instantiated until after the model model and row values have been fully initialized. Task-number: QTBUG-38307 Change-Id: Ib3300539a0283c997ab8b808fb229d3f22ed6324 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Take into account icon size when determining button sizeDavid Edmundson2014-04-091-2/+10
| | | | | | | | | | | | When a style calculates the sizeFromContents on a pushbutton it needs to be informed about the size of the icon on the button. In oxygen icons with buttons are slightly larger than buttons without. Change-Id: I2f2d5f08747ad5e6ac0dfb50531c3e7627e9b35f Reviewed-by: Sebastian Kügler <sebas@kde.org> Reviewed-by: Marco Martin <mart@kde.org> Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Fix the editable delegate in tableview exampleJens Bache-Wiig2014-04-091-2/+2
| | | | | | | | | | We re-interpreted what "model" means in TableView to align it with what it means for ListView. Unfortunately the example still assume that "model" refers to the views acual model object and not to the current item data as it did for listview. Change-Id: I3457954a622be38500672edb1c0a910d18760947 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Fix left/right cursor keys in TextAreaBerthold Krevert2014-04-091-0/+4
| | | | | | | | | Since commit 5dc805c86077e key events for left/right cursor get eaten by the MenuBar. That means, the events shouldn't be accepted if no menu is shown. Change-Id: Icc249a3c4d96e19e8c902276938a2972cf1364d9 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Dialogs: modality applies to fake window decorations tooShawn Rutledge2014-04-091-0/+1
| | | | | | | | | | | | | | | | For the sake of consistency with dialog behavior on desktop platforms, when a modal dialog is shown on a display that doesn't support windows, and therefore fake window decorations are used to make the dialog look like a Window while actually being an Item in the same scene graph, you can't dismiss it by tapping outside. If it's non-modal you can. [ChangeLog][QtQuick][Dialogs]when a modal dialog is shown on a display that doesn't support windows, you can't dismiss it by tapping outside Task-number: QTBUG-37860 Change-Id: I1150f53774f5d70e88e2b2f5a9d3524a8a00dbec Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Allow TableView headers to be resized in a FlickableJens Bache-Wiig2014-04-081-0/+1
| | | | | | | | | Setting preventStealing to true will allow headers to be resized when in a horizontal flickable. Task-number: QTBUG-37941 Change-Id: I7be45409d96c7940f5f70b311cdedd3a8b7844ed Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Fix ScrollView behavior when used in a FlickableJens Bache-Wiig2014-04-081-1/+1
| | | | | | | | | | Setting preventStealing to true for the mouse areas allow them to be used in a Flickable. Task-number: QTBUG-37941 Change-Id: I72def1b60e84b4704827b8617095c7cc0370afb4 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Implement input for entering non-standard font size.Leonard Lee2014-04-081-17/+53
| | | | | | | | | | | | User should be able to enter non-standard font size which is not available in the list of standard font sizes. The selected value in the list of standard font sizes should synchronize with the input field for the non-standard point size value, and vice versa if there is a match. Change-Id: I63b855054b2feb4dad339fe8ec06be5179bb2a37 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Docs: fix \since tagsJ-P Nurmi2014-04-085-7/+7
| | | | | | | | Use Qt version only for \qmltype, and module import version for \qmlproperty, \qmlmethod and \qmlsignal. Change-Id: Ia5851b7b86a420f07ca335e0cf2ddf3df1f8c25a Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Fix initialization to non-zero TableView indexJens Bache-Wiig2014-04-081-1/+4
| | | | | | | | | | | | | | The bug was caused by trying to set the currentIndex of the internal TabBar ListView higher than the model count which was populated later. We can work around it by adding an extra check on the model size. [ChangeLog][QtQuickControls][TabView] Fixed a graphics issue when initializing currentIndex to a non-zero value. Task-number: QTBUG-38157 Change-Id: Ic0907bc41512f187b31c79d47515fb51b15c5f0e Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Bump QtQuick.Controls import version to 1.2J-P Nurmi2014-04-07185-337/+337
| | | | | Change-Id: Idc0b93cbfc2fe23e8be3bcaece672d06555a81f6 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* ButtonStyle: fix checked stateJ-P Nurmi2014-04-071-3/+4
| | | | | | | | Restore checked state handling that was lost in fd8d7261. Task-number: QTBUG-38143 Change-Id: Iec6598d5ddba449da16cfefa55b0d575d2563c47 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Import QtQuick 2.2J-P Nurmi2014-04-07198-280/+280
| | | | | Change-Id: Ifc9719ec6fbbd80b866c01eebc471d0ed121bd16 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Improve scrollbars on touchJ-P Nurmi2014-04-042-2/+3
| | | | | | | | | | | | Hide the scrollbar background which makes it look like a desktop scrollbar. Scrollbars are now by default non-interactive on touch. [ChangeLog][QtQuickControls][ScrollView] Scrollbars are now non-interactive on mobile/touch devices. Task-number: QTBUG-37387 Change-Id: I63b6db9309a6e33140de0d26c8d4fd3e1bcfb832 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Update TextArea::wrapMode docsJ-P Nurmi2014-04-021-5/+2
| | | | | | | | | | | The documentation adapted from TextEdit mentioned a wrong default value and contained confusing and unnecessary low-level details how TextEdit calculates its content/implicitWidth. TextArea hides these details and the documentation has been simplified accordingly. Task-number: QTBUG-38022 Change-Id: Ifa29956b59b7f169fbdc94f455dbdad29469db3e Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Doc: Fix some issuesSze Howe Koh2014-03-314-4/+5
| | | | | Change-Id: I2f209fc33fdeecf0a3a3067486f9f4abfe18a2ec Reviewed-by: Martin Smith <martin.smith@digia.com>
* Disable mipmapping on the style itemLaszlo Agocs2014-03-311-0/+2
| | | | | | | | | | | | | | The recent removal of QSGPlainTexture::setHasMipMaps() made the texture material enable mipmapping on the texture by default. Previously this was not the case, the material did not enable mipmapping on the texture regardless of the value of mipmapFiltering. The default value (Nearest) now properly enables mipmapping but this is not ideal for the style item. Therefore we disable mipmapping explicitly. Task-number: QTBUG-37690 Change-Id: I15607fd0c3a06f0cefc416b74f6cee25ef7966bd Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Add a note on recycling of delegates for TableViewJens Bache-Wiig2014-03-281-1/+16
| | | | | | | | Since this is a new feature in 5.3, we should clearly document the implication this will have on delegates. Change-Id: I2255e9306bbac503c38d79586b4cac4eb5c8ba1e Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Doc: Fix broken links (explicit intra-module qualifiers)Sze Howe Koh2014-03-275-6/+6
| | | | | | | | | | All these links are intra-module, so these qualifiers should not have been required. Might be an indication of a QDoc bug. Task-number: QTBUG-37719 Change-Id: I791ad767f1eb33c52b96de451ee0601a0b7c12dd Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* QtQuick.Dialogs FileDialog: don't go astray into resources on AndroidShawn Rutledge2014-03-271-1/+1
| | | | | | | | Needed part of the same fix from QTBUG-36006. Task-number: QTBUG-37741 Change-Id: I3bfe518dfdd6027bdb932c612d01b0c8d1753dad Reviewed-by: Liang Qi <liang.qi@digia.com>
* Doc: Fix some warnings in Qt Quick ControlsSergio Ahumada2014-03-273-10/+10
| | | | | | | | | | Set 'exampledirs' to '../../../examples/quick/controls' instead, so the files under 'examples/quick/dialogs' are not processed twice. Also fix a small typo in BusyIndicatorStyle.qml Change-Id: Id5b3ff144056ab37e4a9e9f52cd1811797c54fb1 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Warn that use of private types requires both public and private importsMitch Curtis2014-03-251-1/+2
| | | | | | Task-number: QTBUG-37751 Change-Id: I5a91ec1dc4b38e47846e5e72e41902be876cb306 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* StyleItem: Resolve item palette per item typev5.3.0-beta1Gabriel de Dietrich2014-03-202-4/+67
| | | | | | | | | This queries the platform theme for each type, and sets the right palette. This should allow us to remove some workarounds we might have for those cases in desktop style. Change-Id: Ia5f650b46de5418586bc946d63fd394875e90184 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Set numerical input hint on SpinBoxJens Bache-Wiig2014-03-201-0/+1
| | | | | | | | | | | | Since we don't allow you to override the text validator, we guarantee that the only thing you are allowed to type in a SpinBox are numbers. [ChangeLog][QtQuickControls][SpinBox] SpinBox now only shows the numerical keys in onscreen keyboards where possible. Task-number: QTBUG-37619 Change-Id: If6412d1dc49bf0e602330e90963e8cd990f5d43c Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Try to maintain bindings to checked property in CheckBoxJens Bache-Wiig2014-03-202-2/+51
| | | | | | | | | | | | | | | | It is currently impossible to keep a binding to the checked property because any external manipulation of checked will cause it to be internally overwritten based on the implicitly triggered checkedStateChanged signal. This adds a protection mechanism similar to what we already have on the checkedStateChanged signal. [ChangeLog][QtQuickControls][CheckBox]Fixed a problem incorrectly causing bindings to the checked state to break. Task-number: QTBUG-31627 Change-Id: I506fa34561529a414c7b088001f96e8f283edd89 Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Let ApplicationWindows default max size be unbounded.Jan Arve Saether2014-03-192-5/+34
| | | | | | | | | | | | | | | | | | | | | | | | Previously, the ApplicationWindow determined its maximum size from its content items maximum size. This was inconsistent with how QWidgets normally behaved. The default max size of an ApplicationWindow is now therefore unbounded. If the application want the ApplicationWindow to have a maximum width or height, the application must set up the binding manually. This can be done with a fixed maximum size or it can be bound to a layout: contentItem.maximumHeight: grid.Layout.maximumHeight contentItem.maximumWidth: grid.Layout.maximumWidth If the grid layout has anchors.margins, those need to be taken into consideration too, resulting in the following binding: contentItem.maximumHeight: grid.Layout.maximumHeight + grid.anchors.topMargin + grid.anchors.bottomMargin Change-Id: Ibac80ba71f12e3eb9e5db8f875ecfa64b1e28b0d Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Do not reduce items size when snapping to pixel grid.Jan Arve Saether2014-03-193-14/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to the required snapping to pixel grid, there was a high risk of reducing the size of an item to become smaller than its minimum size. With the original way of snapping (simply doing qRound) it didn't happen very often, but with the last change the problem became more evident: If an item that covered the full extent of a cell was snapped it would *always* shrink. Sometimes it could then shrink to become smaller than its minimum size. This was easy to see if the item snapped was a Text element with eliding enabled, since that meant that the text was elided as soon as the Text element got resized to smaller than its minimum. The current solution now is to always snap the x,y coordinates (with qCeil), but keep the width and height that was calculated by the layout. This means that snapped items will be shifted slightly to the right. Due to this they might extend almost a pixel outside their calculated cell (on the right or bottom sides). Due to this we also have to adjust the size hint result calculation so that it will also ceil up to the nearest integer. The only downside now is that row/column spacings might be less than specified, but they should not reduce by more than 1 pixel. Task-number: QTBUG-36235 Change-Id: Idca909f2102a1f7c5cb50d2490c7af39d722ff4f Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Add example for indeterminate progress bar animationJens Bache-Wiig2014-03-181-0/+36
| | | | | | | | | | | While this is not really a bug fix it was not documented how you could create your own animated progress bar. Task-number: QTBUG-37434 Change-Id: I5419c2f886c98189207f4e2682e8dda8206677ee Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* ComboBox: fix a warning in MenuContentItemJ-P Nurmi2014-03-181-0/+1
| | | | | Change-Id: I8428d7e2f768cd7341ecb3efcc52fc2dba1d0ca0 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* MenuItem: Don't delete owned bound actionsGabriel de Dietrich2014-03-181-6/+1
| | | | | | | | | | | They may be referenced from somewhere else, and there's no reason not to keep them alive while the MenuItem is alive. Task-number: QTBUG-37554 Change-Id: Idaab616c856348c0b7eeb1a2e9fdc5bfc3f8a5fd Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com> Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Doc: Append handler names to \qmlsignal documentationSze Howe Koh2014-03-1821-0/+102
| | | | | Change-Id: I5e06bdf03ba1ba8e5fe7669f690420dc9a039129 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* ScrollView: flick threshold comes from platform styleShawn Rutledge2014-03-181-1/+1
| | | | | | | | | | QStyleHints::startDragDistance is used as the standard drag or flick threshold in QtQuick generally. We should follow suit because it may depend on platform characteristics such as screen resolution and sensitivity of the input devices. Change-Id: Ibbc7b4549351f795c10de792cb8fa3ff9f5ae58d Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Slider: don't prevent stealing until drag threshold is exceededShawn Rutledge2014-03-183-1/+18
| | | | | | | | | | | | | | | If a Slider is placed in a Flickable (or ListView, etc.), preventStealing means that you cannot flick the flickable by dragging over the Slider. It's better to postpone setting that until we detect whether the user is really attempting to drag the slider, because we don't want to rule out use cases such as vertical sliders in a horizontal ListView or vice-versa, so that you drag in one direction to move the slider and in another direction to flick. Platform drag threshold is exposed in Settings (from QStyleHints). (reverts/refines c9665f3e2d1eb12f1cc5a569c20f5d569fafde7f) Change-Id: I82feda6028f6effa5b26ad575a1933e48e971453 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Doc: Document signals (not handlers) under \qmlsignalSze Howe Koh2014-03-183-12/+12
| | | | | | | Task-number: QTBUG-35846 Change-Id: I358c3427429b669425f0065686da7e202568c84d Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Clean-up styling improvements for CalendarKonstantin Ritt2014-03-172-5/+3
| | | | | | | | | | This is a fix-up for 4569ed127c290bea8d165e15dc2eca525825c627 : "verticalAlignment: Text.AlignVCenter" not needed for alread-centered text; make previousMonth button center-in parent, similarly to nextMonth button; drop dead code from HoverButton. Change-Id: Iceb096944d084ecded70611e3da754150a0e098e Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>