diff options
Diffstat (limited to 'src')
28 files changed, 139 insertions, 60 deletions
diff --git a/src/controls/Private/FastGlow.qml b/src/controls/Private/FastGlow.qml index 6fcb6d4b0..79a9a92a3 100644 --- a/src/controls/Private/FastGlow.qml +++ b/src/controls/Private/FastGlow.qml @@ -38,7 +38,7 @@ ** ****************************************************************************/ -import QtQuick 2.2 +import QtQuick 2.4 Item { id: rootItem @@ -64,7 +64,7 @@ Item { hideSource: visible } - property string __internalBlurVertexShader: rootItem.window.glslIsCoreProfile ? "#version 150 + property string __internalBlurVertexShader: OpenGLInfo.profile === OpenGLInfo.CoreProfile ? "#version 150 in vec4 qt_Vertex; in vec2 qt_MultiTexCoord0; uniform mat4 qt_Matrix; @@ -101,7 +101,7 @@ Item { gl_Position = qt_Matrix * qt_Vertex; } " - property string __internalBlurFragmentShader: rootItem.window.glslIsCoreProfile ? "#version 150 + property string __internalBlurFragmentShader: OpenGLInfo.profile === OpenGLInfo.CoreProfile ? "#version 150 uniform sampler2D source; uniform float qt_Opacity; in vec2 qt_TexCoord0; @@ -392,7 +392,7 @@ Item { onLodChanged: calculateWeights() - fragmentShader: rootItem.window.glslIsCoreProfile ? "#version 150 + fragmentShader: rootItem.OpenGLInfo.profile === OpenGLInfo.CoreProfile ? "#version 150 uniform sampler2D source1; uniform sampler2D source2; uniform sampler2D source3; diff --git a/src/controls/Private/qquickcontrolsettings.cpp b/src/controls/Private/qquickcontrolsettings.cpp index 76c175e3d..7d5a52712 100644 --- a/src/controls/Private/qquickcontrolsettings.cpp +++ b/src/controls/Private/qquickcontrolsettings.cpp @@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE static QString defaultStyleName() { //Only enable QStyle support when we are using QApplication -#if !defined(Q_OS_IOS) && !defined(Q_OS_ANDROID) && !defined(Q_OS_BLACKBERRY) && !defined(Q_OS_QNX) && !defined(Q_OS_WINRT) +#if defined(QT_WIDGETS_LIB) && !defined(Q_OS_IOS) && !defined(Q_OS_ANDROID) && !defined(Q_OS_BLACKBERRY) && !defined(Q_OS_QNX) && !defined(Q_OS_WINRT) if (QCoreApplication::instance()->inherits("QApplication")) return QLatin1String("Desktop"); #elif defined(Q_OS_ANDROID) diff --git a/src/controls/Private/qquickstyleitem.cpp b/src/controls/Private/qquickstyleitem.cpp index 3a6752fd8..64240feb7 100644 --- a/src/controls/Private/qquickstyleitem.cpp +++ b/src/controls/Private/qquickstyleitem.cpp @@ -1791,7 +1791,7 @@ QSGNode *QQuickStyleItem::updatePaintNode(QSGNode *node, UpdatePaintNodeData *) QSGNinePatchNode *styleNode = static_cast<QSGNinePatchNode *>(node); if (!styleNode) { - styleNode = QQuickItemPrivate::get(this)->sceneGraphContext()->createQStyleNode(); + styleNode = QQuickItemPrivate::get(this)->sceneGraphContext()->createNinePatchNode(); if (!styleNode) styleNode = new QQuickStyleNode; } diff --git a/src/controls/Private/qquicktooltip.cpp b/src/controls/Private/qquicktooltip.cpp index e09a6b762..30ac58eed 100644 --- a/src/controls/Private/qquicktooltip.cpp +++ b/src/controls/Private/qquicktooltip.cpp @@ -44,6 +44,7 @@ #include <qquickitem.h> #include <private/qguiapplication_p.h> #include <qpa/qplatformintegration.h> +#include <QtQuick/private/qquickrendercontrol_p.h> #ifdef QT_WIDGETS_LIB #include <qtooltip.h> @@ -64,8 +65,12 @@ void QQuickTooltip::showText(QQuickItem *item, const QPointF &pos, const QString #ifdef QT_WIDGETS_LIB if (QGuiApplicationPrivate::platformIntegration()-> hasCapability(QPlatformIntegration::MultipleWindows) && - QCoreApplication::instance()->inherits("QApplication")) - QToolTip::showText(item->window()->mapToGlobal(item->mapToScene(pos).toPoint()), str); + QCoreApplication::instance()->inherits("QApplication")) { + QWindow *renderWindow = QQuickRenderControl::renderWindowFor(item->window()); + QWindow *window = renderWindow ? renderWindow : item->window(); + QPoint mappedPos = window->mapToGlobal(item->mapToScene(pos).toPoint()); + QToolTip::showText(mappedPos, str); + } #else Q_UNUSED(item); Q_UNUSED(pos); diff --git a/src/controls/Styles/Android/ButtonStyle.qml b/src/controls/Styles/Android/ButtonStyle.qml index 619b5eff6..2a1080513 100644 --- a/src/controls/Styles/Android/ButtonStyle.qml +++ b/src/controls/Styles/Android/ButtonStyle.qml @@ -70,7 +70,7 @@ Style { pressed: control.pressed checked: control.checked focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef.View_background } @@ -97,7 +97,7 @@ Style { pressed: control.pressed focused: control.activeFocus selected: control.checked - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef Layout.fillWidth: true } diff --git a/src/controls/Styles/Android/CalendarStyle.qml b/src/controls/Styles/Android/CalendarStyle.qml index 7d872ed81..0b917bdae 100644 --- a/src/controls/Styles/Android/CalendarStyle.qml +++ b/src/controls/Styles/Android/CalendarStyle.qml @@ -65,7 +65,7 @@ CalendarStyle { id: navigationBar text: styleData.title focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: AndroidStyle.styleDef.calendarViewStyle width: parent.width - prevButton.width - nextButton.width height: parent.height @@ -85,7 +85,7 @@ CalendarStyle { anchors.centerIn: parent text: control.__locale.dayName(styleData.dayOfWeek, control.dayOfWeekFormat) focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: AndroidStyle.styleDef.calendarViewStyle.CalendarView_weekDayTextAppearance } } @@ -98,7 +98,7 @@ CalendarStyle { anchors.centerIn: parent text: styleData.weekNumber focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: AndroidStyle.styleDef.calendarViewStyle color: AndroidStyle.colorValue(styleDef.CalendarView_weekNumberColor) } @@ -116,7 +116,7 @@ CalendarStyle { DrawableLoader { height: parent.height focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active active: styleData.selected styleDef: AndroidStyle.styleDef.calendarViewStyle.CalendarView_selectedDateVerticalBar width: 6 // UNSCALED_SELECTED_DATE_VERTICAL_BAR_WIDTH @@ -125,7 +125,7 @@ CalendarStyle { DrawableLoader { height: parent.height focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active anchors.right: parent.right active: styleData.selected styleDef: AndroidStyle.styleDef.calendarViewStyle.CalendarView_selectedDateVerticalBar @@ -139,7 +139,7 @@ CalendarStyle { pressed: styleData.pressed selected: styleData.selected focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: AndroidStyle.styleDef.calendarViewStyle.CalendarView_dateTextAppearance color: styleData.valid && styleData.visibleMonth ? AndroidStyle.colorValue(AndroidStyle.styleDef.calendarViewStyle.CalendarView_focusedMonthDateColor) : AndroidStyle.colorValue(AndroidStyle.styleDef.calendarViewStyle.CalendarView_unfocusedMonthDateColor) diff --git a/src/controls/Styles/Android/CheckBoxStyle.qml b/src/controls/Styles/Android/CheckBoxStyle.qml index 9abe76d03..908665d01 100644 --- a/src/controls/Styles/Android/CheckBoxStyle.qml +++ b/src/controls/Styles/Android/CheckBoxStyle.qml @@ -63,7 +63,7 @@ Style { pressed: control.pressed checked: control.checked focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef.CompoundButton_button anchors.verticalCenter: parent.verticalCenter } @@ -74,7 +74,7 @@ Style { pressed: control.pressed focused: control.activeFocus selected: control.checked - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef anchors.fill: parent diff --git a/src/controls/Styles/Android/ComboBoxStyle.qml b/src/controls/Styles/Android/ComboBoxStyle.qml index 025231c43..715dd9f69 100644 --- a/src/controls/Styles/Android/ComboBoxStyle.qml +++ b/src/controls/Styles/Android/ComboBoxStyle.qml @@ -81,7 +81,7 @@ Style { anchors.fill: parent pressed: control.pressed focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef.View_background } @@ -91,7 +91,7 @@ Style { visible: !control.editable pressed: control.pressed focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef anchors.fill: bg diff --git a/src/controls/Styles/Android/CursorHandleStyle.qml b/src/controls/Styles/Android/CursorHandleStyle.qml index 8f1cff4f3..97b9fe857 100644 --- a/src/controls/Styles/Android/CursorHandleStyle.qml +++ b/src/controls/Styles/Android/CursorHandleStyle.qml @@ -54,7 +54,7 @@ DrawableLoader { pressed: styleData.pressed focused: control.activeFocus - window_focused: focused && control.window && control.window.active + window_focused: focused && control.Window.active Connections { target: editor diff --git a/src/controls/Styles/Android/GroupBoxStyle.qml b/src/controls/Styles/Android/GroupBoxStyle.qml index d974635e8..b7346ea43 100644 --- a/src/controls/Styles/Android/GroupBoxStyle.qml +++ b/src/controls/Styles/Android/GroupBoxStyle.qml @@ -38,6 +38,7 @@ ** ****************************************************************************/ import QtQuick 2.2 +import QtQuick.Window 2.2 import QtQuick.Controls 1.2 import QtQuick.Controls.Private 1.0 import QtQuick.Controls.Styles.Android 1.0 @@ -98,7 +99,7 @@ GroupBoxStyle { checked: control.checked pressed: check.pressed focused: check.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: AndroidStyle.styleDef.checkboxStyle.CompoundButton_button anchors.verticalCenter: label.verticalCenter width: control.checkable ? item.implicitWidth : 0 @@ -110,7 +111,7 @@ GroupBoxStyle { pressed: check.pressed selected: control.checked focused: check.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: AndroidStyle.styleDef.checkboxStyle anchors.top: parent.top diff --git a/src/controls/Styles/Android/RadioButtonStyle.qml b/src/controls/Styles/Android/RadioButtonStyle.qml index b8447ad62..76b2c9b7c 100644 --- a/src/controls/Styles/Android/RadioButtonStyle.qml +++ b/src/controls/Styles/Android/RadioButtonStyle.qml @@ -63,7 +63,7 @@ Style { pressed: control.pressed checked: control.checked focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef.CompoundButton_button anchors.verticalCenter: parent.verticalCenter } @@ -74,7 +74,7 @@ Style { pressed: control.pressed focused: control.activeFocus selected: control.checked - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef anchors.fill: parent diff --git a/src/controls/Styles/Android/ScrollViewStyle.qml b/src/controls/Styles/Android/ScrollViewStyle.qml index 0105b9cb4..3a0267591 100644 --- a/src/controls/Styles/Android/ScrollViewStyle.qml +++ b/src/controls/Styles/Android/ScrollViewStyle.qml @@ -73,7 +73,7 @@ ScrollViewStyle { styleDef: styleData.horizontal ? AndroidStyle.styleDef.scrollViewStyle.View_scrollbarTrackHorizontal : AndroidStyle.styleDef.scrollViewStyle.View_scrollbarTrackVertical focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active } } @@ -82,6 +82,6 @@ ScrollViewStyle { : AndroidStyle.styleDef.scrollViewStyle.View_scrollbarThumbVertical pressed: styleData.pressed focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active } } diff --git a/src/controls/Styles/Android/SliderStyle.qml b/src/controls/Styles/Android/SliderStyle.qml index cca431434..1b160ffcc 100644 --- a/src/controls/Styles/Android/SliderStyle.qml +++ b/src/controls/Styles/Android/SliderStyle.qml @@ -84,7 +84,7 @@ Style { id: thumb pressed: control.pressed focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef.SeekBar_thumb x: Math.round((control.__handlePos - control.minimumValue) / (control.maximumValue - control.minimumValue) * ((horizontal ? panel.width : panel.height) - thumb.width)) } diff --git a/src/controls/Styles/Android/SpinBoxStyle.qml b/src/controls/Styles/Android/SpinBoxStyle.qml index cbd52c586..86fce0349 100644 --- a/src/controls/Styles/Android/SpinBoxStyle.qml +++ b/src/controls/Styles/Android/SpinBoxStyle.qml @@ -68,7 +68,7 @@ Style { id: bg anchors.fill: parent focused: control.activeFocus - window_focused: focused && control.window && control.window.active + window_focused: focused && control.Window.active styleDef: panel.styleDef.View_background } @@ -93,7 +93,7 @@ Style { visible: false text: control.__text focused: control.activeFocus - window_focused: focused && control.window && control.window.active + window_focused: focused && control.Window.active styleDef: panel.styleDef } } diff --git a/src/controls/Styles/Android/SwitchStyle.qml b/src/controls/Styles/Android/SwitchStyle.qml index 13bbd3565..4c36c918e 100644 --- a/src/controls/Styles/Android/SwitchStyle.qml +++ b/src/controls/Styles/Android/SwitchStyle.qml @@ -72,7 +72,7 @@ SwitchStyle { pressed: control.pressed checked: control.checked focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef.Switch_track } @@ -114,7 +114,7 @@ SwitchStyle { pressed: control.pressed checked: control.checked focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef.Switch_thumb } @@ -125,7 +125,7 @@ SwitchStyle { pressed: control.pressed focused: control.activeFocus selected: control.checked - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef.Switch_switchTextAppearance anchors.fill: parent diff --git a/src/controls/Styles/Android/TabViewStyle.qml b/src/controls/Styles/Android/TabViewStyle.qml index 6ce1e4bb2..107ac8537 100644 --- a/src/controls/Styles/Android/TabViewStyle.qml +++ b/src/controls/Styles/Android/TabViewStyle.qml @@ -71,7 +71,7 @@ Style { id: loader anchors.fill: parent focused: control.activeFocus - window_focused: focused && control.window && control.window.active + window_focused: focused && control.Window.active styleDef: panel.styleDef.ActionBar_backgroundStacked } } @@ -94,7 +94,7 @@ Style { pressed: styleData.pressed selected: styleData.selected focused: styleData.activeFocus - window_focused: focused && control.window && control.window.active + window_focused: focused && control.Window.active styleDef: AndroidStyle.styleDef.actionBarTabStyle.View_background } @@ -107,7 +107,7 @@ Style { pressed: styleData.pressed selected: styleData.selected focused: styleData.activeFocus - window_focused: focused && control.window && control.window.active + window_focused: focused && control.Window.active styleDef: AndroidStyle.styleDef.actionBarTabBarStyle.LinearLayout_divider visible: styleData.index < control.count - 1 && control.count > 1 } @@ -119,7 +119,7 @@ Style { enabled: styleData.enabled focused: styleData.activeFocus selected: styleData.selected - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: AndroidStyle.styleDef.actionBarTabTextStyle anchors.fill: bg diff --git a/src/controls/Styles/Android/TableViewStyle.qml b/src/controls/Styles/Android/TableViewStyle.qml index dd352af44..2cf6745fd 100644 --- a/src/controls/Styles/Android/TableViewStyle.qml +++ b/src/controls/Styles/Android/TableViewStyle.qml @@ -68,7 +68,7 @@ ScrollViewStyle { DrawableLoader { id: bg anchors.fill: parent - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: parent.styleDef.View_background } @@ -77,7 +77,7 @@ ScrollViewStyle { text: styleData.value !== undefined ? styleData.value : "" horizontalAlignment: styleData.textAlignment pressed: styleData.pressed - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: parent.styleDef anchors.fill: parent anchors.leftMargin: paddingStart @@ -97,7 +97,7 @@ ScrollViewStyle { pressed: styleData.pressed checked: styleData.selected selected: styleData.selected - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: AndroidStyle.styleDef.simple_selectable_list_item.View_background } @@ -128,7 +128,7 @@ ScrollViewStyle { pressed: styleData.pressed focused: control.activeFocus selected: styleData.selected - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: parent.styleDef anchors.left: parent.left anchors.right: parent.right diff --git a/src/controls/Styles/Android/TextAreaStyle.qml b/src/controls/Styles/Android/TextAreaStyle.qml index bd1e5956f..61ea9fb85 100644 --- a/src/controls/Styles/Android/TextAreaStyle.qml +++ b/src/controls/Styles/Android/TextAreaStyle.qml @@ -68,7 +68,7 @@ ScrollViewStyle { visible: false enabled: control.enabled focused: control.activeFocus - window_focused: focused && control.window && control.window.active + window_focused: focused && control.Window.active styleDef: style.styleDef } diff --git a/src/controls/Styles/Android/TextFieldStyle.qml b/src/controls/Styles/Android/TextFieldStyle.qml index f56584430..e7eec32c6 100644 --- a/src/controls/Styles/Android/TextFieldStyle.qml +++ b/src/controls/Styles/Android/TextFieldStyle.qml @@ -66,7 +66,7 @@ Style { id: bg anchors.fill: parent focused: control.activeFocus - window_focused: focused && control.window && control.window.active + window_focused: focused && control.Window.active styleDef: panel.styleDef.View_background } @@ -86,7 +86,7 @@ Style { visible: false text: control.text focused: control.activeFocus - window_focused: focused && control.window && control.window.active + window_focused: focused && control.Window.active styleDef: panel.styleDef } } diff --git a/src/controls/Styles/Android/ToolBarStyle.qml b/src/controls/Styles/Android/ToolBarStyle.qml index 5592d7560..3446e7d44 100644 --- a/src/controls/Styles/Android/ToolBarStyle.qml +++ b/src/controls/Styles/Android/ToolBarStyle.qml @@ -70,7 +70,7 @@ Style { id: bg anchors.fill: parent focused: control.activeFocus - window_focused: focused && control.window && control.window.active + window_focused: focused && control.Window.active styleDef: panel.styleDef.ActionBar_backgroundStacked } } diff --git a/src/controls/Styles/Android/ToolButtonStyle.qml b/src/controls/Styles/Android/ToolButtonStyle.qml index 3d415a4b9..33d922207 100644 --- a/src/controls/Styles/Android/ToolButtonStyle.qml +++ b/src/controls/Styles/Android/ToolButtonStyle.qml @@ -72,7 +72,7 @@ Style { pressed: control.pressed checked: control.checked focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef.View_background } @@ -99,7 +99,7 @@ Style { pressed: control.pressed focused: control.activeFocus selected: control.checked - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: panel.styleDef Layout.fillWidth: true } @@ -110,7 +110,7 @@ Style { pressed: control.pressed checked: control.checked focused: control.activeFocus - window_focused: control.window && control.window.active + window_focused: control.Window.active styleDef: AndroidStyle.styleDef.actionOverflowButtonStyle.ImageView_src Layout.alignment: Qt.AlignCenter } diff --git a/src/controls/TextField.qml b/src/controls/TextField.qml index 01ea28457..5c602ee4b 100644 --- a/src/controls/TextField.qml +++ b/src/controls/TextField.qml @@ -624,7 +624,6 @@ Control { clip: contentWidth > width; elide: Text.ElideRight renderType: __style ? __style.renderType : Text.NativeRendering - Behavior on opacity { NumberAnimation { duration: 90 } } } TextInputWithHandles { diff --git a/src/controls/doc/images/qtquickcontrols-example-calendar.png b/src/controls/doc/images/qtquickcontrols-example-calendar.png Binary files differindex 57db0a122..2ae7952fb 100644 --- a/src/controls/doc/images/qtquickcontrols-example-calendar.png +++ b/src/controls/doc/images/qtquickcontrols-example-calendar.png diff --git a/src/controls/doc/src/qtquickcontrols-examples.qdoc b/src/controls/doc/src/qtquickcontrols-examples.qdoc index 7c971fa66..1a838e0ec 100644 --- a/src/controls/doc/src/qtquickcontrols-examples.qdoc +++ b/src/controls/doc/src/qtquickcontrols-examples.qdoc @@ -149,11 +149,86 @@ \example calendar \title Qt Quick Controls - Calendar Example \ingroup qtquickcontrols_examples - \brief Demonstrates the use of Calendar to display events + \brief Demonstrates the use of Calendar control \image qtquickcontrols-example-calendar.png - This example shows how Calendar can be used to view events retrieved from - an SQL database. + The Calendar example displays a Calendar control and an events list for + the selected date. It uses a C++ class to fetch the event details from an + SQLite database. The example app uses a custom CalendarStyle to highlight + the selected date and mark the dates that have events. + The following snippet from \e main.qml shows how the Calendar control is + used in the app: + + \code + Calendar { + id: calendar + width: (parent.width > parent.height ? parent.width * 0.6 - parent.spacing : parent.width) + height: (parent.height > parent.width ? parent.height * 0.6 - parent.spacing : parent.height) + frameVisible: true + weekNumbersVisible: true + selectedDate: new Date(2014, 0, 1) + focus: true + + style: CalendarStyle { + dayDelegate: Item { + ... + } + } + } + \endcode + + The C++ class, SqlEventModel, inherits SqlQueryModel to create a database + with dummy events for certain dates. + + \quotefromfile calendar/src/sqleventmodel.cpp + \skipto SqlEventModel::SqlEventModel() + \printto QList + \skipto void SqlEventModel + \printuntil /\^} + + In \e main.qml, the SqlEventModel custom type is used to get the list of + events to mark the dates on the calendar. + + \code + SqlEventModel { + id: eventModel + } + + Calendar { + ... + style: CalendarStyle { + dayDelegate: Item { + ... + Image { + visible: eventModel.eventsForDate(styleData.date).length > 0 + ... + source: "qrc:/images/eventindicator.png" + } + } + } + } + \endcode + + The app uses a Flow type to position the items, and manipulates the + items' width and height based on the orientation change on mobile devices. + + \code + Calendar { + id: calendar + width: (parent.width > parent.height ? parent.width * 0.6 - parent.spacing : parent.width) + height: (parent.height > parent.width ? parent.height * 0.6 - parent.spacing : parent.height) + } + + Rectangle { + width: (parent.width > parent.height ? parent.width * 0.4 - parent.spacing : parent.width) + height: (parent.height > parent.width ? parent.height * 0.4 - parent.spacing : parent.height) + border.color: Qt.darker(color, 1.2) + + ListView { + ... + } + } + \endcode \include examples-run.qdocinc */ diff --git a/src/controls/qquickmenupopupwindow.cpp b/src/controls/qquickmenupopupwindow.cpp index 24dfcaaf5..e730847cb 100644 --- a/src/controls/qquickmenupopupwindow.cpp +++ b/src/controls/qquickmenupopupwindow.cpp @@ -118,12 +118,11 @@ void QQuickMenuPopupWindow::setGeometry(int posx, int posy, int w, int h) void QQuickMenuPopupWindow::updateSize() { - QSize contentSize = popupContentItem()->childrenRect().size().toSize(); qreal x = m_initialPos.x(); qreal y = m_initialPos.y(); if (qGuiApp->layoutDirection() == Qt::RightToLeft) - x -= contentSize.width(); - setGeometry(x, y, contentSize.width(), contentSize.height()); + x -= popupContentItem()->width(); + setGeometry(x, y, popupContentItem()->width(), popupContentItem()->height()); } void QQuickMenuPopupWindow::updatePosition() diff --git a/src/controls/qquickpopupwindow.cpp b/src/controls/qquickpopupwindow.cpp index 56f4c351a..bcd2837fd 100644 --- a/src/controls/qquickpopupwindow.cpp +++ b/src/controls/qquickpopupwindow.cpp @@ -143,8 +143,7 @@ void QQuickPopupWindow::setPopupContentItem(QQuickItem *contentItem) void QQuickPopupWindow::updateSize() { - QSize contentSize = popupContentItem()->childrenRect().size().toSize(); - setGeometry(x(), y(), contentSize.width(), contentSize.height()); + setGeometry(x(), y(), popupContentItem()->width(), popupContentItem()->height()); emit geometryChanged(); } diff --git a/src/dialogs/DefaultColorDialog.qml b/src/dialogs/DefaultColorDialog.qml index f0f021b1a..efb893b6a 100644 --- a/src/dialogs/DefaultColorDialog.qml +++ b/src/dialogs/DefaultColorDialog.qml @@ -38,7 +38,7 @@ ** *****************************************************************************/ -import QtQuick 2.2 +import QtQuick 2.4 import QtQuick.Controls 1.2 import QtQuick.Dialogs 1.0 import QtQuick.Window 2.1 @@ -136,7 +136,7 @@ AbstractColorDialog { anchors.centerIn: parent property real hue: hueSlider.value - fragmentShader: content.window && content.window.glslIsCoreProfile ? "#version 150 + fragmentShader: content.OpenGLInfo.profile === OpenGLInfo.CoreProfile ? "#version 150 in vec2 qt_TexCoord0; uniform float qt_Opacity; uniform float hue; diff --git a/src/dialogs/DefaultFontDialog.qml b/src/dialogs/DefaultFontDialog.qml index 20377dc1b..6c308caf4 100644 --- a/src/dialogs/DefaultFontDialog.qml +++ b/src/dialogs/DefaultFontDialog.qml @@ -125,7 +125,7 @@ AbstractFontDialog { id: fontListView Layout.fillWidth: true Layout.fillHeight: true - Layout.minimumWidth: fontColumn.width + content.outerSpacing + Layout.minimumWidth: fontColumn.width headerVisible: false function reset() { fontModel.findIndex() @@ -184,6 +184,7 @@ AbstractFontDialog { content.font.family = fontModel.get(row).family positionViewAtRow(row, ListView.Contain) } + } TableView { id: weightListView |
