diff options
Diffstat (limited to 'src/widgets/widgets')
-rw-r--r-- | src/widgets/widgets/qcombobox.cpp | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qcombobox.h | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qgroupbox.cpp | 4 | ||||
-rw-r--r-- | src/widgets/widgets/qlabel.cpp | 6 | ||||
-rw-r--r-- | src/widgets/widgets/qlabel.h | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qmaccocoaviewcontainer_mac.mm | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qmacnativewidget_mac.mm | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qmdiarea.cpp | 4 | ||||
-rw-r--r-- | src/widgets/widgets/qmdisubwindow.cpp | 6 | ||||
-rw-r--r-- | src/widgets/widgets/qmenu_mac.mm | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qtextedit.cpp | 2 |
11 files changed, 23 insertions, 11 deletions
diff --git a/src/widgets/widgets/qcombobox.cpp b/src/widgets/widgets/qcombobox.cpp index aab28bf18a..2a1742b652 100644 --- a/src/widgets/widgets/qcombobox.cpp +++ b/src/widgets/widgets/qcombobox.cpp @@ -1770,7 +1770,9 @@ void QComboBox::setLineEdit(QLineEdit *edit) delete d->lineEdit; d->lineEdit = edit; +#ifndef QT_NO_IM qt_widget_private(d->lineEdit)->inheritsInputMethodHints = 1; +#endif if (d->lineEdit->parent() != this) d->lineEdit->setParent(this); connect(d->lineEdit, SIGNAL(returnPressed()), this, SLOT(_q_returnPressed())); diff --git a/src/widgets/widgets/qcombobox.h b/src/widgets/widgets/qcombobox.h index 3182a0a3aa..45b601788f 100644 --- a/src/widgets/widgets/qcombobox.h +++ b/src/widgets/widgets/qcombobox.h @@ -229,7 +229,9 @@ protected: #ifndef QT_NO_WHEELEVENT void wheelEvent(QWheelEvent *e) Q_DECL_OVERRIDE; #endif +#ifndef QT_NO_CONTEXTMENU void contextMenuEvent(QContextMenuEvent *e) Q_DECL_OVERRIDE; +#endif // QT_NO_CONTEXTMENU void inputMethodEvent(QInputMethodEvent *) Q_DECL_OVERRIDE; void initStyleOption(QStyleOptionComboBox *option) const; diff --git a/src/widgets/widgets/qgroupbox.cpp b/src/widgets/widgets/qgroupbox.cpp index 0ff5dc8753..f1ebf91ad7 100644 --- a/src/widgets/widgets/qgroupbox.cpp +++ b/src/widgets/widgets/qgroupbox.cpp @@ -707,6 +707,8 @@ void QGroupBox::mousePressEvent(QMouseEvent *event) if (d->checkable && (d->pressedControl & (QStyle::SC_GroupBoxCheckBox | QStyle::SC_GroupBoxLabel))) { d->overCheckBox = true; update(style()->subControlRect(QStyle::CC_GroupBox, &box, QStyle::SC_GroupBoxCheckBox, this)); + } else { + event->ignore(); } } @@ -723,6 +725,8 @@ void QGroupBox::mouseMoveEvent(QMouseEvent *event) if (d->checkable && (d->pressedControl == QStyle::SC_GroupBoxCheckBox || d->pressedControl == QStyle::SC_GroupBoxLabel) && (d->overCheckBox != oldOverCheckBox)) update(style()->subControlRect(QStyle::CC_GroupBox, &box, QStyle::SC_GroupBoxCheckBox, this)); + + event->ignore(); } /*! \reimp */ diff --git a/src/widgets/widgets/qlabel.cpp b/src/widgets/widgets/qlabel.cpp index 55e277026c..eeabd5db38 100644 --- a/src/widgets/widgets/qlabel.cpp +++ b/src/widgets/widgets/qlabel.cpp @@ -882,13 +882,11 @@ void QLabel::mouseReleaseEvent(QMouseEvent *ev) d->sendControlEvent(ev); } +#ifndef QT_NO_CONTEXTMENU /*!\reimp */ void QLabel::contextMenuEvent(QContextMenuEvent *ev) { -#ifdef QT_NO_CONTEXTMENU - Q_UNUSED(ev); -#else Q_D(QLabel); if (!d->isTextLabel) { ev->ignore(); @@ -902,8 +900,8 @@ void QLabel::contextMenuEvent(QContextMenuEvent *ev) ev->accept(); menu->setAttribute(Qt::WA_DeleteOnClose); menu->popup(ev->globalPos()); -#endif } +#endif // QT_NO_CONTEXTMENU /*! \reimp diff --git a/src/widgets/widgets/qlabel.h b/src/widgets/widgets/qlabel.h index 1a3a68db60..6b6e15e0a8 100644 --- a/src/widgets/widgets/qlabel.h +++ b/src/widgets/widgets/qlabel.h @@ -132,7 +132,9 @@ protected: void mousePressEvent(QMouseEvent *ev) Q_DECL_OVERRIDE; void mouseMoveEvent(QMouseEvent *ev) Q_DECL_OVERRIDE; void mouseReleaseEvent(QMouseEvent *ev) Q_DECL_OVERRIDE; +#ifndef QT_NO_CONTEXTMENU void contextMenuEvent(QContextMenuEvent *ev) Q_DECL_OVERRIDE; +#endif // QT_NO_CONTEXTMENU void focusInEvent(QFocusEvent *ev) Q_DECL_OVERRIDE; void focusOutEvent(QFocusEvent *ev) Q_DECL_OVERRIDE; bool focusNextPrevChild(bool next) Q_DECL_OVERRIDE; diff --git a/src/widgets/widgets/qmaccocoaviewcontainer_mac.mm b/src/widgets/widgets/qmaccocoaviewcontainer_mac.mm index a384e41d1b..7dad6604b9 100644 --- a/src/widgets/widgets/qmaccocoaviewcontainer_mac.mm +++ b/src/widgets/widgets/qmaccocoaviewcontainer_mac.mm @@ -31,7 +31,7 @@ ** ****************************************************************************/ -#import <Cocoa/Cocoa.h> +#import <AppKit/AppKit.h> #include "qmaccocoaviewcontainer_mac.h" #include <QtCore/QDebug> diff --git a/src/widgets/widgets/qmacnativewidget_mac.mm b/src/widgets/widgets/qmacnativewidget_mac.mm index 46a43c4110..f855777837 100644 --- a/src/widgets/widgets/qmacnativewidget_mac.mm +++ b/src/widgets/widgets/qmacnativewidget_mac.mm @@ -31,7 +31,7 @@ ** ****************************************************************************/ -#import <Cocoa/Cocoa.h> +#import <AppKit/AppKit.h> #include "qmacnativewidget_mac.h" #include <QtCore/qdebug.h> diff --git a/src/widgets/widgets/qmdiarea.cpp b/src/widgets/widgets/qmdiarea.cpp index e683c48ad3..1864b42a80 100644 --- a/src/widgets/widgets/qmdiarea.cpp +++ b/src/widgets/widgets/qmdiarea.cpp @@ -380,7 +380,7 @@ void IconTiler::rearrange(QList<QWidget *> &widgets, const QRect &domain) const return; const int n = widgets.size(); - const int width = widgets.at(0)->width(); + const int width = qMax(widgets.at(0)->width(), 1); const int height = widgets.at(0)->height(); const int ncols = qMax(domain.width() / width, 1); const int nrows = n / ncols + ((n % ncols) ? 1 : 0); @@ -938,7 +938,7 @@ void QMdiAreaPrivate::rearrange(Rearranger *rearranger) if (!sanityCheck(child, "QMdiArea::rearrange") || !child->isVisible()) continue; if (rearranger->type() == Rearranger::IconTiler) { - if (child->isMinimized() && !child->isShaded() && !(child->windowFlags() & Qt::FramelessWindowHint)) + if (child->isMinimized() && !child->isShaded()) widgets.append(child); } else { if (child->isMinimized() && !child->isShaded()) diff --git a/src/widgets/widgets/qmdisubwindow.cpp b/src/widgets/widgets/qmdisubwindow.cpp index 14aeb73baf..be6cb7c54c 100644 --- a/src/widgets/widgets/qmdisubwindow.cpp +++ b/src/widgets/widgets/qmdisubwindow.cpp @@ -1000,7 +1000,9 @@ void QMdiSubWindowPrivate::removeBaseWidget() q->setWindowModified(false); } lastChildWindowTitle.clear(); - baseWidget->setParent(0); + // QTBUG-47993: parent widget can be reset before this call + if (baseWidget->parentWidget() == q) + baseWidget->setParent(0); baseWidget = 0; isWidgetHiddenByUs = false; } @@ -2653,7 +2655,7 @@ void QMdiSubWindow::showShaded() resize(d->internalMinimumSize); // Hide the internal widget if not already hidden by the user. - if (d->baseWidget && !d->baseWidget->isHidden()) { + if (d->baseWidget && !d->baseWidget->isHidden() && !(windowFlags() & Qt::FramelessWindowHint)) { d->baseWidget->hide(); d->isWidgetHiddenByUs = true; } diff --git a/src/widgets/widgets/qmenu_mac.mm b/src/widgets/widgets/qmenu_mac.mm index a42879fc73..e30eda130b 100644 --- a/src/widgets/widgets/qmenu_mac.mm +++ b/src/widgets/widgets/qmenu_mac.mm @@ -32,7 +32,7 @@ ****************************************************************************/ #import <Foundation/Foundation.h> -#import <Cocoa/Cocoa.h> +#import <AppKit/AppKit.h> #include "qmenu.h" #include "qmenubar.h" diff --git a/src/widgets/widgets/qtextedit.cpp b/src/widgets/widgets/qtextedit.cpp index 7439005b92..ba6db2971a 100644 --- a/src/widgets/widgets/qtextedit.cpp +++ b/src/widgets/widgets/qtextedit.cpp @@ -1060,6 +1060,8 @@ bool QTextEdit::event(QEvent *e) || e->type() == QEvent::ToolTip) { d->sendControlEvent(e); } +#else + Q_UNUSED(d) #endif // QT_NO_CONTEXTMENU #ifdef QT_KEYPAD_NAVIGATION if (e->type() == QEvent::EnterEditFocus || e->type() == QEvent::LeaveEditFocus) { |