summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/cocoa/qnsview.mm
Commit message (Collapse)AuthorAgeFilesLines
* Implement focus handling of child windows for cocoa.Gunnar Sletta2013-01-231-0/+17
| | | | | Change-Id: I1e05ef39aa67f8febdd27215d8ad05d26ece7caa Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Partially revert e84e86dc.Morten Johan Sorvig2012-12-111-1/+1
| | | | | | | | | | | Make tst_qquickview::resizemodeitem pass. Returning on equal geometry breaks for non-top-level windows. Change-Id: I3b361655e25b6cf2d5e29410dc1f3567ab8f54d9 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Implement Cocoa KeyMapper.Morten Johan Sorvig2012-12-071-2/+13
| | | | | | | | | | Port Qt 4 implementation. Shortcuts such as shift-5 should now work. Change-Id: I1d8c4c6c4a903142361996b558ee31c8549fcef6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Use the "copy" blend mode for backingstore drawingMorten Johan Sorvig2012-12-071-0/+1
| | | | | | | | | | The default is a "source over", but we want to completely replace the destination pixels. (Which is slightly faster). Change-Id: I4916765258a2236f70f58a8e20b06f80739183c1 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Update QNSView geometry on window resize.Morten Johan Sorvig2012-12-071-0/+3
| | | | | | | | | | | | | | | | | Ideally this should not be required since NSWindow should resize the content view automatically. However, in the case of modal QDialogs this does not happen. Add call to updateGeometry in windowDidResize as a workaround, and remove code which called QNSView::setFrameSize with the current size. This will cause duplicate handleGeometryChange calls in the non-qdialog case, add a test to see if the geometry really has changed to prevent that. Change-Id: I29bea23b2ab72f923aeadf8db8cb9131ae177a28 Reviewed-by: Liang Qi <liang.qi@digia.com>
* Ensure ctrl + click sends a right mouse button press in CocoaAndy Shaw2012-12-041-2/+14
| | | | | | | | | | | Since Mac's typically just have one button for their mice then pressing Control then clicking the button should end it as a right mouse button event. Task-number: QTBUG-28350 Change-Id: Iabcac5b315c36cb8cd062c27d7b1506bc066f5bb Reviewed-by: Liang Qi <liang.qi@digia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Basic high-dpi "retina" support for Qt 5.Morten Johan Sørvig2012-12-011-10/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | Bring Qt 5 on par with Qt 4, prepare for more comprehensive support later on. Introduce device independent pixels (dips), device pixels, and devicePixelRatio. Add high-dpi support to QPainter, QGLWidget, the cocoa platform plugin, mac and fusion styles. Dips are similar to CSS pixels, Apple points and Android density-independent pixels. Device pixels are pixels in the backing store/physical pixels on screen. devicePixelRatio is the ratio between them, which is 1.0 on standard displays and 2.0 on "retina" displays. New API: QImage::devicePixelRatio() and setDevicePixelRatio() QPixmap::devicePixelRatio() and setDevicePixelRatio() QWindow::devicePixelRatio() QScreen::devicePixelRatio() QGuiApplicaiton::devicePixelRatio() Change-Id: If98c3ca9bfdf0e1bdbcf7574cd5b912c9ff63856 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Cocoa: update OpenGL viewport when nsview movesRichard Moe Gustavsen2012-11-281-0/+31
| | | | | | | | | | | | | | | | | | NSOpenGLContext expexts an -update call whenever the physical position of the view it draws to changes on screen. Since we don't get geometry callbacks for such views when the parent view moves, we need to register a special notification for that case, and tell Qt that we need to repaint the QWindow that the view is backing. This case does not hit very often, but is evident in MDI applications where the subwindows are OpenGL backed QGraphicsView widgets. Dragging the subwindows around produces garbage inside the windows. Change-Id: I1b162470b03cca6ed722c6c54080459f2c5e91d9 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Mac: Fix wheel event handling on 10.6Liang Qi2012-11-271-5/+5
| | | | | | | | | Change "else" case to support compiling on 10.7+ and deploying on 10.6 Task-number: QTBUG-28060 Change-Id: Iaaeaaefe98083863ed750c7cb320db02e16543af Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Cocoa: QGLWidget draws wrong within QMainWindow on Mac OSRichard Moe Gustavsen2012-11-231-71/+25
| | | | | | | | | | | | | | | | | | | | | | | | 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 a QEnterEvent containing the mouse position.Friedemann Kleint2012-11-101-9/+14
| | | | | | | | | | | | | 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>
* Cocoa: fix memory leaksTeemu Katajisto2012-11-061-0/+1
| | | | | Change-Id: I2e805aa64c65b90d33924ea4a8671735dee581fd Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Mac: Add support for WindowMasks platform capabilityGabriel de Dietrich2012-11-021-27/+78
| | | | | | | | Also brings back a working QWidgetPrivate::setMask_sys(). Change-Id: Idde9eea15d28bb0299258df81322a5a3ff0b9493 Reviewed-by: Liang Qi <liang.qi@digia.com> Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Cocoa: fix frameStrutMouseEventsRichard Moe Gustavsen2012-10-181-3/+7
| | | | | | | | | | | | | | | It turns out that the calculation of mouse pos over the frame strut (title bar) was wrong. When outside the content view, the nsevent coordinates are negative, so to get this correct, we need to calculate the height of the window above the content view and use this information to get the mouse pos in positive coordinates with origin window top left. This bug was especially apperent with QDockWidget, as it became almost impossible to dock a window under such circumstances. Change-Id: I2faf6aab5e2aa0b4e217ea087ceec8c1b1e978bb Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Cocoa: remove current contentView when clearing windowTeemu Katajisto2012-10-171-0/+8
| | | | | | | | | | Otherwise they might be still events sent to view with no proper QWindow. Also, add dealloc QNSView for clean up. Task-number: QTBUG-26580 Task-number: QTBUG-27456 Change-Id: Icdbe5c39490b72ec82795c2d71e5671cea81921e Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Cocoa: Set platform window geometry correctly.Morten Johan Sorvig2012-10-161-6/+13
| | | | | | | | | | | | Handle the non-toplevel child window case, where QWindow has a parent NSView instead of a parent NSWindow. QWindow geometry is then equivalent to the frame geometry Task-number: QTBUG-26972 Change-Id: Ie7cedb3ec1a564ce55b72e8269d4853962e073ce Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Remove handleSynchronous* functions.Morten Johan Sorvig2012-10-101-4/+7
| | | | | | | | | | | | | | | | | | | | There are now two different ways to implement synchronous event processing. The platform plugins can choose which one to use. 1) flushWindowSystemEvents() Use to flush the event queue at one point, making preceding calls synchronous. 2) setSynchronousWindowsSystemEvents(bool enable) Makes all handle* functions synchronous, bypassing the event queue completely. Change-Id: I020b80c731fd13f855a377d7c91d06a4e39b6a0b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Cocoa: Send keyboard modifiers with mouse events.Morten Johan Sorvig2012-10-101-1/+2
| | | | | | | Task-number: QTBUG-27462 Change-Id: Icb9352fcae6f92885d4f1381aa8014fef039149b Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Cocoa: add qWarnining when trying to create 0 width/height CGImagesTeemu Katajisto2012-10-081-2/+10
| | | | | | | | | Add meaningful warnings when trying to create 0 width/height CGImages. This way it is easier to track down the place where valid size is not used. Change-Id: Id261ddf72d5487afcdb1a2a6d0d9079700888545 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-221-24/+24
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* OSX: Drag and Drop QMimeData.Christoph Schleifenbaum2012-08-251-4/+17
| | | | | | | | | | | | When dragging and dropping within the same application, the QDropEvent should contain exactly the same instance of QMimeData as it was set to QDrag. This solves the problem in https://bugreports.qt-project.org/browse/QTBUG-26953 Change-Id: I3bc4da845ff4293c509343c1c8c62fc331416ec0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Fix a bunch of Mac/clang specific warningsJiang Jiang2012-08-211-2/+3
| | | | | Change-Id: I0ecc67d58fb7e727a88a5f546eeca01ff7554502 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Revert "Move QWindowSystemInterface out of qpa."Paul Olav Tvete2012-08-031-1/+1
| | | | | | | | | | | | | | This reverts commit 784a877d3cd9a1a75aca9c83146389503a966071. Conflicts: src/plugins/platforms/cocoa/qcocoawindow.mm src/testlib/qtestkeyboard.h src/testlib/qtestmouse.h src/testlib/qtesttouch.h Change-Id: Iebfed179b3eb7f30e4c95edcae5a8ad6fd50330e Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* QTBUG-26296, dock widget movingJames Turner2012-07-231-0/+33
| | | | | | | | | | | | | | | Cocoa lacked implementation of FrameStrut events, and also frameMargins on QPlatformWindow. Fix both of these issues. Unfortunately QDockWidget also contains a tangle of #ifdef MAC behaviour which I am unclear about. What's included here disables some logic on Mac that seems definitely wrong - while moving a window on Mac we now generate NonClientArea events (as intended, I believe), but this should not cause dock-widget dragging to end. Note the window titlebar is the only frame-strut/non-client area on Mac (as far as I can see) Task-number: QTBUG-26296 Change-Id: Id0c6e954db64b9f9f71d16355cb92922877e5ebe Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Move QWindowSystemInterface out of qpa.Stephen Kelly2012-07-191-1/+1
| | | | | | | | Public QtTest headers require it, so all unit tests would have to use private Qt headers otherwise, which is not practical. Change-Id: I5d4466ec30b6a57ebdfc34413e716e657eb51368 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Native drag implementation on MacJames Turner2012-07-041-0/+40
| | | | | | | | | | | | | | | | Create a native implementation of QCocoaDrag, using the 10.6 (and earlier) Cocoa dragging API. This matches the implementation in Qt4 closely for the moment. In the future it may be desirable to create an alternative implementation using the new (non-blocking) drag API introduced in 10.7, but that will require deeper changes to the mime-data handling. This changes makes one more method on QPlatformDrag virtual, since the Cocoa behaviour diverges from the base version: ::defaultAction is customised. Change-Id: I1843293a62b2b4973a07b5e75ea3c312dc064018 Reviewed-by: Christoph Schleifenbaum <christoph.schleifenbaum@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Suppress QWindowSystemInterface inclusion warnings.Girish Ramakrishnan2012-07-031-1/+1
| | | | | | | | | | | | | Since QWindowSystemInterface is now part of QPA API. The correct inclusion is: #include <qpa/qwindowsysteminterface.h> #include <qpa/qwindowsysteminterface_p.h> Bulk of the work was done by: find . -type f | xargs sed -i -e 's,#include <\(QtGui/\)\?QWindowSystemInterface>,#include <qpa/qwindowsysteminterface.h>,g' Change-Id: If75fc32611e72ef1cf58505794def375b1acf74a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Cocoa: do not send multiple window activation eventsBradley T. Hughes2012-06-061-2/+9
| | | | | | | | | | | | | | When switching the active window within the same application, Cocoa sends us an NSWindowDidResignKeyNotification for the old activated window, then an NSWindowDidBecomeKeyNotificationfor the newly activated window. Our handling of this would first set Qt's active window to zero, then immediately reset it afterwards. Avoid this by checking the key window when handling the deactivation event, and don't set the active window to zero if a new window has become active. Task-number: QTBUG-24322 Change-Id: I8719fc501049eeaaebb75e9ea03261b2209458b6 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: Handle keyboard dead keys correctlyBradley T. Hughes2012-05-231-2/+12
| | | | | | | | | | | Some keyboard layouts have physical dead keys (like the ¨ key on a Norwegian keyboard). These do not send any text, so we should not use [NSString characterAtIndex:0] if the string is empty. When encountering an empty [NSEvent character] string, use Qt::Key_unknown and QChar::ReplacementCharacter. Change-Id: I7281aa9ea6005341c0dcfa5900bfe601e4eac6a9 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: Avoid UTF-16 to UTF-8 to UTF-16 conversion in key handlingBradley T. Hughes2012-05-231-1/+1
| | | | | | | | | | When coverting NSEvent characters to a QString, use QCFString::toQString(), which copies the UTF-16 characters out of the NSString into a QString (instead of converting to UTF-8 and back again on each key press). Change-Id: I78f7c46e75283b7b51c762fd7f22e351ac068072 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: don't send input method events for basic text inputBradley T. Hughes2012-05-231-10/+26
| | | | | | | | | | | | | | | | | | | | | | When receiving keyDown events on the Mac, we pass them to NSView's interpretKeyEvents method, which ends up calling our insertText method. This means we end up sending input method events for most text input (instead of normal key events). While this is not wrong, it is unexpected, and different form how Qt 4 works. Change insertText to do nothing if no preedit string has been set when handling a key event. For normal text input that does not need input method handling, we can simply return and let handleKeyEvent send key events instead. Our insertText implementation has to take care to not ignore calls from outside key event processing (such as the user input characters with the Character Viewer). As a result m_keyEventsAccepted changes to m_sendKeyEvent to let insertText know whether or not insertText was called via handleKeyEvent. Change-Id: Ie8c2eb67f6a8438f08442f9ff48f2027a041ca23 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Implement QCocoaWindow::setWindowState.Morten Johan Sorvig2012-04-201-19/+30
| | | | | | | | | | | | | | | | | | | | Add window state change notification logic. Send and expose event in addition to window state change on window restore since the QWidget logic expects this. Modify QCocoaWindow::setVisible to sync up window state that may have been set on the hidden window. Refactor NSWindow event observing to use one observer function for all notifications. Add window state testing to tests/manual/windowflags Add delay after showFullScreen in tst_qstatusbar to wait for the Lion fullscreen transition. Change-Id: I57c523cedd0644d4181b40d72046fad4fdb09a9c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* change NSTextInput to NSTextInputClient in Cocoa pluginTasuku Suzuki2012-04-181-24/+22
| | | | | | | | NSTextInput protocol is slated for deprecation Task-number: QTBUG-23867 Change-Id: I3f9eadc31bdf4234c63f1bcde5172f22da8d340e Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: silence warnings about unused variablesBradley T. Hughes2012-03-261-0/+1
| | | | | | | | Silence warnings about unused function parameters and local variables while building the Cocoa platform plugin. Change-Id: I6aedc4cb21c5fb48d2d6e501561473d3f7112aed Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: send key events for modifier keysBradley T. Hughes2012-03-261-0/+37
| | | | | | | | Implement -flagsChanged: in QNSView so that we can calculate the necessary modifier key events to send. Change-Id: I3de89537d6e22b4a6d69ae646a71d9722dd9f82a Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Check if Qt::ImEnabled is true before handling im events on MacTasuku Suzuki2012-03-231-14/+50
| | | | | | | | | | Key events were not sent to items on graphics view after the change 412dbdf410c765e75c60d1f48143dd6c02a69493. This is because the change only checks if QGuiApplication::focusObject() exists. Qt::ImEnabled needs to be checked too. Change-Id: I2a78af717a7a1a5d84fbc8b521253bdc25b43286 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: improve mouse button tracking warningsBradley T. Hughes2012-03-211-5/+5
| | | | | | | | | | The warnings about "Internal mouse button tracking invalid" should check for the correct button before emitting a warning. The warning should also mention the correct button as well. For otherMouseDragged, we simply check for any button that's not the left or right button. Change-Id: I9eb6d6bd7fb5919e745b7f8eb517b4bc9efd36a6 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: Improve window activation handling.Morten Johan Sorvig2012-03-211-4/+4
| | | | | | | | | Make Qt window activation follow the Cocoa key window, with one exception: Popup windows become the key window but not the Qt active window. Change-Id: Ic4d8685737fa3ec5c15a68b81844929370c9cd8e Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Cocoa: Send keyboard modifiers with wheel events.Morten Johan Sorvig2012-03-191-1/+25
| | | | | | | | | Read and save the modifiers at the beginning of the event stream to keep the event interpretation constant for the entire event stream. Change-Id: I66046dea8f8fd3ff2f88c48da5f076377bda32dd Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Cocoa: Fix function key handlingBradley T. Hughes2012-03-181-7/+11
| | | | | | | | | | | Cocoa sends function keys (e.g. arrow keys, backspace, F1-F35, etc.) as Unicode characters in the U+F700-U+F8FF range. Do not deliver text for events that contain a single control character (to match Qt 4 behavior). With this fix, keyboard navigation works again in Qt Creator when running against Qt 5. Change-Id: I5854bf713c2855dbc5ee491bace2f9dc1acd9426 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Fix shortcut handling in the Cocoa pluginBradley T. Hughes2012-03-181-25/+26
| | | | | | | | | | | KeyPress events could be shortcuts or deadkeys, but we don't know which until we try. Shortcuts take precedence over deadkeys, so send them through QWindowSystemInterface::tryHandleSynchronousShortcutEvent() before passing it onto the input method. Change-Id: I479a3a7ff1c35e7c5692e8a17fb2173576dd0a29 Reviewed-by: Tasuku Suzuki <tasuku.suzuki@nokia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: Improve basic window handling.Morten Johan Sorvig2012-03-141-2/+18
| | | | | | | | | | | | | | | | | | | | Refactor NSWindow creation into createNSWindow and setNSWindow. This is necessary to support QMacNativeWidget where we re-use an already created window. Implement popup window handling. Make sure the window is displayed correctly and closes when it should. Take control over window activation in order to prevent infinite loops involving the QtCreator "cmd-k" window. Activation events are for now not sent to popup-type windows. There is now a different set of test failures: add and remove some QEXPECT_FAILs. Change-Id: I229761b59f90c9815b968eacc2cbc9c20cc5047e Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa platform plugin: Add support for up to 16 mouse buttonsRick Stockton2012-03-131-2/+94
| | | | | | | | | | | | OS-X provides a buttonNumber within Event data for otherMouseDown: and otherMouseUp: Events. Instead of mapping all occurences of these event types to Qt::MiddleButton, this Update uses that data to support a total of 16 mouse buttons. Task-number: QTBUG-24702 Change-Id: I3cffb32498f98ea182509d7c42f3fc6634155ebb Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Input method on MacTasuku Suzuki2012-03-121-4/+229
| | | | | | | | Restore input method implimentation in Qt4 Task-number: QTBUG-23867 Change-Id: I5d405ccc8b0a73c399d992f6474a0cc38d191157 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: Implement Drag-and-Drop.Friedemann Kleint2012-03-071-0/+74
| | | | | | | | | | Implement drag and drop support for drags originating from outside Qt. Port mime and pasteboard code from Qt 4. Use QSimpleDrag from from platform support to implement internal Qt drags. Change-Id: I5b664a95ebb00f48de2bd21c24dfb579af16123e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* QWheelEvent high-resolution delta support.Morten Johan Sorvig2012-02-241-23/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support pixel-based deltas as well as sending dx and dy values in the same event. Keep source and behavior compatibility with Qt 4. New API: QPoint pixelDelta() const QPoint angleDelta() const Deprecate delta() and orientation(). Both pixel-based deltas and combined updates are necessary for smooth trackpad-based scrolling on OS X. Qt 4 compatible behavior is achieved by sending an extra wheel event in cases where the initial event has a combined dx and dy update. This extra event sends dx in delta() and orientation(), with pixelDelta() and angleDelta() set to null. Modify the Cocoa implementation to provide pixel deltas. It is expected that not all platforms can provide these. Angle deltas will always be available. Change-Id: I20c10f0df338ddcd6a3f7a4d40949ed5ae3b4795 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Remove "All rights reserved" line from license headers.Jason McDonald2012-01-301-1/+1
| | | | | | | | | | As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: I311e001373776812699d6efc045b5f742890c689 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update contact information in license headers.Jason McDonald2012-01-231-1/+1
| | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I431bbbf76d7c27d8b502f87947675c116994c415 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Cocoa: Send window activation events.Morten Johan Sorvig2012-01-131-0/+10
| | | | | | Change-Id: I599b4316f1535bf4855b205bfb2117bbcee63bf0 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
* Update copyright year in license headers.Jason McDonald2012-01-051-1/+1
| | | | | Change-Id: I02f2c620296fcd91d4967d58767ea33fc4e1e7dc Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>