summaryrefslogtreecommitdiffstats
path: root/src/widgets/kernel
Commit message (Collapse)AuthorAgeFilesLines
* Fix the check if mouse events should be synthesized from touch eventsFabian Bumberger2013-04-111-6/+2
| | | | | | | | | | | | | | | | In QGuiApplication only Qt::AA_SynthesizeMouseForUnhandledTouchEvents is taken into account when synthesizing mouse from touch events, in QApplication only the PlatformIntegration syle hint QPlatformIntegration::SynthesizeMouseFromTouchEvents. With this patch both attributes are checked. Furthermore the check was moved out of translateTouchToMouse in QApplication in order not to influence the result which is returned to the user, when mouse events are not be synthesized. Change-Id: I87ac7299f0a9fbf0a083eff9c547f0dbfab75dfb Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Mark widget framestrut as dirty when window flags change.Friedemann Kleint2013-04-051-0/+3
| | | | | | | | | | | | | When undocking a dock using the undock button on a main window with native children, the dock widget goes to 0,0 (content position) causing the window frame to be off-screen since the frame is still 0,0. This change causes the frame to be recalculated such that the frame position is 0,0. Task-number: QTBUG-28872 Change-Id: I32896107cd7b982811f45de43dbad82e7407ea7a Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* QWidget: micro-optimisationMarc Mutz2013-03-291-1/+1
| | | | | | | Compare string size before content. Change-Id: I00f9c6c6cf31148af4807455fa6f6b9254dda9d7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Cocoa: Make touch events work again.Morten Johan Sørvig2013-03-261-0/+28
| | | | | | | | | | | | | | Bring back the ref-counted enable on enter/leave workaround we had in Qt 4: If any widget in a window sets WA_AcceptTouchEvents then that window will start processing touch events. Enabling touch events has implications for delivery of other events, for example by causing scrolling event lag. Change-Id: I307488937f417612eff624bf9892b82a7f69c1b7 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Set screen position when generating synthetic mouse events from touchMorten Johan Sørvig2013-03-261-1/+1
| | | | | | | | QGraphicsView uses QMouseEvent::globalPos(), so we need to set it when synthesizing mouse events in QApplication. Change-Id: I8341e09fdd41400c5c5e1d0ee17c7323efdafaeb Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* OSX: WindowTransparentForInput QNSView pass events to next responderShawn Rutledge2013-03-241-1/+2
| | | | | | | | | | | | | | | | | | | The default implementation (in the super class) passes the event to the next responder. This seems to be one valid way to handle the Qt::WindowTransparentForInput flag. So if a non-alien widget for which a native NSView is created has the flag WA_TransparentForMouseEvents, that means the window will have Qt::WindowTransparentForInput, and the NSView which is created on its behalf will pass on each event so that other NSViews have a chance to handle it. (It will also try to reject becoming first responder, but that doesn't seem to be enough for the following events to be passed on.) This is a followup to I979be9f72f7d225d7b960fc5db4c3956d2749982 which purported to obey the WindowTransparentForInput flag, but actually doesn't. Change-Id: Ia72a3573c2e3cbfa7ede70bee41ac36df6924598 Task-number: QTBUG-28816 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Accessibility: Fix crash when updating in dtorFrederik Gladhorn2013-03-231-0/+2
| | | | | | | | | | | | | | This happens for example when running several tests. Widgets in destructor should be treated as invalid since their window pointer and other properties are no longer valid. When deleting a window containing only a table view there would be a table model reset update comming from the window being destroyed. Change-Id: Ia387c814333ce373fe132b189fc180787e36cdd5 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Fix missing parts of Ie511522d35b5658c20be43dd112eae18c205277f in mergeMitch Curtis2013-03-221-2/+4
| | | | | | | | | | | The merge of dev->stable branch somehow lost these bits of: Make QCoreApplication::startingUp() return false when appropriate. Which was Change-Id: Ie511522d35b5658c20be43dd112eae18c205277f Change-Id: I2991b10e2774bf5a59fa37734d4a9fd39d51b472 Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com> Reviewed-by: David Faure (KDE) <faure@kde.org> Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* Fix license headers stating QtGui for QtWidgets files.Jake Petroules2013-03-1959-59/+59
| | | | | Change-Id: I0ca49e3e1f9f603f0b0f7f3553e854b871efe303 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Make sure that we #include qconfig.h before testing for features.Thiago Macieira2013-03-191-0/+3
| | | | | | | | | | | This is mandatory in public headers (qiodevice.h, qopengl*, etc.), but it's a good idea even in private headers, in case someone includes that header first somewhere. In particular, all platformsupport API is private. Change-Id: If287baa5d9ed14e93c1666efa0e6332c4c1cd9a4 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Windows: Fix drop shadows for widget tool tips.Friedemann Kleint2013-03-181-0/+5
| | | | | | | Change-Id: Ifacee152e291face69964471d75e92b7784be4a4 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Make QT_STYLE_OVERRIDE env variable available to release buildsShawn Rutledge2013-03-181-4/+0
| | | | | | | | | This shouldn't be restricted to internal builds. It's nice to be able to enable fusion style by default instead of GTK, for example. Change-Id: Icf9b4c990ddd1152b7444948c98717faff1c5ad6 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Whitespace cleanup: remove trailing whitespaceAxel Waggershauser2013-03-169-32/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | Remove all trailing whitespace from the following list of files: *.cpp *.h *.conf *.qdoc *.pro *.pri *.mm *.rc *.pl *.qps *.xpm *.txt *README excluding 3rdparty, test-data and auto generated code. Note A): the only non 3rdparty c++-files that still have trailing whitespace after this change are: * src/corelib/codecs/cp949codetbl_p.h * src/corelib/codecs/qjpunicode.cpp * src/corelib/codecs/qbig5codec.cpp * src/corelib/xml/qxmlstream_p.h * src/tools/qdoc/qmlparser/qqmljsgrammar.cpp * src/tools/uic/ui4.cpp * tests/auto/other/qtokenautomaton/tokenizers/* * tests/benchmarks/corelib/tools/qstring/data.cpp * util/lexgen/tokenizer.cpp Note B): in about 30 files some overlapping 'leading tab' and 'TAB character in non-leading whitespace' issues have been fixed to make the sanity bot happy. Plus some general ws-fixes here and there as asked for during review. Change-Id: Ia713113c34d82442d6ce4d93d8b1cf545075d11d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Do not list desktop widgets and desktop screen widgets as top-levels.Friedemann Kleint2013-03-121-2/+1
| | | | | | Change-Id: Iea4905d802213848594d2ad0266696e5edb884f8 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* QApplication: Fix MSVC-warning about unused variable q.Friedemann Kleint2013-03-121-6/+2
| | | | | | Change-Id: I44f34816cb18583fcbbab0a6c79b313a829d9236 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* Implement XEmbed protocolAlberto Mardegan2013-03-065-4/+88
| | | | | | | | | | | | | | | | | | | Add a static QWindow::fromWinId(WId id) constructor which can be used to create a QWindow object representing windows created by other processes. Then, QWindow::setParent() can be used to embed a window into a foreign window socket and QWindow::setTransientParent() to stick the current window on top of a foreign window. The changes in the QtWidgets module ensure that the focus chain (TAB navigation) correctly works when a QtWidgets-based window is embedded into another application. As far as the platform implementation is concerned, this commit only implements the embedding functionality in the XCB plugin. So, this is roughly equivalent to the Qt4 QX11EmbedWidget functionality. Change-Id: Iff8f7b9ee974d33fb30f36056f7838b433a413c7 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-03-051-19/+9
|\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure qmake/generators/mac/pbuilder_pbx.cpp src/corelib/kernel/qtimerinfo_unix.cpp src/plugins/platforms/cocoa/qcocoabackingstore.mm src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/windows/qwindowswindow.cpp src/plugins/platforms/xcb/qglxintegration.cpp Change-Id: I8d125fe498f5304874e6976b53f588d3e98a66ac
| * Transient QWindows centered; default-constructed geometryShawn Rutledge2013-02-241-19/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Default-constructed geometry does not mean put the window at 0,0, and it does not mean center the window on the screen: it means let the window manager position the window. If the window is explicitly positioned at 0,0 though, that is a higher priority than the transient hint; without this change, the transientFor property had no effect. On X11, transient means use center "gravity" to make the transient window exactly centered. But the user can still override the geometry of a transient window, as with any window. On OSX and Windows, neither transient window functionality nor smart initial positioning are provided, so a window with no position set will be centered on the screen, and a transient window will be put at the center of its transientParent. Change-Id: I4f5e37480eef5d105e45ffd60362a57f13ec55f5 Task-number: QTBUG-26903 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* | Merge "Merge branch 'ios' into dev" into refs/staging/devTor Arne Vestbø2013-02-281-1/+1
|\ \
| * | iOS: fix build issue, dont link against cocoaRichard Moe Gustavsen2013-02-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure the libraries dont depend on Cocoa. This will be picked up by libtool, and make all apps and examples link against cocoa too (which will ofcourse fail) Change-Id: I5654bb08c4ed376fc7ee74da422d903270a8af38 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* | | Enablers for input methods on AndroidPaul Olav Tvete2013-02-271-0/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | Adding QInputMethod::inputItemRectangle()/setInputItemRectangle(). Known bugs: inputItemRectangle() not implemented for graphics view items; inputItemTransform() implementation was already missing. Change-Id: I72b1d43350e93858a2b374de3f2199500a96dc79 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> Reviewed-by: BogDan Vatra <bogdan@kde.org> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Giuseppe D'Angelo2013-02-211-12/+15
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-02-201-12/+15
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/features/unix/separate_debug_info.prf src/gui/kernel/qwindow_p.h src/plugins/platforms/cocoa/qcocoacursor.mm tests/auto/tools/moc/tst_moc.cpp Change-Id: Ieb57834c00f961a747ffe51e6eb9fc9612cebccf
| | * Fix focus handling of native child widgets in xcb.Gunnar Sletta2013-02-191-1/+17
| | | | | | | | | | | | | | | | | | Change-Id: If4d596195624011142bff6853849a23064e478df Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> (cherry picked from commit fc663b5f9aae16fe6a03160e3eb148a5f742ac58)
| | * QStackedLayout: Fix crash when focus widget is destroyed in hide()Jan Arve Saether2013-02-191-12/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We also have to make sure that when moving back to a page that has a focusWidget(), the focus should go to the focusWidget() Task-number: QTBUG-18242 Change-Id: Ibfa7d6361c1a456480b2f1584a88ef4c4f405709 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | | Activate window before replay mouse press eventjian liang2013-02-201-0/+6
|/ / | | | | | | | | | | | | | | | | | | Activate the window of the widget under mouse pointer before replay mouse press event. Change-Id: I9e699374accf108aa49b2a3c73d5e76631100dfd Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* | Doc: Fix some typosTakumi ASAKI2013-02-192-3/+3
| | | | | | | | | | Change-Id: I7f3a8cd27f1d1cb944599cff40024f3521a3ec34 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-02-181-1/+9
|\| | | | | | | | | | | | | Conflicts: src/widgets/styles/qmacstyle_mac.mm Change-Id: If8326db9e7da3cbf45dbf7475fdff9915c7723b1
| * Remove QGraphicsProxyWidget crash in QWidget::hasFocus().Andreas Aardal Hanssen2013-02-181-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A QGraphicsProxyWidget embeds a focusable widget (e.g., QComboBox). When deleting QGraphicsProxyWidget, the QWidget will be deleted. The QWidget clears focus, and QWidget::hasFocus() is nice enough to check if its embedder QGraphicsProxyWidget has focus - because if it does, it wants to clear focus from that item too. QGraphicsItem's destructor already calls clearFocus() however, so this call is unnecessary; we can simply stop clearing the QWidget's focus in its destructor if the widget is embedded. QWidget::hasFocus checks QGraphicsItem::hasFocus (on the proxy widget that is being deleted), which checks its d_ptr, which is gone. It's generally unfavorable for an object deleting a child to have the child go back and poke at the parent object, which is in many ways what's happening here. Task-number: QTBUG-29684 Change-Id: I1e52bf28f47b2824752de28dff2d0de13733ee48 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * Fixed mouse double click events not bubbling up to parent widgets.Samuel Rødal2013-02-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The bug was caused by changes b371f3f943703840d0dfbe30505018bcca06e260 and 3bb902495291c50a2f06e8e03a62a647db3e5cd4, which removed the event forwarding that QWidget::mouseDoubleClickEvent() used to do without making sure to call ignore() on the event like QWidget::mousePressEvent() does. Task-number: QTBUG-29680 Change-Id: I98af8052ad3dd1dea15d07a710aa9212ef5e4a68 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-02-142-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/concurrent/doc/qtconcurrent.qdocconf src/corelib/doc/qtcore.qdocconf src/corelib/global/qglobal.h src/dbus/doc/qtdbus.qdocconf src/dbus/qdbusmessage.h src/gui/doc/qtgui.qdocconf src/gui/image/qimagereader.cpp src/network/doc/qtnetwork.qdocconf src/opengl/doc/qtopengl.qdocconf src/opengl/qgl.h src/plugins/platforms/windows/qwindowswindow.cpp src/printsupport/doc/qtprintsupport.qdocconf src/sql/doc/qtsql.qdocconf src/testlib/doc/qttestlib.qdocconf src/tools/qdoc/doc/config/qt-cpp-ignore.qdocconf src/widgets/doc/qtwidgets.qdocconf src/xml/doc/qtxml.qdocconf Change-Id: Ie9a1fa2cc44bec22a0b942e817a1095ca3414629
| * Merge branch 'release' into stableSergio Ahumada2013-01-311-1/+1
| |\ | | | | | | | | | Change-Id: If3aa1b7ed75082eff6e9761ad82c83691135ed60
| | * Fix some more old references and links to NokiaSergio Ahumada2013-01-281-1/+1
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-28156 Change-Id: I9ba0d6f1e92103219bec1e61e716b6b2f269a8ad Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
| * | Doc: Fix references to Qt TestSze Howe Koh2013-01-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QtTestLib and QTestLib don't exist. The proper name is "QtTest" (code) or "Qt Test" (English) http://qt-project.org/wiki/Spelling_Module_Names_in_Qt_Documentation http://lists.qt-project.org/pipermail/interest/2012-December/005221.html Files paths in qttestlib.qdocconf can't be changed easily however, as it breaks things. So, they're left as they are. Change-Id: Ifbc44ea858c453bedad8cd7723f847e67fc7a85a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | | replay mouse press event after a popup widget has been closedJian Liang2013-02-121-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a popup widget(e.g. a popup menu) has been closed due to a mouse press event, the mouse press event will be consumed by the popup widget and the widget under the mouse pointer can't receive the event. This will lead to confusing behavior such as a push button under the mouse pointer is not been push down. This patch replay the mouse press event if a popup widget has been closed. Change-Id: Id493583dfea9e64ab2964e28d559122c43bbc2a6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* | | Mark public non-member non-static variables as Q_DECL_UNUSEDThiago Macieira2013-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids warnings in compilers that check for unused variables. They can't tell that the the variable came from a header. Change-Id: I1ea5e5bbc76d676fbb561bdc8ae6543e758de90e Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | | Automatically hide the SIPBogDan Vatra2013-02-111-0/+4
| | | | | | | | | | | | | | | | | | Change-Id: I4d63a883941842aed9a9c3806479d7aeeebb9f56 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* | | Remove QT_{BEGIN,END}_HEADER macro usageSergio Ahumada2013-01-2921-82/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The macro was made empty in ba3dc5f3b56d1fab6fe37fe7ae08096d7dc68bcb and is no longer necessary or used. Discussed-on: http://lists.qt-project.org/pipermail/development/2013-January/009284.html Change-Id: Id2bb2e2cabde059305d4af5f12593344ba30f001 Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: hjk <hjk121@nokiamail.com>
* | | Introducing QWidget::createWindowContainer()Gunnar Sletta2013-01-254-2/+297
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A QWidget that can embed a QWindow. This can be used to embed a QWindow/QOpenGLContext based window or a full QQuickView. Change-Id: I8415b5ae38562fc00b46150fa70b56fd9b19a80c Reviewed-by: Jørgen Lind <jorgen.lind@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | | showIsFullscreen: only respect this hint for windows and dialogsRichard Moe Gustavsen2013-01-251-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the window or widget is a popup, ignore the hint. The intention of the flag should be to show main windows etc in fullscreen, and not all kinds of popups and tooltips. The user can always call showFullscreen explicit when necessary. Change-Id: Ie150b6c6d7ca6c9344a9097544a7edbc4bd10df2 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* | | Fix focus handling of native child widgets in xcb.Gunnar Sletta2013-01-241-1/+17
| | | | | | | | | | | | | | | Change-Id: If4d596195624011142bff6853849a23064e478df Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* | | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-01-2261-61/+63
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qsavefile_p.h src/corelib/tools/qregularexpression.cpp src/gui/util/qvalidator.cpp src/gui/util/qvalidator.h Change-Id: I58fdf0358bd86e2fad5d9ad0556f3d3f1f535825
| * | Don't update the input method if the im hints haven't changed.Andrew den Exter2013-01-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Depending on the implementation updating an input method can be expensive and various widgets will at times call setInputMethodHints with unchanged hints. QGraphicsView being a notable offender due to the complexity of the circumstances in which the hints can change. Skipping the update here ensures the input method isn't updated unnecessarily for all widgets. Task-number: QTBUG-19854 Change-Id: I36ae35585ee20a4e01ca0d62c71e896dbdb51a3f Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
| * | Update copyright year in Digia's license headersSergio Ahumada2013-01-1861-61/+61
| | | | | | | | | | | | | | | Change-Id: Ic804938fc352291d011800d21e549c10acac66fb Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | | Regression: Fix setting of custom cursors for native widgets.Friedemann Kleint2013-01-211-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, there is no concept of not having a cursor set on a Window. Qt::ArrowCursor is always set instead. This causes bugs when native child widgets are involved, for example setting a cursor on the native widget's parent no longer works since the child's Qt::ArrowCursor applies. Introduce QWindowPrivate::hasCursor tracking whether a cursor has been explicitly set and clear in QWindow::unsetCursor(). Handle 0 in QPlatformCursor::changeCursor() to mean "unsetCursor()": - Windows: Introduce default constructor for QWindowsWindowCursor meaning "0". Search for applicable parent cursor in applyCursor. - XCB: No big changes required, set XCB_CURSOR_NONE for no cursor. - Other platforms: Assume Qt::ArrowCursor when cursor = 0 is passed for now. Task-number: QTBUG-28879 Change-Id: Id82722592f3cd5fe577a5b64dcc600c85cfea484 Reviewed-by: Jonathan Liu <net147@gmail.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* | | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-01-163-3/+21
|\| | | | | | | | | | | | | | | | | | | | Conflicts: src/widgets/styles/qstyleanimation.cpp Change-Id: Iae570895be6544de80f9c1ec309d1a08c59daff8
| * | Merge remote-tracking branch 'gerrit/release' into stableFrederik Gladhorn2013-01-152-1/+8
| |\| | | | | | | | | | Change-Id: Ieb104d0e390218a063082c93bc9c7e412af2166d
| | * Check for existence of QWindow in QApplication::isBlockedByModal.Friedemann Kleint2013-01-151-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Warn if window == 0 is passed in QApplicationPrivate::isWindowBlocked(). Task-number: QTBUG-28637 Change-Id: I1213ea371813eeb90f962cc39235ddfccc663d45 Reviewed-by: Jing Bai <jing.bai@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| | * Minimized, maximized and fullscreen are mutually exclusive.Shawn Rutledge2013-01-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only if minimized does QWidgetWindow need to remember the previous state. Maybe it's OK to restore from fullscreen to maximized though. Task-number: QTBUG-29030 Change-Id: I1e2724c8811366c9536a3e372ce281e8d473a4ac Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
| * | Fix QVariant in a static build.Jędrzej Nowacki2013-01-101-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | The patch cases registration of QVariant handler for widgets. Task-number: QTBUG-28528 Change-Id: I645e8054bb96db0b92edf5df36f206ec1965ad40 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>