summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* QHeaderView - reduce memory usageThorbjørn Martsum2013-08-163-13/+18
| | | | | | | | | | | | | | | | | | | | Though the worst case memory usage was improved in b800d8b94a7861ecf8853621f6556fca186fb5b7 the best case usage changed. Since best case is the same as worst case in Qt5, we should use as little as possible, which this patch ensures. We reduce the memory usage from 3 to 2 ints per section - which is half of worst case in Qt4. There seems to be no bigger cost in performance doing that. The recalcSectionStartPos is still very fast. This patch limits the maximum section size to (2^20) ~ 1.000.000 pixels. This alleviates Task-number: QTBUG-32325 Change-Id: I9b7530030a31b4e35cf1ca9e32c6b936f5ea9790 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Add Wacom tablet support for CocoaRyohei Ikegami2013-08-162-0/+162
| | | | | | Task-number: QTBUG-25867 Change-Id: I48178b8913224ac8e907d42f57620947df12e930 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* initCharAttributes() micro-optimizationKonstantin Ritt2013-08-151-5/+12
| | | | | Change-Id: Id8e275c9b4ae0a9855b8ba8917824c79cde5a919 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix possible crash due to integer overflowKonstantin Ritt2013-08-151-1/+1
| | | | | | | | | | | | | QFontEngineMulti::stringToCMap() stores the fallback engine index in a glyph index'es high byte, which means the maximum fallback engine index it can store is 255, so limit the number of tries we're doing to this value. Otherwise we could end up with `fontEngineMulti->engine(glyph >> 24) == 0` after successful stringToCMap() call. Task-number: QTBUG-30412 Change-Id: I06907a39186fd207f3ce4b732a1a54e615744082 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Replace QWheelEvent::Phase with revised Qt::ScrollPhaseJ-P Nurmi2013-08-159-40/+44
| | | | | Change-Id: I4d8e7d48497d0d96a297191976c0d99feb67b538 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Change QNSView convertFromEvent: arguemnts to QPointFRyohei Ikegami2013-08-151-10/+14
| | | | | | | | | | | | Change QNSView convertFromEvent: toWindowPoint: andScreenPoint: arguments from QPoint to QPointF. QWindowSystemInterface event handlers already use QPointF and QPointF is needed for tablet support (https://codereview.qt-project.org/#change,62740). Change-Id: I6e5b2f19777fe24ae34e9e85028772e4be0a94f6 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Don't allocate QGlyphLayout data, when possibleKonstantin Ritt2013-08-142-61/+37
| | | | | | | | | | | | | | | ...and operate directly on a passed array pointers, without having to copy the input and output data. Calling QFontEngine:: stringToCMap()/recalcAdvances() with partially-constructed QGlyphLayout is completely safe iff `glyphs` and `advances_?` members were initialized. Also get rid of QGlyphLayoutInstance that was used just in a single place and never was really needed. Change-Id: I48fab246fd69fc869f948220a553c3574d93c772 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* QLocale: Minor code dde-uplicationKonstantin Ritt2013-08-141-8/+6
| | | | | Change-Id: Ie48111a8f76798eb706d6a4036c7965d32ed542b Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* [2/2] Implement Unicode Normalization Form Quick Check (NF QC)Konstantin Ritt2013-08-144-6447/+6733
| | | | | | | | | | | | | Use QuickCheck data from DerivedNormalizationProps.txt to check if the input text is already in the desired Normalization Form. \sa http://www.unicode.org/reports/tr15/#Detecting_Normalization_Forms Using NF QC makes a significant boost to most operations that rely on normalized input data, i.e. file path conversions on Mac, where "native" form is a decomposed Unicode string. Change-Id: I292a9da479c6beed730528fc7000c45bf1befc34 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add useful signals to QTabBar and QTabWidgetIvan Komissarov2013-08-136-0/+159
| | | | | | | | | | In this patch we introduce tabBarClicked and tabBarDoubleClicked to get a finer grained information on the user interaction with the tab bar. Done-with: kevin.ottens@kdab.com Change-Id: I7be76a556ca09186e98f2e076fe2512d6c5e6773 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* qdoc: Clarify documentation of member functionsMartin Smith2013-08-131-76/+94
| | | | | | | | | | | | | | | When implementing a custom subclass of QAbstractItemModel, if the custom model will use MIME types other than the default internal MIME type, the mimeTypes() member must be reimplemented to return the list of allowed MIME types. If mimeTypes() is reimplemented, mimeData(), canDropMimeData(), and dropMimeData() must also be reimplemented to use the allowed MIME types. Task-number: QTBUG-32362 Change-Id: Iee5cf5d2dbed8a6c1f7ab47a7a4b9b03e80e8e59 Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Implement support for global whatsthis on WindowsSimon Hausmann2013-08-137-2/+29
| | | | | | | Task-Number: QTBUG-32835 Change-Id: Ifee10d815ce0037c96eda574ab9e1af67ff6bd78 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* Add more key names to QKeySequence.Mitch Curtis2013-08-131-0/+8
| | | | | | | | | | | | | So that, for example, qDebug() << QKeySequence(Qt::Key_Cancel).toString(); prints "Cancel" instead of "ᡀ". Task-number: QTBUG-953 Change-Id: Ib17fc314fd018355e6a1826d26fce85fdcbbe0c8 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* [1/2] Implement Unicode Normalization Form Quick Check (NF QC)Konstantin Ritt2013-08-131-6/+45
| | | | | | | | | Make Unicode tables generator take QuickCheck data from DerivedNormalizationProps.txt into account and generate NF QC bits. \sa http://www.unicode.org/reports/tr15/#Detecting_Normalization_Forms Change-Id: Ib73bd42ddb8f99d0be0aff609711943c52dd9c24 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* iOS: Wrap Xcode projects in Makefile for convenience and subdirs supportTor Arne Vestbø2013-08-133-16/+39
| | | | | | | | | | | | | | | | qmake expects the generator to be the same for each node in the tree of subdirs, including the leaf projects, which caused failures when qmake tried to recurse out to the leaf projects and run 'make', when the leaf project was an Xcode project. We now wrap the Xcode project in a meta-makefile that just calls out to xcodebuild to do the actual work. This allows us to get rid of the hacky generator detection, and use the macx-xcode mkspec instead of setting the generator, which is much cleaner. Change-Id: I2fed6a4dd6343b6a320eb459ecae824553bff459 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* iOS: Link to platform plugin when application requires gui-privateTor Arne Vestbø2013-08-131-1/+1
| | | | | Change-Id: I53e955f9673bd6560f44400a8fa877917107c353 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* iOS: Set PLUGIN_CLASS_NAME for platform pluginTor Arne Vestbø2013-08-131-0/+1
| | | | | | Change-Id: Ic8c5181d753925de0d8cd5fcb5e1347429ff5ba3 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Doc: ignore "Q_NORETURN" in function signatures.David Faure2013-08-131-0/+1
| | | | | | | | | | Needed by the upcoming function Q_NORETURN void QCommandLineParser::showHelp(int exitCode) Change-Id: Ie8550d2d0eff9eb20e629eef4952fa2b0b10f873 Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Doc: Fixed qmake manual's images and snippets directories.Jerome Pasion2013-08-1335-184/+183
| | | | | | | | | | | -corrected qmake.qdocconf file to not read the manual twice -moved the snippets and images directories to make sure they are not in the src directory Task-number: QTBUG-32580 Change-Id: I7b702ce3b1c8709bbb1f473f70625083242f1a40 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
* Fix Undefined Behavior due to `delete new[]`Konstantin Ritt2013-08-121-3/+3
| | | | | | | | | This didn't crash just because a simple type was used. On other platforms/compilers it may eat your cat or whatever. Change-Id: Ica2631e4e8ad20ff3a7f4cab60ec8487b6fa70ec Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Update QLocale locale database up to CLDR 23.1Konstantin Ritt2013-08-124-1260/+1270
| | | | | | | This only added Kosovo [XK] territory and few valid locales for it. Change-Id: Ia0b47041ed5cd1303b5bc233f2502a3725c74da9 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* QMessageBox - add detailed text to manual testThorbjørn Martsum2013-08-122-0/+7
| | | | | | | | Even though detailed text does not work that well, it should still be in the manual test. Change-Id: I051f9f0592ad9206dc42f0e9929c1be32baec832 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* add QScopedPointerDeleteLater, a custom deleter for QObjectsMatt Broadstone2013-08-122-0/+14
| | | | | | | | | | This is a custom deleter for QObjects that are participating in an event loop (e.g. waiting for signals to complete a task), which need to be deleted using deleteLater() rather than just delete. Change-Id: I3084ea28a6829a299c7400006c617fc23cf15160 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* qdoc: Let default output subdir be htmlMartin Smith2013-08-122-1/+6
| | | | | | | | | | | | | | | | | | When you want qdoc to output the docs in a single output subdirectory, you would add these lines to your qdocconf file: HTML.nosubdirs = "true" HTML.outputsubdir = "html" The name of the output subdir can be anything. But if you leave out the second line, qdoc now defaults to using "html" as the single output subdir. Task-number: QTBUG-32580 Change-Id: Ibfb2a0c578515ef934e816b2d7a516b64f0f9dcf Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* QScrollBar: handle QWheelEvent::Phase for transient scrollbarsJ-P Nurmi2013-08-101-0/+5
| | | | | | | | | Transient scrollbars should become and stay visible when touching the pad with two fingers. Change-Id: Ic36ba56019f484cedb2404550551ebe68ea6f285 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Add a Qt-API style QStandardPaths::setTestModeEnabledThiago Macieira2013-08-093-3/+17
| | | | | | | | | | | | | | | QStandardPaths::enableTestMode has a verb in the imperative ("enable") as the core word in the name. That indicates an action. The function should not have had a parameter. Instead, add a Qt-style setXXXEnabled function. [ChangeLog][QtCore][QStandardPaths] QStandardPaths::enableTestMode is deprecated and is replaced by QStandardPaths::setTestModeEnabled. Change-Id: Ib26ad72d7c635890d2cb22ae9d44cbda08a6f17c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: David Faure (KDE) <faure@kde.org>
* Cocoa: support QWheelEvent::PhaseJ-P Nurmi2013-08-091-1/+17
| | | | | | | | | | The started & ended phases are required for implementing correctly behaving transient scrollbars (ie. they become and stay visible when touching the pad with two fingers). Change-Id: I718d991ba6fd7e949cf9790f3bae285000fce576 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Doc: Removed extra "\group events" page in Qt GUI.Jerome Pasion2013-08-091-8/+0
| | | | | | | | | The group page is in Qt Core already. Task-number: QTBUG-32580 Change-Id: If9c4b40bad96c138dd8fe98e71378f73269c66e4 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Add generated atspi2 files to .gitignoreJ-P Nurmi2013-08-081-0/+2
| | | | | Change-Id: I6ffa39b6a8387975defb7debbb5076581a9cb672 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Introduce QWheelEvent::Phase (Begin, Changed, Ended)J-P Nurmi2013-08-087-16/+83
| | | | | | | | | | | | | | Some platforms (read: OS X) send wheel events without delta to indicate that scrolling is about to start or has ended. Currently, Qt simply ignores wheel events that have no delta. This change introduces a new QWheelEvent attribute that specifies the phase, and makes it possible to receive the special wheel events in started/ended phases. These events are required for implementing correctly behaving transient scrollbars. Change-Id: Ib8ce0d9ce9be63b2ad60aa7b0aaa1f12ef6cad09 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Pass Xcb errors through the native event filterMartin Gräßlin2013-08-081-0/+5
| | | | | | | | | | | | | | | | So far only the xcb plugin is able to handle xcb errors and there is no way for an application to get access to the errors even if the app is using xcb directly. This means Qt is filtering out all xcb errors which are relevant to the app and at the same time the xcb plugin is getting spammed with errors it did not cause and which are logged with a qWarning. By passing the error event through the native event filter an app can filter out all errors it knows to have caused. Change-Id: I158deee2e1c71630f2b1d77174f1091532851b3d Reviewed-by: David Faure (KDE) <faure@kde.org>
* Doc: Get QDoc to not display the \qtvariable if it is empty.Jerome Pasion2013-08-081-1/+1
| | | | | Change-Id: I5cd2cff23b56180e7bfec7cae84104a16f47fc79 Reviewed-by: Martin Smith <martin.smith@digia.com>
* QNX: Enable rendering on different displays using OpenGLFabian Bumberger2013-08-086-148/+180
| | | | | | Change-Id: Ife9c090cff732aba42a5cbc04640721e8fdde69d Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Doc: add winextras to the list of QT variable valuesLeena Miettinen2013-08-082-0/+4
| | | | | | | | | Qt Windows Extras is a new add-on for Qt 5.2. To make the link work, also added qtwinextras to the doc configuration file. Change-Id: Ib7d117908c241812c200ec701b6f2be27fe893c6 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Add clearButton-property to QLineEdit.Friedemann Kleint2013-08-085-1/+98
| | | | | | | | Based on addAction-API. Change-Id: Ie6c3d2d728b23a85cdd80428c92ee8208ae0a65c Done-with: Kevin.Ottens@kdab.com Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* qdoc: Restore support for output in one directoryMartin Smith2013-08-0810-41/+78
| | | | | | | | | | | | | | | | | | | | | | The basic functionality is working. Add these lines to qt-html-templates-offline.qdocconf, or add them to the online version: HTML.nosubdirs = "true" HTML.outputsubdir = "html" Before it opens a .html file for writing, it tests whether the file alread exists. If so, it writes an error message, e.g.: ...platform-notes.qdoc:140: error: HTML file already exists; overwriting .../doc/html/platform-notes-windows.html There are currently nearly 100 files being overwritten for Qt5. Task-number: QTBUG-32580 Change-Id: I02b103fd00b9d1e624665ac518d571acc791be9d Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Doc: exclude snippets subdir.David Faure2013-08-071-0/+2
| | | | | | | | | | | | This fixes the qdoc warning: doc/snippets/code/src_corelib_tools_qcommandlineparser.cpp:85: warning: Hostile character 0x24 in C++ source and doesn't lead to any loss in the generated documentation. Snippets are not "source files" for qdoc, they are included by source files. Change-Id: Ica0169813d71994ff258bf7c48f2fd387d33d772 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com> Reviewed-by: Martin Smith <martin.smith@digia.com>
* QTreeView - allow users to control data in the treestructureThorbjørn Lund Martsum2013-08-077-9/+218
| | | | | | | | | | | | | | This patch allows to set which logical index the tree is in. Before the tree always displayed data from the logical index 0, but it is actually more likely that the user wants to have data from visual index 0 (which can be done by special value -1). There is nothing special about logical index 0, and not being able to change the tree-data is just annoying. Change-Id: Ib070ce93343a0d2fbac3ad5a42cb4359401ac87c Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* implement simple VFS to support caching during project parsingOswald Buddenhagen2013-08-0714-73/+321
| | | | | | | | | | | | sync up with qt creator - for qmake itself, this is just a minor refactoring. Change-Id: I833253f81c3159056fab2ff888f293b36cc2ef56 Reviewed-by: Daniel Teske <daniel.teske@digia.com> (cherry picked from qtcreator/66802ef8bf7989dc025e34bf91d93576189c483c) (cherry picked from qtcreator/69542826fa643a0fed2fc9e717f072c2852dc017) (cherry picked from qtcreator/196424115338fb9a535810704b7d814d318b0462) Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Export getTimestamp to the native interfaceMartin Gräßlin2013-08-072-1/+12
| | | | | | | | | | | | The functionality to get the current x11 timestamp is also needed by applications which need to interact with the X11 directly. With XCB it is not possible to inspect the event queue and by that an application is not able to retrieve the current timestamp using the property change pattern and waiting for the matching event. Change-Id: Ie7ba78ecbe509ed3a902c702266917f65bf5ad07 Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com> Reviewed-by: David Faure (KDE) <faure@kde.org>
* Integrate gcov support into Qt build system.Sergio Ahumada2013-08-073-0/+39
| | | | | | | | | | | | To instrument a Qt application or library with the gcov coverage tool, do `CONFIG+=gcov' in the application .pro file. To instrument Qt itself with gcov, use the `-gcov' configure option. Change-Id: If24e91d95318609b0df1a76ed6d679bd92bcaab2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Remove exception safety testsJędrzej Nowacki2013-08-079-6201/+0
| | | | | | | | | | | | During Qt Contributor Summit 2013 we agreed that we will not support exception safety anymore. http://comments.gmane.org/gmane.comp.lib.qt.devel/12004 Task-number: QTBUG-32642 Change-Id: If57917fe8af45e787e215431c94579bc86fc7683 Reviewed-by: Simo Fält <simo.falt@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* eglfs: Implement nativeResourceForWindowJan Arne Petersen2013-08-062-0/+15
| | | | | | | | | Add support to request EglDisplay resource for a window. This is supported in other platform plugins, like kms and xcb and is required by wayland-egl based QtWayland compositors. Change-Id: If3f8c625682915c9671e820974e810763c3c8b66 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* eglfs/imx6: Implement platformDisplay() in hooksJan Arne Petersen2013-08-061-0/+6
| | | | | | | | Return the native display created in QEglFSImx6Hooks in platformDisplay(). Change-Id: I2b28ac66dce12a1054fc2f78dbfad0723f8e5688 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* eglfs: Implement nativeResourceFunctionForContextJan Arne Petersen2013-08-062-0/+24
| | | | | | | | Add support for a get_egl_context NativeResourceForContextFunction to the eglfs platform plugin. Change-Id: I155952797f340dd00ab9864852add4b44d841042 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Added automatic input device discovery to kms plugin.Samuel Rødal2013-08-061-0/+12
| | | | | | | | | Similar to what the EGLFS plugin does, to avoid having to explicitly specify which device to use for keyboard and mouse. Change-Id: I00502be8c767487490f3fd36fb06d3eb56548ada Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com> Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Made EGLFS handle multiple surfaces with more grace.Samuel Rødal2013-08-064-1/+47
| | | | | | | | | | Prevents crashing when some menu or similar is shown, although the visual result might not be ideal. Task-number: QTBUG-29729 Change-Id: Ia840b3ec17f5ef30ee58150bd2f807ca5e72cc12 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com> Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Find primary GPU onlyPier Luigi Fiorini2013-08-063-4/+13
| | | | | | | | | | | | Some systems may have multiple DRM devices attached to a single seat and we are not guaranteed to pick up the primary GPU. With this flag we can control how DRM devices are detected and consider only the primary GPU. This is very useful for the kms plugin or QtCompositors running on kms in order to use the right DRM device. Change-Id: I8b91e78f148b25aaa4e40724e39e0ed0918ca100 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Include sockLib header to enable usage of socket functions on VxWorksPasi Petäjäjärvi2013-08-061-0/+4
| | | | | | | | Functions normally found from <sys/socket.h> are available on VxWorks from <sockLib.h> header. Change-Id: I2263ec40ba9f37bc95755b633fb43d66ceb2777c Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Add side widgets to QLineEdit via QAction.Friedemann Kleint2013-08-065-12/+363
| | | | | | | | | | | | Add QLineEdit::addAction() overloads, allowing for a variable number of icons or user-defined widgets. Change-Id: Id298f18c2f47cc998170357e65cc6098df851aab Done-with: Kevin.Ottens@kdab.com Reviewed-by: Thomas Zander <zander@kde.org> Reviewed-by: Richard J. Moore <rich@kde.org> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>