summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* make bootstrapping of qdoc optionalOswald Buddenhagen2013-04-032-2/+4
| | | | | | | the weird QLibraryInfo dependency is gone. Change-Id: Iebaa5af6bc529999a2415b2ce3d2a5dca362dd5a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* add qcryptographichash to bootstrap libOswald Buddenhagen2013-04-032-4/+5
| | | | | | | needed to make qdoc bootstrapping optional Change-Id: Ie630d129ed038fd90078197588a6df723eddf553 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QTextCharFormat::setFont(): Preserve the font hinting preferenceKonstantin Ritt2013-04-021-0/+1
| | | | | | | Task-number: QTBUG-22653 Change-Id: I9153486ff7793ba4427b64459896ab1328d51548 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Apply Qt-specific changes to the bundled FreeTypeKonstantin Ritt2013-04-028-7/+29
| | | | | | Change-Id: Ia2e737b513f542c702f24986ec9fcb24b5631e36 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Move the dbmstype to QSqlDriverPrivate so it can be used for all driversAndy Shaw2013-04-0214-62/+130
| | | | | | | | | By moving it to QSqlDriverPrivate we make it easier to check what database is actually connected which is particularly useful for the autotests. Change-Id: I54d1c2c998919c1d54efb1b6ac9303070ece54aa Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* Use Bionic's __pthread_cond_timedwait_relativeThiago Macieira2013-04-021-0/+15
| | | | | | | | | | | | | The Linux futex interface uses relative timeouts anyway, so this avoids a double round-trip through clock_gettime: once in Qt code to calculate absolute from relative and once in libc for reversing. Glibc does not offer such a function because its pthread_cond objects use a kernel interface that works on absolute times. Change-Id: I8fbcd3f73d4364a16716b0eea17e8f5f9ab5cd05 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add a function to do the relative waits, simplifying the code a littleThiago Macieira2013-04-021-3/+8
| | | | | | | More to come. Change-Id: I108f23e94c322ad4e1466ff69100ad6af91d95e9 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Fix build on Android: libpthread is deficient and lacks functionsThiago Macieira2013-04-021-1/+1
| | | | | | | | | | | Even if the monotonic clock is available, Android's Bionic lacks the pthread_condattr_setclock function, so we can't tell it to use the monotonic clock. Task-number: QTBUG-30450 Change-Id: I4f53708b1e834ff5d9462b3bf778b96c22662a04 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* fix non-bootstrapped buildOswald Buddenhagen2013-04-021-1/+1
| | | | | Change-Id: Ic615dc3bee423e2bb05798ce861ca809ac89a23c Reviewed-by: hjk <hjk121@nokiamail.com>
* move the setup of QT_INSTALL_DOCS from qdoc to qt_docs.prfOswald Buddenhagen2013-04-021-12/+0
| | | | | | | | | | this is a qt specific option and really should not be hard-coded. also, the implementation used undocumented api that is internal to the bootstrapped process, which made it impossible to de-bootstrap it. Change-Id: If706960671744e64a9a7c366437977a800a6058e Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Cache QAccessibleInterfaces.Frederik Gladhorn2013-04-0232-638/+1020
| | | | | | | | | | | | | | | | | | | | | | | | | | | Since there already is a one-to-one relationship between QObject and QAccessibleInterface it makes little sense to create and destroy the interfaces on each call to queryAccessibleInterface. Add a cache and keep created interfaces around for the lifetime of the corresponding QObject. This changes the memory management rules: accessible interfaces must no longer be deleted. If you get an QAccessibleIntrface pointer that pointer will stay valid as long as the corresponding QObject is not deleted. This also re-enables accessibility for Mac. We limit the range of the IDs so that they are useable for Windows directly. That means we can get rid of the event cache there. This is based on: Iebf2f374916fc70a9dd29e95f45a6444b85f6cee Change-Id: I9fe6531812c0dbc5b41101ac05830a6dd75e13a3 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* QSqlTableModel: expose methods for getting primary valuesMark Brand2013-04-025-29/+41
| | | | | | | These methods are very useful in subclasses. Change-Id: Ifdfee9d90cbdad97f349e46b587582f1d9e7cd7a Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* make QSqlResultPrivate::fieldSerial() virtualMark Brand2013-04-023-14/+9
| | | | | | | | | | | | | | | | | | | | | The Qt psql driver has its own implementation of fieldSerial() it uses when it invokes positionalToNamedBinding() to generate a query using its native naming style. Now that QPSQLResultPrivate is derived from QSqlResultPrivate this can be implemented more conventionally using a virtual function instead of pointers to static functions. Note that this change preserves the current behavior of executedQuery() which will continue to return the query with positional syntax that is presented to virtual prepare() by QSqlResult::savePrepare(). Since the driver does not have the NamedPlaceholders feature, QSqlResult::savePrepare() will not use positionaltoNamedBinding() to set executedQuery. Although QPSQLResult::prepare() calls positionaltoNamedBinding(), it does not put the result into executedQuery. Change-Id: I7740f386cbfec9eadd9e4d6a7df3e590294655a5 Reviewed-by: Israel Lins Albuquerque <israelins85@yahoo.com.br> Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* QPSQLResultPrivate inherit QSqlResultPrivateMark Brand2013-04-022-12/+29
| | | | | | | | | | | Follow the usual pattern that a subclass's private class inherits its base classes's private class. This will allow the private class to use virtual functions. Change-Id: Iafdf1cb5db672d973ad1f60bdd7e37b9072fbb1b Reviewed-by: Israel Lins Albuquerque <israelins85@yahoo.com.br> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* QPSQLResultPrivate: do not duplicate reference to private driverMark Brand2013-04-022-17/+19
| | | | | | | | | The "private driver" is already known, so don't keep an extra reference to it. Change-Id: I34ec4108694bfbc3da3107f79598ae50a699911c Reviewed-by: Israel Lins Albuquerque <israelins85@yahoo.com.br> Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* Reduce the likelihood of underflows in qFuzzyComparehjk2013-04-021-2/+2
| | | | | | | | | | | | As indicated in the discussion of the bug report, this does not address the real problem but only reduces the frequency it occurs. Task-number: QTBUG-26453 Change-Id: I20ac3f41f52effb674bee6924ccdfd2f641576ef Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Let EglFS pick up a platform input context if installedGunnar Sletta2013-04-022-0/+7
| | | | | Change-Id: Ia3765997682f8f90c7f7da712527beea365e01ed Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Update the QMetaMethod::tag() documentation due to moc expanding macrosThiago Macieira2013-04-011-3/+11
| | | | | | | | | | | Since 34a3b63dc7d3b09342647537d378f5a55d0c81f0 (Qt 5.0), moc expands macros to their defined values. This broke the example of tagging a method: in Qt 4, it never expanded anything, so the tag was always visible and extracted. Now it's necessary to avoid defining it to empty when moc is run. Change-Id: I89967f7f993cf8e14119b086f4dd5573b348646d Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Upgrade the PCRE import script to 8.32Giuseppe D'Angelo2013-04-011-10/+12
| | | | | | | | Notably, SPARC JIT was added. Also, sort the entries alphabetically... Change-Id: I78ab4ea2f30a31592d870ce07d35e318135a14bd Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Upgrade the bundled PCRE to 8.32Giuseppe D'Angelo2013-04-0143-10167/+15835
| | | | | | | | | | | | | | Changelog: http://pcre.org/changelog.txt Amongst other things, the Unicode tables were upgraded to 6.2.0 and case folding support was added, which also fixes a QString autotest (marked as XFAIL). Qt still requires 8.30, not 8.32. Change-Id: I4056c1dc1d949d33443bb8ca280de4c8c363ac74 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* update bundled sqlite to 3.7.16.1Mark Brand2013-04-013-11888/+22277
| | | | | | Change-Id: Ia7d73d44c1e7707e81c022268b3a6df6d85703a5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix reporting writing systems for non-TrueType fontsKonstantin Ritt2013-04-013-72/+85
| | | | | | | | | | | | | | | | | | According to EnumFontFamExProc docs: > The ENUMLOGFONTEX structure includes the localized name > of the script (character set). lfCharSet ENUMLOGFONT's member must be used instead of comparing these names to non-localized ones. Also, when the font supports more than a single charset, EnumFontFamExProc callback is called for it once per charset; thus, we shouldn't "unsupport" writing systems in a subsequent call. Task-number: QTBUG-30448 Change-Id: I58fcf32958490cf5a3e873db8335e71a39a9c518 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Document Q_REVISION macro betterAlan Alpert2013-04-018-5/+244
| | | | | | | | Previously it was only mentioned in properties.qdoc Task-number: QTBUG-18802 Change-Id: Iab23128c1567974154cdcce7412b2e1468bb846a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update bundled FreeType sources to 2.3.12Konstantin Ritt2013-04-01346-3418/+13251
| | | | | | | | | | | Most important changes: * SFNT cmap 13 table format support; * fixed glitches when rasterizing stretched TTF (xsize!=ysize); * various fixes in Type1, CFF, and PCF drivers Change-Id: Ib9e2210ffbd0daa2fdbf518ea87f4be502de6b48 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* QFontConfigDatabase: fix fallbacksForFamily() for CJK languagesKonstantin Ritt2013-04-013-6/+6
| | | | | | | | | | For Han Unicode script, the language couldn't be determined algorithmically, the only way is guessing based on the user's locale. The is a regression introduced in 9b0fab6b62df98519ebfab117f14b9d3465d8c68 Change-Id: I84645885a825fdfb6c268edaf10185bf5e447eb5 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Update QLocale data to CLDRv23Konstantin Ritt2013-04-013-4073/+4277
| | | | | | | | Say hello to Interlingua and Mongolian once again. Change-Id: I735fbc5793f34620be1f6932a251224b9ded02e3 Reviewed-by: Denis Dzyubenko <denis@ddenis.info> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix tickmark painting on Fusion styleJens Bache-Wiig2013-04-011-47/+49
| | | | | | | | | | The problem seems to be that Fusion assumed that tickmarckoffset was a fixed size, which probably changed when we moved the inheritance from Windows to CommonStyle. I also had to modify the paint order Task-number: QTBUG-30294 Change-Id: Ie7320c39fd572d39b641b6bd5a9db05f494f6b74 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Publish qEnvironmentVariableIs{Set,Empty}()Marc Mutz2013-03-301-7/+5
| | | | | Change-Id: I81b960495c206024b4124cebf88b48b0c0d73619 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix typos in QBBSystemLocaleDataEl Mehdi Fekari2013-03-302-9/+9
| | | | | Change-Id: Ic893cdf4a274af660fae7f39011851318f0d244b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Remove unused header file.Gatis Paeglis2013-03-301-2/+0
| | | | | | | | As Thomas Senyk found out, the compose input context plugin had a redundant include for the X11 keysym header file. Change-Id: Iad603b545803867d02d915acffe27991bb0b7ee4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QLocale: Report textDirection() by looking to the locale scriptKonstantin Ritt2013-03-301-13/+20
| | | | | Change-Id: Ic562b0301271ba414d5d3ff75a308d84bd288f56 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Mac style: Fix disabled menu item palette entryGabriel de Dietrich2013-03-292-2/+3
| | | | | | | Also, removed an "magic color" form the style implementation. Change-Id: Iefd3ddc0d9d651d2b87f20eb1f9990a214b651df Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Make qt_setDockMenu work and call it.Morten Johan Sørvig2013-03-292-6/+3
| | | | | | | | | The application delegate code from Qt 4 implements a non-working qt_setDockMenu. Correct the signature of the applicationDockMenu method. Change-Id: I6f531a78f91e0550b0e66cc4f2fa072006a030f4 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Remove QMacQuartzPaintDevice.Morten Johan Sørvig2013-03-291-39/+0
| | | | | | | Not used in Qt 5. Change-Id: Ia0e14414afa524c5cc04151d20c168d93d8dcadb Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Fix missing devicePixelRatio propagation on copy.Morten Johan Sørvig2013-03-292-3/+6
| | | | | Change-Id: I0cb541fe8a92b7a7c159e0a6e5036baf43185a93 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Doc: Document Q_OS_WIN* macrosTopi Reinio2013-03-291-1/+16
| | | | | | | | | | | Fix the documentation for Q_OS_WIN32 and document Q_OS_WIN64 and Q_OS_WIN. Task-number: QTBUG-23120 Change-Id: Ie040c8deb6aeba326b6fafab302fadf4d93fa49f Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
* Doc: Replaced canConvert() with canConvert(int)Venu2013-03-291-1/+1
| | | | | | | | | | This change makes the function reference more relevant to the example being discussed. Task-number: QTBUG-28204 Change-Id: I50bea45f1e11d7e1eef4bc6726ebb329151fbc3d Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* QEventLoop: fix race on 'exit' and 'returnCode' private membersDavid Faure2013-03-292-10/+14
| | | | | Change-Id: I380046f386448783e3e4e93bde8cbe15b9b0279e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QWidget: micro-optimisationMarc Mutz2013-03-291-1/+1
| | | | | | | Compare string size before content. Change-Id: I00f9c6c6cf31148af4807455fa6f6b9254dda9d7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* QMetaTypeId: use QByteArray, not QVarLengthArray, to construct type namesMarc Mutz2013-03-291-27/+34
| | | | | | | | | | | | | | | | | | | | | So far, type-name strings for class template instantiations were constructed in QMetaTypeId::qt_metatype_id() by concatenating various bits and pieces into a QVarLengthArray<char>, presumably to avoid the dynamic memory allocation for small strings. Yet, when passing the result to qRegisterNormalisedMetaType, which takes a QByteArray, the QVarLengthArray was copied from, not by QByteArray::fromRawData(), but by QByteArray(const char*,int), which unconditionally results in a dynamic memory allocation after all. What's worse: the characters are copied twice: First into the QVarLengthArray, and then into the QByteArray. Remove the first of these copies by using QByteArray+reserve() to copy directly into the final QByteArray. Change-Id: Id915798a318fe97279a7cc0aca176544f99c7e86 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Load "@2x" images on high-dpi "retina" systems.Morten Johan Sørvig2013-03-281-0/+11
| | | | | | | | | Check for the existence of a "@2x" file when adding an image to QIcon. For example, adding "foo.png" will also add "foo@2x.png" if that file exists. Change-Id: If32a3446cf56ca0828de17f6a361091e4c874f26 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* QTreeView - improve ItemNeverHasChildren slightlyThorbjørn Martsum2013-03-281-0/+2
| | | | | | | | | | | | | QTreeViewPrivate has a private function hasVisibleChildren that returns if an index has visual children. This can (and should) check the ItemNeverHasChildren flag. That will likely be an performance improvement and it will ensure consistent behavior in error-situations. (The flag will then always overrule even if the model is inconsistent) Change-Id: Ied37daf56c39daccea1cb4f5cc555d5cdbc7d971 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Support high-dpi pixmaps.Morten Johan Sørvig2013-03-281-10/+13
| | | | | | | | | | | | When Qt::AA_UseHighDPIImages is set images and pixmaps may be of the high-dpi type. Account for this when calculating layout sizes by dividing by devicePixelRatio() to go from device pixels to device-independent pixels. Change-Id: I977a86789f9097ebc3c3704ae76e9706f2cb79d8 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Support high-dpi pixmaps and images.Morten Johan Sørvig2013-03-281-8/+13
| | | | | | | | | | | | When Qt::AA_UseHighDPIImages is set images and pixmaps may be of the high-dpi type. Account for this when calculating layout sizes dividing by devicePixelRatio() to go from device pixels to device-independent pixels. Change-Id: I8aa3d2ee947635ce2a49fff9e0029c9f55ae6c09 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Mac style: Fix scaled clipping regions on retina displaysGabriel de Dietrich2013-03-281-1/+1
| | | | | | | Task-number: QTBUG-30311 Change-Id: Ic91fc6b2787a035292917c39d26b578dde0a6346 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Make QMacStyle paint right side up again.Morten Johan Sørvig2013-03-281-4/+4
| | | | | | | | | 491dcbfac8 accidentally removed the y-axis inversion for the widget case. Move it back to the common code path. Change-Id: Ie6bbe6f442ca342347af77071da3a743b5655159 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* FileDialogs: Set shortcuts for navigation buttons.Frederik Gladhorn2013-03-271-0/+9
| | | | | | | Change-Id: If2ad1af096787e3e1dc424c096566f382ba7a3b5 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Mac style: Remove suspicious assignmentGabriel de Dietrich2013-03-271-1/+0
| | | | | Change-Id: I070eeb27b1630331afd7f4f02aadf97f6ea2bf97 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* QCocoaScreen: Properly align secondary screens w.r.t. primary screenGabriel de Dietrich2013-03-271-5/+22
| | | | | | | | | | | | When using different resolution screens, one can arrange them around the primary screen. However, the vertical offset has to take into account the fact that NSScreen origin is bottom-left, whereas QScreen origin is top-left. This usualy impacts the geometry's y coordinate, and can result in popups showing in the wrong screen. Task-number: QTBUG-30348 Change-Id: I159e6be2b590bd2d9a31f3f36c3785afcc62123e Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Populate includes, defines and pic flags in target interfaces.Stephen Kelly2013-03-271-2/+27
| | | | | | | | | | | | | | | Used by features in CMake 2.8.11. This matches the features in FindQt4 in that version of CMake, namely that the IMPORTED targets contain the appropriate INTERFACE_INCLUDE_DIRECTORIES and INTERFACE_COMPILE_DEFINITIONS and that the qtmain.lib static library is automatically linked to on Windows by executables. Additionally, the INTERFACE_POSITION_INDEPENDENT_CODE property is set appropriately if Qt requires users to use position independent code. Change-Id: Ide341f43fcaf7d722a7bdf1a12b1071c7e548ccc Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>