summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
* Windows: Handle WM_SYSCOLORCHANGE as theme change.Friedemann Kleint2013-10-231-0/+3
| | | | | | | Task-number: QTBUG-34170 Change-Id: I6ca11ab67c1e2752300fc167fb8f3c4f0d9ae2b8 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Fix crash in QXcbDrag.Friedemann Kleint2013-10-231-1/+1
| | | | | | | | | handleStatus() was called with drag==0 when releasing the mouse over the desktop. Task-number: QTBUG-33920 Change-Id: I553647d1e734934b7c6caf4c984683cff88f9162 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Fix typo in check for MINGW_W64 versionKai Koehne2013-10-231-1/+1
| | | | | | | | Got introduced in 9b187bcd6a256b53cc2fb85500 Change-Id: I1d713f8309d3d8568ea836cc1d29f9dca685ac01 Reviewed-by: Jonathan Liu <net147@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Don't crash if the platform plugin is not initializedBogDan Vatra2013-10-231-0/+3
| | | | | Change-Id: I999411816192edbd2bf40c6bda92d6e94fb3d1b0 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Rely on isLayered() to decide layeringGunnar Sletta2013-10-231-2/+3
| | | | | | | | | The logic here was a bit broken. Every QWindow has an opacity which is 1 by default so the expose was hit for every single window, regardless of it being layered or not. Change-Id: I04873cd5db1cd147708e7de140f5947d3a01e9e1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Android: Make platform menu more robustPaul Olav Tvete2013-10-231-3/+5
| | | | | | | | | Don't crash and lock up the whole device when people try to remove menu items that don't exist. Task-number: QTBUG-34246 Change-Id: I4396d252c5af93e021c9e218dbab7c0e7f190d9d Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Fix compilation with latest MinGW-w64 (release 3)Kai Koehne2013-10-221-1/+3
| | | | | | | Now that MinGW-w64 fixed the headers the old hack actually break stuff. Change-Id: I1f60b9176982f6c07e01f3960bc1d7e70d7f9481 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Android: Accessibilty: Handle text betterFrederik Gladhorn2013-10-201-3/+15
| | | | | | | | Try harder to actually return text, before TalkBack would not read the contents of line edits and other text widgets. Change-Id: Ibb9bb8ac4a2728674f6f5ccf29eda5ed66a81a34 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Cocoa: Allow popups to grab mouse and keyboardGabriel de Dietrich2013-10-182-1/+9
| | | | | | | | | According to the QWindow documentation this should happen regardless of the window type. (It also mimics the current behavior on Linux and Windows). Change-Id: I1b0959ad8cf19bce452fd79a13b07d0a3a3c49e9 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Refresh CUPS printer list when QPrinterInfo.availablePrinters() is called.Friedemann Kleint2013-10-172-6/+19
| | | | | | | | | | Introduce freeCupsPrinters() thus fixing a bug in the old deallocation code which would first set m_cupsPrintersCount = 0 and then pass it to cupsFreeDests(). Task-number: QTBUG-33666 Change-Id: I94c51cb390761a669a9cbd589c1131cfb51354c3 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Blackberry: Cannot create shared egl contexts.Nick Ratelle2013-10-171-1/+9
| | | | | | | | | | Currently the share context is always set to EGL_NO_CONTEXT when it should instead query the share handle from the QOpenGlContext and pass that to the eglCreateContext call. Change-Id: Ia7e32574e1427fba0f919003e5367cfc98688d9d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Implement native gestures on OS X.Morten Johan Sørvig2013-10-171-0/+96
| | | | | | | | | | | | | | | Add QWindowSystemInterface::GestureEvent and QNativeGestureEvent to QtGui. These events are copies of Qt4's QNativeGestureEvent, where it was an implementation detail of QGestureManager. Add gesture message handlers to QNSView and bring back the Mac gesture recognizers for QGestureManager. Task-number: QTBUG-28126 Change-Id: I1304e09e776fa7c44d133d54ca8b895ca2f544c5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* iOS: Wrap user's main by renaming symbol and relying on weak linkingTor Arne Vestbø2013-10-171-3/+14
| | | | | | | | | | | | | | | This approach is similar to the earlier apprach of defining main=qt_main when building the user's sources, but uses the linker to rename the symbol instead, which is less fragile than using the preprocessor. To keep the hybrid usecase unaffected by our wrapper logic we declare both our main wrapper and a fallback qt_main as weak symbols, which ensures that when the user's application links in our plugin the real main/qt_main provided by the user is preferred over our weak symbols. Change-Id: Ic76f3ba8932430c4b13a1d3a40b8ed2322fe5eea Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Refresh Windows printer list when QPrinterInfo.availablePrinters() is called.Friedemann Kleint2013-10-172-19/+37
| | | | | | | | | Introduce static query functions. Task-number: QTBUG-33666 Change-Id: I291098c9da82bc2cc24957044187e93cdc33c41d Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* iOS: Mark argument as unused for release buildsTor Arne Vestbø2013-10-171-0/+1
| | | | | Change-Id: I73497a6c16236f912646c9fbe9b136ff760ce4f7 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Fix compilation with Clang and libc++ under LinuxMarcel Krems2013-10-162-0/+2
| | | | | | | | | | src/plugins/platforms/xcb/qxcbsessionmanager.cpp:205:80: error: use of undeclared identifier 'ERANGE' while (getpwuid_r(geteuid(), &entry, buf.data(), buf.size(), &entryPtr) == ERANGE) { src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp:173:28: error: use of undeclared identifier 'LC_CTYPE' char *name = setlocale(LC_CTYPE, (char *)0); Change-Id: Ide6f3072e9158eef412973ce0a72babb41b695f0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Ensure that context menus show even if the window is not active on MacAndy Shaw2013-10-162-4/+14
| | | | | | | | | | | When using the mouse to show a context menu on Mac then even if the window is not active then it will show the menu for native applications. So this ensures that this is respected for context menus in Qt too. Task-number: QTBUG-31497 Change-Id: Ibfcb4b893b0e31d4ce36926a83c9214d130d8fa2 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* OS X: a dialog should always have an enabled titlebar close buttonShawn Rutledge2013-10-161-5/+11
| | | | | | | | | regardless of modality. Task-number: QTBUG-28385 Task-number: QTCREATORBUG-9264 Change-Id: Iaa608f6e742686d4068547766ec596e37c696a07 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Cocoa: Deliver key event to top-level QWidgetWindowGabriel de Dietrich2013-10-161-12/+21
| | | | | | | | | | | | | Having several QWidgetWindow in our hierarchy translates as as many NSViews. Clicking will make the NSView under the mouse cursor key, meaning it will receive all the Cocoa key events. In order to make sure the QWidgets hierarchy sees the key event "as usual," we climb the QWindow hierarchy in search for the top-level QWidgetWindow. (Something similar is already being done in -[QNSView becomeFirstResponder]). Task-number: QTBUG-32914 Change-Id: Idc700309d202820de326d4e2990fad24d7b692ae Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Remove unused includeBogDan Vatra2013-10-161-1/+0
| | | | | Change-Id: I77bd22b3e0314686450343c5a52914d7f97298d3 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Android: don't set autorepeat to true by defaultPaul Olav Tvete2013-10-161-2/+2
| | | | | | | | | | When we don't know if a key event is caused by autorepeat, then the safest assumption is that it is not. Task-number: QTBUG-30793 Change-Id: Iea6aba164e299f0f2c772547b45df6a49639b7e9 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Android: Make it possible to pass arguments via intent extrasEskil Abrahamsen Blomfeldt2013-10-161-5/+2
| | | | | | | | | | | | | | | Needed for autotest script, so that we can pass command line arguments to Qt Test. This can now be done by: % adb shell am start \ -e applicationArguments "argument1 argument2" \ <INTENT> Change-Id: I772209f66da055c6a0b01b709f36e33fdb5c2ed6 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com> Reviewed-by: BogDan Vatra <bogdan@kde.org>
* set the title of the user time window not the application windowShawn Rutledge2013-10-151-1/+1
| | | | | | | | | 51c28cad67077500f63dbe8c0060ed19cf340c0d resulted in setting the title of the wrong window. Task-number: QTBUG-34048 Change-Id: Ia22d563e0ba9b0e074ef79ae5169c1627369c70d Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* linuxfb: Adapt to initialize() patternLaszlo Agocs2013-10-154-15/+23
| | | | | | | | | Migrate to the new 5.2 pattern: Prevent relying on the event dispatcher in the constructor by performing initialization later in initialize() instead. Change-Id: Ifa6024affc35e995d6e33a63fa813da9df0c491b Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Change return type of imagePosition to QPointJan Arve Saether2013-10-152-5/+5
| | | | | | | | | | | | | | QAccessibleImageInterface already has an API to return the size of the image. This function ensures that their API's are not overlapping. Alternatively, we could merge both functions into QAccessibleImageInterface::imageRect(), but the assumption is that images change position more often than their size. Change-Id: I55c25cdff187b9f497828f04cfd5f969cfbc451f Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Remove stray semicolonFrederik Gladhorn2013-10-151-1/+1
| | | | | Change-Id: I6f2d6df5eac2ce66bf2140c2e96c8945cdb439ef Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Update keycode mappings of multimedia keysAllan Sandfeld Jensen2013-10-152-6/+48
| | | | | | | Updates keycode mappings for evdev, directfb and android. Change-Id: I6789f13dbb662da4261a3c947757644e12306dd9 Reviewed-by: BogDan Vatra <bogdan@kde.org>
* QFileDialog: don't create widgets if the platform dialog will be usedShawn Rutledge2013-10-151-2/+2
| | | | | | | | | | | This is a performance and memory optimization which also fixes bugs that are related to creating widgets, file system models etc. despite using platform native dialogs. Similar to 785bc64f8e743ac269f15cbe7fecba93d3d507ac for QColorDialog. Task-number: QTBUG-33039 Change-Id: Ia1aa7ec1f43b47006b9ebd377aed15c958538a17 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Windows: Fix tablet position in relative (mouse) mode.Arthur Krebsbach2013-10-142-4/+30
| | | | | | | | | | | When in "mouse" or "relative" mode with the pen position information would not be calculated correctly resulting in a significant offset between the tablet pen location and the mouse cursor location. Logic was added to detect when the two were not in sync and use the mouse location when this happens. Change-Id: Icb7129e8cce186c0099953769e215649d9347c8e Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Accessibility: simplify dockwidget accessibleFrederik Gladhorn2013-10-142-215/+36
| | | | | | | | | | | | | This patch merges the two classes that were used to make dock widgets accessible into one. The title bar does not need to be represented by its own accessible object. In addition the buttons on the toolbar are now labelled. Task-number: QTBUG-33946 Change-Id: Id90d8c09f15ed683e64dbe3f6ac55bca7a0b300f Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* linuxfb: Make the mouse cursor visible and workingLaszlo Agocs2013-10-141-1/+17
| | | | | Change-Id: I58bae7235ae714da551da1337ee6340fc712aaa5 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* linuxfb: Pick the correct framebuffer device on AndroidLaszlo Agocs2013-10-141-2/+9
| | | | | | | Try also /dev/graphics/fb0 in addition to /dev/fb0. Change-Id: I9c7682af0c92ebdca806b7c9f60c67d4a732ff41 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* QNX: Removed alternate window propertyBernd Weimer2013-10-142-4/+2
| | | | | | | | | Some older QNX versions don't support SCREEN_PROPERTY_ALTERNATE_WINDOW, so cover windows have generally been disabled on QNX. Change-Id: Ibe4b0abc39eb8497571f88c90876571576708d79 Reviewed-by: Sérgio Martins <sergio.martins@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* Fix compilation with older MinGW headersKai Koehne2013-10-121-1/+1
| | | | | | | | | | Headers from mingw.org (4.7.2) declares _flushall only if __STRICT_ANSI__ is not defined ... Anyhow, we can as well use fflush(), which is in the official standard. Change-Id: Ic2b4d2ac724280f1304221be1fceab067af0c1f8 Reviewed-by: Samuel Gaist <samuel.gaist@edeltech.ch> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* eglfs: Show the mouse cursor when a mouse is connectedLaszlo Agocs2013-10-111-1/+14
| | | | | | | | | | | | | | | | | Currently the mouse cursor is shown by default and it can be turned off by setting QT_QPA_EGLFS_HIDECURSOR to a non-zero value. This is now enhanced with an automatic detection step via QDeviceDiscovery (the helper the input code use anyway). From now on if QT_QPA_EGLFS_HIDECURSOR is not set, the cursor is shown only if a mouse device is present in the system. This could later be enhanced further by showing and hiding the cursor dynamically during runtime although that will not be of much use for embedded platforms without libudev. Change-Id: I7e4b85ea8807200871c88fc42b11ab2adac90d32 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Android: Fix backspace bug with 4.3 stock keyboardPaul Olav Tvete2013-10-092-3/+111
| | | | | | | | | | The Android 4.3 keyboard will cause setComposingRegion() to be called when backspacing over an existing word. If we don't implement that, the editor will be out of sync with the input method. Task-number: QTBUG-32955 Change-Id: I6c4ff786269a4e74c70a093c5f03c4c5a5727dd5 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* eglfs: Separate compositor and improve raster window supportLaszlo Agocs2013-10-0910-241/+412
| | | | | | | | | | | Separating the compositor into a separate source file improves the chances of possible future reuse and paves the way to supporting multiple GL windows. Tooltips are now working too. Implemented a few window functions like raise() and lower(). Fixed the qFatal for multiple GL windows to be raised in non-SDK based Android builds too. Change-Id: Id94d2fb2a4382766f3d130eebe1e6f397a535852 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* iOS: Generalize jumping event-dispatcher to handle QEventLoop:exec()Tor Arne Vestbø2013-10-092-39/+33
| | | | | | | | | | | | | | | | | | | | | We already supported re-entering QApplication::exec(), so adding support for handling a generalized QEventLoop::exec() was nothing more than removing the qApplication->in_exec condition in processEvents() and the QThreadData::current()->quitNow condition when interrupting the event loop. Everything else is just renaming and rewording, now that the feature is not specific to QApplication::exec(). This means dialogs such as QFileDialog opened in the main() function will show something on screen, as we then fall back to the iOS root run-loop handling, while at the same time supporting QApplication exec once the dialog closes. We still don't hadle recursive QEventLoop:exec() at the root level, as that would require multiple stacks and detailed application knowledge about when to create them. Change-Id: I334a362d85796341a343ce82f3104ff5866bdc3f Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* iOS: Handle qApp re-exec after application termination from iOS' sideTor Arne Vestbø2013-10-091-2/+13
| | | | | | | | | If the user for some reason spins a new QApplication event loop after an initial one has been exited as a result of the application being terminated by iOS we need to prevent further event loops from starting. Change-Id: Ief8a69cebacebd5be63a1aca87a2a1babc809879 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* iOS: Cleanup, remove unneeded Q_UNUSEDTor Arne Vestbø2013-10-091-1/+0
| | | | | Change-Id: Ie7c03270279ee0b0b7daf7945b5eb6fd834c3404 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* xcb: every window should have a title in debug modeShawn Rutledge2013-10-095-0/+59
| | | | | | | | | | | | Qt creates various invisible windows for internal purposes. Giving them all titles makes the output of tools like xprop and xwininfo more readable, which makes solving certain bugs (like transient-window bugs) easier. Task-number: QTBUG-33644 Change-Id: I9d37b40d3339fb0f81ffeae64949b88ecb655474 Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Update ofono backendLorn Potter2013-10-081-1/+1
| | | | | | | The dbus interface has since changed, and I missed this when I updated. Change-Id: Iea3363b276a92f4a97d1ddfbae572515abac9417 Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Doc: Adding mark-up to boolean default values.Jerome Pasion2013-10-087-11/+11
| | | | | | | | | | | | | | | | | Default values should have mark-up to denote that they are code. This commit changes: -"property is true" to "property is \c true". -"Returns true" to "Returns \c true". -"property is false" to "property is \c false". -"returns true" to "returns \c true". -"returns false" to "returns \c false". src/3rdparty and non-documentation instances were ignored. Task-number: QTBUG-33360 Change-Id: Ie87eaa57af947caa1230602b61c5c46292a4cf4e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* QPA: Fix event dispatcher dependent operations in platform integrationLaszlo Agocs2013-10-074-9/+27
| | | | | | | | | | | | | | | | | | 999e5162ec3e86c9cb84c3ec95dfd0ba4b21277f breaks QPlatformIntegration implementations that perform tasks in their constructor that rely on the event dispatcher. For example creating a QSocketNotifier is not possible anymore since the event dispatcher is created later on. This is fixed by introducing an additional virtual in QPlatformIntegration that gets called after createEventDispatcher(). Two broken platform plugins have been identified so far: eglfs is creating socket notifiers to read events from input devices and xcb's input context plugins may use dbus. Both are updated accordingly. Task-number: QTBUG-33768 Change-Id: I5badb623958a52ab5314ff93dd7d60061f5df70a Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Require Windows VistaKai Koehne2013-10-071-0/+2
| | | | | | | | | | The structure FDAP is only available as Windows Vista, and MinGW-w64 do not actually define it if _WIN32_WINNT isn't set. Needed to fix compilation with latest MinGW-w64 headers (version 3). Change-Id: I566ea6bd4c3d8d5a495b644aedffb7de42a6d6e4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Fix typo in define guardsKai Koehne2013-10-071-1/+1
| | | | | | | Needed to fix compilation with latest Mingw-w64 headers (version 3) Change-Id: I70c7ff3d833e15e99a915a2df83f04d03a968300 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Fix QScreen::grabWindow for multiple screens on MacAndy Shaw2013-10-071-1/+2
| | | | | | | | QScreen::grabWindow() would only with the primary screen on Mac, if you tried to grab a secondary one then it would end up with a blank pixmap. Change-Id: I24f604051835db96286c693f5ed60a2633b6528e Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Add Q_DECL_OVERRIDE to accessibility classesFrederik Gladhorn2013-10-056-280/+280
| | | | | | | | This actually shows two completely unused functions in QAccessibleTabBar (fixed in follow up patch). Change-Id: If6f464c022617b2ee1db654936e3ff9931103eb6 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Cocoa: Properly unhide views after they're moved to their own windowGabriel de Dietrich2013-10-041-2/+5
| | | | | | Task-number: QTBUG-32221 Change-Id: I12a475c7a5abdc5ba4d7359d694dd62ea97e67c4 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* iOS: Implement QPlatformServices to handle opening URLsTor Arne Vestbø2013-10-035-2/+144
| | | | | Change-Id: Ie644df16b919d6def1435dc5f3665ba3f62fb055 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>