summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/cocoa
Commit message (Collapse)AuthorAgeFilesLines
* QCocoaMenuItem: Make QCocoaNSMenu the item targetGabriel de Dietrich2018-03-075-46/+54
| | | | | | | | | | | | | | | | | Since we made the NSMenu delegate a singleton we could not rely on it to have enough information to implement worksWhenModal. At the same time as the delegate change, we derived NSMenu into QCocoaNSMenu. This allows us to extend the menu functionality and, in this case, serve as target for the Cocoa menu items. We also refactor setting the item's target/action. Manually tested against menurama and bigmenucreator tests, the test-case for QTBUG-17291, and the richtext/textedit example. Change-Id: I222241f71db82611711b23d4a8c6122a741370ae Task-number: QTBUG-66676 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* cocoa: add qCDebug in QNSview::scrollWheelShawn Rutledge2018-03-061-0/+1
| | | | | | | | | If you enable both qt.qpa.input.touch and qt.qpa.cocoa.mouse you can see the order and interleaving of the touch and scroll events. Task-number: QBUG-66329 Change-Id: I8e1a63e2958b85f7964bb597e49cf8529cb3f32e Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* macOS: Warn the user when KVO-observing QCocoaNSWindowTor Arne Vestbø2018-02-281-0/+5
| | | | | | | | | | | | | | | | | | | We recreate the window of our QNSView in various situation such as changing the styleMask, which results in either a new QNSwindow or QNSpanel being set as the window of the view. KVO-observing the window property of the view will fail we then have a new window instance, and will crash when trying to remove the observer from the new window. Unfortunately catching the NSRangeException that happens when removing an observer from a 'switched' window is not possible, so the user is left with: Terminating app due to uncaught exception 'NSRangeException', reason: Cannot remove an observer <Foo 0xabc> for the key path "bar" from <QNSPanel 0xdef> because it is not registered as an observer. Change-Id: Ib2adbb99f19303a054fb1eb65e959aecd32b1162 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Cocoa: Fix incorrect QSystemTrayIcon::geometry()Morten Johan Sørvig2018-02-261-3/+4
| | | | | | | | | | The coordinate conversion was wrong. Use QCocoaScreen::mapFromNative() instead. Task-number: QTBUG-53184 Change-Id: I50f18d68ba5d7e1cb5046523a608bfa2e076d7ea Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Cocoa: fix grabWindow when mixing highDPI and non-highDPI screensPablo Marcos Oltra2018-02-221-13/+16
| | | | | | | | | | | | | | CGDisplayCreateImageForRect seems to have a weird behavior when mixing highDPI and non-highDPI screens since it may take part of the non-highDPI screen when the highDPI display is at the left or at the top of the main monitor. To workaround this issue, we capture the whole screen and then crop the image to the desired size. Task-number: QTBUG-47643 Change-Id: Ib2a3850a0a549964c7fe272abb563bd23518c234 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Merge "Merge remote-tracking branch 'origin/5.10.1' into 5.11" into ↵Tony Sarajärvi2018-02-201-1/+1
|\ | | | | | | refs/staging/5.11
| * Merge remote-tracking branch 'origin/5.10.1' into 5.11Liang Qi2018-02-191-1/+1
| |\ | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/sqldrivers/psql/qsql_psql.cpp Change-Id: I070b455078b41e75c46562fcea5676d6218cd00c
| | * QCocoaWindow: be more careful when flushing eventsRichard Moe Gustavsen2018-02-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Flushing the QPA event queue is problematic since we can then end up delivering several events to Qt (or the app) at the same time on the call stack. This again can easily leave objects in an inconsistent state if they receive callbacks from subsequent events while being occupied processing the first. This is also what happens in the listed report. A QMenu shows a sub menu when the mouse enters a menu item. The show leads to QPA flushing events, which in some cases also includes flushing another pending move event. The move event is delivered to the same QMenu, which will clear a private variable (currentAction). When the show returns, the state of QMenu has unexpectedly changed, which causes a crash to happen since currentAction is null. This patch will fix the root cause of the problem by stopping QCocoaWindow from flushing user input events when the call location does a flush to deliver geometry events. Task-number: QTBUG-66093 Change-Id: Id277550b0a080ad98c81e8c30dc7098dc73723d5 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | macOS: Don't assume m_view is QNSView when calling requestUpdateTor Arne Vestbø2018-02-191-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: I98833c5ecc5816a0926045e10ef0442a39be6b2e Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | macOS: Remove unused variableTor Arne Vestbø2018-02-191-2/+0
|/ / | | | | | | | | | | Change-Id: I7e016db57cbf347529b6aa003d84585eeab0767d Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Merge remote-tracking branch 'origin/5.10' into 5.11Liang Qi2018-02-154-29/+61
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/corelib.pro src/corelib/global/qrandom.cpp src/network/access/qhttpnetworkrequest_p.h src/plugins/platforms/cocoa/qcocoamenu.mm src/plugins/platforms/cocoa/qcocoansmenu.mm src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/cocoa/qnsview.mm src/plugins/platforms/offscreen/qoffscreenintegration.h src/widgets/kernel/qaction.cpp src/widgets/widgets.pro Done-with: Andy Shaw <andy.shaw@qt.io> Change-Id: Ib01547cf4184023f19858ccf0ce7fb824fed2a8d
| * \ Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2018-02-071-2/+5
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/cocoa/qcocoamenu.mm Change-Id: I11c5f8466c5b51e13e5ef6a8fc6e3f2dd79122a7
| * | | macOS: Share view update code between layered and non-layered modeTor Arne Vestbø2018-02-051-2/+6
| | | | | | | | | | | | | | | | | | | | Change-Id: I8eaf0607c1ede18ed20180fd43cc93744c99962d Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| * | | Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2018-02-021-4/+8
| |\ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | Conflicts: tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp Change-Id: Ia28ea4f29d308ba3aa16c2a86ffc57049c6ea590
| * | | Merge remote-tracking branch 'origin/5.10.1' into 5.10Liang Qi2018-02-013-27/+39
| |\ \ \ | | | | | | | | | | | | | | | Change-Id: Ibbe355f5e8ef12e5ffeb4e33b6a80760c3e2b464
| | * | | macOS: Handle update requests via setNeedsDisplay more carefullyTor Arne Vestbø2018-02-013-27/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of trying to detect situations where we need to send a real expose event instead of an update request in response to a drawRect call, we keep track of when we've asked the view to display due to a requestUpdate call, and only deliver the corresponding drawRect as an update request if no other code has asked the view to display. This should cover all cases of asking the view to display, issued from our code or from AppKit, such as the view changing its backing scale factor, or otherwise needing a real expose event. Task-number: QTBUG-65663 Change-Id: I1783787823aee889dad8e48f34a1cb0f1b7b06bd Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * | | | Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2018-01-291-2/+0
| |\ \ \ \ | | |/ / / | |/| | | | | | | | Change-Id: I6b40ecee4db13e6329e7a0433b57c5bca473c63f
| * | | | Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2018-01-261-0/+18
| |\ \ \ \ | | | | | | | | | | | | | | | | | | Change-Id: I7bfb75083f60190aa1def82d153f89925a92fd56
| * | | | | Cocoa: Make dialogs non-resizable againMorten Johan Sørvig2018-01-251-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix regression from commit 8b3a120a where also dialogs got NSResizableWindowMask, making them have a Zoom button. Task-number: QTBUG-65668 Change-Id: I21054b3aa6fc11eab3d93f78ede44ae771522e2c Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | | | | Merge remote-tracking branch 'origin/5.9' into 5.11Liang Qi2018-02-144-8/+31
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/corelib/animation/qvariantanimation.cpp src/corelib/global/qglobal.cpp src/corelib/global/qlogging.cpp src/corelib/io/qprocess_win.cpp src/corelib/json/qjsonarray.cpp src/corelib/tools/qsimd_p.h src/corelib/tools/qtimezoneprivate_p.h src/corelib/xml/qxmlstream_p.h src/gui/kernel/qsimpledrag.cpp src/gui/kernel/qsimpledrag_p.h src/plugins/generic/generic.pro src/plugins/platforms/cocoa/qcocoamenu.mm src/widgets/styles/qmacstyle_mac.mm tests/auto/concurrent/qtconcurrentmap/BLACKLIST tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp tests/auto/gui/kernel/qwindow/BLACKLIST tests/auto/widgets/dialogs/qmessagebox/BLACKLIST Change-Id: I508d686cf20f7f8cc6a7119b9bc7c3bbb505c58e
| * | | | | macOS: fix menu positioning on high-DPIJ-P Nurmi2018-02-051-2/+4
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The target position is passed in physical native pixels, so call QPlatformScreen::availableGeometry() and QPlatformWindow::mapToGlobal() instead of QScreen::availableSize() and QWindow::mapToGlobal(). The latter two operate on logical pixels. Task-number: QTBUG-55251 Change-Id: I281f47baee727bc0f4738fd6d6cdf12c9f462b0f Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * | | | Fix QFileDialog::defaultSuffix on macOSNathan Collins2018-02-011-4/+8
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't prepend the default suffix to the NSSavePanel allowedFileTypes. "If no extension is given by the user, the first item in the allowedFileTypes array will be used as the extension for the save panel." The user expects to get the suffix displayed to them in the drop down filter, not the default suffix set by the developer. Apply the default suffix if neither the user or the NSSavePanel provide a suffix. Task-number: QTBUG-66066 Change-Id: I64093b9f3178bd2377a7b65d6f23aed6214a4119 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| * | | Remove traces of Growl in QSystemTrayIcon code and documentationKonstantin Tokarev2018-01-261-2/+0
| | |/ | |/| | | | | | | | | | | | | | | | Growl support was removed in Qt 5.8. Change-Id: I00a36cd955194ca8ceee52841a89ca579da01284 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * | Cocoa: Explicitly hide popup windows when the application is hiddenAndy Shaw2018-01-251-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the application is hidden then Qt will hide the popup windows associated with it when it has lost the activation for the application. However, when it gets to this point it believes the popup windows to be hidden already due to the fact that the application itself is hidden. As a result, when the application is restored it causes a problem with the still visible popup window as it is taking the input events without responding to them. Therefore we need to explicitly hide the windows right before the application is hidden to ensure that they are actually hidden correctly. Task-number: QTBUG-58727 Change-Id: I4be1e1c0b1388d0c9ec872e7732185670998b7af Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | macOS: Add more granular logging categories for window eventsTor Arne Vestbø2018-02-134-7/+11
| | | | | | | | | | | | | | | Change-Id: I202e2cecfb5438ba9edc82efaf80b6ecebafb835 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* | | Remove code paths for macOS < 10.11Jake Petroules2018-02-112-21/+1
| | | | | | | | | | | | | | | | | | | | | Change-Id: I5ae02d88aa3dcd97d1f2ebf6255a68643e5d6daa Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | | Use new QString::remove(QLatin1String)Anton Kudryavtsev2018-02-051-1/+1
| | | | | | | | | | | | | | | Change-Id: I5b3560709a8fb230a177511c701fd0bf25938f0f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Merge remote-tracking branch 'origin/5.10' into devLiang Qi2018-01-2010-57/+39
|\ \ \ | | |/ | |/| | | | | | | | | | | | | Conflicts: tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp Change-Id: If089d5010d15c33b3c1f13912d4386207456c1a9
| * | Merge remote-tracking branch 'origin/5.9' into 5.10Tor Arne Vestbø2018-01-169-47/+22
| |\| | | | | | | | | | Change-Id: I896b0cf54f317c4336cc3d3db319a0b89e421728
| | * macOS: Namespace FullScreenProperty category on NSWindowTor Arne Vestbø2018-01-101-0/+5
| | | | | | | | | | | | | | | Change-Id: I48e1bf91ebcfe10bd8b6a2df510c8b6a3e19e1d9 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| | * macOS: Simplify mangling of QNSPanelDelegate protocolTor Arne Vestbø2018-01-104-5/+8
| | | | | | | | | | | | | | | Change-Id: If29bc36ecab2feb4ce3372153d0d1566cdffc719 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| | * macOS: Namespace QNSWindowProtocol when building with -qtnamespaceTor Arne Vestbø2018-01-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise the protocol name might clash with existing protocols when using Qt as a plugin, and those existing protocols may have lived in images that since have been unloaded, causing crashes. Change-Id: I68fbe290bcbf2fabf463647c960f686971e066dd Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| | * macOS: Replace category methods with functionsPavol Markovic2018-01-104-42/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Objective-C category methods prohibit safe unloading of dynamic libraries / plugins statically linked to Qt. Although they can be called in convenient way they can be replaced with standalone functions without noticeable drawback. Remove unused qt_validModesForFontPanel category method. Remove empty NSStatusItem (Qt) category. Task-number: QTBUG-59884 Change-Id: I69503a115b1177623da91c67b62d72e56f43ffcf Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * | macOS: Copy QNSWindowProtocol without referencing it by nameTor Arne Vestbø2018-01-151-10/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | The protocol may be namespaced, in which case the string lookup would fail, so we iterate the protocols of QNSWindow instead (of which there is only one, QNSWindowProtocol). Change-Id: Ic45752c9e3a40f5d42ec82c4287402a3d7a47b09 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* | | Cocoa: Prevent crash on focusObjectChanged()Morten Johan Sørvig2018-01-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Don’t crash on focusObjectChanged to a QWindow with a null QPlatformWindow. Change-Id: Ibf426521d6c8f8b2b2e94d5b92020fa510a74133 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | Cocoa: Use the whole geometry when in fullscreen mode for popup menusAndy Shaw2018-01-161-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When in full screen, then the geometry available is the whole screen not including the menubar or dock area. This ensures that it does not leave space for the dock area. Task-number: QTBUG-39403 Change-Id: I15d7b7764d83282e1ee057628680a338b72711a6 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | Cocoa: Make AA_MacDontSwapCtrlMeta workAndy Shaw2018-01-081-5/+15
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-22775 Task-number: QTBUG-51293 Change-Id: If615426001a1ea482f854f49cbae33ca1c954e9a Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* | | Merge remote-tracking branch 'origin/5.10' into devLiang Qi2018-01-041-2/+5
|\| | | | | | | | | | | Change-Id: I644cd82b0d952b7d139e0228bf5017f147db77e7
| * | Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2018-01-041-2/+5
| |\| | | | | | | | | | Change-Id: I3fa5c9e216201bdf7da260c395f65d7fb95cba0b
| | * Cocoa: make "Send correct mouse buttons for tablets" optionalShawn Rutledge2018-01-021-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add an env variable QT_MAC_TABLET_IGNORE_BUTTON_MAPPING which, if set, reverts to the old behavior. The issues that it fixes are: 1) With a Genius tablet, it's not possible to generate a middle-click at all, regardless of preferences, unless you set this variable 2) With a Wacom mouse (passive mouse used with an Intuos 3), the side-buttons (normally mapped to forward and back buttons) do not work unless you set this variable [ChangeLog][macOS][Tablet support] If you have changed the button mapping of your Wacom tablet in System Preferences, it will be respected in Qt applications. To revert to the old behavior, set the environment variable QT_MAC_TABLET_IGNORE_BUTTON_MAPPING Task-number: QTBUG-57487 Task-number: QTBUG-54160 Change-Id: I0a1c9c6550e4dfe6ee2daa2d993f22691430826c Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* | | Merge remote-tracking branch 'origin/5.10' into devLars Knoll2018-01-026-4/+56
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf sc/corelib/io/qfsfileengine_p.h src/corelib/io/qstorageinfo_unix.cpp src/platformsupport/eglconvenience/qeglpbuffer_p.h src/platformsupport/input/libinput/qlibinputkeyboard.cpp src/platformsupport/input/libinput/qlibinputpointer.cpp src/plugins/platforms/cocoa/qcocoamenu.mm src/plugins/platforms/ios/qiosscreen.h src/plugins/platforms/ios/qioswindow.h src/plugins/platforms/ios/quiview.mm src/printsupport/dialogs/qpagesetupdialog_unix_p.h src/printsupport/dialogs/qprintpreviewdialog.cpp src/printsupport/widgets/qcupsjobwidget_p.h src/widgets/widgets/qmenu.cpp tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp Change-Id: Iecb4883122efe97ef0ed850271e6c51bab568e9c
| * | Merge remote-tracking branch 'origin/5.9' into 5.10Lars Knoll2017-12-301-2/+6
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf mkspecs/win32-g++/qmake.conf src/corelib/global/qglobal_p.h src/corelib/global/qoperatingsystemversion_p.h src/corelib/io/qfilesystemengine_win.cpp src/network/bearer/qbearerengine.cpp src/platformsupport/input/libinput/qlibinputpointer.cpp src/sql/doc/snippets/code/doc_src_sql-driver.cpp src/widgets/kernel/qwidget_p.h src/widgets/kernel/qwidgetwindow.cpp src/widgets/styles/qfusionstyle.cpp tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp Change-Id: I80e2722f481b12fff5d967c28f89208c0e9a1dd8
| | * Cocoa: Disable “Hide” menu item on open popupsMorten Johan Sørvig2017-12-041-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Follow native behavior and disable ⌘H and the “Hide” menu item if there are any open popup windows. Task-number: QTBUG-58727 Change-Id: Iad38cc5cce29e0081613417c53b154ae0f05857e Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| * | macOS: Make retina OpenGL work on VMwareMorten Johan Sørvig2017-12-153-1/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt requests full resolution OpenGL surfaces by default. However, when running as a VMware guest it looks like the OS silently creates low-resolution surfaces. This is not possible to detect using the standard NSWindow APIs for converting to backing coordinates or for reading the backing scale factor. The result of this is that Qt will incorrectly display one quarter of the window content only. Fall back to detecting if the OpenGL renderer is the Apple software renderer, which it will be on VMware. Cancel the high-resolution surface request if this is the case. This needs to be done while we have a valid OpenGL context. Task-number: QTBUG-62357 Change-Id: I33bf12b3bb0408249e6d66e0a8ca86b044bea781 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * | Merge remote-tracking branch 'origin/5.10.0' into 5.10Liang Qi2017-12-081-1/+24
| |\ \ | | | | | | | | | | | | Change-Id: I6dcf85067ec226136c207ea69ca9d66736c84db5
| | * \ Merge 5.10 into 5.10.0Oswald Buddenhagen2017-11-209-9/+80
| | |\ \ | | | | | | | | | | | | | | | Change-Id: Ibfbaa8ef89cf45b87a2c65f1da4a708e5464f259
| | * | | macOS: Fix OpenGL context sharingMorten Johan Sørvig2017-11-161-1/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See code comments for problem and fix description. Task-number: QTBUG-63180 Change-Id: I6c6381f2c77c246bd975f66f9baa0165e32de777 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * | | | Cocoa: Ensure menus for a dialog's menubar are validated correctlyAndy Shaw2017-12-013-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Although the items were enabled for a dialog's menubar they were not appearing as such because Cocoa will query the menu item's target to see if it has a worksWhenModal selector. Therefore to ensure that the menu item will be enabled, we need to add this selector to our delegate and return YES from it when the window for the menubar is the dialog. Task-number: QTBUG-44584 Change-Id: Ic62dc027d563069d2f5c2b7bf9810184bd76de39 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* | | | | Migrate Cocoa QPA backend to use QRegularExpressionSamuel Gaist2017-12-302-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch updates the Cocoa QPA backend code to use QRegularExpression in place of the deprecated QRegExp. Change-Id: I6de2774975e63f8dbff6dad0a842f35c3c4b4f83 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | | | Cocoa QPA: Delete singletons on exitGabriel de Dietrich2017-12-262-31/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This involves QCocoaApplicationDelegate and QCocoaMenuLoader. The former has been modernized to use blocks. The latter was not being deleted previously. Change-Id: Ic4cbfed2d9598fa04130675b3330d985b9489a21 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>