aboutsummaryrefslogtreecommitdiffstats
path: root/src/imports/templates
Commit message (Collapse)AuthorAgeFilesLines
* Make sure the appropriate import versions are always availableJ-P Nurmi2016-11-231-0/+2
| | | | | | | | | | | | | Utilize the newly introduced qmlRegisterModule() to automatically register the import version that matches the Qt version that is used to build the module. Now we can remove the artificial qmlRegisterRevision() calls, which were added just to make certain import versions available, even if there was no such revision. Change-Id: Ic3887c221c69b6cd299853d8d5869b8af7a314ec Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Merge remote-tracking branch 'origin/5.8' into devJ-P Nurmi2016-11-171-2/+1
|\ | | | | | | | | | | | | | | Conflicts: src/quickcontrols2/qquickstyle.cpp src/quicktemplates2/qquickslider.cpp Change-Id: Ie12132690680706def6f516334a6ef0ba27336b3
| * Restore AbstractButton::checkableJ-P Nurmi2016-11-161-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 7a8f055, we hid the checkable property from QQuickAbstractButton and exposed it only in QQuickButton and QQuickMenuItem. The reasoning was that QQuickCheckBox, QQuickRadioButton, QQuickSwitch and their delegate counterparts are inherently checkable, so having the checkable property available in QML didn't seem to make sense. While this still holds true, there are other factors to take into consideration. AbstractButton is meant to be a generic base class for all types of buttons, but the lack of a checkable property makes it unusable as a base class for custom QML-based checkable buttons. If we want to a hide the checkable property from CheckBox, RadioButton, and Switch to avoid having it popup in the auto-completion list, we can probably do it in a less disruptive way via tooling. [ChangeLog][Controls][AbstractButton] The checkable property has been made accessible from QML. Previously it was only exposed for Button and MenuItem, but it is now available for any AbstractButton to make it possible to create custom QML-based checkable buttons. Task-number: QTBUG-51554 Change-Id: I19e29fc87cd15811c43c9b9ebb29701d66cde72f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.8' into dev" into refs/staging/devJ-P Nurmi2016-11-112-5/+33
|\ \
| * | Merge remote-tracking branch 'origin/5.8' into devJ-P Nurmi2016-11-032-5/+33
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/imports/controls/BusyIndicator.qml src/imports/controls/ProgressBar.qml src/quicktemplates2/qquickpopup.cpp src/quicktemplates2/qquickpopup_p_p.h src/quicktemplates2/qquickstackview.cpp Change-Id: I9a1028a991de9fc3e26d3f973106301e9ada631c
| | * Merge remote-tracking branch 'origin/5.7' into 5.8J-P Nurmi2016-11-021-0/+19
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/imports/controls/Drawer.qml src/imports/controls/Frame.qml src/imports/controls/GroupBox.qml src/imports/controls/Page.qml src/imports/controls/Pane.qml src/imports/controls/ToolBar.qml src/imports/controls/Tumbler.qml src/quicktemplates2/qquickapplicationwindow.cpp src/quicktemplates2/qquickpopup.cpp tests/auto/accessibility/data/busyindicator.qml tests/auto/accessibility/data/button.qml tests/auto/accessibility/data/checkbox.qml tests/auto/accessibility/data/control.qml tests/auto/accessibility/data/dial.qml tests/auto/accessibility/data/label.qml tests/auto/accessibility/data/menu.qml tests/auto/accessibility/data/pageindicator.qml tests/auto/accessibility/data/popup.qml tests/auto/accessibility/data/progressbar.qml tests/auto/accessibility/data/radiobutton.qml tests/auto/accessibility/data/rangeslider.qml tests/auto/accessibility/data/scrollbar.qml tests/auto/accessibility/data/scrollindicator.qml tests/auto/accessibility/data/slider.qml tests/auto/accessibility/data/spinbox.qml tests/auto/accessibility/data/switch.qml tests/auto/accessibility/data/tabbar.qml tests/auto/accessibility/data/tabbutton.qml tests/auto/accessibility/data/textarea.qml tests/auto/accessibility/data/textfield.qml tests/auto/accessibility/data/toolbar.qml tests/auto/accessibility/data/toolbutton.qml tests/auto/accessibility/tst_accessibility.cpp Change-Id: Ibc3f592162e97bef9147b35da8c9a79e73a907e6
| | | * Fix Shortcut to respect modal popupsJ-P Nurmi2016-10-311-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the Gallery example, the back navigation shortcut no longer activates when the settings dialog or the about dialog is open. Notice that the back navigation shortcut still activates while the options menu is open. [ChangeLog][Controls][Popup] The QML Shortcut type from QtQuick has been fixed to respect modal popups from QtQuick Controls 2. Task-number: QTBUG-56562 Change-Id: I4c3c762e9db0935ef250ff9f8c553e7d211220c7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
| | * | Update plugins.qmltypesJ-P Nurmi2016-11-011-5/+14
| | | | | | | | | | | | | | | | | | | | Change-Id: I859bcc03f3f980fd37df756c2922378c0d8c0827 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | | Add QQuickComboBox::downJ-P Nurmi2016-11-091-0/+1
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows us to replace all "control.pressed || popup.visible" expressions with "control.down", and takes us one step closer to deferred popop execution as mentioned in the previous commit. In order to be able to defer the popup execution, we must get rid of such explicit references to the popup. Change-Id: Ifa7ecf8201912d3ec1bca232e2cf600e3886715e Reviewed-by: J-P Nurmi <jpnurmi@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Merge remote-tracking branch 'origin/5.8' into devJ-P Nurmi2016-10-311-0/+1
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/quicktemplates2/qquickpopup.cpp src/quicktemplates2/qquickpopup_p_p.h Change-Id: I33241dfd15a320e6ae2f0c056252b0ec6be7c6f6
| * | Popup: add spacing support for Dialogv5.8.0-beta1J-P Nurmi2016-10-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This helps to get the dialog layout right (a separate follow-up commit), because we don't need to mess with the paddings of the header, content, and footer, based on their existence and visibility, but we can also adjust the spacing which gets automatically added between the building blocks when they exist and are visible. Change-Id: Ie8b587eeb9d0fb4a8f42baf957879d40bbd3385c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Rename QQuickStackAttached to QQuickStackViewAttachedJ-P Nurmi2016-10-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In QQC1 the attached property was called "Stack", purely because we couldn't have both QML and C++ types with the same name. Now the attached properties are provided by StackView itself, so this is the correct name. Change-Id: I0f98d73735cff14c444a9e843b7cb56dc8a45cd8 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Merge remote-tracking branch 'origin/5.8' into devJ-P Nurmi2016-10-251-0/+1
|\| | | | | | | | | | | Change-Id: If48d66d89172db94ee1839063396156a3a947601
| * | Page: provide implicit sizeJ-P Nurmi2016-10-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even though the control was designed to be used as full-screen page, it can be sometimes useful to have non-fullscreen pages. In order to make Page behave well in layouts, it must provide a suitable implicit size. [ChangeLog][Controls][Page] Page has been made to calculate its implicit size based on the implicit size of the header, content, and footer plus paddings, and the implicit size of the background item. Task-number: QTBUG-56709 Change-Id: I0f40897df6e54d7bde01a464e24f0398b12bc865 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Merge remote-tracking branch 'origin/5.8' into devJ-P Nurmi2016-10-062-12/+4
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/imports/controls/Dial.qml src/imports/controls/RangeSlider.qml src/imports/controls/Slider.qml src/imports/controls/Tumbler.qml src/imports/controls/material/Dial.qml src/imports/controls/material/RangeSlider.qml src/imports/controls/material/Slider.qml src/imports/controls/material/Tumbler.qml src/imports/controls/qtquickcontrols2plugin.cpp src/imports/controls/universal/Dial.qml src/imports/controls/universal/RangeSlider.qml src/imports/controls/universal/Slider.qml src/imports/controls/universal/Tumbler.qml Change-Id: I02b433e66109d90c63fcb9d0e5e304dc9375ea44
| * | Update plugins.qmltypesJ-P Nurmi2016-10-051-11/+2
| | | | | | | | | | | | | | | Change-Id: I276dbd1464577fdee9c6920deb38e890c1a18daf Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * | Improve the type registration version commentsJ-P Nurmi2016-10-041-1/+2
| | | | | | | | | | | | | | | Change-Id: I6a5f42e341f213676146bc2a9540c63d3435ffa3 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Add QQuickDial::liveJ-P Nurmi2016-10-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][Dial] Added a live-property that determines whether the dial provides live updates for the value-property while the handle is dragged. Change-Id: I8da1190df1e9093f81271a8e11f2cea55759573f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Add QQuickRangeSlider::liveJ-P Nurmi2016-10-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][RangeSlider] Added a live-property that determines whether the range slider provides live updates for the first.value and second.value properties while the respective handle is dragged. Change-Id: I44d1924078969a5e22aca55625967dd8b5a4abac Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Add QQuickSlider::liveJ-P Nurmi2016-10-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][Slider] Added a live-property that determines whether the slider provides live updates for the value-property while the handle is dragged. Change-Id: Ib393548f80be4db57a977eac39d5d560ca441f3c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Add QQuickTumbler::movingJ-P Nurmi2016-10-051-0/+3
|/ / | | | | | | | | | | | | | | | | [ChangeLog][Controls][Tumbler] Added a moving-property that describes whether the tumbler is currently moving, due to the user either dragging or flicking the tumbler. Change-Id: Ic86d243cdbdfa8fcd7a7932264332c04a16e020a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Revert "Popup: expose flip API"J-P Nurmi2016-09-221-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 09706e8f9fc481d848a3616cace58baf5bc8b67c. It was a bit rushed to expose the allow*Flip properties. We have now added several other similar internal allowFooBar flags, so clearly a more sustainable solution is to craft some kind of horizontal and vertical sizing/positioning policies out of them. So, remove this unreleased API while we still can, so we don't have to deprecate it right away. Conflicts: src/imports/templates/qtquicktemplates2plugin.cpp Change-Id: Iea33c11805071499b472b18426bbdc8d871a4a58 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Update .qmltypesMarco Benelli2016-09-122-875/+14
| | | | | | | | | | Change-Id: I9551e7606cb1bda67058295cccd4a418a418bd24 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Update plugins.qmltypesJ-P Nurmi2016-09-031-0/+17
| | | | | | | | | | Change-Id: I0a2996deb02d873dc970f15ce6f6416b64baeab7 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Add RoundButtonMitch Curtis2016-09-021-0/+2
| | | | | | | | | | | | | | | | [ChangeLog][Controls] Added RoundButton. Change-Id: I30a8b9e942a61089e87fb1aa248432e42caf0d20 Task-number: QTBUG-54967 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Add ComboBox::flatJ-P Nurmi2016-08-112-2/+7
| | | | | | | | | | | | | | | | | | [ChangeLog][ComboBox] Added a flat property that provides more suitable looks for using ComboBox in a ToolBar. Task-number: QTBUG-54935 Change-Id: Id458a078486aeac5d542a57f3ed247d63d25e95c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add MenuSeparatorMitch Curtis2016-07-251-0/+2
| | | | | | | | | | | | | | | | | | [ChangeLog][Controls] Added MenuSeparator to visually distinguish between groups of items in a menu. Change-Id: I7a52910b19633ed1188c90ca56c92346a28d4d5c Task-number: QTBUG-54862 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Update plugins.qmltypes for templates and controlsJ-P Nurmi2016-07-221-31/+235
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For src/imports/templates, simply running 'make qmltypes' does the job. With src/imports/controls, we must help qmlplugindump a bit: - pass the correct dependencies in a JSON file (or else qmlimportscanner will find .impl imports, which qmlplugindump will fail to import as stand-alone modules) - merge with the plugins.qmltypes from templates to achieve proper type hierarchy The full command for dumping QtQuick.Controls 2.1 types, also seen at the top of src/imports/controls/plugins.qmltypes: qmlplugindump -nonrelocatable QtQuick.Controls 2.1 \ -merge ../templates/plugins.qmltypes \ -dependencies dependencies.json Change-Id: I2d8a24e47e70dd8dd27a2f48fe640faeea8761e2 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add ToolSeparatorMitch Curtis2016-07-211-0/+2
| | | | | | | | | | | | | | | | | | | | ToolSeparator is used to visually distinguish between groups of items in a toolbar by separating them with a line. It can be used in horizontal or vertical toolbars. Task-number: QTBUG-54862 Change-Id: Ie68e680510428ad19e7f80268063af07b61100eb Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Add DialogJ-P Nurmi2016-07-181-0/+2
| | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls] Added Dialog to provide convenience for handling dialog popups. Dialog integrates with DialogButtonBox, and provides convenient accepted() and rejected() signals. Task-number: QTBUG-51090 Change-Id: I776516738b82c0e5726769c054d6f2a956fb616d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Bump up IMPORT_VERSIONs in .pro filesJ-P Nurmi2016-07-151-1/+1
| | | | | | | | | | Change-Id: Icf62245d16d9f7c2b3652eec267115b41916149b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | SwipeDelegate: add swipe.close()Mitch Curtis2016-07-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | This allows users to close the swipe after an action has been triggered, for example. [ChangeLog][SwipeDelegate] Added swipe.close() for setting swipe.position to 0. Change-Id: Ib12a6592ac1ba46baafd88a41ea8f297599c7bbc Task-number: QTBUG-54651 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Popup: expose flip APIJ-P Nurmi2016-07-091-0/+1
| | | | | | | | | | | | | | | | | | [ChangeLog][Popup] Added allowVerticalFlip and allowHorizontalFlip properties to control whether flipping is allowed to fit a popup inside the window. Change-Id: Id14a8846a1e2d07e98207da7c2b2765c202dbaf9 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add hover support to TextArea & TextFieldJ-P Nurmi2016-06-291-0/+2
| | | | | | | | | | | | Task-number: QTBUG-50003 Change-Id: Ie101ba8840fba2a7503da8de77d9cf2a3c91d562 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | RangeSlider: add first.hovered and second.hovered propertiesJ-P Nurmi2016-06-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | The actual hover effects are coming in separate patches. [ChangeLog][RangeSlider] Added first.hovered and second.hovered properties that hold whether the respective handles are hovered. Change-Id: I3ffeed5de6c9a168534c8e9d4f1642161fc52caf Task-number: QTBUG-50003 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | SpinBox: add up.hovered and down.hovered propertiesJ-P Nurmi2016-06-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | The actual hover effects are coming in separate patches. [ChangeLog][SpinBox] Added up.hovered and down.hovered properties that hold whether the respective buttons are hovered. Task-number: QTBUG-50003 Change-Id: Ie47329e23326f40e4c807703ff7a97437f68deb4 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Tumbler: add wrap propertyMitch Curtis2016-06-281-0/+1
| | | | | | | | | | | | | | | | | | [ChangeLog][Tumbler] Added wrap property to control whether or not tumbler wraps when it reaches the top and bottom. Change-Id: I27c543d98f7bc574bc5dc882a130abe0dcc13cea Task-number: QTBUG-53587 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Reorganize templates & calendar docsJ-P Nurmi2016-06-212-0/+117
| | | | | | | | | | Change-Id: I0e7a20805fe4823564ee2b312a635d08fa978327 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Add QQuickContainer::increment|decrementCurrentIndex()J-P Nurmi2016-06-201-0/+1
| | | | | | | | | | | | | | | | | | [ChangeLog][Container] Added incrementCurrentIndex() and decrementCurrentIndex() methods for changing the current index without losing its property binding. Change-Id: Id44e0db5e3d0951eb77b0124a83c5eb3df898012 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add DialogButtonBoxJ-P Nurmi2016-06-151-0/+3
| | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls] Added DialogButtonBox to provide convenience for handling dialog buttons. DialogButtonBox is able to create a set of standard buttons with a single line of QML code, and provides convenient accepted() and rejected() signals. Task-number: QTBUG-51090 Change-Id: I9b3c6ba1b2836dadf9a2ac9086be1eba214e7c4d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Slider: expose valueAt(pos) for getting continuous value updatesJ-P Nurmi2016-06-131-0/+1
| | | | | | | | | | | | | | | | | | [ChangeLog][Slider] Added valueAt() method for getting continuous value updates. Task-number: QTBUG-53847 Change-Id: I0aa813c7105faa64b714ab0a0630f79d97a58854 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Templates: fix QML type registration revisionsJ-P Nurmi2016-06-071-3/+3
| | | | | | | | | | Change-Id: I393c9fbb29a00e3e081a51103913e2e22166af2d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add ButtonGroup::clicked(AbstractButton) signalJ-P Nurmi2016-06-061-0/+1
| | | | | | | | | | | | | | | | [ChangeLog][ButtonGroup] Added clicked(AbstractButton) signal for centralized click handling for grouped buttons. Change-Id: Ib64d360db211d2763f6237e411152a2a395fd2b5 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | StackView: add attached activated() etc. signalsJ-P Nurmi2016-06-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | For initializing and cleaning up item-specific resources, these are much more convenient than a StackView.onStatusChanged handler. [ChangeLog][StackView] Added attached activated(), deactivated(), activating(), and deactivating() signals that are convenient for initializing and cleaning up item-specific resources. Change-Id: If8df45b31a14cd2491db2c87eeb1c071af4e695f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | SwipeView: add isNextItem and isPreviousItem attached propertiesJ-P Nurmi2016-06-062-0/+5
|/ | | | | | | | | [ChangeLog][SwipeView] Added isNextItem and isPreviousItem attached properties to make it straight-forward to use Loader for unloading pages that are outside the reach. Change-Id: Idb97d64282afaef58cc3302d3f558900a0d7d4b5 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Templates: add missing QML type registrationsJ-P Nurmi2016-05-271-0/+6
| | | | | Change-Id: Ida61ff0290e92fd1df230636b558480d4831051f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Update plugins.qmltypesMitch Curtis2016-05-231-10/+10
| | | | | Change-Id: I289b31aa989ef1b3eb172394a94ce9ae81e02098 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* SwipeDelegate: rename exposure to swipe, active to completeMitch Curtis2016-05-231-1/+1
| | | | | | | | | "swipe" is both shorter and easier to understand. "complete" is easier to understand. Task-number: QTBUG-53519 Change-Id: I87ecba4ac878f033111ee56fa618b80b227858a7 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* ComboBox: increase/decrease() => increment/decrementCurrentIndex()J-P Nurmi2016-05-201-2/+2
| | | | | | | | | ComboBox does not have a value-property, unlike Slider, SpinBox, Dial, and ScrollBar. Change-Id: I9832ef8df1532d4cb85b981b164c7c85e8a82135 Task-number: QTBUG-53519 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-05-191-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/imports/controls/doc/qtlabscontrols.qdocconf src/imports/controls/doc/qtquickcontrols2.qdocconf src/imports/controls/material/qtlabsmaterialstyleplugin.cpp src/imports/controls/material/qtquickcontrols2materialstyleplugin.cpp src/imports/controls/qtlabscontrolsplugin.cpp src/imports/controls/qtquickcontrols2plugin.cpp src/imports/templates/qtlabstemplatesplugin.cpp src/imports/templates/qtquicktemplates2plugin.cpp Change-Id: I6159e681b77e4a0a293b6bd7fb11a46d58873da0