summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* DirectFB Fix issue with showing dialogsAndy Nichols2014-08-251-15/+3
| | | | | | | | If the window was not visible when the geometry was set, then the DirectFB window would not be resized. Change-Id: I7790c90ed0fb755aebee0e32c877ebd9e48417cd Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* DirectFB Unbreak mouse input for child windowsAndy Nichols2014-08-252-13/+3
| | | | | | | | The local and global coordinates for mouse events were being translated incorrectly from the native DirectFB events. Change-Id: Id904a4335459b87c92f4b8b46d535c78fb7dad8c Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* DirectFB Make usable again with QWidgetAndy Nichols2014-08-251-36/+52
| | | | | | | | | | | Previously when we created any QWidget based application a QDesktopWidget would be created as a physical window like any other, but this window would steal input from the application. We now create a DirectFB window for the Qt::Desktop type of widget now, but it does not receive input events and can not be painted to or displayed. Change-Id: I6a090c5384b1f83383e40680dbede5d0edc41983 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* DirectFB Provide a native interfaceAndy Nichols2014-08-252-2/+8
| | | | | | | | Using the same multiple inheiritance that is used in the EGLFS platform plugin. Change-Id: I016f904bfc365bec6266c3f5d638ab15ecefe63b Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* DirectFB Add QGenericUnixServices and inputContextAndy Nichols2014-08-252-0/+14
| | | | | | | | The DirectFB platform plugin was missing support for services and inputContext. Change-Id: I010fdcbed5e172b019b4dce79f3beea0f9c5025d Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* OS X: Fix pan gestures.Morten Johan Sørvig2014-08-253-6/+24
| | | | | | | | | | | | | | | | | | The QPanGesture recognizer requires single-point touch events. The touch implementation in Qt 4 would test Qt::WA_TouchPadAcceptSingleTouchEvents and forward single touch events if set. Making this work in Qt 5 is a little bit more involved since the platform plugins don't know about widgets. Change the Cocoa touch implementation to send single-point touch events to QWidgetWindow windows only. Make QApplication forward single-point touch events only if the target widget has the Qt::WA_TouchPadAcceptSingleTouchEvents attribute set. Task-number: QTBUG-35893 Change-Id: I68712a5e3efb4ece7a81ca42f49c412e525eeb3a Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
* Add operator-> to QJson iteratorsAllan Sandfeld Jensen2014-08-256-7/+71
| | | | | | | | | | | | | The iterators for QJsonArray and QJsonObject are currently lacking an operator-> definition. Unfortunately it is not possible to do in clean way without redefining either the iterators or QJsonValueRef class. This patch instead adds two fake pointer classes that are only used to handle the operator-> return value. Task-number: QTBUG-29573 Change-Id: Ief785a6afbbedc9e89cf3b6f3958c2c755997a66 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix composition for translucent AlwaysStackOnTop widgetsLaszlo Agocs2014-08-241-1/+1
| | | | | | | | | | | | | | | Writing out the alpha is re-enabled too early. When blitting the AlwaysStackOnTop widgets as the last step of the composition, they need the exact same settings as the backingstore content, meaning blending but without writing out alpha. Move the glColorMask call to fix this. This will avoid issues with semi-transparent AlwaysStackOnTop widgets when the top-level has alpha enabled too. Task-number: QTBUG-40910 Change-Id: Id6d0d684cfa78bf79b65a097efd92de575e73b2c Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Set a size in qopenglwindow exampleLaszlo Agocs2014-08-241-1/+1
| | | | | | | | Use showMaximized(). Just calling show() without setting a size can result in a zero-sized, invisible window on some platforms. Change-Id: Ifa48258060e3d651c2fac3a1409a26a2c3db6bdb Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* Use std::vector range ctor in QVector::toStdVector()Marc Mutz2014-08-241-1/+1
| | | | | | | | | | | | | | | | | There are three reasons to do so: 1. This could be more efficient, depending on the STL implementation. 2. By using QTypedArrayData iterators (T*) instead of QVector ones, we actually invoke the non-templated range ctor of std::vector, at least in the common case that std::vector<T>::const_iterator is also const T*. 3. The change turns a former NRVO return into a RVO one, potentially allowing more compilers to perform the copy elision. Change-Id: I70b35aaeae70ba06a971a36b8b1b1da997e8094f Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* standardize QPA input event logging category hierarchyShawn Rutledge2014-08-243-24/+19
| | | | | | | | | | | If qtlogging.ini contains a rule qt.qpa.input*=true then all available input event logging will be enabled on any platform. There are more specific categories for touch, tablet, gestures, input methods etc. on some platforms. Change-Id: I8754ce23df8f0b750a4b7dfcf3afe5bab800ead8 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Added QAsn1ElementJeremy Lainé2014-08-248-2/+791
| | | | | | | | | | | | | | This element can be used for backends that do not offer all the information that is needed when implementing a ssl certificate backend. WinRT and the SecureTransport lack functionality in this area for example. The sources and tests are added for ssl and openssl configurations in order to be tested. The condition for adding these can be changed as soon as they are used by an actual implementation Change-Id: I2b836133105afdc178bf3b1ee7d732bea069effa Reviewed-by: Andrew Knight <andrew.knight@digia.com>
* Do not resolve core functions on GLES in texture helperLaszlo Agocs2014-08-231-0/+64
| | | | | | | | | | | | | As the spec for eglGetProcAddress says, some implementations may not return function pointers for core functions. Similarly to how we cannot get OpenGL 1.0/1.1 functions with WGL for example. To make sure QOpenGLTexture does not just crash with such implementations, we simply use the statically exported functions in -opengl es2 builds. Change-Id: I213bfcc21e58888b17e0ebcd0a26f26f77517e40 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* tst_dialog: Skip test that doesn't pass on Wayland.Robin Burchell2014-08-231-0/+3
| | | | | | | Wayland does not support QCursor::setPos. Change-Id: Ic50bc31944db70605af01529cc2b7483dfc334a5 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* tst_qtouchevent: Skip tests that fail with qwindow-compositor.Robin Burchell2014-08-231-0/+18
| | | | | Change-Id: I6b37e04b8a25942f36ae09a8b0c6a3e3610eec19 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* tst_qwindow: Skip tests that fail with qwindow-compositor.Robin Burchell2014-08-231-0/+30
| | | | | Change-Id: I95d180cfa30b7398344f5a851e0bf849e7834a7a Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* tst_qinputmethod: Skip tests that fail with qwindow-compositor.Robin Burchell2014-08-231-0/+6
| | | | | Change-Id: I0163bffe49e3fcbb8132c4926ec975e3a6979285 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* tst_qguiapplication: Skip tests that fail with qwindow-compositor.Robin Burchell2014-08-231-0/+7
| | | | | Change-Id: Iac3e9e8d4d857af944de66a95cebc9955bd8beda Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* tst_qsqlthread: Add debug about when threads finished.Robin Burchell2014-08-231-1/+4
| | | | | | | Useful if someone is ever forced to try diagnose what goes wrong with this test. Change-Id: I4b5e607e6329b6ebad2b40b3f65d6cacbb6b7fcf Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* QIconLoader: don't inherit QObjectMarc Mutz2014-08-231-1/+1
| | | | | | | | | QIconLoader did not use the services from QObject and the Q_OBJECT macro was missing, too, so external code couldn't have used it in a qobject_cast or inherits(), either. Change-Id: I1f33dd540fa2ded48d871d848a77eee743a4e3c0 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QIconLoader: replace an inefficient QList with a QVectorMarc Mutz2014-08-232-3/+4
| | | | | | | | | | QIconDirInfo is larger than a pointer, so holding it in a QList is horribly inefficient. Fix by holding it in a QVector instead. Change-Id: I6551d2d2941447e600a33c3d68edf46db002d96c Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QIconLoader: mark virtual overridesMarc Mutz2014-08-231-2/+2
| | | | | Change-Id: I72f20b5935d56d7c090fdd685e2bedc0778db505 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QIconLoader: mark a helper type as movableMarc Mutz2014-08-231-0/+2
| | | | | | | | QIconDirInfo is held in Qt containers, so reap the performance benefit of a movable type. Change-Id: I317c69ec46d324623b21a33043856e22f60e21b1 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QIconLoader: replace while(!empty()) delete takeLast() with qDeleteAll()Marc Mutz2014-08-231-6/+2
| | | | | | | | | | There's no calling back into QIconLoaderEngine from the QIconLoaderEngineEntry dtors, so don't bother slicing off one element by one from the container as they are deleted, the more so as m_entires is either move-assigned or deleted right after these loops. Change-Id: Ic9ffa442ef0b0c59e19eb91d164183ea5c3bab67 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QIconLoader: don't re-evaluate container.size() all the time (II)Marc Mutz2014-08-231-2/+4
| | | | | | | | Experience shows that the compiler does not recognize the size() call as a constant expression, so help it along. Change-Id: I688244f37c555365566cd1a59dc601974316a2e6 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QIconLoader: don't re-evaluate container.size() all the timeMarc Mutz2014-08-231-1/+3
| | | | | | | | Experience shows that the compiler does not recognize the size() call as a constant expression, so help it along. Change-Id: I60cd1754f8be123c62e3b47f6f721f42a69fe3c5 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QIconLoader: remove another unused variableMarc Mutz2014-08-231-1/+0
| | | | | Change-Id: I2b11944d1964878ff5f6f666f33a97ea842ffea7 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QIconLoader: remove an unused variableMarc Mutz2014-08-231-1/+0
| | | | | Change-Id: I4f1fee2da9358f63c4d3c9e46b8d69b4a1b280c7 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* WinRT: apply text color to WindowText as wellMaurice Kalinowski2014-08-231-0/+1
| | | | | | | | Otherwise some text gets rendered black, which is the default background color on Windows Phone. Change-Id: I963875879655207e881ab0199bdac98a1e4f4ea5 Reviewed-by: Andrew Knight <andrew.knight@digia.com>
* Added header.LGPL21Jani Heikkinen2014-08-231-0/+33
| | | | | | Change-Id: I6bfae65d38f12a2122fd36d2bfcd8fefa08f90b5 Reviewed-by: Antti Kokko <antti.kokko@digia.com> Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
* Fix valgrind support in QTestLib's benchmarkingSimon Hausmann2014-08-221-1/+1
| | | | | | | | Valgrind has reached double-digit versions, so the regexp for detecting the version from the string needs to be widened accordingly. Change-Id: Ib95994f96d6b1e94a34bedd1b98525076851984b Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Incorporate fixes from QQmlAnimationTimer into QAnimationTimer.Michael Brasser2014-08-221-16/+13
| | | | | | | | | | | | | | Incorporates animation timer fixes in: * 7da483bfbefcaabb1dbbf3e2f1d5b5f7aadc3b06 * b02eeeee586abe343b8866385c1327ac009b3ef0 * 59d5c5cf555a51cd7559cea197a198ef3a792614 from qtdeclarative. With these changes, we no longer need to call updateAnimationTimers in QUnifiedTimer::startTimers. Change-Id: Ic24501cfdc3cb572bd891d84f684f11c3bef1b50 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* qdoc: Fix a few cases for '[ ... ]' linkingMartin Smith2014-08-221-0/+2
| | | | | | | | | | | | | | | This update fixes a few cases that didn't work correctly. The problem was caused by calling findNodeForTarget() with a pointer to a relative node, but the relative node pointer should always be 0, when the domain tree to be searched is not the same as the tree containing the relative node. This fix sets the relative node pointer to 0 in that case. Change-Id: I2fe4a7a4a3b6392199666c7d49b473a56697e7b5 Task-number: QTBUG-39221 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* qdoc: Report error in square bracket parameterMartin Smith2014-08-223-2/+21
| | | | | | | | | This update makes qdoc report an error, when it can't recognize a parameter in square brackets. Change-Id: I45d31ec875ac533736ee4a565ff3f217353068dd Task-number: QTBUG-39221 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* qdoc: Add new checkForCollision()Martin Smith2014-08-224-0/+31
| | | | | | | | | | | | But don't use it yet. qdoc will check for name collisions within a module, once we decide what collisions to look for and what to do about them. This change puts a rewritten checkForCollision() function back in, but doesn't use it yet. Change-Id: I41f9275c3ca29f228268ccf7cb2d99bbe0ce557c Task-number: QTBUG-40506 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* qdoc: Remove all collision node stuff from qdocMartin Smith2014-08-2216-711/+72
| | | | | | | | | | | | Now that the qdoc link command has ability to tell qdoc which module contains a link target or whether to link to a QML or CPP entity, collision pages should no longer be necessary. In fact, qdoc hasn't been generating any collisions for some time. This task removes all the collision node code from qdoc. Task-number: QTBUG-40506 Change-Id: I34d1980ca1c0fe4bb5ad27dd4b00e61fa7e6e335 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Rework platformheaders qdoc confLaszlo Agocs2014-08-221-39/+24
| | | | | | | In an attempt to make the classes show up in the generated documentation. Change-Id: I198f788a42f6007802db2384e3cd79e988f573e7 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Tighten Q_OS_WINRT ifdefs in qfunctions_winrt.hAndrew Knight2014-08-211-3/+4
| | | | | | | | This allows the convenience macros to be used on desktop Windows 8 when interacting with Windows Runtime types. Change-Id: I09c6b18a6ee9711371ef7dc23fb1d3354198db1c Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* Replacement for QWS_DBLCLICK_DISTANCEPelle Johnsen2014-08-211-1/+5
| | | | | | | | | | | | | | Add QT_DBL_CLICK_DIST to replace QWS_DBLCLICK_DISTANCE for controlling the distance for detecting double clicks, which can be very useful on embedded devices [ChangeLog][QtGui] environment variable QT_DBL_CLICK_DIST customizes the amount of movement allowed when detecting a double click. Task-number: QTBUG-40841 Change-Id: I0a7534ad6cd6387d127eb49021a92d414d45670e Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* QTextCodec::codecForHtml looks at the first 1024 bytesShawn Rutledge2014-08-211-1/+1
| | | | | | | | The HTML 5 spec requires it, instead of only looking at the first 512. Task-number: QTBUG-40383 Change-Id: Ie10cf8c745ed1a3402914e126a02bc43d5035fff Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* Debug logging support for QNativeGestureEventShawn Rutledge2014-08-213-1/+10
| | | | | | | | | | The most useful information is what kind of gesture the event represents, but it was missing until now. Also added a line of documentation about the NativeGesture event type. Change-Id: I1ba3c951dcc5751e937d762d9b647ab0bf8d93b8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
* xcb: set up touch devices even if debug is not turned onShawn Rutledge2014-08-212-21/+25
| | | | | | | | | | | | 59ba84d31cf17d86e615e2958fece6f6e0bbefe2 introduced a mistake. It's necessary to populate the device data structure even if we are not going to log anything. Now the accessor is renamed to touchDeviceForId and the struct is renamed to XInput2TouchDeviceData to make it more clear that it is only for touch devices. Change-Id: Iaa3cce2d6cae250318f5a200becb9de9626b6437 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
* Outline drawing should not override the default freetype loadflagsAllan Sandfeld Jensen2014-08-211-1/+1
| | | | | | | | | | We set FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH as the default load flags for freetype fonts, but due to using = instead of =| the default flags gets overridden when outline drawing sets FT_LOAD_NO_BITMAP. Change-Id: I26b45aa2bbf613689d278eb07ae028ef9757023c Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* qdoc: Generate obsolete members page for QML typesMartin Smith2014-08-208-27/+117
| | | | | | | | | | | | | Generation of the obsolete members page, for QML types that have obsolete members, had not been implemented. This update implements that missing feature. The link to the page appears right below the link to the "All Members" page. Change-Id: I3e4bb2a68d5c8ef2bbe2e0c431eccf94ecb1fd3c Task-number: QTBUG-40214 Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* qdoc: Allow choice of linking to QML or CPPMartin Smith2014-08-2012-467/+697
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This update enables using QML or CPP as the parameter in square brackets for the \l command. You will use this when, for example, there exist both a C++ class named QWidget and a QML type named QWidget and your \l {QWidget} links to the wrong one. Suppose you write \l {QWidget} expecting it to link to the QML type named QWidget, but it links to the C++ class named QWidget. Then write this instead: \l [QML] {QWidget} Or if you wrote \l {QWidget} expecting it to link to the C++ class, but it links to the QML type, write this instead: \l [CPP] {QWidget} A qdoc warning is printed if qdoc can not recognize the parameter in square brackets. There will be a further update to complete this task for implementing the other type of parameter that can be in the square brackets. Task-number: QTBUG-39221 Change-Id: I5dd85478f968025ecbe337a8aabcc31d8b12a86d Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* tst_QWidget: Skip tests that don't pass with qwindow-compositor.Robin Burchell2014-08-201-0/+43
| | | | | | | Everything else passes, after some pending fixes in QtWayland. Change-Id: Ibd8efcaab8c5210111854f1a7362434046a62898 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* tst_qsqlthread: Move manual qWait calls into QTRY_VERIFYRobin Burchell2014-08-201-10/+5
| | | | | | | | Reduces the average runtime of this test for me by ~600ms, but due to the threading variance the exact reduction is hard to tell. Change-Id: I96a9f949ae2381f69d9364e6637db0db4bd3b165 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Rework how animationsystem interoperate with an animation driver.Gunnar Sletta2014-08-203-38/+95
| | | | | | | | | | | | | | | | | We need to keep track of both wall time which are used for pauses and actual animation driver time which is used for actual animations. When switching between these, we need to also maintain the temporal drift potentially introduced by the driver and also the time that has passed in wall-time from when a pause has started until an action animation takes over. This change introduces a well defined elapsed() function in QUnifiedTimer which will return the right value based on which mode we are currently in. It also introduces start/stopAnimationDriver functions which helps us maintain the temporal drift and pause-delta. Change-Id: I5b5100432a6db444a413d1bca4f2d5f800e8cf3e Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Skip the expose region test on WindowsLaszlo Agocs2014-08-201-0/+2
| | | | | | | | In some CI configurations this fails from time to time. Have to disable it unless we can make it more robust somehow. Change-Id: Iadd8904d7223a6aeff53dafa36b94df3f60e1ad8 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* Make HarfBuzz-NG the default shaper on all platformsKonstantin Ritt2014-08-203-39/+34
| | | | | | | | | | [ChangeLog][Important Behavior Changes] HarfBuzz-NG is now the default shaper on all platforms. This results in a better shaping results for various languages, better performance, and lower memory consumption. Task-number: QTBUG-18980 Change-Id: I4d9454fc37e9050873df3857e52369dfc7f191b2 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>