summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
* Examples, plugins: Remove remains of qpa in profiles.Friedemann Kleint2011-10-281-5/+1
| | | | | Change-Id: I0fc45c6c4df6d1f07472aec30b9e64b55db8e543 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Replace implicit QAtomic* casts with explicit load()/store()Bradley T. Hughes2011-10-271-2/+3
| | | | | Change-Id: Ia7ef1a8e01001f203e409c710c977d6f4686342e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix compiler warnings.Friedemann Kleint2011-10-271-5/+2
| | | | | | | | - Fix gcc 4.6.X warnings about assigned but unused variables - Remove trailing ';' from inline functions (Clang) Change-Id: I8670afd6b149748a740f22c65de137762e9f18e1 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Windows: More fine-grained paint event handling.Friedemann Kleint2011-10-273-5/+15
| | | | | | | | Pass expose events to GL widgets, handle invalid update rectangles, ignore WM_ERASEBKND (using code from 4.8). Change-Id: Ide062efb392292fff556d37b0ef0e880676748a2 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Initial support for MeeGo's input method serverSimon Hausmann2011-10-279-0/+1267
| | | | | | | | | | | | | | This platform input context plugin is based on the dbus protocol used in MeeGo 1.2 Harmattan's input method server. It supports composition, mouse-click-on-preedit as well as basic input method hints. Missing are: Copy & paste, preedit injection, key redirection as well as a bunch of other smaller MeeGoTouch specific features. Change-Id: Ic3a8741f7a5ed18b379985e316cb137f7b8f6a8e Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com> Reviewed-by: Kenneth Rohde Christiansen <kenneth.r.christiansen@nokia.com>
* Add default actions to QAccessibleWidget.Frederik Gladhorn2011-10-273-13/+15
| | | | | Change-Id: I9f251aad663fd0b8db2ef068c6581241d91c090d Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Native file dialog support for MacMorten Sorvig2011-10-275-0/+878
| | | | | | | | | | * New API: QPlatformDialogHelper to support native dialog on QPA. (Currently, It supports only file dialog.) * Modify QDialog* and QFileDialog* to support native dialog. * Add native file dialog support to cocoa platform plugin. Change-Id: I957f046748a27a33fd9f8af3c525feabd1b0f582 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: Set correct child window geometry.Morten Sorvig2011-10-274-31/+14
| | | | | | | | | Remote globalGeometry which was completely wrong, replace with flipRect which converts from Qt screen coordinates to OS X screen coordinates. Change-Id: Ie560cb7c2266fe779da8a44a35596d2d12af77f5 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: Implement propagateSizeHints.Morten Sorvig2011-10-274-0/+28
| | | | | Change-Id: Idc1244ffbf975972f01d9ee48092500a72739d37 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Windows: Fix Open GL formats.Friedemann Kleint2011-10-264-91/+156
| | | | | | | | | | - Add swapInterval as additional format - Query context format correctly and store in separate struct (default vs requested/obtained) - Cosmetics, rename enumerations, structs. Change-Id: I381cf8e1bde33e6624feb549437c7b95dd85e93c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Implement child instead of navigate in QAccessibleMainWindow.Frederik Gladhorn2011-10-262-14/+11
| | | | | Change-Id: I321ce4f8bb6e724db87a0419f890174b32cc1fe2 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Readded PrintSupport for WindowsOliver Wolff2011-10-257-0/+390
| | | | | | | | | | The prepared plugin architecture for printing support was used as much as possible but some functionality had to be done in src/printsupport. Change-Id: Ic8446cb8018a0970b4da97c1912ba6dc20d2a09f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Update readme about xcb plugin dependenciesLaszlo Agocs2011-10-251-0/+3
| | | | | Change-Id: Ia317ce96db3400f43cf800619fddcf76b5ab450a Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Remove "duplicate objective-c class" warning.Morten Sorvig2011-10-231-0/+5
| | | | | | | | | | | Qt would dlopen both libqcocoa.dylib and libqcocoa_debug.dylib, causing duplicate implementations if the classes in the cocoa plugin (QNSView etc) Fix this by building the release version only. Change-Id: I1244a83c49999ce28edd97400e792fa2a0665fec Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: clean up compiler warnings.Morten Sorvig2011-10-237-35/+19
| | | | | Change-Id: I2cb65bb455b79b218a317b21e5a3b0d9792e0e22 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* [directfb] Implement grab/ungrab of keyboard/pointerHolger Hans Peter Freyther2011-10-212-0/+26
| | | | | Change-Id: Ie2b99bb659e324c63bfd23e96d6c89c13a8df3b4 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [directfb] Remove grabbing of the pointer on inputHolger Hans Peter Freyther2011-10-211-5/+0
| | | | | | | | This should not be done on the input level but we should handle the requests on the QWindow to grab/ungrab the pointer Change-Id: Ibc61b300bf8de20f576fb8972fadf18de4a142c1 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [directfb] Implement QPixmap::fromFile using DirectFB routinesHolger Hans Peter Freyther2011-10-212-0/+114
| | | | | | | | | | The code is based on Qt 4.8 DirectFB support, it was reduced in size (cosmetic changes, by using the outPtr()) and it has a bugfix to pass loadAsBitmapOrPixmap that assumes the loadFromFile routine will add '.png' and other extensions to the file. Change-Id: I25b11206053c02be5c04730fba5bb42bd07426d1 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [directfb] Prepare to select the alpha/opaque pixel formatsHolger Hans Peter Freyther2011-10-212-2/+21
| | | | | | | | | Right now we assume to use 32bpp but depending on the hardware this might not be optimal at all. Begin to prepare the code for not having a 32bpp surfaces. Change-Id: Iedfa49c568559e074dfaeae2a216c9eb93721d2c Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [directfb] Manage the font database with a QScopedPointerHolger Hans Peter Freyther2011-10-212-2/+2
| | | | | | | Attempt to fix a memory leak on exit by deleting the font database. Change-Id: I07b0865c97bb8ef26950bf231b5239ca01e95c56 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [directfb] Remove some duplication in the QDirectFbBlitter c'tor.Holger Hans Peter Freyther2011-10-211-8/+11
| | | | | | | | Introduce dfb_blitter_capabilities that returns the QBlittable::Capabilities of the DirectFB blitter. Change-Id: Ifb803ff4f07376d5333ad2d05ff72d9a63d17fff Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* directfb: Initialize m_dfb after DirectFBInit has been calledHolger Hans Peter Freyther2011-10-211-2/+4
| | | | | | | | | | The QDirectFBIntegration is responsibe for deleting the DirectFB instance but it can only initialize the DirectFB instance after the DirectFBInit has been called. Change the order. This issue got introduced by myself in 3faa89f4. Change-Id: Ia67d439152d895e2e0a47f35eed57348c629f79f Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [directfb] Introduce the QDirectFBPointer from QWS/gfxdriversHolger Hans Peter Freyther2011-10-2114-93/+126
| | | | | | | | | | Introduce QDirectFBPointer and use it throughout the code to fix various resource leaks in the DirectFB backend. Fix the surface ownership of the IDirectFBSurface in the Blittable/BackingStore code. Change-Id: I0d4572eaab80b3558e644f26d76222461bf37bbb Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [directfb] Make QDirectFBInput a QThread to allow proper exitsHolger Hans Peter Freyther2011-10-213-29/+18
| | | | | | | | | | | | | | | | Without this patch the application will get stuck waiting for the IDFBEventBuffer to report an event. We will use the IDFBEventBuffer::WakeUp function to interrupt the waiting but this produces the below error on exit: QEventLoop: Cannot be used without QApplication QThread: Destroyed while thread is still running This is solved by making the QDirectFBInput a QThread, reimplement the run() method to handle the events. It should work as this is only posting events to the QApplication event loop. Change-Id: I24adf2b080f96c72ede6a5499f484ac33fdd44fc Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [directfb] Use QScopedPointer to manage heap allocated objectsHolger Hans Peter Freyther2011-10-217-33/+16
| | | | | | | | | | | Use QScopedPointer to avoid trying to manually delete objects. For some of the cases the leak would only be viewable when things are getting shut down. Leave in some more warnings for cleaning it up, e.g. the m_eventBuffer of the Input is leaked and the input task will only stop after another key event. Change-Id: Ic54568343605b4ab7094a7dece40e22250184a37 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [directfb] Fix memory leak when passing arguments to directFBHolger Hans Peter Freyther2011-10-211-0/+3
| | | | | | | We need to delete the array but also the elements inside it. Change-Id: Ib61beeca569802638b9ff3b94ede79c0beebb399 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [directfb] Do not call a pure virtual functionHolger Hans Peter Freyther2011-10-211-2/+0
| | | | | | | | | In 688d9f6ec0a0da5539a3d11fa1dc6e1ae0558cda the base class was changed from QWindowSurface to QPlatformBackingStore but QPlatformBackingStore::resize is pure virtual now. Change-Id: Ib36f177d80e9458e7e8e34f587e4554c0462e35c Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [directfb] Rename class from WindowSurface to BackingStoreHolger Hans Peter Freyther2011-10-215-17/+17
| | | | | | | | Catch up with the naming by renaming the file from windowsurface to backingstore, update the class names and include files. Change-Id: I1b16826b60c19490946a77f61518e18f8099adce Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* [blitter] Work on tst_QPixmap::clear()Holger Hans Peter Freyther2011-10-212-13/+30
| | | | | | | | | | | | | | | | | | | By default QPixmap may not hasAlphaChannel(), only if setMask() or fill() with a transparent color is called a QPixmap will hasAlphaChannel(). Make the QBlittablePlatformPixmap remember if there is an alpha channel, pass this as parameter in createBlittable to make it clear that this is required and not optional. Update the DirectFB plugin to handle this parameter to create a RGB32 or ARGB Surface depending on the alpha value, also only use PreMultiplied alpha when using ARGB. Separate the two constructors for the QDirectFbBlitter to either adopt a DirectFB Surface or to create one. Change-Id: I8abf82408ecd2d075fc6f241ace8be2a34ac56e7 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* Remove mtdev dependency from the touchscreen QPA plugin.Laszlo Agocs2011-10-216-142/+145
| | | | | | | | | | There is no reason to enforce the usage of the mtdev library. As long as ABS_MT_TRACKING_ID is provided protocol type A is perfectly enough. This makes the plugin more suitable for embedded systems. Change-Id: I73ce4a1056a6dc27daacb69dc4761bca393a7e43 Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
* Mark the most important MSAA functions as "moz: [important]"Jan-Arve Saether2011-10-201-0/+20
| | | | | | | See comment inside commit for explanation. Change-Id: Ifc05d479ac5094f21f8db0390ae21d99eef0dbe1 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Move a11y inspector from tools to util.Morten Sorvig2011-10-201-1/+1
| | | | | Change-Id: Ifc032c511aea72a8f7a4ec62d304e89718f712db Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Windows: Fix Geometry, OpenGL formatsFriedemann Kleint2011-10-192-10/+41
| | | | | | | | - Do not use size returned by GetWindowRect for child windows - Turn Open GL samples off if number is 1. Change-Id: I2f44606d965fe691548094771deda7bca51ef9a6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Refactor QAccessibleActionInterface.Frederik Gladhorn2011-10-199-488/+206
| | | | | | | Some refinements done by Jan-Arve Sæther. Change-Id: I99195b3c7273316cfa9c46e451924bbcfddd11a9 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Cocoa: Add initial accessibility implementation.Morten Sorvig2011-10-198-4/+599
| | | | | | | | | | | | | | See qcocoaaccessiblity.h for details. For now only the first level of the hierarchy is made accessible. Also add tools/accessibilityinspector which is an utility for inspecting and debugging the Qt accessibility tree. Change-Id: Iff520bec26b3761feb0c2e00471feb379daaa735 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Windows platform: Improve Open GL.Friedemann Kleint2011-10-189-71/+155
| | | | | | | | | | | | | - Pass on version to ARB. - Query obtained ARB format more fine-grained depending on version, indicate failures - Fix GDI contexts and introduce gl=gdi to activate the GDI functionality - Adapt window flags after setParent if top level state changes - Remove unused OpenGL flag from integration/context Change-Id: I59ca74ee1fa727bd2bcfd605b3907bc82cca18fa Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Remove stale documentation.Casper van Donderen2011-10-181-41/+0
| | | | | Change-Id: I85139e0334b648bee0d18129cef9387dcc6c3222 Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
* Remove Q_WS_ in text codecs.Friedemann Kleint2011-10-1812-34/+34
| | | | | Change-Id: Id27d82f91a21107f31f73d7f2920629a512dc2a1 Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
* Fix TouchEnd events not being received on Harmattan.Jocelyn Turcotte2011-10-171-2/+3
| | | | | | | | | TouchEnd is sent when all the touch points have a TouchPointReleased state, and we would clear all touch points on finger release before sending them up the stack. Change-Id: I14e7347090ce9a1865743202f6926ae2fc035bd3 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Add multipoint touch support for Harmattan to the xcb platform plugin.Jocelyn Turcotte2011-10-175-0/+384
| | | | | | | | | | | Proper multipoint touch support was only introduced in XInput2.1, but Harmattan uses a tweaked version of XInput2.0 that transfers touch data through mouse events. This patch applies on the xcb plugin a subset of the changes that were applied on the Qt 4.7 that was shipped to Harmattan to get similar multipoint touch support. Change-Id: Ifda7ad40de29d7ded1443d4f78b3ec3807303a9f Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Add a warning and a return value to xcb's createGLPlatformContextLaszlo Agocs2011-10-171-0/+2
| | | | | | | | | | | | | | | | | There was no value returned previously when none of GLX, EGL, DRI was enabled. Now we show a warning message and return null (resulting in a crash). Previously not returning a value resulted in obscure crashes with strange-looking call stacks, now it will be clear what the problem is. This is particularly important because not having libx11-xcb-dev installed results in silently disabled xlib support which in turn disallows the usage of glx too. The result is an obscure crash in any GL (e.g. QML2) app. Now there will be a proper warning message at least. Change-Id: I15cf3a6c16ca373d4ada7abb6d3c8f7e30c1e03d Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Do not fail user time window creation when xcb is using xlibLaszlo Agocs2011-10-172-2/+8
| | | | | | | | | | | | | | | | | | | QXcbWindow::updateNetWmUserTime() creates a new window using the actual window as its parent. This operation was failing when Xlib usage and GLX (or EGL) was enabled because in these cases the real window was created with a different visual using XCreateWindow. For the user time window however we were passing the xcb_screen's root_visual always, and this cannot work when Xlib+GLX/EGL is in use, resulting in a BAD_MATCH (followed by some annoying flicker on the screen on Ubuntu at least, or a full log off (X crash?) on Fedora). The patch saves the visual id used to create the actual window and passes that when creating the user time window. This way the creation of the user time window succeeds with Xlib+GLX too. Change-Id: If3925d9ac1670d385dcc7c2b475c196908569f06 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Make the window active in eglfs and minimal plaform plugins.Laszlo Agocs2011-10-142-2/+6
| | | | | | | | | | | | | | | | Without a call to QWindowSystemInterface::handleWindowActivated() or QPlatformWindow::requestWindowActivated() QGuiApplication's activeWindow() and focusWindow() will return 0 all the time, and this breaks key event delivery when key events are received not from a windowing system but directly from e.g. evdev. In such cases the only choice is to send the event to the active window but if there isn't one the event will be lost. These platforms will have one fullscreen window at a time so marking it the active one should be a safe assumption. Change-Id: Ia6f0e9f021fbd61bbd368ddc46f8a13fccda1c2f Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Accessibility plugin for mac and xcb.Frederik Gladhorn2011-10-144-0/+24
| | | | | | | | | | Instead of creating new instances of the class whenever accessibility() is called, create one on startup. Change-Id: Idd5b06ee935d7acf4934b98882d254a1ef0ca04e Reviewed-on: http://codereview.qt-project.org/6435 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com> Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Fix OpenGL on Harmattan showing only the first frame.Jocelyn Turcotte2011-10-141-0/+14
| | | | | | | | | | | | swapBuffers would wait until DRI2_InvalidateBuffers was received from the X server, but would never receive it since we are not running the xlib event loop. This patch calls the XESetWireToEvent xlib callback of an unhandled event from the xcb event loop directly, if one is available for its response type. Change-Id: I3b4ef3f6e3efbae25f49f161e229e9b15e951778 Reviewed-on: http://codereview.qt-project.org/6557 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Calculate an area in the touchscreen qpa plugin.Laszlo Agocs2011-10-132-3/+6
| | | | | | | | | | | | Instead of ignoring the touch major/minor and returning a rectangle with width and height of 1, the size of the area is now calculated based on the major. This is incomplete and far from perfect but at least it makes visualizers, like the fingerpaint example app, work out of the box. Change-Id: I3bb70b4d7247f289e5cae4e7de2460ecf2c9d009 Reviewed-on: http://codereview.qt-project.org/6566 Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
* Cocoa: Update QPlatformWindow geometry on moveMorten Sorvig2011-10-131-0/+1
| | | | | | Change-Id: I976e4da646480d10cc6af444288c421d0645f689 Reviewed-on: http://codereview.qt-project.org/6541 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Migrate the touchscreen generic qpa plugin to QWindow.Laszlo Agocs2011-10-131-4/+5
| | | | | | | | | This plugin was still using QApplication and QDesktopWidget. The code is now migrated to QGuiApplication, QWindow, and QScreen. Change-Id: I22a7e15982efea16cbf560d09c8831cd82ed29d0 Reviewed-on: http://codereview.qt-project.org/6528 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
* Windows: Adapt to new Lighthouse APIFriedemann Kleint2011-10-116-55/+103
| | | | | | | | | | | - Implement debug/deprecated options of QSurfaceFormat - Implement stylehints - Fixed input context to position the input window correctly. Change-Id: Icba22f183c6895e30bd34d60cf6d2307ed3188cd Reviewed-on: http://codereview.qt-project.org/6446 Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Move input panel visibility ownership from QInputPanel to QPlatformInputContextJoona Petrell2011-10-112-0/+7
| | | | | | | | | | | | | | | | | | | | Now QInputPanel::visible() can be set true even when platform doesn't provide a virtual keyboard. Like keyboard geometry, visibility should be dictated by the platform plugin and not QInputPanel, whose role is more like that of a mediator. QInputPanel::show() and ::hide() calls should be treated as requests that may fail. Changed the QInputPanel's visible property to read-only as a setter that may fail is not really a setter, show() and hide() should be used instead. Enabling the new functionality cannot be activated immediatelly without breaking existing keyboards, added a temporary function handlesInputPanelVisibility that handovers the responsiblity of updating input panel visibility to QInputContextPlatform only once QInputContextPlatform says that it is able to handle it. Change-Id: Ideecaf7225cc3971f33a0ac976bd92cf7767475b Reviewed-on: http://codereview.qt-project.org/6429 Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Pekka Vuorela <pekka.ta.vuorela@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>