summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Fix: QAbstract3DGraph orthoProjection docsSami Varanka2021-09-061-5/+0
| | | | | | | | | | | | | | Changed the documentation for QAbstract3DGraph orthoProjection property. The documentation promised too much so the extra lines were removed. Fixes: QTBUG-96206 Change-Id: I07b42cf359cf6570d2364be737cb2c1bc8294596 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit eb938071956f96b861c33dd6cf14fafe63fc3587) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix: change signals to take values by const refSami Varanka2021-09-067-10/+10
| | | | | | | | | | | Changed signals in declaratives to take their arguments as const ref when suitable. Change-Id: I23ad15ba5bec39d9588425f71a24820199b33e8b Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit 94005117116bfd668f27fd64cb31949fee3f42b1) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix: Nans at surfacedata row/column 0 render failSami Varanka2021-08-061-26/+54
| | | | | | | | | | | | | | | | | If the first or last column or row of the data given to surfacedataproxy contains NaN values, the surfacedataproxy might fail to find the limit values for the axis. Changed limiValues function in surfacedataproxy so that if it doesn't find min/max values from the first/last column/row it continues from the next column/row. Added a test to verify that the limit values are found when first/last row contains NaN values. Fixes: QTBUG-95112 Fixes: QTBUG-95109 Change-Id: I74a343e5bc8cae5b8020243859000fdb5ca7f86e Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Fix: Rotate and zoom don't work on androidSami Varanka2021-08-051-1/+4
| | | | | | | | | | | | | On touch controlled platforms, the AbstractDeclarative didn't get any touchevents. Fixed this by setting acceptTouchEvents to true in AbstractDeclarative constructor. Fixes: QTBUG-94364 Change-Id: I072be80a942afc71e86e5c352d078a90baaa066c Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit fabf51e3e39d655e873addde891639009c7485c6)
* Fix: basegradient applied incorrectly to surfaceSami Varanka2021-08-031-1/+2
| | | | | | | | | | | | | | When surface data contains NaN/Inf values, the basegradient might get applied incorrectly. Fixed the error by adding check for NaN/Inf in getNormalizedVertex. Fixes: QTBUG-78767 Change-Id: I94d850f8ed21bc98dcbc4ba26b02989c1c1bf90b Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit 55bd8fbf38d3eede7ae7cf0eed357117e9eeba98) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix Q3DScatter memory leakSami Varanka2021-06-232-1/+2
| | | | | | | | | | | | | | | | | | | | | When using static optimization for scattergraph and series mesh type is not point mesh, the scatter3D renderer uses ScatterObjectBufferHelper's fullLoad. In the fullLoad old data buffers are deleted, if m_meshDataLoaded is set to true. However, at the beginning of the fullLoad, the flag was always set to false so old data buffers were never deleted. Moved the setting of the m_meshDataLoaded to false after the deletion of old buffers. Added similar code to scatterpointbufferhelper for consistency. Fixes: QTBUG-80194 Change-Id: I2fd71af86b1fd73621074187f112fd9783df36df Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit c0fd354690a6de2923e975bb4586fa5bbf310bb1) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix: Axis titles do not respect title fixedSami Varanka2021-06-221-0/+20
| | | | | | | | | | | | | When a graph is rotated so that it is viewed from below the y axis gets flipped. However, x and z axis were not rotated correctly which caused them to be unvisible. Fixes: QTBUG-94441 Change-Id: Ic56b910ce790526fd0460aa895ce978e6efd0b23 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit 3333795ff1f60d4f68ee7bdab5ef129b23121efb) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix bargraph labels face wrong directionSami Varanka2021-06-111-3/+7
| | | | | | | | | | | | | | | When the camera's X rotation is 180.0f, the labels were rotated to face wrong direction. The axis title labels do not respect the Abstract3DAxis's titleFixed property. Created a new bugreport QTBUG-94441. Fixes: QTBUG-90371 Change-Id: I80115b8b363a7385dfd2cb1f004a05368549ed48 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit d2543d8bbd27e9dd13698f457845adb0f5a6d428) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix direct rendering doesn't show anythingSami Varanka2021-06-042-44/+16
| | | | | | | | | | | | | | | | | | | | | | | Rendering a graph directly to background didn't work in Qt 6 since it uses RHI and there is no way to not clear the color buffer before rendering. The graph uses direct OpenGL calls to render directly to background. Enabled direct rendering to qml3doscilloscope example. In addition, RenderDirectToBackground_NoClear got deprecated. When rendering directly to background, using non-transparent qml item as a background will hide the graph. This was already mentioned in the documentation but not clearly enough. Updated documentation for AbstractGraph3D. Fixes: QTBUG-90665 Change-Id: I53081bac382ab89573359886e4f5c4b41be8e86d Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit ad85513d4b38bdedac27a095bd3a988f1eda23a2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Use fixed qt_add_resource BASE argumentJoerg Bornemann2021-05-251-68/+68
| | | | | | | | Task-number: QTBUG-86726 Change-Id: I8372086c40043a6bd1d306b6bfb711e96ddc7cb7 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit e73ef93876ce070b4029cecdf4a3c4701c9e5b64)
* Fix Gradients don't showSami Varanka2021-05-185-2/+13
| | | | | | | | | | | | | | Added pointer to graph in Abstract3DController. Controller can use that pointer to check whether the graph is ready when receiving a themetypeChanged signal. Added manual test for gradients. Fixes: QTBUG-93506 Change-Id: I13df962b807feb615e3267f580ef57dd62a0b058 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit c9768c1e2440e52976c3456a9a4d302edf49f56a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix QML theme showing totally darkSami Varanka2021-05-171-1/+2
| | | | | | | | | | | | | Added check for new theme's forcePredefinedType in ThemeManager's setActiveTheme before resetting new theme's dirtyBits. Fixes: QTBUG-91103 Fixes: QTBUG-65264 Change-Id: If0dd2dfe6a0e179ce8a21de74b3193650f3e76c1 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit 54e3c62734cb950e08a3f930880d08b9e2854e35) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Doc: Fix documentation issuesTopi Reinio2021-04-271-7/+6
| | | | | | | | | | | * Restore removed example snippet tags * Fix issues in the .qdocconf file Task-number: QTBUG-91875 Change-Id: Iff7068204b5713fbf9f9f568834b55c5c282abba Reviewed-by: Paul Wicking <paul.wicking@qt.io> (cherry picked from commit 3eba29e47e6ef55960e670095444b977defce345) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove obsolete namespace documentationVolker Hilsheimer2021-04-203-13/+5
| | | | | | | | | | | | | | | That there is a 'using namespace QtDataVisualization' statement in the 'galaxy' manual tests suggests that there used to be one, but there isn't anymore. This documentation appears to have been for that long-gone namespace, so remove it to silence qdoc. Fix references to the now global qDefaultSurfaceFormat utility function. Change-Id: Ide7689ee30af60f8c97649672f8a0f5ad455c35e Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit 896ce35f009d7d6d262d070b7fe6dde57655a2e2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Replace \default with \qmldefault for QML APIsVolker Hilsheimer2021-04-194-4/+4
| | | | | | | Change-Id: Idb633687f84c08f1b873a44af6fc9e1a64a4bee5 Reviewed-by: Paul Wicking <paul.wicking@qt.io> (cherry picked from commit 0abbc35cf8632dba6860ea9b33825f064ffc32f6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* CMake: Fix qml module version to use the repo project versionAlexandru Croitor2021-04-151-1/+1
| | | | | | | | | | | | Use PROJECT_VERSION instead of CMAKE_PROJECT_VERSION, so that the repo project version is used in a top-level build, rather than the version of the qt5 project. Task-number: QTBUG-92861 Change-Id: I540849455689e22f954e4f6eeb1ae6a79a583795 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit c1930a76205123d67c5c4606ab71b21b6211336b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove extra example from highlightsTomi Korpipaa2021-04-141-2/+1
| | | | | | | | Change-Id: Ib983262d4d90df3b976c91cbd2b6e9c652ae9932 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit 2ba4abf4fbfa759d08a61226e48bdd30d228c524) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add documentation for the RHI backend selectionTomi Korpipaa2021-03-041-0/+5
| | | | | | | | | | Fixes: QTBUG-90663 Change-Id: Ifc972c20e273e5ae060bc70d289027350428599f Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Tuomo Pelkonen <tuomo.pelkonen@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> (cherry picked from commit e73fdf23da12884ff8df6c9f23add8d2758ae446) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QSurfaceDataProxy: Fix crashes adding the first row of dataFriedemann Kleint2021-03-031-4/+8
| | | | | | | | | | | | | Adding one row causes an assert ASSERT failure in QList::at: "index out of range", file include/QtCore/qlist.h, line 373 since there is no first row to check the column count against. Check for empty as well. Task-number: PYSIDE-1438 Change-Id: I225b87b764545b7a430472dc5a4b2e476a26a7ff Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> (cherry picked from commit 106bef0493758ddaeadd3b4d744227cb7feadb70) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Prevent division by zeroTomi Korpipaa2021-02-251-6/+8
| | | | | | | | Fixes: QTBUG-91347 Change-Id: Ice76d050c47fa141749b77a0313c2f070151bbc1 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> (cherry picked from commit ee774a0052ccd56994d6c5008ebb7469da1d87f8) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix macOS build that has -Wunused-function as errorTomi Korpipaa2021-02-113-4/+4
| | | | | | | | | | | Clang may interpret static inline function as unused, although it should not. Pragma it out for clang. Fixes: QTBUG-91053 Change-Id: I8fd8bec5236752189deff8a2f6ceb62e572dca30 Reviewed-by: Antti Määttä <antti.maatta@qt.io> (cherry picked from commit 21ab254164ab0891e12dbd037fc4e163ff9f6e9d) Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Prevent segfault with software rendererTomi Korpipaa2021-02-111-1/+1
| | | | | | | | | | | | SW renderer doesn't have opengles2 config set, so we need to make sure the pointer does not include garbage. Fixes: QTBUG-91032 Change-Id: I98aa2f10889fe04c2f6f4af6abd0fe559ba686bf Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> (cherry picked from commit 824e0ba21a7b1e56264989c243c3138b09458751) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix conan build errorsTomi Korpipaa2021-01-293-3/+7
| | | | | | Fixes: QTBUG-90737 Change-Id: Iab4a0f9d4ff3618dfb4c1675dfd731421de29f9f Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Remove custom namespaceTomi Korpipaa2021-01-28208-426/+403
| | | | | | Fixes: QTBUG-90400 Change-Id: Ia2f1974a21112bad97724717d073d367c4413a7f Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Add CMake buildTuomo Pelkonen2021-01-2712-119/+645
| | | | | | | Task-number: QTBUG-89299 Change-Id: I5becbf39605e566c3d32cb5e210d974df9de27da Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Fix compilation issues for macOS and Android on Qt 6.0Tuomo Pelkonen2021-01-2711-31/+36
| | | | | | Task-number: QTBUG-89297 Change-Id: I57acf345b6fc64a93d08d41016c755cae4edd6db Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Force OpenGL backend for RHITuomo Pelkonen2021-01-273-0/+3
| | | | | | | | Set QSG_RHI_BACKEND environment variable to "opengl" to force RHI to use OpenGL backend. Change-Id: Ie1fa0ffe466f97b1bbcc5281c49bbdf6e6d053c0 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* C++ build fixes for Qt 6.0 on WindowsTuomo Pelkonen2021-01-2711-36/+32
| | | | | | | | | | | | | Fixes c++ build issues with Qt 6.0, verified to work on Windows. Changed QQmlListProperty constructors functions types from int to qsizetype GeometryChanged changed to GeometryChange createTextureFromNativeObject changed to QNativeInterface::QSGOpenGLTexture::fromNative clearBeforeRendering and setClearBeforeRendering removed Task-number: QTBUG-89297 Change-Id: I84c723560de2821572af00f62e7780445b6c2595 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Migrate C++ API rendering path to Qt 6Tomi Korpipaa2020-12-1421-167/+175
| | | | | | | | | | Replace QRegExp with QRegularExpression and change usage accordingly. Replace shared QOpenGLFunctions_2_1 with our own copy. Fix header include changes. Task-number: QTBUG-89297 Change-Id: I6d3cf36ba9303ef62db3220816ea35f51eb26a3c Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Add missing overrideAlexander Volkov2020-06-2936-201/+201
| | | | | Change-Id: I20cec71db97cbf896255d4f6d7e947072a86e2bb Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Add ; to Q_UNUSEDLars Schmertmann2020-06-2615-91/+91
| | | | | | | | | This is required to remove the ; from the macro with Qt 6. Task-number: QTBUG-82978 Change-Id: I66f620431011d02cb1542e8ad613dadd28fdd843 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* Use QList instead of QVectorJarek Kobus2020-06-2557-219/+205
| | | | | | | Task-number: QTBUG-84469 Change-Id: I4dc064b70adb054ca4add2dd662e7227255ff970 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Merge "Merge remote-tracking branch 'origin/5.15' into dev"Qt Forward Merge Bot2020-03-263-3/+6
|\
| * Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-03-243-3/+6
| |\ | | | | | | | | | Change-Id: I9152493c8aed299f0bcffc03651b05d6ae01db22
| | * Fix deprecation warningsFriedemann Kleint2020-02-172-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | colorgradient.cpp:80:61: warning: ‘QQmlListProperty<T>::QQmlListProperty(QObject*, QList<T*>&) [with T = QtDataVisualization::ColorGradientStop]’ is deprecated: Use constructor taking QList pointer, and gain improved performance [-Wdeprecated-declarations] declarativerendernode.cpp:116:71: warning: ‘QSGTexture* QQuickWindow::createTextureFromId(uint, const QSize&, QQuickWindow::CreateTextureOptions) const’ is deprecated: Use createTextureFromNativeObject() instead [-Wdeprecated-declarations] customformatter.cpp:167:34: warning: ‘QDateTime::QDateTime(const QDate&)’ is deprecated: Use QDate::startOfDay() [-Wdeprecated-declarations] Change-Id: Iaf3b8814cd70a704b87b4970ad83ed5a7d4dc0f1 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| | * Merge remote-tracking branch 'origin/5.14' into 5.15v5.15.0-alpha1Qt Forward Merge Bot2020-01-281-1/+1
| | |\ | | | | | | | | | | | | Change-Id: Ie1823c477a005d44d7b12d1e6d9228d89b619298
| | | * Doc: Fix typo in qdoc commandPaul Wicking2020-01-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: QTBUG-81676 Change-Id: Ibe7f73e1fc529411ca92d7bdbb2ad8824cb97a62 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* | | | Update dependenciesFriedemann Kleint2020-03-2610-7/+15
|/ / / | | | | | | | | | | | | | | | | | | Add missing Q_MOC_INCLUDE and adapt to OpenGL split. Change-Id: I6150876a62ca55ad63c09a128226c2bac428b821 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-01-071-2/+2
|\| | | | | | | | | | | Change-Id: Ia189ad6a24e3284a538cea1f78fcbc9b4687f6b8
| * | abstractdeclarative.cpp: Fix deprecation warningsFriedemann Kleint2020-01-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use QHash::contains() instead of checking for presence via value(), fixing: abstractdeclarative.cpp:681:48: warning: 'QList<ValueType> QHash<K, V>::values(const Key&) const [with Key = QQuickWindow*; T = bool]' is deprecated: Use QMultiHash for hashes storing multiple values with the same key. [-Wdeprecated-declarations] abstractdeclarative.cpp:694:45: warning: 'QList<ValueType> QHash<K, V>::values(const Key&) const [with Key = QQuickWindow*; T = bool]' is deprecated: Use QMultiHash for hashes storing multiple values with the same key. [-Wdeprecated-declarations] Change-Id: Ic858949514a647f62e74bff6ece346851dce413b Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-11-302-15/+8
|\| | | | | | | | | | | Change-Id: I8bfa9b1604d35abc2844c0a4e10c0f8c66cc2acd
| * | Avoid initializing QFlags with 0 or nullptrFriedemann Kleint2019-11-262-15/+8
| |/ | | | | | | | | | | | | It is being deprecated. Change-Id: I38e6bc29ac03108f56f445069b2dbbe8a3db201a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-121-1/+277
|\| | | | | | | Change-Id: Ib309fe3b5adee4933ae9a66f4419aec28b088aa5
| * Update plugins.qmltypes for 5.14v5.14.0-beta2v5.14.0-beta1Kai Koehne2019-09-301-1/+277
| | | | | | | | | | | | | | Task-number: QTBUG-78690 Change-Id: Ib264cb0294f02e2983cba0041a48ff87b7bc4f51 Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* | Merge remote-tracking branch 'origin/wip/qt6' into devSimon Hausmann2019-10-041-1/+3
|\ \ | |/ |/| | | | | | | | | Conflicts: .qmake.conf Change-Id: Ic4b3c490262e4a72bdd45b03828b88a784a4b9b8
| * Fix Qt6 buildAlexandru Croitor2019-08-071-1/+3
| | | | | | | | | | | | | | | | | | | | | | Modify all the qmlRegisterModule calls to use minor version 15 because minor version zero from 6.0.0 would make tests fail. This is similar to what was done in qtdeclarative in c147b20a2c1299b2d659fe7c9472ae3866b6a425. Change-Id: If3202a887389351dd6efa760b0212e69582d9576 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-08-241-1/+1
|\ \ | | | | | | | | | Change-Id: I08c9b0b57ccefc161815833ccd63208d2768cb54
| * | Fix GCC 4.8 build of abstract3drendererVille Voutilainen2019-08-221-1/+1
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-77730 Change-Id: I827d727b103a9923a8b82163bfa4f77c81c0906b Reviewed-by: Liang Qi <liang.qi@qt.io>
* | | Remove the usage of deprecated QWheelEvent::posSona Kurazyan2019-08-231-1/+1
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-76491 Change-Id: I5831525f8ac4bf0cbec6a52a434b1d8c3b388b80 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-07-161-0/+1
|\| | | |/ |/| | | Change-Id: I9d75a47adea2d20db06f66ffa844275cbcf928d3