aboutsummaryrefslogtreecommitdiffstats
path: root/src/imports/controls/fusion
Commit message (Collapse)AuthorAgeFilesLines
* QQuickPopupItem: inherit QQuickPaneJ-P Nurmi2018-04-063-9/+0
| | | | | Change-Id: Ia32f3004cf540f995344286683d754558369f279 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fusion: remove useless ScrollView.qmlJ-P Nurmi2018-04-052-66/+0
| | | | | | | | | It's identical to Default/ScrollView.qml, which gets selected as a fallback by the style selector. None of the other styles have ScrollView.qml either. Change-Id: If3cdba4ba4810df1a2b389356c45fb7b0c5c58b6 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickScrollView: inherit QQuickPaneJ-P Nurmi2018-04-051-3/+0
| | | | | | | | | This allows us to remove duplicate properties, and ScrollView gets Pane's automatic content size calculation, which allows us to remove the respective QML bindings. Change-Id: I96ba98c12d0bf294f19b2c2b3617bfc88326bb41 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickControl: update baseline offset automaticallyJ-P Nurmi2018-04-0417-17/+0
| | | | | | | | | | | | ...unless explicitly defined. All buttons repeated the same binding. [ChangeLog][Controls][Control] Unless explicitly specified, baselineOffset is now automatically updated based on the top padding of the control and the baselineOffset of the contentItem. Styles no longer need to specify the baselineOffset in QML. Change-Id: I9c6f61371fee05a06b5dd31b27d8baf9da0bdeeb Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Inherit QQuickPage from QQuickPaneJ-P Nurmi2018-03-091-3/+0
| | | | | | | | This allows us to remove a lot of duplicate code, and Page gets the same automatic content size calculation that was added to Pane. Change-Id: I98dc3a5070d61c1720dc11003bc4076aba481b3a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickPane: calculate content size in C++ unless explicitly definedJ-P Nurmi2018-03-094-12/+0
| | | | | | | | | | | | | | No more need for the clumsy and slow contentWidth and contentHeight bindings in Pane and its derivatives. QmlBench on TX1: Pane: 26.4 -> 32.8 frames (~24%) Frame: 25.4 -> 31 frames (~22%) GroupBox: 28.6 -> 32 frames (~12%) Change-Id: I4ba1d46ba6328de2ee0955c241d4b090127f6b85 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Merge remote-tracking branch 'origin/5.11' into devJ-P Nurmi2018-03-011-1/+3
|\ | | | | | | | | | | | | Conflicts: src/quickcontrols2/qquicktheme.cpp Change-Id: I874011d32a379bf982f760c39c46d3a25e2452d6
| * Fusion: fix BusyIndicatorJ-P Nurmi2018-03-011-1/+3
| | | | | | | | | | | | | | | | | | When running is set to true, QQuickFusionBusyIndicator, which is a QQuickPaintedItem sub-class, must trigger an update. Task-number: QTBUG-66752 Change-Id: I848a0008d7c8bd3f26f5daf54881c80cc6ba557e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Bump module versionsJ-P Nurmi2018-03-012-2/+2
| | | | | | | | | | Change-Id: Ifcb0b333769be58263ec5ed662520b97cfc2f79c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Bump import versionsJ-P Nurmi2018-03-0152-258/+258
| | | | | | | | | | | | | | | | QT_VERSION in qtbase has been updated. All the import numbers that now follow the Qt version can be updated. Change-Id: I4e9698201766b39807737c9e0279d36d4da686e2 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Use horizontal|verticalPaddingJ-P Nurmi2018-03-012-4/+2
| | | | | | | | | | | | | | A follow-up commit to 13d56b5. Somehow these were missed. Change-Id: Ief9831797cdda81dd3430b0df0aed2a6050093ca Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devLiang Qi2018-02-272-2/+2
|\| | | | | | | | | | | | | Conflicts: tests/auto/controls/data/tst_dialogbuttonbox.qml Change-Id: I39ea99d988aaa7d1afd35d573cca44d009b859ce
| * Update versions in the docs and .prosJ-P Nurmi2018-02-262-2/+2
| | | | | | | | | | Change-Id: I5b4af1ddfe8c4583731f5a90082d803298bdf9bd Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Use horizontal|verticalPaddingJ-P Nurmi2018-02-232-4/+2
| | | | | | | | | | Change-Id: I564bf29a859f29d83c94c4428737c0846c1baadb Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Bump QtQuick.Templates import versionsJ-P Nurmi2018-02-2342-42/+42
| | | | | | | | | | | | | | | | | | | | Unlike the other imports that are waiting for a Qt version bump, QtQuick.Templates contains version 2.5 registrations and is therefore already available. Bump the template imports to make the newly added APIs available, so we can start using horizontal|verticalPadding. Change-Id: I651feeeeadcc9767904ca6f191e844a03b8ddea6 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | QQuickTextArea: add placeholderTextColor propertyYulong Bai2018-02-211-3/+3
| | | | | | | | | | | | | | | | | | | | | | Add placeholderTextColor property for user convenience to customize the placeholderText color to fit the backgrounds. [ChangeLog][TextArea] Added placeholderTextColor property for user convenience to customize the placeholderText color to fit the backgrounds. Change-Id: Iea0233f909ca9cfe19d88f9bc24691aa35b5ab35 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devJ-P Nurmi2018-02-191-2/+2
|\| | | | | | | Change-Id: Id375217229c7f7dc7a8a2dc7edcfd56bbe403952
| * GroupBox: fix background y and height assignmentsMitch Curtis2018-02-161-2/+2
| | | | | | | | | | | | | | Use the more specific bottomPadding rather than padding. Change-Id: Ib8823d6d9b07eaea97479ef432df0868b1b5d37d Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Add DialogButtonBox::buttonLayoutJ-P Nurmi2018-02-171-1/+1
| | | | | | | | | | | | | | | | [ChangeLog][Controls][DialogButtonBox] Added buttonLayout property that can be used to arrange the buttons. Change-Id: I9160e5df86a0c9444b45ed9f585c50166c145671 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | TextField: restore placeholder text color fixesJ-P Nurmi2018-02-161-1/+1
| | | | | | | | | | | | | | | | | | | | The default values of the placeholder text colors were tweaked in b9584b1, but this was overridden by 77a693c that added a new placeholderTextColor property. Task-number: QTBUG-66176 Change-Id: I706388abdcc19a1c603e76353da79217076a2179 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | QQuickTextField: add placeholderTextColor propertyYulong Bai2018-02-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Add placeholderTextColor property for user convenience to customize the placeholderText color to fit the backgrounds. [ChangeLog][TextField] Added placeholderTextColor property for user convenience to customize the placeholderText color to fit the backgrounds. Task-number: QTBUG-66260 Change-Id: I9755ea5ccf2ff416846bdf130dbd352892fd40a2 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devJ-P Nurmi2018-02-153-8/+2
|\| | | | | | | Change-Id: Id3333e9bb67ced4c6dbae5845512fe1927a7b858
| * Merge remote-tracking branch 'origin/5.10' into 5.11Liang Qi2018-02-122-2/+2
| |\ | | | | | | | | | Change-Id: I2934d3f51fea9626fd2d2512786eb297d9f7fe6c
| | * Editors: tweak placeholder text colorJ-P Nurmi2018-02-052-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using 50% translucent palette.text, use 50% translucent TextField::color (which defaults to palette.text) to make the placeholder text color follow the text color when changed directly without changing the palette. In the future, the placeholder text color should be exposed as a separate property to give users full control. Task-number: QTBUG-66176 Change-Id: I57153ff676be6518f9b48cdbd7da4089daa36853 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | Fix memory leak in QQC2Simon Hausmann2018-02-071-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When repeatedly creating a QQuickView, loading a QML file that imports QQC2 and deleting the view again, we would leak memory that was allocated as a consequence of QML type registration in initializeEngine() callbacks that were called on every iteration. After the limitation of namespacing in the registerTypes() callback of QML module plugins has been lifted, we can move the type registrations into registerTypes() where they belong and which is called only once. Change-Id: I7e314663a69fd8c8529195b56c128b61392c0042 Reviewed-by: J-P Nurmi <jpnurmi@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Michael Winkelmann <michael.winkelmann@qt.io>
* | | Promote QQuick(Proxy)Theme from libQQC2 to libQQT2J-P Nurmi2018-02-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QQuickTheme needs to be part of libQtQuickTemplates to be able to provide dark and light palettes (and later, icons). Task-number: QTBUG-63331 Change-Id: If7d3d279a07b6daf6701a1d3cd3686bec1d094b4 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Read :/qtquickcontrols2.conf in QQuickStylePluginJ-P Nurmi2018-02-152-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QQuickTheme is going to be promoted from libQQC2 to libQQT2 so that it can provide dark and light palettes (and later, icons). The first step is to refactor out the :/qtquickcontrols2.conf reading code, which cannot be in style-agnostic libQQT2. Read the conf file in QQuickStyle Plugin instead. The additional benefit is that we don't need duplicate name() methods for styles and their themes. Even though QQuickStyle Plugin's name handling is case-insensitive, QSetting is case-sensitive. Therefore all QQuickStylePlugin::name() overrides have been updated to use capital first letter. This name is used to lookup the correct section in :/qtquickcontrols2.conf. Task-number: QTBUG-63331 Change-Id: I07b1269d9dbc2c9568e6f22f2da75951fde7b669 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQuickToolTip: add non-attached show() and hide() methodsYulong Bai2018-02-061-1/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | Usually there's only one global ToolTip instance providing attached show() and hide() methods, here we add non-attached ones which would be more flexible to meet different needs. [ChangeLog][ToolTip] Added non-attached show() and hide() methods to make it more flexible to meet certain requirements. Task-number: QTBUG-62890 Change-Id: I432bca202e16a27d0a5a732445242e78b2fb9c3f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Merge remote-tracking branch 'origin/5.10' into devLiang Qi2018-01-201-1/+1
|\| | | | | | | Change-Id: I61d779eb40e3a278aa2ef429e014d351da34f80a
| * Tumbler: qualify references to visibleItemCount with "control"Mitch Curtis2018-01-171-1/+1
| | | | | | | | | | | | | | | | | | | | This code currently works, but we prefer to use control.<property> to access properties directly. A similar patch was done for the styles that were available in 5.9. Change-Id: Iff12162464daa6b10fa8d3f322e0e61632713d08 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Merge remote-tracking branch 'origin/5.10' into devJ-P Nurmi2018-01-1611-88/+73
|\| | | | | | | Change-Id: Ibd1490e8d958361e55ac272dff75c9361239958b
| * ComboBox: fix popup's deferred execution for the new stylesJ-P Nurmi2018-01-151-3/+2
| | | | | | | | | | | | | | | | Same as 3ec6d04d in 5.9, but for the new styles in 5.10. Task-number: QTBUG-50992 Change-Id: I211c0e6c0b290c1af310898f21850f9fad01b278 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Tumbler: cleanup internal IDsJ-P Nurmi2018-01-151-6/+4
| | | | | | | | | | | | | | | | Same as d61567f in 5.9, but for the new styles in 5.10. Task-number: QTBUG-50992 Change-Id: If47df3796eeadb997bfc76ce6dd6a3b14372ff2b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Fusion: eliminate internal IDs to enable deferred executionJ-P Nurmi2018-01-119-79/+67
| | | | | | | | | | | | Task-number: QTBUG-65341 Change-Id: I3bfd36f1d1e275eb507184c376599aa7751a069e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.10' into devLiang Qi2018-01-095-8/+0
|\| | | | | | | | | | | | | | | Conflicts: .qmake.conf src/quicktemplates2/qquickabstractbutton_p.h Change-Id: I265cbd2ce51beaf2afef99292c2e2798dadb4ba3
| * Fusion: cleanup unnecessary property assignmentsJ-P Nurmi2017-12-205-8/+0
| | | | | | | | | | Change-Id: I00abae64fd42e2d4a48e34adb341b1c897192fd3 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add QQuickSpinBox::displayTextJ-P Nurmi2017-10-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allows styles to create a simple binding to display the textual value instead of calling the textFromValue() JS-function. Furthermore, this allows us to do the text<->value conversion in C++ using QLocale by default, unless custom textFromValue and/or valueFromText JS-functions are provided. Before: running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_spinbox.qml 100 frames 100 frames 99 frames Average: 99.6667 frames; using samples; MedianAll=100; StdDev=0.57735, CoV=0.00579281 After: running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_spinbox.qml 152 frames 150 frames 151 frames Average: 151 frames; using samples; MedianAll=151; StdDev=1, CoV=0.00662252 Change-Id: I66a5ebaf685d2c30613b58099724e6e7bbe00504 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Bump import versionsMitch Curtis2017-09-1952-304/+304
| | | | | | | | | | | | | | | | This brings all QtQuick 2.x and QtQuick.Controls.x 2.x imports in src/ up to 2.11 and 2.4, respectively. Change-Id: Ica2413b85f5da62a495a5d1b02ea54a9a92c0ecb Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Fusion: fix type registrationJ-P Nurmi2017-09-121-2/+3
|/ | | | | | | | | | | When the Qt version was bumped to 5.11, QtQuick.Controls.Fusion 2.3 became 2.4 and the 2.3 import was no longer available. We have to combine the QT_VERSION_MINOR based qmlRegisterModule() with a hard coded version that keeps the old version 2.3 available. Task-number: QTBUG-63149 Change-Id: Ie268fa52282342930349f6b7c46052964e7073c2 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Bump QtQuick 2.9 imports to 2.10Mitch Curtis2017-09-0652-52/+52
| | | | | Change-Id: I274146911cd8a204fcbf439da9259b0a38c8092e Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Introduce MenuBarJ-P Nurmi2017-07-263-0/+155
| | | | | | | | | | | | | | MenuBar is an ordinary Item. It can be located basically anywhere, but the idea is to introduce a new ApplicationWindow::menuBar property in a follow-up commit. Currently the example snippets are using the header property. [ChangeLog][Controls][MenuBar] Introduced a MenuBar control. Task-number: QTBUG-60350 Change-Id: Ie66dc457a3d8edbe8362fab2a591dc49442c95e2 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add Overlay attached properties and signalsJ-P Nurmi2017-06-264-1/+33
| | | | | | | | | | | | | | | [ChangeLog][Controls][ApplicationWindow] Deprecated the overlay grouped property in favor of the newly introduced Overlay attached properties. [ChangeLog][Controls][Overlay] Introduced Overlay attached properties and signals that supersede the overlay grouped property in Application Window. The Overlay attached type allows providing background dimming for popups without requiring an ApplicationWindow instance. Task-number: QTBUG-61336 Change-Id: I9df11bcb167e7725014d5f058fe24d70da4a10b3 Reviewed-by: Topi Reiniƶ <topi.reinio@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add Menu::currentIndexJ-P Nurmi2017-06-211-2/+1
| | | | | | | | | | | | | | De-couple current index management from the content item. Instead of manipulating the content item's current index directly from C++, offer a currentIndex property that can be visualized by the style, also when not using a ListView. This is essentially the same technique ComboBox uses to control the highlighted index in the popup ListView. [ChangeLog][Controls][Menu] Added currentIndex property for styling purposes. Change-Id: Idf7746d9c08fc9ca9a0dfd15225ebae5a29243c9 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add support for cascading sub-menusJ-P Nurmi2017-06-132-2/+17
| | | | | | | | | | | | | This commit adds initial support for cascading sub-menus by allowing one to nest declarative Menu declarations. A follow-up commit adds support for adding, inserting, and removing menus programmatically. [ChangeLog][Controls][Menu] Added support for cascading sub-menus. Task-number: QTBUG-60351 Change-Id: I0eee4f74d92a97c09333fcc4348b019782448535 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickMenu: update the highlighted item on mouse hoverJ-P Nurmi2017-06-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | This is the expected behavior on desktop. NOTE: It must be possible to mix mouse hover highlighting, and keyboard navigation in the way that keyboard navigation must seamlessly continue from the item that was previously mouse highlighted. Furthermore, there should be only one item highlighted at a time. In order to be able to respect keyboard navigation while another item is hovered and vice versa, the visual highlight should be bound to MenuItem::highlighted instead of Control::activeFocus or Control::hovered. [ChangeLog][Controls][MenuItem] Menu has been fixed to highlight its items while key navigating and mouse hovering to ensure seamless item highlight between mouse hover and key navigation. In order to provide appropriate highlighting that works for key navigation and mouse hover, styles should bind their visual highlight to MenuItem::highlighted instead of Control::activeFocus or Control::hovered. Change-Id: I70cad5a5b441f2616d1ce2166e97974dc1ae063f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Merge remote-tracking branch 'origin/5.9' into devJ-P Nurmi2017-06-061-1/+2
| | | | | | | | | | | | | Fusion style ComboBox popup height was adjusted according to 90a0d402 to make tst_controls::ComboBox::test_emptyPopupAfterModelCleared pass with the Fusion style. Conflicts: src/imports/controls/ComboBox.qml src/imports/controls/material/ComboBox.qml src/imports/controls/universal/ComboBox.qml Change-Id: I2bad826dc56de9d8952ea2a9ace950c7cf3cbc58
* QQuickMenu: add support for declaring ActionsJ-P Nurmi2017-06-021-0/+2
| | | | | | | | | [ChangeLog][Controls][Menu] Added support for declaring Actions. The new "delegate" property is used to define a Component that is used to create menu items that present the actions. Change-Id: If26f38f6910aa5592879703429a2b418193d5710 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add support for configurable palettesJ-P Nurmi2017-06-022-7/+0
| | | | | | | | | | | | | | | | | | | A style's default palette is specified in qtquickcontrols2.conf in a "Palette" group under the style's section. QSettings supports the following two alternative syntaxes: [Fusion] Palette\Window=#dedede Palette\WindowText=#212121 or [Fusion\Palette] Window=#dedede WindowText=#212121 Change-Id: I01bf44d9e332064e955e95f619de634fcb79f010 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add support for configurable fontsJ-P Nurmi2017-05-312-5/+5
| | | | | | | | | | | | | | | | | | | | | | A style's default font is specified in qtquickcontrols2.conf in a "Font" group under the style's section. QSettings supports the following two alternative syntaxes: [Default] Font\Family=Open Sans Font\PixelSize=20 or [Default\Font] Family=Open Sans PixelSize=20 [ChangeLog][Controls] Added support for specifying the default font for different styles in qtquickcontrols2.conf. Change-Id: I54e1efb79a2913eab35174dbf09b6956fe740e28 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Say hello to the Fusion styleJ-P Nurmi2017-05-3080-0/+5657
[ChangeLog][Controls] Introduced a Fusion style that offers a platform agnostic desktop-oriented look'n'feel. Change-Id: Id1c1baf10f4b3a79e89bcc72f6d170ed0b2cc8b0 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>