summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
* EGLFS: Do not assume all hooks will want to create a QEGLPlatformCursorLouai Al-Khanji2014-09-166-8/+6
| | | | | Change-Id: I05502c27d697524fb4c4d4ccc3aec0e59589fe24 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Add presentBuffer method to EGLFS KMS hooks.Louai Al-Khanji2014-09-161-8/+2
| | | | | Change-Id: Ia7e4aec30ced249ab8a9feb59401d02f250193a0 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Add presentBuffer method to EGLFS hooks.Louai Al-Khanji2014-09-163-0/+6
| | | | | Change-Id: Iab5674fe9407d3ab447ef6c16577b24fa60d42aa Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* xcb: use qEnvironmentVariableIntValue()Marc Mutz2014-09-121-1/+1
| | | | | | | | It doesn't allocate memory, so cannot throw and is a lot faster than qgetenv(). Change-Id: Ie625d79352fa166e45939ef8f0a5e0cc32f8e801 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* WinRT: use qEnvironmentVariableIntValue()Marc Mutz2014-09-121-1/+1
| | | | | | | | | It doesn't allocate memory, so cannot throw and is a lot faster than qgetenv(). Change-Id: I73d548ad4e25424fc41722961f527e63632a7b56 Reviewed-by: Andrew Knight <andrew.knight@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* QNX: use qEnvironmentVariableIntValue()Marc Mutz2014-09-121-3/+3
| | | | | | | | It doesn't allocate memory, so cannot throw and is a lot faster than qgetenv(). Change-Id: I211d6de32da06bf465c4f721f39d73289206745f Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* QMinimalIntegration: use qEnvironmentVariableIntValue()Marc Mutz2014-09-121-1/+1
| | | | | | | | It doesn't allocate memory, so cannot throw and is a lot faster than qgetenv(). Change-Id: Idaad6ec1d92d9aa58d61e2d98e136f108be2bb4c Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* QKmsScreen: use qEnvironmentVariableIntValue()Marc Mutz2014-09-121-1/+1
| | | | | | | | It doesn't allocate memory, so cannot throw and is a lot faster than qgetenv(). Change-Id: Iaaba62396de2d70f611bfa2ba5badb070087fa24 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* eglfs: use qEnvironmentVariableIntValue()Marc Mutz2014-09-123-4/+4
| | | | | | | | It doesn't allocate memory, so cannot throw and is a lot faster than qgetenv(). Change-Id: I4c43809954ed720de95b3056c13bf520577e3280 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Android: use qEnvironmentVariableIntValue()Marc Mutz2014-09-126-8/+8
| | | | | | | | It doesn't allocate memory, so cannot throw and is a lot faster than qgetenv(). Change-Id: I6d79852613228658f9093a272edf9b434e60286c Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Merge remote-tracking branch 'origin/5.4' into devOswald Buddenhagen2014-09-1040-178/+852
|\ | | | | | | Change-Id: Id4997327cc01bd4bb397a463bdffbd15e80398ef
| * xcb: fix getting a XdndAware property if a proxy window existsAlexander Volkov2014-09-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | According to the XDND standard (http://www.newplanetsoftware.com/xdnd/) if the proxy window exists then it should be checked for the XdndAware property rather than the target window directly. c3f9de62966d32d8e33d62eb374fe2657a4cfebe introduced the mistake. In the old code the proxy window was used. Change-Id: I83b66d4b1f08a1f44d5c1451d0f1735c084bcf09 Spotted-by: Alexander Smirnov Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * Define EGL_EGLEXT_PROTOTYPES for ANGLEv5.4.0-alpha1Laszlo Agocs2014-09-061-0/+1
| | | | | | | | | | | | | | | | | | Otherwise the protos are not pulled in so the ANGLE-only build cannot suceed (unless the flag is defined from somewhere else). Task-number: QTBUG-41164 Change-Id: I959d154da88f7ccc8159ec7e810ffdba0e7f50ea Reviewed-by: Andrew Knight <andrew.knight@digia.com>
| * kms: Move debug output behind a category.Robin Burchell2014-09-052-4/+8
| | | | | | | | | | Change-Id: I5b2bb8631a33b577afca1a0852abe4cabae1e254 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
| * xcb: fix coordinates of touch pointsAlexander Volkov2014-09-051-1/+1
| | | | | | | | | | | | | | | | Fix conversion from FP1616 to qreal. Use 16-bit mask 0xFFFF instead of 8-bit mask 0xFF. Change-Id: I0ee39b2e298b7ff7d7a67981925374d6a18f1474 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * Windows: Move dock windows automatically when screen is disconnected.Friedemann Kleint2014-09-051-1/+25
| | | | | | | | | | | | | | | | | | Windows does not automatically move WS_EX_TOOLWINDOW type windows. Task-number: QTBUG-39320 Change-Id: If9804f32beb534a27ba649abf5eaceb686af8f50 Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| * Avoid deadlock when suspending devicePaul Olav Tvete2014-09-051-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | Don't wait for the GUI thread when it's already waiting for us. An application that uses the virtual keyboard may get an inputmethod query just when it is being suspended. If the GUI thread is already blocking on a semaphore at that point, waiting for the android thread, we really do not want to wait for the GUI thread... Task-number: QTBUG-40955 Change-Id: Iea2cf0dd058a41a897d596c4bcf16f0508adb20b Reviewed-by: Christian Stromme <christian.stromme@digia.com>
| * Android: don't recreate surface on shutdownPaul Olav Tvete2014-09-052-0/+5
| | | | | | | | | | | | | | | | | | When we suspend the app, we destroy the surface to save resources. We don't want to create it again just as we are shutting down. Task-number: QTBUG-41072 Change-Id: I7a616249bee869b92716d0911201a80d73c2f8da Reviewed-by: Christian Stromme <christian.stromme@digia.com>
| * iOS: Update QIOSScreen::nativeOrientation() for iOS8Tor Arne Vestbø2014-09-041-2/+9
| | | | | | | | | | | | | | | | For iOS8 and up [UIScreen bounds] changes based on the interface orientation, so we need to use [UIScreen nativeBounds] instead. Change-Id: I3fc12cfa417df26ca94c803e970bc2dc18a94378 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * Add KMS hooks for EGLFS pluginLouai Al-Khanji2014-09-042-0/+427
| | | | | | | | | | Change-Id: Ic703334e52726cdd815cccf152d9d01aa63c803c Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
| * windows: Fix dynamic opengl buildLaszlo Agocs2014-09-032-6/+6
| | | | | | | | | | | | | | Cannot call WGL or EGL functions directly anymore. Change-Id: I0d5c6217679d87a2092c945a9b841dfd7b6c299a Reviewed-by: Andrew Knight <andrew.knight@digia.com>
| * Enable QT_ANGLE_PLATFORM selection in dynamic buildsLaszlo Agocs2014-09-031-1/+1
| | | | | | | | | | Change-Id: I8ebe62ec1e024e8a0a0f9e8aeac6fb81b1095e72 Reviewed-by: Andrew Knight <andrew.knight@digia.com>
| * direct2d: Work around ClearType rendering bug in translucent modeAndrew Knight2014-09-037-15/+36
| | | | | | | | | | | | | | | | | | | | | | | | This switches the font rendering to use gray scale antialiasing when in translucent rendering mode. It does so by adding a flags argument to the paint engine, allowing for future expansion in communicating render hints from the device to the engine. Task-number: QTBUG-41002 Change-Id: I0265154716a12060e851b603a109e9c693f5e843 Reviewed-by: Louai Al-Khanji <louai.al-khanji@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * DirectFB: Add QT_DIRECTFB_BLITTER_DEBUGPAINT environment variableAndy Nichols2014-09-032-7/+67
| | | | | | | | | | | | | | | | | | | | This environment variable will paint an overlay on each paint command that is using the accelerated blitter path for DirectFB. This is useful when you want to assure that you are taking advantage of the DirectFB blitter. Change-Id: I6e374754825794daf9c1bf40bee2b963e752a8e9 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
| * eglfs: Fix regression in config selectionLaszlo Agocs2014-09-031-5/+4
| | | | | | | | | | | | | | | | | | | | During the introduction of context adoption support the config choosing got broken for context creation, at least for hooks that return a customized format in surfaceFormatFor(). The returned format is the one that needs to be passed to chooseConfig(), not the original. Change-Id: Iae203cbbf7b39c462386611dd3744f048116df13 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
| * Android: Avoid deadlocks on suspendPaul Olav Tvete2014-09-032-9/+14
| | | | | | | | | | | | | | | | | | | | | | | | Get rid of the rendezvous at shutdown: the android thread does not need to wait for the GUI thread. Since the GUI thread frequently does blocking calls to the android thread, this fixes several known and potential deadlocks. Task-number: QTBUG-41072 Change-Id: Ia6fa8da026b1727e7352b22f4df4d72b63b8c847 Reviewed-by: BogDan Vatra <bogdan@kde.org> Reviewed-by: Christian Stromme <christian.stromme@digia.com>
| * Android: Guard against invalid surfaceIDPaul Olav Tvete2014-09-021-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not try to resize or destroy invalid surfaces. This caused update problems with all GL apps after suspend, since we would forget the dummy view that we always keep around so we get proper transitions on shutdown. Also make sure that we don't mess this up even if we try to destroy a non-existing surface. This would have fixed the bug by itself, but then we would still be stuck with the annoying warning message. Task-number: QTBUG-41093 Change-Id: I83299e93eb9ac5357b98ca47014789b56c91b35a Reviewed-by: Christian Stromme <christian.stromme@digia.com>
| * windows: Allow selection of ANGLE's rendererAndrew Knight2014-09-022-1/+31
| | | | | | | | | | | | | | | | | | | | | | | | The default behavior of ANGLE is to use D3D11 before falling back to D3D9. This change improves flexibility the platform plugin to explicitly create a D3D11, D3D9, or D3D11 software (WARP) context by setting the QT_ANGLE_PLATFORM to "d3d11", "d3d9", or "warp", respectively. Task-number: QTBUG-41031 Change-Id: Ie1d399c1cb0e360e5b3a6d9f2a4b28745d86cc71 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
| * iOS: Don't store UIViewAnimationOptions value as UIViewAnimationCurveTor Arne Vestbø2014-09-021-2/+2
| | | | | | | | | | | | | | | | | | | | We pull out the magic UIViewAnimationCurve of the keyboard animation when the keyboard is about to show, but we need to defer the shifting of the value 16 bits, as that turns it into a UIViewAnimationOptions, which we can't store in a UIViewAnimationCurve member. Change-Id: Id35dae1ec487951df749dfffb6118b572c28b103 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
| * iOS: Get rid of markedTextFormat global static variable in IMETor Arne Vestbø2014-09-021-9/+12
| | | | | | | | | | | | | | Preperation for IME refactor. Change-Id: I0832c174d05d019d69ef7c01c45aaedc6e4d9468 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
| * iOS: Add support for QWindow::setOpacity()Tor Arne Vestbø2014-09-022-0/+7
| | | | | | | | | | Change-Id: I027154aef35d219f08915e195f2baf8595ef7343 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
| * direct2d: Fix translucent/frameless window renderingAndrew Knight2014-09-014-41/+135
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using WA_TranslucentBackground/FramelessWindowHint, the backing store must paint to an offscreen texture instead of the swap chain in order to achieve the desired results. This texture is then presented to the screen using UpdateLayeredWindowIndirect(). As the swap chain is not needed in this mode, its construction is skipped if indirect rendering is active. Furthermore, the layering options were updated to fix an issue with transparent layers overpainting the background. The layer options were switched to D2D1_LAYER_OPTIONS1_NONE, which appears to work for both translucent and non-translucent rendering modes. Task-number: QTBUG-40601 Change-Id: I656f7cdfb424d1eda6f82c2c69500e78d8c1726a Reviewed-by: Louai Al-Khanji <louai.al-khanji@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * winrt: Fix mouse coordinates on high-DPI displaysAndrew Knight2014-09-011-3/+5
| | | | | | | | | | | | | | The scale factor was only being applied to touch coordinates. Change-Id: I7fc2793b1514c73986a574a95478306c1eb54c5e Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
| * Fix no-opengl buildLaszlo Agocs2014-09-011-1/+1
| | | | | | | | | | | | Change-Id: I577bd5d10e52571c95c9e646327264cf95ac6eb1 Reviewed-by: Andrew Knight <andrew.knight@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * Prevent current context from becoming inconsistent upon create()Laszlo Agocs2014-09-013-6/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Platform plugins have a tendency to make the newly created native context current with a temporary surface. This is usually needed to query some information related to the new context. Afterwards most of them just reset to having nothing current. This has two issues: It unexpectedly changes the current context/surface. A call into QOpenGLContext::create() does not imply that the current context will get changed. This is the minor issue and we could probably live with it (at least if it had been documented). However, the real issue is that QOpenGLContext::currentContext() will become inconsistent: it will still report whatever was current before the create() even though on the EGL/WGL/GLX level that's not the case anymore. To prevent all this confusion the platform plugins can easily be changed to restore whatever context/surface was current before they altered it. Change-Id: I6a5b4597c86571327524ddb13e0d02538593cc7b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * iOS: Initialize QScreen properties before setting up root viewcontrollerTor Arne Vestbø2014-09-011-19/+19
| | | | | | | | | | Change-Id: I5fd899030b0557e9b0d96f2c065c8be5cfadd5de Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
| * Windows QPA plugin: Streamline code to find window at a position.Friedemann Kleint2014-09-016-49/+10
| | | | | | | | | | | | | | Task-number: QTBUG-40815 Change-Id: I0efcc2cfcafdee04bda20afa88a7f6aaabd57210 Reviewed-by: Kai Koehne <kai.koehne@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-09-0170-731/+1111
|\| | | | | | | Change-Id: I2811ff0b9d4097f0be60ff16e9664a5060cff23e
| * Remove superfluous "break" in QWindowsNativeFileDialogBase::setLabelText()Maks Naumov2014-09-011-1/+0
| | | | | | | | | | Change-Id: I889dfa00daf60e393e3d95ee2d0ecb73f7871e4c Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| * Fix memset() for "alphaValues" in supportsSubPixelPositions()Maks Naumov2014-08-311-1/+1
| | | | | | | | | | | | | | Fix reversed memset arguments. Change-Id: I1601fecb24068fa601e919a9fd8bb1e991ef70ec Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| * IBus Input Method: Check in commit whether we need to commitDaniel Teske2014-08-311-3/+5
| | | | | | | | | | | | Task-number: QTBUG-40755 Change-Id: I283d48cc6d4390a02d0df63ac6e38fa5f73a0ec0 Reviewed-by: Pekka Vuorela <pvuorela@iki.fi>
| * Windows: Fix QPlatformCursor::pos()/setPos() for DPR scaling.Friedemann Kleint2014-08-292-2/+9
| | | | | | | | | | | | Task-number: QTBUG-38858 Change-Id: Ibb0355ae19a382e4eb3805fe6d6afab2a2a603e6 Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
| * Windows: Detect Surface Pro 2 tablets.Friedemann Kleint2014-08-281-0/+2
| | | | | | | | | | | | Task-number: QTBUG-39571 Change-Id: I9cb7fe2dee9a0701912ea639cdcc66a198e5b65c Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * Windows: Prevent hidden transient children from being re-shown by Windows.Friedemann Kleint2014-08-282-3/+12
| | | | | | | | | | | | | | | | | | Bring back code from Qt 4 to handle WM_SHOWWINDOW / SW_PARENTOPENING correctly. Task-number: QTBUG-40696 Change-Id: If018bf90573f495dbe32d0c46f522ccde0691ebb Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
| * QWindowsNativeInterface: don't allocate memory just to compare stringsMarc Mutz2014-08-281-3/+3
| | | | | | | | | | Change-Id: I691d2629a78aaaee3d1741b9ab4c55b16c95bde9 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| * iOS: Use dispatch_async instead of performSelectorOnMainThread for IMETor Arne Vestbø2014-08-261-10/+12
| | | | | | | | | | | | | | | | Gets rid of awkward wrapping of Qt::InputMethodQueries as integer in a NSObject. Change-Id: Ia7e368fc12ec7957ca8ab602d8cec1e0a071af1d Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
| * iOS: Add UIResponder helper to get current first responderTor Arne Vestbø2014-08-262-0/+29
| | | | | | | | | | Change-Id: I422d45860a52861893d963fabbecd4ac30477272 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
| * Accessibility iOS: Fix crash after deleting a viewFrederik Gladhorn2014-08-262-3/+6
| | | | | | | | | | Change-Id: I64e8357fcbf7f312308490351b7c692d31db5a43 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
| * Add devicePixelRatio support to the Windows QPA plugin.Friedemann Kleint2014-08-2517-120/+420
| | | | | | | | | | | | | | | | | | | | | | This adds support for the environment variable QT_DEVICE_PIXEL_RATIO for the Windows platform plugin. Task-number: QTBUG-38993 Task-number: QTBUG-38858 Change-Id: I6831eb6d3a09a80be7bbef46395e91531b61cc50 Reviewed-by: Alessandro Portale <alessandro.portale@digia.com> Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
| * Avoid crash if querying device that has gone awayAllan Sandfeld Jensen2014-08-251-2/+4
| | | | | | | | | | | | | | | | | | | | | | A device removed very fast after being inserted might disappear while we are still seting it up. We must therefore check if we indeed still get a matching device Task-number: QTBUG-40820 Change-Id: I4372fb1932264e5799f37cea0d016795e28ebed6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>