summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
* Remove unmaintained and broken VNC platform pluginJohannes Zellner2012-03-158-3161/+0
| | | | | | | Change-Id: Ie0a07c3a6822870b095a20d997b63fb1635f20be Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Robert Griebl <robert.griebl@nokia.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* LSB requires an explicit header includeHarald Fernengel2012-03-151-0/+4
| | | | | | | Makes the plugin build in the LSB environment Change-Id: Ic9a54b984f7fc1f393853ec01e32886f49a041c6 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Refactor theme plugin loading.Friedemann Kleint2012-03-1511-21/+49
| | | | | | | | | | | | | | | | | | | | In the old implementation, the QPlatformIntegration was asked for the theme first, so there was no way of overriding that by a custom plugin. Also, there was a memory leak in case the platform theme was actually created by a plugin. QGuiApplication now asks the QPlatformIntegration for a list of potential theme names first, tries to load them using the plugin loader and finally invokes a factory method of QPlatformIntegration in case that fails. The theme is now owned by QGuiApplication. In the XCB plugin, the environment variable DESKTOP_SESSION is queried and appended to the list of themes, making it possible to load plugins for other session types. Change-Id: I1a4b4e061815bca16c65b23e591bb7563a3e44e2 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Cocoa: Improve basic window handling.Morten Johan Sorvig2012-03-145-186/+183
| | | | | | | | | | | | | | | | | | | | Refactor NSWindow creation into createNSWindow and setNSWindow. This is necessary to support QMacNativeWidget where we re-use an already created window. Implement popup window handling. Make sure the window is displayed correctly and closes when it should. Take control over window activation in order to prevent infinite loops involving the QtCreator "cmd-k" window. Activation events are for now not sent to popup-type windows. There is now a different set of test failures: add and remove some QEXPECT_FAILs. Change-Id: I229761b59f90c9815b968eacc2cbc9c20cc5047e Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Fix compilation of the Windows accessibility code for MinGW.Friedemann Kleint2012-03-147-34/+57
| | | | | | | Temporarily disable the code for MinGW. Change-Id: I435305167e06af05b9a78901e6e3a35347c5c3f5 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Remove unused forward declaration.Sergio Martins2012-03-141-1/+0
| | | | | | | Change-Id: Ib207e0036226dd7131195244bf49bbfae142cd22 Reviewed-by: Sean Harmer <sh@theharmers.co.uk> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
* build fix for -no-freetype in Windowsjian liang2012-03-145-22/+23
| | | | | | | | | | Don't use QWindowsFontDatabaseFT::systemDefaultFont() and QWindowsFontDatabaseFT::LOGFONT_to_QFont() in qwindowsfontdatabase.cpp and qwindowstheme.cpp because it is not available when building with -no-freetype. Change-Id: I11075475ff435c55b0c641540f95a4d3861b79da Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Made sure first created xcb window still receives focus.Samuel Rødal2012-03-141-1/+2
| | | | | | | | | | | | Change 50ca45f059524293790 caused mapped windows to not receive focus by default. The _NET_WM_USER_TIME spec says that if the user time is set to 0 (or CurrentTime), the window will not be initially focused. Thus, if the connection time has not yet been set, we skip this part to restore the old behavior. Change-Id: I19de3602c78629ad2bc65f5e1976313949c82c4c Reviewed-by: Jan Arne Petersen <jpetersen@openismus.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* remove obsolete qudevhelper and adopt mouse and touch pluginsJohannes Zellner2012-03-149-50/+299
| | | | | | | | | | | | The QUDevHelper class is now replaced by QUDeviceHelper class. All evdev input plugins are using the new udev helper now to enable hotplugin for keyboard and mouse input. EvdevTouch plugin still only uses the first detected device by udev, this cannot be tested on my side, due to the lack of multiple touch input devices. Change-Id: I01a4cfe1a80000bfb27c67a2f53faf560906b73c Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
* Add support for IAccessible2 on WindowsJan-Arve Saether2012-03-1312-409/+3115
| | | | | Change-Id: Ia955ab46dc5037ed1c74e0acc525e98b02552c97 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Cocoa platform plugin: Add support for up to 16 mouse buttonsRick Stockton2012-03-131-2/+94
| | | | | | | | | | | | OS-X provides a buttonNumber within Event data for otherMouseDown: and otherMouseUp: Events. Instead of mapping all occurences of these event types to Qt::MiddleButton, this Update uses that data to support a total of 16 mouse buttons. Task-number: QTBUG-24702 Change-Id: I3cffb32498f98ea182509d7c42f3fc6634155ebb Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Input method on MacTasuku Suzuki2012-03-1210-5/+457
| | | | | | | | Restore input method implimentation in Qt4 Task-number: QTBUG-23867 Change-Id: I5d405ccc8b0a73c399d992f6474a0cc38d191157 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Workaround webkit deadlock on macos xShane Kearns2012-03-121-0/+3
| | | | | | | | | | | | | | | | | | | | | | The webkit AtomicallyInitializedStatic and Qt's Q_GLOBAL_STATIC can deadlock on the Mac, as the mac compiler inserts calls to __cxa_guard_acquire and __cxa_guard_release around initialisation of local statics. In Q_GLOBAL_STATIC case, this is the QGlobalStaticDeleter local static Whereas webkit AtomicallyInitializedStatic is a local static variable in any case. Problem is triggered because webkit constructs QNetworkConfigurationManager inside the constructor of a local static - networkStateNotifier And the generic bearer plugin calls QNetworkInterface::allInterfaces in the bearer thread, which needs an initialised Q_GLOBAL_STATIC. Reviewed-by: Laszlo Agocs (cherry picked from commit 38db40d9a2db44e47b0aabd9487284cd1106b353) Task-number: QTBUG-24554 Change-Id: Id2c7818faefb46e66b0bbc30ce30595d46d53016 Reviewed-by: Zeno Albisser <zeno.albisser@nokia.com>
* Windows: Implement QWindowsIntegration::queryKeyboardModifiers()Friedemann Kleint2012-03-124-0/+22
| | | | | | | Use code from Qt 4.8. Change-Id: I32d220e04d13ee1e692c0c58268b827bcf519dc7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Implement QSystemTrayIcon for Windows.Friedemann Kleint2012-03-121-0/+22
| | | | | | | | | | | | No longer base the implementation on a QWidget which is not necessary when all that is required is a message window listening to task-tray messages. Export a service function creating a message window from the Windows native interface and use that. Task-number: QTBUG-20978 Change-Id: I01d0faeac777df4eee802c51d2bc722fce814080 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Remove stale references to QtopiaDonald Carr2012-03-122-72/+0
| | | | | | | | | Change-Id: Idd9b5fae8f6a0273636a878325e82e5664a40d43 Reviewed-by: Donald Carr <donald.carr@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com> Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* Convert xlib plugin to new formatDebao Zhang2012-03-123-2/+9
| | | | | Change-Id: I00418a1eb7bf944ec360dbbb1f61f7703f3ecd37 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Cocoa: Fix accessiiblityPerformActionMorten Johan Sorvig2012-03-121-2/+1
| | | | | | | Remove hardcoded pressAction(); Change-Id: Ie02e3f2f88a2cd311aec1b39daa160efb3b2b617 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Rename blackberry QPA plugin to QNXSean Harmer2012-03-1233-934/+934
| | | | | | | | | Changing the naming scheme from Blackberry to QNX in line with pattern of using platform names. Change-Id: I048a6a18010bc932311d63c8dde19ccab97894c8 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
* Remove QAccessible2::TableModelChange.Frederik Gladhorn2012-03-122-75/+0
| | | | | | | | | | | | | | This was never a good idea since it has issues: It doesn't really work with more than one update without the client fetching the data. The same is unlikely to work reliable since it involves two ipc roundtrips. Instead we should have an extended QAccessibleEvent that contains the data so that the bridges can decide how to pass on the data if needed. Change-Id: Iaf6b74f49586f7155909a6fe1a17137b71b31175 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* XCB: Implement native events for for windows.Friedemann Kleint2012-03-103-6/+18
| | | | | Change-Id: Iacea1231b49ebe57da96f4012d3f314e1b037105 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Use qt_safe_read to read from low-level file descriptorKevin Krammer2012-03-091-1/+2
| | | | | Change-Id: I7c7bc379a423be4de471c5972cb98101c90bab8c Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* misc: Fix some random typos and grammar while reading code.Holger Hans Peter Freyther2012-03-091-1/+1
| | | | | | | | | | | | Typos: recieve -> receive descrived -> describe Grammar: this types -> these types Change-Id: Iedacc51a6322996f423ac9472af0a597424a4fed Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Remove widgets dependency from eglfsDonald Carr2012-03-093-8/+21
| | | | | | | | | | | | eglfs uses the (old) OpenGL paint engine for paint operations. This drags in a QWidget dependency and hence everything bar the kitchen sink. This change gets eglfs buildable without widget support although anything which relies on a QPaintDevice will end up rendering nothing to the screen. (Similar to the QWS simplegl driver) Change-Id: If7fcdb79038ef7568e771402fd1667bc0318ff5f Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Fix platforms.pro to match new qnx mkspec nameRafael Roquetto2012-03-081-1/+1
| | | | | | | Change-Id: Ib159b519d11c9b88979f0f47b87801552586abc0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Sean Harmer <sh@theharmers.co.uk> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* BlackBerry Plugin: support 8 mouse buttons, instead of just 3.Rick Stockton2012-03-081-3/+16
| | | | | | | | | | | | The mask of possible mouse buttons in QNX provides tracking for the up/down State of up to 8 mouse buttons. This update adds support for the 5 buttons which we previously ignored in Qt on this Platform. Task-number: QTBUG-24682 Change-Id: I8c1d2b2a5d0deb3b857fb387c242c3792e21ff95 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Windows: Fix flag handling.Friedemann Kleint2012-03-081-6/+6
| | | | | | | | Fix a typo that caused a variable to be hidden such that the Qt::WindowFlags were not used. Change-Id: Iea4456b0cd4c968e0fbfdd53e5006ffee0298b24 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Defer window activation if the window hasn't beenn mapped yet.Lars Knoll2012-03-082-1/+8
| | | | | Change-Id: I60d616fc60d3be9b55ab2599abadede5f7c11f93 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* QCursor: Associate cursor with screen.Friedemann Kleint2012-03-0722-28/+49
| | | | | | | | | | | | | | | | | | | | | | - Introduce cursor() accessor to QPlatformScreen. - Remove screen member of QPlatformCursor (a cursor can be shared by multiple screens of a virtual desktop). - Add QCursor::pos()/ QCursor::setPos() taking a QScreen-parameter, use primaryScreen() for old overloads. QCursor::pos() can then query the platform cursor for the position and return the position even if the mouse position is outside the windows owned by the Qt application. - Fix tests Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Task-number: QTBUG-22457 Task-number: QTBUG-22565 Task-number: QTBUG-20753 Change-Id: Ia69f37343f95772e934eab1cd806bd54cbdbbe51 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Windows: Fix override cursor logicMiikka Heikkinen2012-03-071-4/+2
| | | | | | | | | | Fixed a logic error that prevented override cursors being applied in Windows plugin. The logic for override cursor handling is already in crossplatform code, so no need to do extra checks in plugin. Task-number: QTBUG-24657 Change-Id: Ied9b36b57f22607ef5bb5c30f2926b0053eebca5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Cocoa: Implement Drag-and-Drop.Friedemann Kleint2012-03-0714-39/+2094
| | | | | | | | | | Implement drag and drop support for drags originating from outside Qt. Port mime and pasteboard code from Qt 4. Use QSimpleDrag from from platform support to implement internal Qt drags. Change-Id: I5b664a95ebb00f48de2bd21c24dfb579af16123e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Add fonts to QPlatformTheme.Friedemann Kleint2012-03-0711-118/+187
| | | | | | | | | | | | | | | | - Remove QPlatformFontDatabase::defaultFonts() returning a hash containing widget name ->font and the Windows implementation. - Add enumeration and font accessor to QPlatformTheme. The value returned for the enumeration value overwrites the default font of the font database. - Implement for Windows, Mac and KDE. - Add more Windows palettes. Task-number: QTBUG-23686 Change-Id: I8a2abdfd216df23daa7c9630c54264cdf61295db Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Compile with -qtnamespaceSarah Smith2012-03-071-1/+4
| | | | | | | | Mac has to work with -qtnamespace as well, and other files have gotten this right, so follow their example. Change-Id: I551e1843e8a0e82a82d1d5ea8c8cd5f20e6880fa Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Query udev build parameters from pkg-configDonald Carr2012-03-073-2/+6
| | | | | | | | Change-Id: Ia3b7329d7359684ee7bf572a7e5fb681105108f4 Reviewed-by: Donald Carr <donald.carr@nokia.com> Reviewed-by: Holger Freyther <holger+qt@freyther.de> Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Fix the bit test for ABS_MT_SLOT to detect protocol BShawn Rutledge2012-03-071-1/+1
| | | | | | | | | I tested, it didn't work. This is from a previous patch I had already gotten working before 40a5ba4d3fccb449dcfd8d9a0deaf4c7f0fe12bc was submitted. Change-Id: I868f069fe834b3122ed9b5b3dc9af0781d6e1d0d Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
* Fix off by one in updateAccessibility.Frederik Gladhorn2012-03-071-8/+6
| | | | | | | | Now that indexOfChild is 0-based, the update notifications should follow. Change-Id: I5e0303516d503d5e23061df5894b2428c00da2ce Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Cocoa: Implement widget palettes.Morten Johan Sorvig2012-03-064-5/+94
| | | | | | | | | | | | Add roles to QPLatformTheme::Palette, map QWidget subclasses to those. Port Qt4 widget palette creation code to use the QPLatformTheme::Palette roles. Palette entries are disabled in this commit, this will be fixed later. Change-Id: I07babe3d7c76d306efc4ea4813c7161fdf36227f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* QWindow: fix crash on MacTasuku Suzuki2012-03-061-1/+1
| | | | | | | Fixes a crash when QWindow::baseSize() is invalid size. Change-Id: I4e41f63d69ad0f218bfd35db8f30f18f92d4e9d5 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Worked around Metacity crashes in xcb plugin.Samuel Rødal2012-03-061-0/+2
| | | | | | | | | | | Setting the user time before mapping the window seems to prevent the crasher from happening. We used to set the user time before mapping in Qt 4.8 too, so it's probably the right thing to do. Task-number: QTBUG-24462 Change-Id: Ia670b799bd1ed7a7e6399631d5242e57324918b3 Reviewed-by: Jan Arne Petersen <jpetersen@openismus.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Cleaned up debug and warning output in xcb plugin.Samuel Rødal2012-03-0210-38/+40
| | | | | | | | | Got rid of unnecessary debug output, and prefixed debug / warnings with class name to provide more context. Change-Id: Ia68e85ec0207de4d87d02226bdf6e4cddf464afc Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Remove the usage of deprecated qdoc macros.Casper van Donderen2012-03-027-32/+32
| | | | | | | | | | | QDoc now has support for Doxygen style commands for italics, bold and list items. This change applies that change in QDoc to the actual documentation. Task-number: QTBUG-24578 Change-Id: I519bf9c29b14092e3ab6067612f42bf749eeedf5 Reviewed-by: Shane Kearns <shane.kearns@accenture.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* xcb: Check for SHAPE extension before using itUli Schlachter2012-03-023-4/+34
| | | | | | | | | | | | | This change makes sure that the X11 server really supports the SHAPE extension before it is used. Before this, libxcb would disconnect from the server as soon as it was told to send a SHAPE request to a server which doesn't support SHAPE. Oh and of course it would do so without any good error message. Change-Id: I5f9481e488925e74e62f229e9f637ef262020c04 Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Fix get_accFocus() to return CHILDID_SELF when it returns itself.Jan-Arve Saether2012-03-021-7/+41
| | | | | | | | | | This means that the AT client knows it should not have to ask for the focus child anymore. Previously, some clients (NVDA) kept on asking infinitely because of this. Change-Id: Ia2bd2e1088a899f7d1a0c9189024accdacfd693b Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Improve debugging in the windows accessibility bridge.Jan-Arve Saether2012-03-021-29/+43
| | | | | | | | set QT_DEBUG_ACCESSIBILITY=(1|0) to turn logging on or off Change-Id: Ibd5b77699decf0cf02bc6b6cc656fa237de29124 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Improving clipboard integrationKevin Krammer2012-03-022-39/+150
| | | | | | | | | | | | Derive a data accessor class from QMimeData so application level code can query MIME type availability through it or directly attempt to fetch data by MIME type even if the type is not yet known to QBBClipboard. Also make sure any MIME type used by the application in setMimeData operations is checked for availability when being queried for formats. Change-Id: If8174adf3f3383496a354d291ef7d36b9732be1d Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* Fixing z-ordering of windowsKevin Krammer2012-03-021-1/+1
| | | | | | | | | | | | The application root window is at z-order == 0, all platform windows created for Qt windows are its descendants, so their base value for z-order needs to be 1. Change-Id: I7c9615ffac6757c31900a7640eb0ffdd6065b722 Reviewed-by: Sean Harmer <sh@theharmers.co.uk> Reviewed-by: Nick Ratelle <nratelle@qnx.com> Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
* Fix QApplication autotest crash when running on multiple screensMiikka Heikkinen2012-03-024-2/+15
| | | | | | | | | | Screens need to be destroyed in reverse order to ensure the primary screen stays valid when other screens are destroyed. Task-number: QTBUG-24300 Change-Id: I9d9d710aa67ec045baa8bf292833ffe7d9eea935 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Support 16+4 mouse buttons within the generic/evdevmouse plugin.Rick Stockton2012-03-021-4/+19
| | | | | | | | | | | | The Kernel's evdev module is capable of presenting up to 16 mouse buttons, plus wheel events (UP, DOWN, LEFT, and RIGHT). This patch updates our Plugin, so that it tranlates all of those button numbers into corresponding MouseEvent Qt::MouseButton values. Task-number: QTBUG-24590 Change-Id: Ib8cbb9500280c76f06a51ce95095e22ae84de1c6 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
* Add protocol type B support to the evdevtouch pluginLaszlo Agocs2012-03-024-11/+102
| | | | | | | | | Also adds optional support for libmtdev (a helper library which translates transparently from type A to B when using type A kernel drivers). Change-Id: Ic9c065b2fd130e9db2dd07e7dc103e9d45c08c99 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Unset _NET_WM_USER_TIME_WINDOW before destroying the windowJan Arne Petersen2012-03-011-0/+8
| | | | | | | | | | Otherwise metacity was crashing when a QWindow was destroyed immediately after being activated, because metacity was trying to select events (XSelectInput) for the already destroyed m_netWmUserTimeWindow. Task-number: QTBUG-24492 Change-Id: Iedbe7bdd6b26110ca8bec6f33525209ae551ffd5 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>