summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
* Change license header from Nokia to DigiaSergio Ahumada2012-11-264-4/+4
| | | | | Change-Id: I2be215284d7670f60f8b5838fce1e6832dde2270 Reviewed-by: Martin Smith <martin.smith@digia.com>
* Fixed excessive enter/leave events being generated with the xcb plugin.Samuel Rødal2012-11-231-2/+39
| | | | | | | | | | | | | | | | | | | | | When we get a leave event we peek ahead in the queue to see if there's an enter event already pending. If so we use QWindowSystemInterface::handleEnterLeave() instead of two separate window system interface events, so that you don't get leave and enter events for the whole parent chain when moving the mouse cursor between two neighbouring native child widgets. We skip VIRTUAL events as they are generated for parent windows, and we only care about the bottom-most window that is being entered / left. Qt can take care of the rest since it knows the QWindow hierarchy. We need to not skip leave events with detail set to INFERIOR, since Qt expects to get a handleEnterLeave() when the mouse moves from a parent window to a child window. Task-number: QTBUG-27550 Change-Id: I7457d2e59d8b694081f2e43a16cd2e58d769624e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Cocoa: Make sure non windowed QCocoaWindows hide their content viewsGabriel de Dietrich2012-11-231-0/+4
| | | | | | Change-Id: I92b8600c513ba033c459b6911ca62fc31698dc4a Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Cocoa: Make sure child windows' QNSView is properly releasedGabriel de Dietrich2012-11-231-0/+2
| | | | | | | | | | Child QCocoaWindows don't have an assigned NSWindow, but still get a QNSView as backing store. That QNSView is added as a subview to the parent window's QNSView. That would leave an unmanaged QNSView alive. Change-Id: I10f57fb971f7aa1e278bb0af4217052d1e4bb0bc Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Cocoa: QGLWidget draws wrong within QMainWindow on Mac OSRichard Moe Gustavsen2012-11-236-101/+125
| | | | | | | | | | | | | | | | | | | | | | | | The resons for this bug is that Qt can share the same backingstore between several windows (if they exist in the same hierarchy), but this was just not supported by the Cocoa plugin. This patch will make sure that we pay attention to which window the QCocoaBackingStore is told to flush, and forward this information to the QNSView that backs it up. Inside the views drawRect function we then take some extra steps to get the correct sub-part of the possibly shared backingstore image. This patch also does some effort to ensure that we recreate the backingstore image as little as possible, as we can often get several resizes to the backingstore before we actually draw anything. Moreover, by being a bit careful on how we tell UiKit to update the view upon a flush, we can minimize the number of drawRect calls (and then CGImageRef creations) we need to do. This patch actually ends up improving resize/repaint performance a lot as well. QT-BUG: 27390 Change-Id: I2c2a26b149fa855411b6bff8b9cc9a61694ae72f Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Add nsOpenGLContextForContext to QCocoaNativeInterface.Zeno Albisser2012-11-232-4/+12
| | | | | | | | | | This change enables receiving the native NSOpenGLContext that is used by a QOpenGLContext. This clearly is non-public api that is only meant to be used as a last resort for cases where it is really necessary to get hold of a native context object. Change-Id: Iea7c6abb458acc7aa15926052673270d25d1d9d1 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* xcb plugin: Move the include XInput2.h statementsThomas Senyk2012-11-231-5/+5
| | | | | | | | | | If the include of egl.h does nasty things with X11-defines (this happens with the imx6 gpu-drivers) errors are avoided if the include of XInput2.h is next to the other X-includes, and not after include of egl.h Change-Id: I182d0e1fcf3fa3e6abce880d34e63cc1d2ce8ed4 Reviewed-by: Laszlo Agocs <lagocs83@gmail.com>
* Cocoa: Fix disabled colors in paletteGabriel de Dietrich2012-11-231-1/+0
| | | | | Change-Id: I1e6cf2a860f611e08ae2720c2e4eed65a85dbe9c Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Add WindowFullscreenButtonHint.Morten Johan Sørvig2012-11-231-5/+4
| | | | | | | | | | | | | | | | Adds the fullscreen button on Mac OS X. Has no effect on other platforms. Regarding the name I dropped the "Mac" prefix (like MacWindowToolBarButtonHint). Other platforms can use and we don't want to accumulate "Mac" API's. Change logic in QCocoaWindow check for this flag instead of using WindowsMaximizebutton. Change-Id: I9f2db75e8e71b3da36777c7e48852eda3ce9d534 Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Accessibility Mac: Return textArea as role for multi line text.Frederik Gladhorn2012-11-234-5/+8
| | | | | | Change-Id: I88eb4746463b7372c2dfe089ba74ea4cb0098396 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Accessibility: set multiline state for text edits.Frederik Gladhorn2012-11-232-2/+11
| | | | | | Change-Id: I22d3baac8fc57db0c89d8543019a93263b2023ca Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Fix drops from external sources.Gatis Paeglis2012-11-221-6/+5
| | | | | | | Task-number: QTBUG-26832 Change-Id: Ia1ccce391178e73d26a4f09955bce6c37616384f Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Pass extended key event infomation in xcb platform.Weng Xuetian2012-11-221-2/+2
| | | | | | | | Bare QKeyEvent missing some useful info for input method. Use new construct of QKeyEvent to create extended QKeyEvent Change-Id: I8c89e80e7329b92e3e04d5fe52d07c6f6f9e006f Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Cocoa: Properly set QNSView's geometry when it's a subviewGabriel de Dietrich2012-11-221-0/+3
| | | | | | Task-number: QTBUG-26960 Change-Id: Ib8ca76572c868305f378d22c21d13511b4999244 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Remove warnings from qtbase.Mitch Curtis2012-11-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | geometryengine.cpp: In member function 'void GeometryEngine::drawCubeGeometry(QGLShaderProgram*)': geometryengine.cpp:159:93: warning: cast to pointer from integer of different sie [-Wint-to-pointer-cast] geometryengine.cpp:167:95: warning: cast to pointer f rom integer ofdifferent size [-Wint-to-pointer-cast] benchmarking.cpp: In member function 'void TestBenchmark::multiple()': benchmarking.cpp:85:9: warning: variable 'result' set but not used [-Wunused-but-set-variable] benchmarking.cpp: In member function 'void TestBenchmark::series()': benchmarking.cpp:120:9: warning: variable 'result' set but not used [-Wunused-but-set-variable] qstandarditemmodel.cpp:2717:45: warning: unused variable 'd' [-Wunused-variable] qxcbconnection.cpp: In member function 'xcb_timestamp_t QXcbConnection::getTimestamp()': qxcbconnection.cpp:930:40: warning: suggest parentheses around assignment used as truth value [-Wparentheses] tst_qguiapplication.cpp: In constructor 'BlockableWindow::BlockableWindow()': tst_qguiapplication.cpp:340:9: warning:'BlockableWindow::enters' will be initialized after [-Wreorder] tst_qguia pplication.cpp:339:9: warning 'int BlockableWindow::leaves' [-Wreorder] tst_qguiapplication.cpp:342:12: waring: when initialized here [-Wreorder] tst_qsqltablemodel.cpp:570:10: warning: unused parameter 'value' [-Wunused-parameter] tst_qabstractitemview.cpp:1546:8: warning: unused parameter 'index' [-Wunused-parameter] Change-Id: I49c88547182e4669cfde2c2536403fc5573ca2da Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Accessibility: unhide text() function in TextWidget subclasses.Frederik Gladhorn2012-11-211-0/+7
| | | | | Change-Id: Ib5a64ff8de175d1ffc6e4357ec9ec45c4c2f2917 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* QNX: Fix crash due to re-entering QToolTip::show().Sergio Martins2012-11-211-2/+6
| | | | | | | | | | | | | | | | | | | The flushWindowSystemEvents() was added to send the geometry event synchronously. A side effect was that all input events were also sent. We don't want that. We're probably in setGeometry() because some other input event brought us here, and it's still in the call stack. One crashy example is the static method QToolTip::show() which uses static variables([1]). If we process input events while the first QToolTip::show() is still on the call stack, it will trigger a second one, deleting stuff ([1]) that the first invocation will still need once the stack unwinds. Change-Id: Iea22419a7f386d6b6231404666092340dfd1afed Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* SIC QPrintSupport: Remove unused PPK_SuppressSystemPrintStatusJohn Layt2012-11-211-2/+0
| | | | | | | | | Print Engine key PPK_SuppressSystemPrintStatus was added in Qt4.1 for Cocoa dialog to suppress the progress dialog. In Qt5 all cocoa code has been removed and this key is now unused. Change-Id: I3a91e9651e16f81611a9a736163f76acf9f20096 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* exclude 3rdparty from lupdateOswald Buddenhagen2012-11-202-0/+4
| | | | | | Change-Id: I00c569787943a87dda60786b179af1f55a94ea68 Reviewed-by: hjk <qthjk@ovi.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Use setImage workaround on all OS X versions.Morten Johan Sørvig2012-11-201-6/+3
| | | | | | | | | | The painting bug that we are working around/fixing here has been observed on 10.7 as well. Change-Id: Ic29421bcc84405afa085af2f0ed2bc554c684f98 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Teemu Katajisto <teemu.katajisto@digia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* QSystemTrayIcon/X11: Use display obtained as native screen resource.Friedemann Kleint2012-11-192-0/+20
| | | | | | | | | | Previously, the screen name was used, which contained the display name. This was changed to return the xrandr-name. Task-number: QTBUG-5416 Change-Id: I560143d6d459a8051c9640079cf7d39a3caebfec Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Compile with -no-widgets.Morten Johan Sorvig2012-11-194-49/+59
| | | | | | | | | | | | | | Remove QApplication usage in qcocoasystemtrayicon.mm Move qt_mac_cg_context from qpaintengine_mac.mm to qcocoahelpers.mm to make it available in no-widgets builds. (Move qt_mac_colorSpaceForDeviceType as well; color space support needs to be cleaned up later on.) Change-Id: I724fdb09538d65eae56c26165f3ba53b6814ea78 Reviewed-by: Liang Qi <liang.qi@digia.com>
* Accessibility Mac: Implement value interfaceFrederik Gladhorn2012-11-151-1/+8
| | | | | Change-Id: Iea6e3c69b220d35bddb1798ff991f8e67e1749e3 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Implement EditableText accessibility for Mac.Morten Johan Sorvig2012-11-154-5/+121
| | | | | Change-Id: Ibe03975bafc5a6a420b3bd69dfaa93dbf65c9958 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Fix QApplication::primaryScreen() in WindowsMiikka Heikkinen2012-11-151-3/+11
| | | | | | | | | | QPlatformInterface::screenAdded() documentation specifies that first added screen will be the primary screen, so we need to ensure that the screen Windows reports as the main display gets added first. Task-number: QTBUG-27988 Change-Id: Ibc17b05a6c37007ff749fb54ab62d47ffa40f8ac Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Windows: Fixed mouse events related to size gripsOliver Wolff2012-11-151-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | The code which was adapted from Qt4 seems not to work as expected on current Windows versions. There are no additional mouse move events after releasing the mouse button from the size grip. One special behaviour in regards to SizeGrips here seems to be that there is no WM_LBUTTONUP message but a WM_MOUSEMOVE received when the mouse button is released from the size grip. Due to mouse event handling in the Windows plugin that event triggers the desired mouse release event so everything should be fine. With the previous implementation the behaviour from the bug report can be explained by the fact, that the mouseMove event is eaten in qwindowsmousehandler and so the second mouse click isn't even delivered. Basically the first click triggers the press event without a release and the second click does not trigger a press but a release event. Task-number: QTBUG-27864 Change-Id: I987c6e01dec4a6b6189ed30959daf7a2fcc17df6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Change to enter/leave policy while grabbing.Miikka Heikkinen2012-11-152-31/+49
| | | | | | | | | | | | | | | | | | | | | Sending enter and leave events to other windows than the grabbing window is not logical. The policy should be that only the grabbing window receives enter and leave events. Changed the documentation accordingly and provided the necessary changes to Windows implementation. Also removed explicit leave event generation for widgets when popup is opened as that is now redundant. tst_QWidget::underMouse() test was changed to behave according to new logic. Task-number: QTBUG-27871 Change-Id: I127fb8685b4a4206d1a319f42cba491ec02bc8ca Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Windows: Fix autocapture for multiple buttonsMiikka Heikkinen2012-11-151-4/+5
| | | | | | | | | | | Automatic capture of mouse events on button press was released when the first button was released, even if multiple buttons were pressed. Changed it so that the capture is released when the last button is released. Task-number: QTBUG-28007 Change-Id: Icee59aacaf0ba947820c40cb7ede00193ff46a14 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Cocoa: application menu items sometimes get duplicatedRichard Moe Gustavsen2012-11-141-3/+17
| | | | | | | | | | | | | | | | | | Under some circumstances, the same menu item appears several times in the application menu in the menu bar. This can be seen in Qt creator, where "About Qt Creator" appears twize. The reason is that QCocoaMenu::syncMenuItem does not take into account that merged items cannot be found in the QCocoaMenu that owns the menuItem, but rather inside the application menu. And because of this, it fails cleaning up the old item when it changes from e.g TextHeuristicRole to ApplicationRole. This patch will fix this. Change-Id: Ia84f552d1788d80d778c7dded3393412b9d2d8cb Reviewed-by: Chris Meyer <cmeyer1969@gmail.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Added expose and configure event compression in xcb platform plugin.Samuel Rødal2012-11-142-1/+60
| | | | | | | | | We had this in 4.x to prevend swamping the event queue and causing a lot of needless processing of stale events. Task-number: QTBUG-27734 Change-Id: I020fe44885569f5a68c07220fcb44bea3e138089 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Windows: Fixed handling of key events containing ctrl modifierOliver Wolff2012-11-141-0/+8
| | | | | | | | | | | | | | | | | QKeyEvent::key() returned the wrong value if the ctrl modifier was used in that key event. That was due to the fact that ToUnicode might not return the correct code for these events/keyboard states. While it works for alt+shift+= (us layout) and gives '+' as unicode value it just claims that it cannot translate the given state for ctrl+shift+=. So if the control modifier is used and ToUnicode return 0 toKeyOrUnicode should try again without the control modifier. Task-number: QTBUG-10781 Change-Id: I5eb9c200701b4c98a8089fc0ab1ebaa385dbeea8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Cocoa: fix window focus lost when opening comboboxRichard Moe Gustavsen2012-11-121-6/+4
| | | | | | | | | | | | | | In cocoa, saying that a panel accepts key events, will make it receive key events, but also show it as the active window on screen. The former we dont really have to care about, since Qt will take care of forwarding events to the popup for us anyway, even when they target another window. So the only reason to actually let a panel become key window, is when we want it to become active. And for popups, we only want this to happend for Tool windows. Change-Id: Ic4e5058307c514cbe30174d2a2d4ca0f41c8f71f QTBUG: 26598 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Add a QEnterEvent containing the mouse position.Friedemann Kleint2012-11-103-11/+20
| | | | | | | | | | | | | Enter handling requires knowledge of the mouse position. Extend the enter handling of QWindowSystemInterface to receive the position (implemented for Windows, XCB and Mac), passing it on to QEnterEvent. Dispatch QEnterEvent from widgets code. Change-Id: I49c07d2b1f46310c877017dd55d4cd7d636bdbce Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Added motion event compression in xcb plugin.Samuel Rødal2012-11-091-0/+8
| | | | | | | | | | | | | | | We did this in 4.8 too, to avoid swamping the event queue with stale motion events. If you're interested in fine grained motion events you just need to have a responsive main loop. Most applications are only interested in the latest mouse position in any case. Fixes performance issues in QML where an onMouseXChanged or onMouseYChanged in a mouse area does directly or indirectly runs some heavy computations, slowing rendering to a halt since the main loop is constantly busy. Change-Id: I169c96458db4d57b689d6c2c915765b11c35e123 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* QNX: Don't crash on application exit.Sergio Martins2012-11-091-0/+1
| | | | | | | | | | Variable should be initialized in ctor so it doesn't crash when deleting it. Crashes with QNX SDP 6.5 Change-Id: I462f1e374f0588f29fe6fc14a957672467c9b2f7 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Support native event filter for Mac OS XLiang Qi2012-11-097-14/+261
| | | | | | | | | | | Ported from Qt 4 implementation, updated with QAbstractEventDispatcher::filterNativeEvent() call. Tested with an example. Change-Id: I3271f8a565d06d80b7b48ba81728bcdb7b1c32e3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Report threaded rendering support in xcb when using event reader thread.Samuel Rødal2012-11-082-1/+3
| | | | | | | | | | | Threaded rendering had issues due to bugs in xcb before xcb_poll_for_queued_event() was added. Now xcb_poll_for_queued_event() is resolved at runtime and if present xcb events are received on a separate thread. Change-Id: I05420c8c9f9a20f41ce0f86ed255bc8b295e7fe5 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Windows: Add missing support for X-buttons.Miikka Heikkinen2012-11-081-3/+8
| | | | | | | | | Autocapture and framestrut event generation didn't handle X-buttons. Task-number: QTBUG-27874 Change-Id: Icfe9dfb9abc9cd506e1875f2b2b4cbc644cff6cd Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Kevin Funk <kevin.funk@kdab.com>
* Prevent frame notifications going out when the content view is setAndy Shaw2012-11-081-0/+2
| | | | | | | | | When the content view is set it will trigger a frame notification which we do not want to see because it would put our internal data on the geometry out of sync. So ignore the notification until after it is set. Change-Id: I704c2f186c8b0c6508a90d5dab51b7f6f02162fc Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Rename all QWindow properties that have "window" in themShawn Rutledge2012-11-079-60/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | windowTitle, windowModality, windowIcon and so on are named that way to be similar to the ones in QWidget. However QQuickWindow inherits all of the declared properties, and we would like to have shorter property names in QML. If you are working with a Window then it's obvious the title property is the window title. Unfortunately, there must be patches in many other modules which depend on this one. In order to avoid the need to merge them all at the same time, there is also patch https://codereview.qt-project.org/#change,39001 which temporarily adds backwards-compatible accessors, which can be removed after the other modules are able to build without them. We should not rename windowState to state, because in QML, state usually drives the state machine for animation transitions etc. (although QWindow is not an Item, a user might get confused about it). Related patches are https://codereview.qt-project.org/#change,39001 https://codereview.qt-project.org/#change,37764 https://codereview.qt-project.org/#change,37765 https://codereview.qt-project.org/#change,37766 https://codereview.qt-project.org/#change,37762 Change-Id: Ie4424ec15fbdef6b29b137f90a2ae33f173edd21 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Add configure option to minimize xcb runtime dependenciesKai Koehne2012-11-074-109/+199
| | | | | | | | | | | | | | | | | | | | | | | Some of the xcb- libraries we depend upon are not (yet) common across distributions. This is problematic for binaries that should be working on different distributions. The patch mitigates this by: Adding the files from libxcb-proto (version 0.1.6), compiled with libxcb-1.5 xcb-util (version 0.3.9) xcb-util-image (version 0.3.9) xcb-util-keysyms (version 0.3.9) xcb-util-renderutil (version 0.3.8) xcb-util-wm (version 0.3.9) from xcb.freedesktop.org/dist to src/3rdparty/xcb. Adding a configure option '-qt-xcb' to use the sources instead of linking to the respective runtime libraries. Task-number: QTBUG-27803 Change-Id: I6ea87daa382871b2b9072a601511523fa0b9f44b Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Fix autocapture for doubleclick in WindowsMiikka Heikkinen2012-11-071-1/+2
| | | | | | | | | Holding down the second click of a doubleclick should also autocapture the mouse like it does in Qt4. Task-number: QTBUG-27863 Change-Id: I38c0567eca9fd7dcd3ef3d17921db5ebd3fe18b1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Cocoa: fix backingstore flush for 10.8Teemu Katajisto2012-11-071-9/+6
| | | | | | | | | | Remove compile time version check to make flushing work correctly when building with other sdks than 10.8. Task-number: QTBUG-27862 Change-Id: I915ae80017be1c03d5217aa9bdb60991603f8d01 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Fix invalid mouse press and release events on window maximizeMiikka Heikkinen2012-11-072-2/+31
| | | | | | | | | | | | | | | | | | | | | In Windows, if the window is maximized with a doubleclick on the title bar or resized with a doubleclick on the bottom or top frame border, there comes no WM_LBUTTONDOWN or WM_LBUTTONDBLCLK event for the second click, but there comes at least one WM_MOUSEMOVE with left button down and eventual WM_LBUTTONUP. Since QWindowSystemInterface::handleMouseEvent() can't differentiate between actual button down event and a move event with button held down, the move resulted in a button down event being sent to the widget that was under cursor after resize. Fixed by ignoring any events with left button down for which we didn't get the initial native button down event. Since entering an application with mouse button already held down is not generating mouse events anyway until the button is released, this should be safe. Task-number: QTBUG-27845 Change-Id: Ibc7abf8a127c401801e1b654a2829582f43a1ae8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Resolve xcb_poll_for_queued_event at run-time.Samuel Rødal2012-11-073-29/+49
| | | | | | | | | By not making this a compile time decision we ensure forward compatibility for older xcb versions if the xcb plugin is built against a newer xcb. Change-Id: I744777d53bf7b8deb6eff372494f4403d19d364c Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Cocoa: fix memory leaksTeemu Katajisto2012-11-064-3/+14
| | | | | Change-Id: I2e805aa64c65b90d33924ea4a8671735dee581fd Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Send QContexMenuEvent when Context Menu key is pressed.Friedemann Kleint2012-11-061-1/+8
| | | | | | | | Bring back code from keymapper_x11.cpp. Task-number: QTBUG-27648 Change-Id: I2a189a0537bcd2ae0eb093576c84814b2f09933b Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Fix GDI leaks in fontengineMiikka Heikkinen2012-11-052-3/+6
| | | | | | | | | | GDI objects that are created need to be deleted once no longer needed, instead of just released. Task-number: QTBUG-27812 Task-number: QTBUG-27825 Change-Id: I53b04b54cea9e2aaa8fc72365c215f516c5682e6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Implement editable text interface for QLineEdit.Frederik Gladhorn2012-11-032-1/+22
| | | | | | | | This was uncovered by the linux accessibility test which tried to call non-existing functions. Change-Id: Iaa9640c23ee77d7c5b2321d7f8cfa6d12d61c0e9 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* xcb: Fix a trivial reply leakUli Schlachter2012-11-021-1/+1
| | | | | | Change-Id: Ib9a0f96007e6dc5e125bfcd39bd1ef09baebae3b Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>