summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
* winrt: Clean up QWinRTScreenAndrew Knight2014-06-253-337/+312
| | | | | | | | | | | - Remove WP8.0 code paths - Remove WinRT types from header as much as possible - Use ComPtr where appropriate - Use COM convenience methods Task-number: QTBUG-38115 Change-Id: Ib241c3e5107add255a48340f86ee5885f895ff83 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* winrt: Clean up QWinRTServicesAndrew Knight2014-06-252-81/+68
| | | | | | | | | | - Remove WinRT types from the header - Use ComPtr everywhere - Use convenience methods for HRESULT and async operations Task-number: QTBUG-38115 Change-Id: I540a3349612b98c45545c92b2cb6d21a34918b8f Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* winrt: Clean up QWinRTCursorAndrew Knight2014-06-253-44/+42
| | | | | | | | | | - Remove WinRT types from the header - Remove WP8.0 code paths - Use convenience methods for HRESULT handling Task-number: QTBUG-38115 Change-Id: I05e77d75a7975a783d0f0714e6bab014231a406c Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* Support translucent windows on eglfsLaszlo Agocs2014-06-251-1/+3
| | | | | | Task-number: QTBUG-39834 Change-Id: I3f6b041c992365d611aa97a41bc37e80b764b78a Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Support adapting an existing NSOpenGLContext in cocoaLaszlo Agocs2014-06-253-3/+37
| | | | | Change-Id: I61b4055020c82dd5ac40850fe7def91d26ffb6fe Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Windows a11y: Publish synthetic increase and decrease actionsJan Arve Saether2014-06-201-33/+28
| | | | | | | | | Increase and decrease actions can be generally applied to any value interface. We therefore make them available regardless of the existence of any action interface. Change-Id: I82ba01965dc869439b9d741ce681e0c0687263ca Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Accessibility: Add actions for value interfacesJan Arve Saether2014-06-201-10/+38
| | | | | | | | | | | To support increment / decrement of sliders, dials and spin boxes. (anything with an {in,de}crementAction or a valueInterface. Other platforms will follow the same pattern in follow-up patches. Task-number: QTBUG-38832 Change-Id: Ie570acc39b3d9494a8bb9f624b61a398b1d8de89 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Windows: Expose helper functions for QWindowsMime to the native interface.Friedemann Kleint2014-06-134-4/+33
| | | | | | | | | Enable QWindowsMimeConverter to use external mime handlers which it does not own. Task-number: QTBUG-39559 Change-Id: Ife6607dffd9571fa4aa12fffdc61b42662182b0a Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵J-P Nurmi2014-06-0752-350/+752
|\ | | | | | | refs/staging/dev
| * Merge remote-tracking branch 'origin/stable' into devJ-P Nurmi2014-06-0552-350/+752
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/features/qt.prf src/plugins/platforms/xcb/qxcbwindow.h src/tools/qdoc/qdocindexfiles.cpp src/widgets/kernel/qwidget_qpa.cpp Change-Id: I214f57b03bc2ff86cf3b7dfe2966168af93a5a67
| | * Android: Repaint affected areas when window movesEskil Abrahamsen Blomfeldt2014-06-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are no automatic updates of the window when it moves, since this is not required on most platforms. This broke drag and drop on Android, because drag and drop creates a temporary window containing a pixmap with a snapshot of its content. We need to make sure the old and new location of the window is repainted when it has moved. [ChangeLog][Android] Fixed repaint issues in drag and drop. Task-number: QTBUG-35975 Change-Id: I7b043d728551d9963fb5acec804fb90aec5b50ff Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
| | * Android: Support offscreen surfaces on pbuffersEskil Abrahamsen Blomfeldt2014-06-045-1/+30
| | | | | | | | | | | | | | | | | | | | | | | | This is pretty much the same thing that eglfs does. Task-number: QTBUG-38960 Change-Id: Ibf310ca8e3a4e31e5310ab3a3d3e851eae31a4ad Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
| | * Android: Fix flashing on startup/shutdownEskil Abrahamsen Blomfeldt2014-06-044-6/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There were several issues on startup of the application which were caused by the fact that we would get the wrong available screen geometry on startup, set this as the initial surface size and then expose native windows with this size. This would cause first a flicker of white on the early expose and the window contents to jump around as the window was resized to the actual available space on screen. The fix for this is to postpone the first expose until we have actually got a proper screen size from the main layout. We use width,height = 0 as an indicator that the available geometry is not yet known, and we skip posting any expose events before this is set by the layout. In addition, since we removed the surface before we shut down the application, it was by a white rectangle before the shutdown transition happens, and this white rectangle will be animated instead of application contents. To rectify this, we make sure the last surface in the stack remains in the layout until it is either replaced by a different surface or until the application has shut down. This way, the shutdown animation will work on this surface instead. [ChangeLog][Android] Fixed regression where there would be flickering on startup and shutdown of the application. Task-number: QTBUG-38960 Change-Id: Ia1579ca8c522d8beeab066f78070ad49009d0238 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
| | * Cocoa: clear queued user input events when window is destroyedDyami Caliri2014-06-033-1/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QCocoaEventDispatcher stores user input events in a queue in certain cases. If the target of those events is destroyed, the events are later sent to the stale window, causing a crash. Task-number: QTBUG-39211 Change-Id: Ie55d2df5697c742bcb644ebf8c5028015a0b8148 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| | * Cocoa: Adapt to Xcode 6 clang version sudden pickinessGabriel de Dietrich2014-06-033-3/+3
| | | | | | | | | | | | | | | | | | | | | Yes, that means OS X Yosemite fix. Change-Id: I236f7af7b803de24ff0895e04c9a9253b5cfdb3b Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| | * Cocoa: Make QMacNativeWidget event processing workMorten Johan Sørvig2014-06-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't interrupt the Qt event loop if the Qt event loop isn't running (meaning processEvents has not/ will not be called). This can happen in the QMacNativeWidget or plugin case where the native code calls [NSApp run] and QApplication::exec() is never called. In Qt 4 this was not necessary since UI event processing was more direct: QCocoaView would call QCoreApplication::sendMouseEvent/sendSpontaneousEvent directly on mouse events. Task-number: QTBUG-36225 Change-Id: I2894cbbca66a902652c9f8bc916e94ad8ce0e18e Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| | * QNX: fix race condition when clearing transparent bufferRafael Roquetto2014-06-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Block flush until all bits have been flushed. This prevents Qt from trying to draw over the buffer while it is still being cleared. Change-Id: I49b90a7653ec3768411a1a94837bb31fec4d44e8 Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
| | * remove HSTRING instancesMaurice Kalinowski2014-06-032-9/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | HSTRING needs to be released or handles will be leaked. Instead use HString which takes care of resource management on its own. Task-Number: QTBUG-38115 Change-Id: I2c767776c1f22f45acd8dd77b693f30d63d894b9 Reviewed-by: Andrew Knight <andrew.knight@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
| | * QNX: Fix compilation when OpenGL is not availableRafael Roquetto2014-06-022-0/+11
| | | | | | | | | | | | | | | | | | Change-Id: I67a1d095fc3efd58e9520c9cb3fad13e04a4d64f Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
| | * QNX: Fix clearing transparent bufferRafael Roquetto2014-06-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Testing whether alphaBufferSize() != 0 does not work, because when no alpha channel is present, alphaBufferSize() can return '-1', which will cause non-transparent windows to be wrongly cleared and an artifact will appear. Change-Id: Id9e985f105c0bb302cc6f53960a5dbae2acdb921 Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Wolfgang Bremer <wbremer@blackberry.com> Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
| | * Do not resolve the java functions for each callJan Arve Saether2014-05-301-21/+41
| | | | | | | | | | | | | | | | | | | | | | | | Instead do it only once (in registerNatives). This is seems to be the preferred way of doing it in other parts of the platform plugin. Change-Id: I361a7862bb5a24b4024c7c6a30ecb14fc515d4ff Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
| | * Windows: Fix another crash when creating QRawFont from invalid dataEskil Abrahamsen Blomfeldt2014-05-281-9/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The sanity check added in d16508a285a5423ae9a5034e969801bce74ffb98 didn't actually catch the case where the invalid data is large enough to contain the offset table and table directory. Added sanity checks to all the code that accesses the font data now, so this should fix crashes with partial data as well as invalid data. Task-number: QTBUG-37190 Change-Id: Ie43f10d8cf0b09007783b9b1c4d91bfed8c6b0f0 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| | * Cocoa: Fix modal session cleanup.Morten Johan Sørvig2014-05-281-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Call [NSApp endModalSession] at the correct time. Calling cleanupModalSessions() from processPostedEvents() resulted in endModalSession being called from within [NSApp runModalSession] - ending and cleaning up the the modal session while Cocoa is still using it. Move the cleanupModalSessions() call to to after runModalSession returns. Task-number: QTBUG-37699 Change-Id: I5868def36f6869667b0bbe33733286e3e49488eb Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
| | * Partially revert "Cocoa: support modal windows"Morten Johan Sørvig2014-05-281-24/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts parts of commit d9875f7bff6d52a52a1d0bf4002044a5304cf6bf, in particular the code for "2. Make interrupt() use [NSApp abortModal]" abortModal is not the right way to end a modal session, and introduced bad side effects, as reported in QTBUG-34677. Restore this part of the event dispatcher to the Qt 4 state. Change-Id: Iacc2d4a0757807c87c4320c93ed4db186622945c Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
| | * Revert "Cocoa: Don't stop NSApp when showing a modal dialog"Morten Johan Sørvig2014-05-282-16/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ff3dcc49c4a1912189091e35e87cb61af2f62d47. The reverted commit is an incorrect bug-fix for a regression introduced by adding a call to [NSApp abortModal] in change d9875f7b. Change-Id: I1307d1790ada740e0552d62267b6009cbccd6c4c Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
| | * Revert "Cocoa: Post event to "show()" a modal window"Morten Johan Sørvig2014-05-282-16/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit a9cbddf4739f3cfabd38367b5f872fe2c1a3814c. The reverted commit is an incorrect bug-fix for a regression introduced by adding a call to [NSApp abortModal] in change d9875f7b. Change-Id: If23463ebdfe2ff64c68739dbece73a13773683c9 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
| | * Improve the implementation of the _NET_WM_SYNC_REQUEST protocolMartin Gräßlin2014-05-278-16/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change improves the synced resizes of xcb windows and adds support for synced resizes of glx windows. The QXcbWindow keeps a better track on whether the window manager expects a sync and can be in one of three states: * no sync required * sync required, but configure notify event not yet received * sync required and configured By tracking this in the QXcbWindow itself the backing store can make use of this information and doesn't need an own heuristic to decide whether a sync is needed. Also this allows to add support for synced resizes of windows with an OpenGLSurface. This is accomplished by checking the sync state after swapping buffers. As the OpenGL context may be bound to a background thread the sync is done using a QueuedConnection to ensure that the sync happens in the thread which created the xcb window. So far this is only added for GLX. This significantly improves the resize experience of QQuickWindow and also the initial mapping with a composited window manager in case the compositor uses the sync protocol to determine whether the window is ready to get painted on screen. Change-Id: Ied0261873043d785dec652d2821fc3638292fa36 Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
| | * plugin/bearer remove static QDBusConnection::systemBus() initializationDyami Caliri2014-05-261-16/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The static initialization of QDBusConnection::systemBus() can occur before the creation of QCoreApplication. This causes a warning from QDBusConnection and may cause the application to crash on exit. Since QDBusConnection::systemBus() is just an accessor, there is no real advantage to storing a static reference to it. Task-number: QTBUG-39248 Change-Id: I4401810c7c2ffd21a30f9ffd41b3a46e7e09214c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
| | * Android: Report current selection to the input methodPaul Olav Tvete2014-05-261-4/+16
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-39196 Change-Id: Ib798f1de83ccbe3830a746b6ddd435a0934c34cd Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
| | * WinRT: Fix compile warningsMaurice Kalinowski2014-05-263-0/+6
| | | | | | | | | | | | | | | Change-Id: If223dd73b9558a0f5144be38f19a61316f8c807b Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
| | * Make QT_MAC_OPENGL_SURFACE_ORDER=-1 work betterMorten Johan Sørvig2014-05-261-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | Mark the window as not opaque and give it a transparent background when layering OpenGL below the window. Change-Id: I2188842249c592f17619f7a2c3ef1fd30958987e Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
| | * Cocoa: Remove the NSWindow -> QCococaWindow hash.Morten Johan Sørvig2014-05-263-20/+5
| | | | | | | | | | | | | | | | | | | | | | | | Cast the NSWindow to a QNSWindow instead. Now there is no way we can fail to maintain the hash properly. Change-Id: I5fd03b6fad964a61fadb3460b7063fd43ff25c79 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
| | * Cocoa: Prevent crash on QWindow delete.Morten Johan Sørvig2014-05-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clear the QCocoaWindow pointer stored on the QNSWindowHelper when detaching from the platform window. This makes sure callbacks from cocoa does not try access deleted Qt window objects. Task-number: QTBUG-39141 Change-Id: I4672eae92940dcbd59a2848e56f94b50a828bbf6 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
| | * Direct2D QPA: Match raster engine line outputLouai Al-Khanji2014-05-261-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For whatever reason direct2d and the raster engine disagree by one pixel about the positioning of positively sloping aliased lines. To get the same output, we shift such lines by one pixel. Change-Id: I4b20319770c02e3fdd212b3535ccae3c27ca9f2f Reviewed-by: Risto Avila <risto.avila@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| | * Cocoa: Make sure modal windows get correct geometry on showAndy Shaw2014-05-261-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | beginModalSessionForWindow will center the window and ignore the set geometry. So to workaround this it checks the new value against the old one and moves it back if need be. Change-Id: I38bc74c04138992f2e0570fca666414025aeeba8 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| | * Fix loss of precision warningsFrederik Gladhorn2014-05-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Found by http://www.viva64.com/en/b/0251 Change-Id: I2a0c3dba74fef07c3119c9e57b343a8253ee7daa Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
| | * QPrinter/Windows: Fix handling of native paper source ids.Friedemann Kleint2014-05-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Windows, it is possible to pass native Windows paper source ids >= DMBIN_USER to QPrinter::setPaperSource() and they are listed by supportedPaperSources(). Task-number: QTBUG-38897 Task-number: QTBUG-38888 Change-Id: I8f1264e80ce5bdddd3873602200b24eabee00502 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Andy Shaw <andy.shaw@digia.com>
| | * Remove unused variable in qwindowsmousehandler.cpp.Friedemann Kleint2014-05-231-1/+0
| | | | | | | | | | | | | | | Change-Id: Iacfeec396c2eeef973b62bf78c698aa206b01c41 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
| | * iOS: Be more careful when hiding the keyboard upon enterRichard Moe Gustavsen2014-05-231-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A typical pattern in an application is to listen for "enter" in a line edit and transfer focus to the next edit in the focus chain. This would currently not work on iOS since we would force the keyboard down after delivering the KeyPress/release events, effectively overriding any focus handling done by the app. This patch will hide the keyboard _before_ sending the events, so that we don't override focus handling done by the app. By also hiding the keyboard using QInputMethod, the hiding will also be delayed a bit (in QIOSInputContext) to catch subsequent hide/show calls. Change-Id: Ic19511d494a55d1bda963ed9bc7185d63b51bc03 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
| | * WinRT: fix default font when DirectWrite is disabledAndrew Knight2014-05-232-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | Instead of loading the default font "Helvetica", which is likely not part of the package, load the first font found. Change-Id: I225979986883a26c3fec72858cf32c3d1e45d902 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
| | * Direct2D QPA: Fix HighRes paintingLouai Al-Khanji2014-05-232-11/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out that supporting HighRes painting with Direct2D is quite simple. Two things are necessary. First, we set the unit mode to D2D1_UNIT_MODE_PIXELS on all our device contexts, which tells Direct2D that we specify everything in pixels. Direct2D will internally do the required conversions. Second, we scale font sizes according to DPI. Previously rendering errors resulted when a highres mode was used, this fixes those errors. Task-number: QTBUG-39105 Change-Id: Ibb4dbea4746687228249e2c36d48c4bd6c5c7bf9 Reviewed-by: Risto Avila <risto.avila@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| | * Direct2D QPA: Add missing break statementLouai Al-Khanji2014-05-231-0/+1
| | | | | | | | | | | | | | | | | | Change-Id: Ib40daa1ba56cce423b29ac8f1ab50e4638980728 Reviewed-by: Risto Avila <risto.avila@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| | * WinRT: Support High-DPIAndrew Knight2014-05-226-38/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the backing store and default framebuffer were created with the logical screen resolution (in device-independent pixels), not the the physical screen resolution. This lead to blurry text on high-DPI devices. This change fixes this by creating those at full size, and setting the device pixel ratio appropriately. Windows are still reported in device-independent pixels, but text and images are now rendered sharply for Qt Quick applications. As QPainter does not support non-integer scaling, the backing store is still drawn in DIPs and scaled by OpenGL. Task-number: QTBUG-38464 Change-Id: I7377d4c734126825d670b8ebb65fd0dd1ef705f2 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
| | * Support Windows Phone 8.1 in WinRT QPAAndrew Knight2014-05-225-18/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Unsupported code paths for WP8.0 are avoided, and new APIs are used where appropriate (virtual keyboard) - DirectWrite fonts are loaded on WP8.1 - Platform dialogs are used on WP8.1 Change-Id: I721006ac943ad4e248f0f1590ce247a03e40fbc0 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
| | * Direct2D QPA: Move QVectorPath conversion function into private classLouai Al-Khanji2014-05-221-101/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function already needs information from the engine for conversion, moving it into the private class makes it possible to get this info directly in the method and makes calling the method nicer. Change-Id: I47fa9a4531d0d0605aa587fba90fbfdf036f0998 Reviewed-by: Risto Avila <risto.avila@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| | * Direct2D QPA: Get rid of QPainterPath conversion functionLouai Al-Khanji2014-05-221-46/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This function was used only in one place and duplicated a lot of logic with the very similar QVectorPath conversion function. Just use QVectorPath everywhere instead. Change-Id: I3a4821f0452634c309ca0730047ea6ef7a7591ca Reviewed-by: Risto Avila <risto.avila@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| | * Direct2D QPA: Cache QVectorPaths if drawn more than onceLouai Al-Khanji2014-05-221-6/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hooking into the caching mechanism gets us a measurable performance boost for paths that are drawn repeatedly, around 10% on my machine when drawing aliased arcs. Change-Id: I32f4ed7daa8a51b5c5a9c6d5414ab5d4ef759f70 Reviewed-by: Risto Avila <risto.avila@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | | Accessibility iOSFrederik Gladhorn2014-06-0614-16/+509
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This lays the foundation for iOS accessibility. The approach is slightly different from other a11y bridges in that we completely flaten the hierarchy of wigets/quick items to a list. This works well with VoiceOver since there are comparatively few elements. The cache implementation for OS X is re-used. With this patch VoiceOver on iOS works on many applications out of the box. For now it sends the screen changed notfification somewhat overzealous, that will need revisiting and potentially new API in QAccessible. Device orientation changes are not yet supported. [ChangeLog][iOS] Accessibility was added to the iOS platform port. This enables Qt applications to be read by VoiceOver on iOS devices. Task-number: QTBUG-39097 Change-Id: I441e844652d528cc2fdcc444f43b54ed6fa04f0c Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* | | Make the ICO image handler capable of reading CUR files too.Robin Burchell2014-06-053-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This simple patch was an unfortunate victim of the Gitorious to Gerrit transition. (https://qt.gitorious.org/qt/qt/merge_requests/1179) As noted in the Gitorious review, a small bug in readHeader is also fixed: || instead of &&. Done-with: Pali Rohár Task-number: QTBUG-12684 Change-Id: I1fe16359b9b68c10e518904c6a5c58b00fb7379b Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* | | Android: Rename image method to toImage.BogDan Vatra2014-06-052-2/+2
|/ / | | | | | | | | | | | | | | | | | | toImage is a virtual method declared in QPlatformBackingStore and is useful when you need to access the image buffer from outside the QPA plugin. (e.g. you can use QPlatformBackingStore::toImage().save("bs.png") to save it). Change-Id: I7cc70ed295070707ed0ef3ce208129f174f68cfb Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>