summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Accessibility: rather than assert, just warn.Frederik Gladhorn2012-09-271-5/+7
| | | | | | | | | Screen readers do random things with the dbus interface, we should be careful when handling what they send. Change-Id: Ie8fc515c8d399dae9b5e892a135b54a1820d09e2 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Fix drag and drop with native widgetsjian liang2012-09-271-4/+4
| | | | | | | | | | | | | | | Task-number: QTBUG-27336 Don't check 'widget != m_widget' in QWidgetWindow::handleDragEnterMoveEvent() since the current window's parent widget may be the actual drop target. I replace it with a check '!widget->isWindow()' to prevent we pass through a top level window. I also change 'widget->mapFrom(m_widget, event->pos())' to 'widget->mapFromGlobal(m_widget->mapToGlobal(event->pos()))' since m_widget may not be widget's parent. Change-Id: Ia4f10f85ccdf1e27223ddc51afabd98b5d16f2fb Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* QPostEventList: change pointer comparison to integer comparisonMarc Mutz2012-09-271-1/+1
| | | | | | | | | | This is exactly the type of pointer arithmetics that GCC likes to miscompile. Just use offset >= size() (=subtract begin() from both sides). Change-Id: Ifb13652d7b96bf4c06727d9c965516e95d16ab5c Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Mac: Fix small glitch in editable combo boxesGabriel de Dietrich2012-09-271-1/+1
| | | | | Change-Id: I4b064116183834226372b14c3c442dcaa518c3b4 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Take a QPersistentIndex out of the container instead of casting it.Stephen Kelly2012-09-271-7/+17
| | | | | | | | | | | | These indexes are later used as the boundary points of a QItemSelectionRange anyway, which means that they're going to become QPersistentModelIndexes again soon. Because QPersistentModelIndex::row and ::column API are not inline, we cache the resulting values in the loop. Change-Id: Ib5099148269a8ccbb7ff2d8819a347e429c55dd1 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Use a QVector to store QPersistentModelIndexes.Stephen Kelly2012-09-272-5/+5
| | | | | | | | | QPersistentModelIndex is not so big that it causes very bad QList performance, but considering how we use the container, QVector is fine. We never prepend to the container, we only ever append, clear and iterate over it. Change-Id: If1e53db9252c22340f1e0179b14a460495b5b35d Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Avoid looping over the indexes multiple times to create a persistent list.Stephen Kelly2012-09-271-9/+14
| | | | | | Change-Id: I089d272254eb531cd27c7b23fbab4d7183ba01d4 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Use the sibling method to make iteration over a range potentially faster.Stephen Kelly2012-09-271-4/+7
| | | | | | | | The implementation of QAIM can implement an efficient version of sibling. Task-number: QTBUG-17732 Change-Id: I474dbc11e52b3ccc42e2165bc9336882fab13d03 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Create an invalid QPersistentModelIndex if it will be converted anyway.Stephen Kelly2012-09-271-2/+2
| | | | | Change-Id: I278d4515d74e2213492c443e5a04731b2e79fe1e Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Fix resetting of the QCompletionModel.Stephen Kelly2012-09-272-20/+4
| | | | | | | This model apparently pre-dates the API required to do resetting properly. Change-Id: I0ea903cef87077ca4a3d8ca2b53eba213e77cc26 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Store an unsigned temporary for the internalId.Stephen Kelly2012-09-271-1/+1
| | | | | | | | This is compared later with the internalId() of other indexes, which produces a warning. Change-Id: I57ea248c792db3b49947cc6a8fe989c68b67ff0f Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Sand box support, fix for the file dialogs.Pasi Matilainen2012-09-271-42/+45
| | | | | | | | | - Also get rid of all deprecated calls Task-number: QTBUG-21609 Change-Id: I284587517537c7be4229d99637c6907d7e7652a5 Reviewed-by: Christoph Schleifenbaum <christoph.schleifenbaum@kdab.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Added QGLPixelBuffer implementation using framebuffer objects.Samuel Rødal2012-09-275-99/+113
| | | | | | | | | | | Instead of having QGLPixelBuffer be a unusable stub implementation we deprecate it and implement it in terms of QOpenGLFramebufferObject. Framebuffer objects are anyway the recommended replacement for pixelbuffers in modern OpenGL, as the context switching overhead is avoided. Change-Id: Ia220c358ee92813e87981d297c51d84525010322 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Better drawn 1-pixel thick splitter on MacGabriel de Dietrich2012-09-271-9/+19
| | | | | | Change-Id: I72effdfb997a7733fbbd270db719c163d1d53a66 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Fixed selected menu item (& Co.) text colorGabriel de Dietrich2012-09-271-1/+1
| | | | | | | | On Mac, highlighted text remains the same color as normal text. That's not the case for menu and combobox items. Change-Id: I3efe2547413f77921524b833b4b10cf2d533e110 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Fixed text rendering in selected tab buttonGabriel de Dietrich2012-09-271-3/+10
| | | | | | | | We resort to custom Qt rendering when selected since it looks better than using Carbon's HITheme engine. Change-Id: Iefcc2bebb1ba58d0d99f078c4960c5126542f637 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* use QLatin1String::size() in qt_setWindowTitle_helperHelperJoerg Bornemann2012-09-271-4/+2
| | | | | Change-Id: I0c8193a7c6bf8b5f894da3e20af3c4d23e0b593a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Remove unused qMetaType helpers.Jędrzej Nowacki2012-09-271-54/+0
| | | | | | | | | These function were replaced by QMetaTypeFunctionHelper class that is a bit more flexible. Change-Id: I5aee2089f543b6e05c4d65a688fa8ca721f8abe0 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Workaround MSVC2008 build failure after switching to std::lower_boundGiuseppe D'Angelo2012-09-271-0/+4
| | | | | | | | | | | | MSVC2008 tries to see if a container is fully ordered. This causes a build failure when operator< is not defined between the elements in the container (but is instead defined between the element type and the item passed to std::lower_bound). Change-Id: I093d6f67f64a247f0aae763acb35ee73614f4208 Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Fix OpenGL context creation in Windows platform pluginMiikka Heikkinen2012-09-271-1/+1
| | | | | | | | Attribute index was incremented incorrectly. Task-number: QTBUG-27272 Change-Id: Ia7e9c76acc6c9d8208b8ba43131861a3beff6b2c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Workaround MSVC2008 build failure after switching to std::upper_boundGiuseppe D'Angelo2012-09-271-7/+3
| | | | | | | | | | | | | | | | | QPostEventList is kept sorted by priority; std::upper_bound is used to insert a QPostEvent in the right place in the list. Turns out that MSVC2008 is a bit too picky and tries to see if the list is actually ordered. This causes a build failure as there is no operator< defined between two QPostEvents (in fact, an integer -- the priority -- is passed to std::upper_bound). Work around this issue by defining operator< between two QPostEvents. Change-Id: Ie3562dd0cc7253e25fc988b25d566d9d9e9fe62b Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Do not reference to the QAbstractNativeEventFilter documentationLaszlo Papp2012-09-271-1/+1
| | | | | | | | | | | | | | | | 1) It is not strictly necessary since the method argument type is already designed for clickable here. Thereby, it is just a duplication. 2) It is not done inside the removeNativeEventFilter, so it is not consistent now. 3) Similarly, the following documentation in 4.8 did not have another explicit reference to the documentation of the EventFilter typedef: EventFilter QCoreApplication::setEventFilter ( EventFilter filter ) Change-Id: I45fd42a03b16fd173fca9d734a7771e804d577d8 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: David Faure <faure@kde.org>
* CMake: Change suffix from "cxx" to "cpp" for generate sourcesYuchen Deng2012-09-271-2/+2
| | | | | | | | | Cause Qt5's source file use "cpp" as suffix and automoc use "cpp" as suffix too. Keep it with same feel better. Change-Id: Iba3f8ffb5c3dbf003a9e1aacf3706089c1b6765c Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* More consistent dock widget painting on WindowsJens Bache-Wiig2012-09-272-32/+12
| | | | | | | | | | | | | Before we would draw dock widget handles on windows classic and no handles on XP, Vista and Windows 8. This would make it very hard to make a consistent look and feel across those styles. I also added a workaround to avoid the redundant toolbar borders when they are used outside of the toolbar areas. Change-Id: Ib703453677fcac8d51b2180abe45527297af0a80 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Fix typo: contais -> contains.Stephen Kelly2012-09-271-1/+1
| | | | | Change-Id: I718b0178ba03fcf15f2962cb6f917efb2da27a04 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Remove CDE and Motif styles from qtbaseJens Bache-Wiig2012-09-2724-3138/+19
| | | | | | | | | | | | | | | | | It is time to clean up some of our legacy code. These styles have not been actively maintained for a long time and I think it is safe to say that they should no longer belong as part of the default distribution of Qt. We dont support any platforms based on CDE with our source packages. Note that even if we are removing these styles from the default distribution of Qt, applications that depend on them will still be able to bundle the existing (and unmodified) styles along with their own source code as we are not breaking compatibility. Change-Id: I1709630c20ba8e8088cd01628628d86856db57a4 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Blackberry: Fix hardware button detection on the BB Dev AlphaThomas McGuire2012-09-271-1/+1
| | | | | | | | The format of the PPS object has changed, it is now prefixed with [n], so be more leninent in parsing to support both formats. Change-Id: I54eb1502a6231acf2dd121531539435c59d7d668 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* [Doc cleanup] Fix typos and style of QPushButton and QGroupBoxDavid Gil2012-09-272-18/+17
| | | | | | | | Fix some typos. Fix some sentences to make them clearer to understand. Since both of them are widgets, there's no Qt4-centric info. Change-Id: I5c3c4a23621505d47b00cf466e4daad9763c3076 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* WindowsPlugin: Fix MinGW warningsKai Koehne2012-09-272-2/+4
| | | | | | | | | Fix warnings: Change-Id: Ia68607f72087c0085e528fee0e6270b80692e389 warning: enumeration value 'SynthesizeMouseFromTouchEvents' not handled in switch warning: suggest parentheses around assignment used as truth value Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* ItemViews: Fix MinGW compiler warningKai Koehne2012-09-271-0/+3
| | | | | | | Fix compiler 'warning: "_WIN32_IE" redefined' Change-Id: I70ada35027a2bab0a6c4f84dd1384028d2afbcc9 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Return correct accessible name when a label has rich textJosé Millán Soto2012-09-271-1/+9
| | | | | | | | | | When a QLabel was displaying rich text, the raw html was being returned as accessible name. Now the plain text is returned. Task-number: QTBUG-27302 Change-Id: I169d5eff527a0aef810af11d7712a362148974a5 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* (WINCE)Add failure for font outline functionAndreas Holzammer2012-09-271-0/+2
| | | | | | | | | | There is no outline function in Windows CE, so add a failure to inform the user that, he needs to switch the font rendering. Change-Id: Ieceb68bec49a88c7f7eee99f1c62cf1701da6aec Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* QtPrintSupport: cleanup CUPS tmp filesTeemu Katajisto2012-09-271-0/+1
| | | | | | | | | Set fd so that it gets closed in QPdfPrintEnginePrivate::closePrintDevice() Task-number: QTBUG-14724 Change-Id: Ic9c02c92b07ece92911d7bc3eac79689b4864253 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* xcb: consistently check xcb_get_extension_data for extension initsShawn Rutledge2012-09-271-4/+10
| | | | | | | | | This seems to fix the ability to run a Qt app across a forwarded X connection (e.g. ssh -X). Change-Id: I2b7a26985cf11107e69b303337a5fbb369e38c9e Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Uli Schlachter <psychon@znc.in>
* Implement the missing raster operations that were in Qt 3Andy Shaw2012-09-277-9/+173
| | | | | | | | | Although not widely used, the raster operations from Qt 3 were useful and some of them were already implemented, this brings the rest of them back for those who need them. Change-Id: Id538611eaaba9be3d39bf2dd33b6c532f5d4aba8 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Doc: update QMap's description following 5cb036851Pierre Rossi2012-09-271-1/+1
| | | | | Change-Id: I9dccb9f64578cf8c9da50524c5d4d1201ab488bd Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* QMetaType build fix with Q_NO_CURSOR and friends.Jędrzej Nowacki2012-09-273-17/+79
| | | | | | | | | | | | QMetaType has a way to "switch off" some types from the build. QtMetaTypePrivate::TypeDefinition<T>::IsAvailable is defined as false for all unaccessible types. Sadly that information was never used by gui and widget handlers. The patch implements it. Change-Id: Ie5835be4c88cfbbca8a4e9199e31ddfc20cae190 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Jing Bai <jing.bai@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* documentation fixesMarcel Krems2012-09-272-2/+2
| | | | | Change-Id: If165933df41e518f5ba6065792676260fd2492b6 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Fix typo in variable name.Stephen Kelly2012-09-271-2/+2
| | | | | | Change-Id: I3bd59982605d242c95278bfeb71a6071ec222d08 Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Fix spelling mistakeThiago Macieira2012-09-271-1/+1
| | | | | | | Task-number: QTBUG-27355 Change-Id: I77ecc01e2a3ea1cac94e7c99c688cfd7cab5319b Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Rename a variable it -> childIt.Stephen Kelly2012-09-271-5/+5
| | | | | | | There is another iterator called it at the top of this function. Change-Id: I8addf47d66f098c5d811eb54674525eddb4d4a1f Reviewed-by: David Faure <faure@kde.org>
* qtypetraits.h: add is_signed/is_unsigned/not_/not_c predicatesMarc Mutz2012-09-271-1/+90
| | | | | | | | | | | | | | is_signed/is_unsigned check whether the type argument is signed or unsigned, resp., and will be used in QFlags to select the correct underlying integer type. not_ is used in the implementation of is_signed not_c is for completeness (version of not_ that takes a bool instead of an integral_constant). Change-Id: I77cc445e8c6cf3181336505c9c13478fba3e7890 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QFlags: fail for 64-bit enumsMarc Mutz2012-09-271-0/+3
| | | | | | | | An int is not enough to hold all values of a 64-bit enum, so don't allow to compile QFlags for such enums. Change-Id: Ia291c4a5e2160dfd6d5a35e61a7f71ab571b9d9a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix QScreen::orientation() not always being updated after changing the ↵Simon Hausmann2012-09-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | update orientation mask The back-end might report screen orientation changes at any point and we record it in screen.d->orientation. However QScreen::orientation() returns the orientation filtered according to the mask. Changing the mask sends a notification to the back-end, which might send another update as a result of a possible subscription to system services (accelerometer). However on platforms where no subscription is required, where the platform plugin ignores the mask and always sends the latest orientation, we should "simulate" the update by updating the filtered orientation according to the new mask. The function is cheap to call as it won't emit any signals unless the orientation actually changes. This patch also adds missing flush() calls after handleScreenOrientationChange calls in the tests to ensure that the (synthetic) window system events are actually delivered to QScreen/QGuiApplication. Change-Id: Iebdd050f947e658ff5bc388629aa4cb31ab497fe Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Laszlo Papp <lpapp@kde.org>
* Fix initial window orientation with Qt on MeeGo 1.2 HarmattanSimon Hausmann2012-09-262-1/+4
| | | | | | | | | | | | | | The window orientation changes are handled through a generic QPA plugin and sends an initial window orientation change event on startup for the initial orientation and subsequent updates when the device orientation changes. Unfortunately the plugin was never loaded after the introduction of the new plugin loading mechanism, because the factory key ("MeeGoIntegration") was not provided to the plugin registry. Change-Id: Ib7324561993abfbac1dccb0839aab0a8e870d231 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Laszlo Papp <lpapp@kde.org>
* Fix events being processed on application startSimon Hausmann2012-09-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Commit ef2efafcc6b28791df6258fa1c5d565090a9577a introduced a call to QWindowSystemInterface::sendWindowSystemEvents() in QGuiApplicationPrivate::init(), which in its implementation ends up calling sendPostedEvents() before flushing and processing any pending (internal) window system events. This patch changes the call in init() to use QWindowSystemInterface::flushWindowSystemEvents() instead, which is more gentle in that regard. The provided unit test verifies that no posted events are processed during the execution of the QGuiApplication constructor while at the same time verifying what the original changed tried to do: Allow a generic plugin to provide window system specific defaults that are implemented using the event queue of QWindowSystemInterface. Task-number: QTBUG-26886 Change-Id: I129a907c00d947df60fe1a02efc67857580fce24 Reviewed-by: David Faure <faure@kde.org>
* XCB: Correctly report the created OpenGL context version and profileSean Harmer2012-09-264-8/+107
| | | | | | | | | | | | | | | This commit fixes the xcb qpa plugin such that it now correctly reports the version and profile of the created OpenGL context in the QOpenGLSurfaceFormat. To do this we have to create a temporary X window so that we can make our new context current. We also handle the buggy nVidia drivers which incorrectly report 0 for the GL_CONTEXT_PROFILE_MASK query. The reduced format is also copied back from qglx_findVisualInfo. Change-Id: I6f34fe1c6130aebbb6b40c36df4acc216069d2b1 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* OpenGL: Fix QGLFormat::openGLVersionFlags() on OS XSean Harmer2012-09-261-0/+9
| | | | | | | | | | | OS X is limited to OpenGL 3.2 and we have to explicitly request a Core profile context to get the full set of available versions as OS X does not implement the Compatibility profile. Change-Id: I8c2a6dc272416cbaf8fee44adbc4471417bf4510 Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Don't call parent() so often when processing a range.Stephen Kelly2012-09-261-1/+2
| | | | | | Task-number: QTBUG-17732 Change-Id: Iefe5801f5941136f77001c532870e22f7fdd2c69 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* QScrollBar: clean up wheelEvent() implementationMarc Mutz2012-09-261-14/+12
| | | | | | | | | | | | This code was moved from the general event() handler. Remove comments and casting that were necessary there. Task-number: QTBUG-27308 Reported-by: chenjiexin Task-number: QTBUG-21534 Reported-by: Martin Koller Change-Id: I14ef4c6363002032895f6840a7c68c1f5f665384 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>