summaryrefslogtreecommitdiffstats
path: root/src/gui
Commit message (Collapse)AuthorAgeFilesLines
* Clean up and extend QAccessible::State.Frederik Gladhorn2012-01-162-40/+91
| | | | | | | | | | | | | | | | | | | | | | The state should contain useful and clear information. Some of the old enum/bitfield members were not really clear. Make them follow Qt terminology and shift the burden of interpreting them to the bridge. Apart from the previous commit changing from enum to bitfield, these flags have changed names: unavailable -> disabled mixed -> checkStateMixed protected -> passwordEdit (in the last commit) floating is completely removed, even MSAA documentation states it is unsupported. Some new states have been added. Documentation added. Change-Id: I152256e77a061f28ee5780f527524c80a2c7e333 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Accessible docs - editable text interface.Frederik Gladhorn2012-01-161-2/+66
| | | | | Change-Id: Id8b64ff9674b7cd4ac8551528239e8ab97563764 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Added application flags to translate between touch and mouse events.Samuel Rødal2012-01-137-74/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current way we do it of having the platform or touch plugin send both mouse and touch events is not ideal. There's no good way to write an application that works sanely both on a touch-only device and on a desktop except by restricting yourself to only handling mouse events. If you try to handle touch events you don't get any events at all on desktop, and if you try to handle both, you end up getting duplicate events on touch devices. Instead, we should get rid of the code in the plugins that automatically sends mouse events translated from touch events. This change enables that by making the behaviour fully configurable in QtGui. Two new application attributes are added to explicitly say whether unhandled touch events should be sent as synthesized mouse events and vice versa, and no duplicates are automatically sent as the current situation. Synthesized mouse events are enabled by default. We also get rid of the QTouchEvent::TouchPoint::Primary flag, which was only used to signal that the windowing system automatically generated mouse events for that touch point. Now we only generate mouse events from the first touch point in the list. Change-Id: I8e20f3480407ca8c31b42de0a4d2b319e1346b65 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@nokia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
* Fix compilation of Qt itself with QT_NO_DEBUG_STREAMDavid Faure2012-01-121-4/+2
| | | | | | | Change-Id: I07087dff0f109347ea80434f17eeb7cc1c13114c Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
* Remove invokeMethod in favor of the recommended virtual_hook()Jan-Arve Saether2012-01-122-24/+11
| | | | | | | | | | We don't remove the Method enum (yet), since there are functions in dependent modules that still refer to it. Unfortunately there is no way we can commit to several repos "atomically". Change-Id: Ia1923dc4bf0751a9ba67727d14da5a2e60bd4e74 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Remove all references to QAccessible::(Up|Down|Left|Right)Jan-Arve Saether2012-01-121-4/+0
| | | | | | | | | | | | It is now the resonsibility of the bridge to support this (by querying for QAccessibleInterface::rect()) The windows bridge (currently the only bridge in need of this) has already been updated to reflect this in commit 7dca461620ee6d8cce3a74acf2e1530d4497bff9 Change-Id: Ief1339ab6edc118e2d47e3875e09fa885db65c2f Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Remove QAccessibleEventFrederik Gladhorn2012-01-121-14/+0
| | | | | | | It was unused and I don't quite understand its purpose any more. Change-Id: I5c946a1644fd64508cb4aad78320ae96fd935d31 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Add setPalette to QGuiApplicationLars Knoll2012-01-122-0/+11
| | | | | | | | If we have a getter, we also need the setter to be symmetric. Change-Id: Ibcb20d66c711e4c1bebd448781fa9eddb9cd773f Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Don't include qdialog.hLars Knoll2012-01-121-1/+0
| | | | | Change-Id: I67d48653b90f31d018c77ec069eb559ac46f9275 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Made it possible to report screen changes through QWindowSystemInterface.Samuel Rødal2012-01-1212-57/+210
| | | | | | | | | | This makes it possible for platform plugin independent code (such as generic plugins) to report changes to screen properties. An example would be an accelerometer plugin that reports orientation changes without knowing anything about the windowing system. Change-Id: I984984b6d064327772c264bc942269422451da37 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* Make show() default to sane sizing behaviour based on the platform.Samuel Rødal2012-01-126-7/+30
| | | | | | | | | | | | | | | | Traditionally it's been hard to write a Qt app that behaves sanely across embedded and desktop platforms, i.e. defaults to fullscreen on embedded and non-fullscreen on desktop. For Qt 5 we can fix this by making the behaviour of the default QWindow::show() be customizable by the platform plugin. If the application developer wants to override this behaviour he can still use the explicit showFullScreen(), showNormal() etc functions. Change-Id: I26a907b404058e345d841c818daefbb57a26d3fd Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Fixed QOpenGLShader::log().Kim Motoyoshi Kalland2012-01-111-1/+0
| | | | | | | | log() returned an empty string because the compile log was stored in a local variable rather than the member variable. Change-Id: I60142fd0bccfcbb495cea430b583f81fb0241329 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* QStyleHelper: Base DPI-calculation on QScreen.Friedemann Kleint2012-01-111-18/+14
| | | | | | | | | | | | | | | - Use qt_defaultDpiX() to obtain the resolution, which obtains it from QScreen. This implies that for X11, which previously used a hardcoded default of 96 DPI, the real resolution will be used (typically 75). - Since many tests (layouts, graphicsview) contain test data for 96 DPI, add an attribute to QCoreApplication making it possible to set the resolution to 96 DPI for testing. Change-Id: I77c8233a96b0d75de07406f58d48886a89c3de06 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Input direction/locale to come from platform input contextPekka Vuorela2012-01-113-3/+37
| | | | | | Change-Id: Ib049693211a08dcffc9dbe49add54e7feab38978 Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Make QAccessibleInterface::indexOfChild() 0-based.Frederik Gladhorn2012-01-112-7/+3
| | | | | | | Makes the code nicer and more consistent with the rest of the world. Change-Id: I5ba0ee39f5b0afd1a079a3cea9990d123955ed3f Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Add methods for font stretch and absolute letter spacingC. Boemann2012-01-112-4/+74
| | | | | | | We basicaly just rely on the methods in QFont Change-Id: Iaf8cbf4d90d0c5b10b3a85983de7ca58763e0371 Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
* Introduce a QVariant themeHint() to QPlatformTheme.Friedemann Kleint2012-01-112-0/+50
| | | | | | | Start on removing platform-specific code from QtWidgets. Change-Id: Ic2163a0ce6f2db2151cdf7ca93766b2d861eeb55 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Document enum value QAccessible::Expandable.Frederik Gladhorn2012-01-101-1/+2
| | | | | Change-Id: I5280bf3eadf7ef876f89de318a4d6168078d929e Reviewed-by: Geir Vattekar <geir.vattekar@nokia.com>
* Accessibility docs: interfaces: value/action/text.Frederik Gladhorn2012-01-101-28/+236
| | | | | Change-Id: Ic57305cf9c008c8e861c1bdc66886b43d78c2d76 Reviewed-by: Geir Vattekar <geir.vattekar@nokia.com>
* Improve Accessibility documentation 2.Frederik Gladhorn2012-01-102-54/+68
| | | | | | | More cleanup, make sure links work. Change-Id: If72f9cfc0d44aa1fb261be2aace8ddd457295993 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Generate docs for accessible interfaces.Frederik Gladhorn2012-01-101-12/+21
| | | | | Change-Id: Ic385dd416a6d6bce1b999e14a4b36cdd06127ff1 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* We should return texture id 0 for invalid images and pixmapsJørgen Lind2012-01-101-0/+4
| | | | | | | in the texture cache Change-Id: Ib9bb136fa451c571fce2adbee29998b3f3593b31 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Reimplement QVariant to QDebug streaming.Jędrzej Nowacki2012-01-101-84/+3
| | | | | | | New implementation fixes some commented code marked as FIXME. Change-Id: If8f5bebedd65bcf8f839d804c2022ca79ef82ddf Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Platform style hints: Introduce keyboard repeat rate.Friedemann Kleint2012-01-104-1/+10
| | | | | Change-Id: I556c2ecec7d5368122875a659af3ae7db88aa481 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Accessiblity State as bit field.Frederik Gladhorn2012-01-103-44/+49
| | | | | | | | | | | We would like to add more flags that will be over the 32 bit boundary. On Windows enums don't seem to digest values >32 bit. This patch changes the state flags to be a bit field instead. The windows part of the patch was written by Jan-Arve Sæther. Change-Id: I2d1d87807f920ce4d4a5c7bfea8b1122ed44eb08 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Update year in Nokia copyright headers.Jason McDonald2012-01-1011-11/+11
| | | | | | | | The previous change missed some headers from years prior to 2011, and a few new files were merged after the previous change. Change-Id: Ib7d1a2b7062228c2a5373da64242b2ee1f0981e1 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* If decodestring can't translate the string return Qt::Key_unknown.David Faure2012-01-101-0/+3
| | | | | Change-Id: Ie082b326e944a28b4e29984a527e3841a05b32f6 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Implement QDebug stream operators for builtin classesJędrzej Nowacki2012-01-1010-0/+76
| | | | | | | | | | | QDebug stream operator was added for: QPixmap, QImage, QUuid, QBitArray, QLocale, QRegExp, QCursor, QPalette, QTextFormat, QTextLength, QIcon and QSizePolicy Change-Id: Ibcf5c9b599ba322d53cb106d8e5e157427ebe757 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
* Make sure cursor navigation in qtexttable works like user expectsC. Boemann2012-01-091-19/+12
| | | | | | | | Before the selection of cells NW of anchor showed some defects where cells would not be selected as the user expects Change-Id: Ia2b63f11b8d534e918ffb97b76339d60f1ca0389 Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
* Fix constness of QInputPanel::keyboardRectangle()Stephen Kelly2012-01-092-3/+3
| | | | | Change-Id: I13552ed0c357b19486f389a8fbf2c338652437c9 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
* Improve Accessibility documentation.Frederik Gladhorn2012-01-092-1/+10
| | | | | Change-Id: Ifb70d9c6d7b3096e0188e8454191786375296647 Reviewed-by: Geir Vattekar <geir.vattekar@nokia.com>
* Move keyboard locale and input direction to QInputPanelPekka Vuorela2012-01-076-14/+37
| | | | | | | | | | Deprecated QGuiApplication::keyboardInputLocale() and keyboardInputDirection(), introduced QInputPanel::locale() and inputDirection(). Change-Id: Ic48c77f10821a949751c73c73f22bd78e2192b9c Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Avoiding crash when insert preEditStringYuchen Deng2012-01-071-0/+2
| | | | | | | | | | | We will insert an preEditString by QInputMethodEvent See: Task-number: QTCREATORBUG-5633 Task-number: QTCREATORBUG-6082 Change-Id: I8cfc7ab2543455dfdff8ec3df983d384513453e0 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Remove all references to QAccessible:: {Child|Ancestor|Sibling}Jan-Arve Saether2012-01-062-8/+0
| | | | | | | | | | | These are deprecated in favor of QAccessibleInterface::child() and QAccessibleInterface::parent() QAccessible::Sibling can be done with a combination of those two. This is handled by the bridges, if required. Change-Id: I2e2a6eb2a982e7c9001a393d69f0c5f1ae9c0970 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Limit Bezier curve subdivision to maximum 512 line segments.Kim Motoyoshi Kalland2012-01-061-4/+16
| | | | | | | | Avoid running out of time and memory for extreme cases. Task-number: QTBUG-23443 Change-Id: Iac7799097d61295bb7395a2efe48b3e7d9257919 Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* Constify more accessibility interface functions.Frederik Gladhorn2012-01-062-17/+17
| | | | | Change-Id: Iff8da09eef5288de92ccea753a8a5fda03e214b0 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Image interface functions should be const.Frederik Gladhorn2012-01-061-3/+3
| | | | | Change-Id: I9c6ecd140abc4f4d5c28ad2228e1241d3891b5ad Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Remove all non-inline of qMalloc/qFree/qRealloc.Robin Burchell2012-01-062-18/+18
| | | | | | | | | | | | We're trying to deprecate these, so don't use them anymore. The inline uses of these have been left intact, for the moment. Inline code will need to create their own non-inline allocation methods (for future-proofing to allow alterations in how e.g. individual containers allocate) Change-Id: I1071a487c25e95b7bb81a3327b20c5481fb5ed22 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Fix documentation: missing constFrederik Gladhorn2012-01-061-1/+1
| | | | | Change-Id: Ie90afada6ffe3198314481dd6fc68bce67605efd Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Remove Cursor functions from invokeMethod.Frederik Gladhorn2012-01-061-3/+1
| | | | | | | | Cursor position is handled by the text interface. This was a binary compatibility hack in Qt 4. Change-Id: I45520e6942a490834f6e9346a4c173300a9bf7a9 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Update docs.Frederik Gladhorn2012-01-061-51/+18
| | | | | Change-Id: Icd8cbcde6893cc0ee5e7df18b219513cdbc0b2da Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Update copyright year in license headers.Jason McDonald2012-01-05419-419/+419
| | | | | Change-Id: I02f2c620296fcd91d4967d58767ea33fc4e1e7dc Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Registered QUuid in the metatype system as a builtin type.Denis Dzyubenko2012-01-051-0/+1
| | | | | | | Change-Id: I6be6129d9f6bf468ba8a5805cfa0f6f79199afb3 Reviewed-by: João Abecasis <joao.abecasis@nokia.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
* QTextLayout::lineAt() to return invalid line if index is out of boundsPekka Vuorela2012-01-051-1/+1
| | | | | Change-Id: I1f93789c96f3b2335b02897ff5fc8385964d1641 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Support RTL text with merge font enginesJiang Jiang2012-01-051-6/+10
| | | | | | | | | | | Text like Urdu use mixed RTL scripts from Persian, Arabic and so on. In RTL, sub glyph runs for individual font engines must be added from end to start, so that the positions can still be calculated in a left to right manner. Task-number: QTBUG-23404 Change-Id: I7e55e4b7b858b3abbe94e352c93d36de6226ff58 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Introduced QOpenGLContext::aboutToBeDestroyed() signal.Samuel Rødal2012-01-052-0/+16
| | | | | | | | | This signal can be used to clean up OpenGL resources in a safe way before the context is destroyed. Task-number: QTBUG-20083 Change-Id: I45a4be01b06af4ee7196fa502116f099d50afeab Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* Fix QPainter::drawText with complex brushesSimon Hausmann2012-01-041-1/+1
| | | | | | | | | | | | Commit d52fd497f60a3c4456994f4f10e9451d611c9ea4 introduced a call path to QPaintEngineEx::drawStaticTextItem, which has a bug in using the pen's color instead of the entire brush. This patch replaces the use of the color with the pen's brush(). Task-number: QTBUG-23450 Change-Id: Ieb3bf352c840ff0d3fb4ac678caf7b13f4f9a8f1 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Refactor QVariant handlers.Jędrzej Nowacki2012-01-041-49/+23
| | | | | | | | | | | | | | | | | | | | | | | | | QVariant implementation is based on delegation to a handler. The handler has rather simple construction, it is a set of function that implements a switch statement over known types and redirects calls to a right method of an encapsulated types instance. Unfortunately after qt modularization project, it is not easy to use types directly from different modules, as they can be undefined or completely unaccessible. Which means that each module has to implement own handler to cooperate correctly with QVariant. We can suspect that list of modules known to QVariant will grow and it is not limited to GUI, Widgets and Core, therefore it would be nice to have an unified, from performance and source code point of view, way of working with handlers. This patch is an attempt to cleanup handlers. Keynotes: - Each handler is working only on types defined in the same module - Core handler implements handling of primitive types too - Custom types have an own handler - Each handler is independent which means that dispatch between handlers is done on QVariant level - Handlers might be registered / unregistered using same interface Change-Id: Ib096df65e2c4ce464bc7a684aade5af7d1264c24 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Export QOpenGLTextureCacheJørgen2012-01-041-1/+1
| | | | | | | | | | because it can be useful outside QtGui. The function QOpenGLTextureCache::bindTexture gives a very convenient way to get a texture from an image. Change-Id: I2e22c0a3a8f1f307d0b558280043f726e3d8093a Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Add virtual destructors to accessible interfaces.Frederik Gladhorn2012-01-041-0/+5
| | | | | | Change-Id: I60a6033911757f86c70f06c2d8d4240d2332b4cf Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com> Reviewed-by: Alban Crequy <alban.crequy@collabora.co.uk>