summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Use QObject pointer as QCocoaAccessibleElement id.Morten Johan Sorvig2012-01-233-23/+14
| | | | | | | | | | | | | | | Each QCocoaAccessibleElement needs to provide a unique stable id through the -(NSUnterger)hash method. The previous approach of basing the hash on the parent hash plus the child index is unpractical now that childAt() can return distant descendants instead of immediate children only. Use the QObject pointer, which is set for all accessible interfaces today. Change-Id: I5868e3a81c1b4da7233504f30003ab8060e9fa3f Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Fix synthesizing mouse events when touches change orderingLaszlo Agocs2012-01-232-5/+18
| | | | | | | | | | | | | | There is no guarantee the touches will be listed in the same order in an update: the platform/generic plug-in, the drivers, etc. are all free to shuffle the list of touch points in each report (even though the order is fairly stable with most systems). Therefore, to be safe, move and release events should be generated not from the first point in the list but from the one with the matching id. Change-Id: I6615224cbf2cfdc440143eb3191482a23d85c6a4 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Revert "Blow up earlier when adding test rows without columns."Robin Burchell2012-01-231-1/+0
| | | | | | | | | | | | This seems to break a number of tests using the qmltest library. Functionality will be restored in a future commit, once the breakage has been identified. This reverts commit fdedb49b76b8f9ad69611fbfea6b8371ae1ec3a1. Task-number: QTBUG-23845 Change-Id: I0ca4dbd54132e4250702f06738edbad5e8fc4f36 Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
* QPropertyAnimation::setTargetObject() fails if new and old target object ↵Armin Berres2012-01-231-1/+1
| | | | | | | | | | | | | | | | | | | have the same address If a target object is destroyed QPropertyAnimationPrivate::targetValue reflects this while QPropertyAnimationPrivate::target stays unchanged. QPropertyAnimation::setTargetObject() checks if a new target matches QPropertyAnimationPrivate::target - to bad if the former target has been destroyed in the meanwhile but the new one has the same memory address. targetValue is not updated in this case. It will still point to null and QPropertyAnimation::targetObject() returns 0. This is not just a theoretical problem - we stubled upon this in Harmattan when suddenly animations complained that they are having no target. Change-Id: Ib4a9c234d04d6f8a3f7aed251d5e79471d95168a Reviewed-by: Leonardo Sobral Cunha <leo.cunha@nokia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* directfb: Deal with Qt trying to create a QSize(0, 0) platfom windowHolger Hans Peter Freyther2012-01-231-3/+3
| | | | | | | | | | | | | | Qt will attempt to create a platform window with the above size and DirectFB will fail to create the window. Make sure the width/height is at least 1 before handing it to DirectFB. According to Samuel it is legitimate to create a QPlatformWindow with QSize(0, 0) and it is the job of the platform plugin to make it work. Follow the approach of the XCB plugin and increase the size. Change-Id: Ifc92780b46f1a73123945988d06bd21a3deb6bb0 Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Remove uses of qMalloc/qFree from out of line code.Robin Burchell2012-01-231-4/+4
| | | | | | | | There is no need to use these, and we are trying to deprecate them. Change-Id: I70e6f27aca322fe74c31d8ad8496f230cd29e503 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Windows: Implement native event filters.Friedemann Kleint2012-01-233-8/+54
| | | | | Change-Id: Ibdf556428e4dbb9156c87504b923ec9600bcf871 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* XCB: Introduce enumeration for event filter types.Friedemann Kleint2012-01-233-10/+25
| | | | | | | | Remove QByteArray-construction and hash lookup in the event handling; use an enumeration indexing an array instead. Change-Id: I4d272b32a5ff71c8da58197cf3a0b38c1e61d489 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Mark QTriangulatingStroker as Q_GUI_EXPORTAlex Wilson2012-01-231-1/+1
| | | | | Change-Id: I6083ba122c33769cd4626f2c4a32959e535da8a4 Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
* qfilesystemengine_win.cpp: compile with namespaced QtJoerg Bornemann2012-01-231-7/+6
| | | | | | | | SidCleanup struct must not be in the INCLUDE_NAMESPACE. Change-Id: Ic51f1734af583c0ba7f715f7b27f314211e698c5 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: hjk <qthjk@ovi.com>
* xcb: Correctly check the X11 connectionUli Schlachter2012-01-231-1/+1
| | | | | | | | | | | | | Commit e08453f31ae2a195f86a763f0b1c5e617df0e1ce added a check which makes sure qt prints an error message instead of segfaulting when it can't connect to the X11 server. However, libxcb will never return NULL from xcb_connect() and thus that commit only works if XCB_USE_XLIB is defined and used. Change-Id: I8cc1496494a94f07055a3ac5093ce362dd347c5b Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Remove Symbian specific code from QtXml.Xizhi Zhu2012-01-232-7/+0
| | | | | Change-Id: I29979c80e401f5d6c2c2b38c4e502340f2025a12 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Remove Symbian specific code from QtSql.Xizhi Zhu2012-01-236-76/+0
| | | | | Change-Id: I3fc538862c7334914ec9e4331ef2d3db5c699ea9 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* xcb: Don't crash on missing mouse pointerUli Schlachter2012-01-231-4/+6
| | | | | | | | | | | | | | | | | | | The draganddrop examples all crashed here because they were using a default-constructed QImage() (i.e. one without any content). I guess this happens here because I don't have any mouse theme set. To test, one could start a second X server, but without any WM or DE. The "evil" QImage() came from QGuiApplicationPrivate::getPixmapCursor(). This function seems to just always "return QPixmap();". This fix is correct because the only caller has another fallback if the createNonStandardCursor()-fallback didn't work. This caller is QXcbCursor::createFontCursor(). Change-Id: I7ec7fbcfdf0203e983149b5e73016cc7e85ecf40 Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Remove dead code.Richard Moore2012-01-231-19/+0
| | | | | | | | Task-number: QTBUG-23524 Change-Id: I6a80af450b599022e9242cccec945887b871f2b0 Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com> Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Remove invalid comment.Richard Moore2012-01-231-2/+1
| | | | | | | | | | No point in making this protected: it breaks existing code including the unit tests, and the base class has this method as public. Task-number: QTBUG-23524 Change-Id: I8fae019088fc368213ff7caa4b19fe7ab60488dd Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Blow up earlier when adding test rows without columns.Robin Burchell2012-01-231-0/+1
| | | | | | | | | | | | | Previously, the assertation triggered was rather unhelpful: QFATAL : tst_QHash::qhash_qt4() ASSERT: "d->dataCount < d->parent->elementCount()" in file qtestdata.cpp, line 88" We now try a bit harder to be user-friendly. Change-Id: I2e3a5ae27914d44fc1dc89af2a084e3d798fe221 Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com> Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
* Update obsolete contact address.Jason McDonald2012-01-232-3/+3
| | | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: Id689fdb78727abafba033bed7b0402e2cf27aba1 Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update contact information in license headers.Jason McDonald2012-01-232342-2343/+2343
| | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I431bbbf76d7c27d8b502f87947675c116994c415 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Remove dependency of QtDBus onto QtXmlHarald Fernengel2012-01-227-307/+257
| | | | | | | | | Replace the QDom based code in qdbusxmlparser with code using QXmlStreamReader. Task-number: QTBUG-20856 Change-Id: I294e3ebd6faa813c20806be3ae225ac00befb622 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Obsolete QInputDialog::getInteger() 'officially'.Robin Burchell2012-01-222-29/+7
| | | | | | | | | It has long since been obsolete in code and removed from the documentation, but was never marked QT_DEPRECATED. Do so, and inline the implementation. Change-Id: Ic7bfdaf76269b7f9addeba83e64bc9525c581dda Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Merge overloads of QInputDialog::getText() and QInputDialog::getItem()Robin Burchell2012-01-212-39/+1
| | | | | Change-Id: Ifaefaa5c3faa698c8570da4ef00e130c211b2609 Reviewed-by: Richard J. Moore <rich@kde.org>
* Merge overloads of QFontDialog::getFont().Robin Burchell2012-01-212-23/+2
| | | | | | | | Per Qt 5 comment. Note that this leaves one overload of getFont() intact, as removing it would be a source-incompatible change. Change-Id: Ieb6ddfef9aa86750c14928ab2e0a9bfb84d322ab Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
* Remove note about source-incompatible change.Robin Burchell2012-01-211-1/+0
| | | | | | | | There's no real gain to be had from doing this. Change-Id: Ifa5fefe4a354cfe1f9a8a915a7041d0cfebccce1 Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Richard J. Moore <rich@kde.org>
* Remove copy of libgq.Robin Burchell2012-01-2126-2830/+0
| | | | | | | | | | Nothing in the source tree uses this after the removal of the icd bearer plugin in 0e0eb207c4ada7a09c980b816dda1c5c6af1c027, so there is no point keeping it around anymore. Change-Id: I6ea05c84d561965636e2ca5b03c7ee8edc48c093 Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Richard J. Moore <rich@kde.org>
* Remove unnecessary sizehint overload.Robin Burchell2012-01-212-11/+0
| | | | | | Change-Id: Id6b3e206d59df25f6252da48ac99265226313635 Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Richard J. Moore <rich@kde.org>
* Change QMessageBox::question to default to yes/no buttons instead of okThorbjørn Lund Martsum2012-01-211-3/+1
| | | | | | | | | Beside that it also removes a suggestion about making Ok==Yes and No==Cancel. It would be a problem since we (at least) can have messageboxes with both yes, no and cancel. Change-Id: I567979b2e697e7103968d6512fe4835f86888ca3 Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Fix incorrect check for error when monitoring a path using inotify.Robin Burchell2012-01-211-1/+1
| | | | | | | | | | | Per the manpage, inotify_add_watch will return -1 in the case of error, 0 is a valid watch descriptor. Task-number: QTBUG-12564 Change-Id: I56a54de2f5cf18b40aaeddc6de51d18dacbf8daf Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* remove obsolete codec plugin loading codeMark Brand2012-01-209-361/+2
| | | | | | Change-Id: I1f3dbb5c10009413f701947b1b89ed3dbc94bf3d Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* cosmetic adjustments for files moved to core/codecsMark Brand2012-01-2017-44/+143
| | | | | | | | | | -update old reference to 'plugin' -rename multiple inclusion guards -add private header warning text Change-Id: I4c582dcba549d871bd8d929bee5372586117eabb Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* update private header referencesMark Brand2012-01-2011-13/+13
| | | | | | Change-Id: I092d879653b6900532a0c4534c1eb2be84e9d0f6 Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* move plugin text codecs to QtCoreMark Brand2012-01-2029-665/+22
| | | | | | | | | | | | | | | | | | | | Having plugin text codecs adds considerable complexity to configuring Qt. The plugin interface is designed for optional features, but text codecs tend to be used for essential functions. A dramatic example is loading a codec plugin from a file whose path needs to be converted by the codec. Codec plugins can also be a nuisance to builders of applications linking to static Qt. This is because the application might need to explicilty import the static codec plugins which are actually dependencies of QtCore. For these reasons, it has been decided not to have text codec plugins any longer. Change-Id: Ic6c80a9c949bd42e881e932d1edae23fe4fe4c88 Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* build and load text codecs regardless of iconv and platformMark Brand2012-01-202-30/+22
| | | | | | | | | | | | | | Otherwise applications linking to static Qt may have to import the static plugins to avoid linking failure even if they do not use the codecs, which is a nuisance. Also, this is preparation for moving these codecs into QtCore proper. Change-Id: I71f3bbb0bac6261983143d0578757b34997d1364 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* fix whitespaceMark Brand2012-01-201-17/+16
| | | | | Change-Id: I0cfccae085c000d4368386a34f288c1e6f01a88f Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Add atomic implementation for Native Client.Morten Johan Sorvig2012-01-204-2/+258
| | | | | | | Uses gcc compiler intrinsics, similar to avr32. Change-Id: I10cc2bd3cad67ee002386bab1ea764a4ff5ce727 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Fix cursor disappearance in QLineEdit on Mac when deleting all textPasi Matilainen2012-01-201-1/+1
| | | | | | | | | | | On Mac OS X, if all text in the QLineEdit was selected and then deleted, cursor visibility was not updated, and so the cursor remained hidden. Fixed to update cursor visibility also when the text is empty. Task-number: QTBUG-13169 Change-Id: Id52a20b07bb96609a78c42eb630ee2b20ed7cbcb Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com> (cherry picked from commit 181456d0a31b7250da97eafba75e6bc657391777)
* Fix glyphsEnd range checkJiang Jiang2012-01-201-2/+5
| | | | | | | | | | | For a character generating more than one glyphs, glyphsRun() needs to check the next glyph index after the requested range. If that glyph index is more than one larger than the glyphsEnd we currently get from logClusters, then glyphsEnd need to be set to the next glyph index minus one. Change-Id: I795c595d349418ba755b088d6fe6ff24a6e7dd15 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Windows: Work on QPlatformScreen implementation.Friedemann Kleint2012-01-208-38/+239
| | | | | | | | Implement virtual desktops (which is the default for EnumDisplayMonitors) and change notifications. Change-Id: Id24a1b6d9766903901ddf1ded8e9933aa03589d4 Reviewed-by: Oliver Wolff <oliver.wolff@nokia.com>
* uic: Add translation-attributes to string list properties.Friedemann Kleint2012-01-204-22/+103
| | | | | | | | Task-number: QTBUG-8926 Task-number: QTBUG-20440 Change-Id: I57d92110bf532c717451336bd1943c9571020478 Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
* Add a virtual sendPostedEvents() to QEventDispatcherWin32.Friedemann Kleint2012-01-205-11/+19
| | | | | | | | | | | | | Reimplement this in QWindowGuiEventDispatcher to send both Qt posted events and queued QPA window system events. We need to do this at a well defined place, instead of sending events outside of the eventloop from the Windows proc. This fixes various hangs for example in tst_qinputdialog, which used a 0-timer to close a dialog. Change-Id: I64e0b8f1209fb434059a7fa667ed585902c19db4 Initial-patch-by: bhughes <bradley.hughes@nokia.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Introducing QPlatformSharedGraphicsCacheEskil Abrahamsen Blomfeldt2012-01-2012-5/+1609
| | | | | | | | Interface to provide cross-process caching mechanisms in a platform plugin. Can be used for shared glyph caches and icon caches etc. Change-Id: If0d89a0a50bbd6eee05daf908448262ff270fc5b Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
* Remove QBool and use bool instead.David Faure2012-01-2013-85/+48
| | | | | | | | | | | | QBool was introduced with Qt-4.0, to detect Qt3-like code like if (c.contains(d) == 2) and break compilation on such constructs. This isn't necessary anymore, given that such code couldn't possibly compile in Qt4 times. And QBool was confusing developers, and creating compile errors (e.g. QVariant doesn't have support for it), so better remove it for Qt 5. Change-Id: I6642f43f5e12b872f98abb56600186179f072b09 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Docs: Fix typo in the QWindow class documentationAnselmo L. S. Melo2012-01-201-1/+1
| | | | | | | | It was 'windw' instead of 'window' Change-Id: I3a7b361a22e4ea09ee1fb3d9b551c1a88d401ff1 Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Allow generic plugins to set defaults for window system propertiesSimon Hausmann2012-01-201-2/+2
| | | | | | | | | | | | | In order for generic plugins to set defaults on "startup" time - such as the meego integration plugin to set the correct screen orientation - it is necessary to construct the plugins when the application startup is done. Then the plugin can "inject" the values the usual way, using QWindowSystemInterface::handle*Change. Afterwards we need to process those events - take them from the window system event queue and let QGuiApplication process them. Change-Id: I84de022ad565a33ae3ef5dfc34f540d6bf488b03 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Add support for platform plugin specific event filters.Simon Hausmann2012-01-208-69/+147
| | | | | | | | | The setEventFilter on the platform native interface allows subscribing to events on the backend by event name. Change-Id: Ib10077fbc69f0207edbae1177e7bbd18c8d0f9ae Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com> Reviewed-by: Michalina Ziemba <michalina.ziemba@nokia.com>
* Change visibility of eventFilter().Robin Burchell2012-01-201-3/+1
| | | | | Change-Id: I2d47e3d1f5a8fac5a1fe4638dce87a9e036f8544 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Add Contact: information in the license headerBradley T. Hughes2012-01-202-0/+2
| | | | | | | | Contact point is the Qt Project, and needs to be included for all new files added to the repository. Change-Id: Id0e7219e1d11a169f1a91439728cbda55ab29eeb Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Silence warning from clangBradley T. Hughes2012-01-201-2/+4
| | | | | | | | | | | | | | | | | | | QBasicAtomicPointer is forward declared as a class, keep the actual declaration of QBasicAtomicInteger and QBasicAtomicPointer as class with all public members (qoldbasicatomic.h does the same). src/corelib/thread/qbasicatomic.h:158:1: warning: 'QBasicAtomicPointer' defined as a struct template here but previously declared as a class template [-Wmismatched-tags] struct QBasicAtomicPointer ^ src/corelib/global/qglobal.h:1861:23: note: did you mean struct here? template <typename T> class QBasicAtomicPointer; ^~~~~ struct Change-Id: I38c59c29d7f796dde772e7f403bbf98b04571a08 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Use Q_FOREVER instead of foreverBradley T. Hughes2012-01-201-2/+2
| | | | | | | | | | Public headers should compile with QT_NO_KEYWORDS defined. Change-Id: I5620b4b2600f5e39bb402b97d14fdb257dfe9942 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Add the new QBasicAtomicXXX implementation - no backends yetThiago Macieira2012-01-205-3/+449
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new implementation is API- and ABI-compatible with the old implementation, provided that QBasicAtomicInt isn't used as an argument in a function call or the return value: now, QBasicAtomicInt is a typedef to QBasicAtomicInteger<int>. The new design is based on CRTP: the QGenericAtomicOps template class takes as a template parameter the derived class itself. This way, we implement a "poor man's virtual" without a virtual table and everything is inline. QGenericAtomicOps implements most of the atomics code that is repeated in many classes all over: * Acquire semantics are obtained by placing an acquire barrier after the Relaxed operation * Release semantics are obtained by placing a release barrier before the Relaxed operation * Ordered semantics are obtained by placing an ordered barrier before the Relaxed operation (either way would be fine) * fetchAndStoreRelaxed and fetchAndAddRelaxed are implemented on top of testAndSetRelaxed * ref and deref are implemented on top of fetchAndAddRelaxed It also adds load, loadAcquire, store and storeRelease: the default implementations of loadAcquire and storeRelease operate on a volatile variable and add barriers. There are no direct operators for accessing the value. Each architecture-specific implementation can override any of the functions or the memory barrier functions. It must implement at least the testAndSetRelaxed function. In addition, by specialising one template class, the implementations can allow QBasicAtomicInteger for additional types (of different sizes). At the very least, int, unsigned and pointers must be supported. Change-Id: I6da647e225bb330d3cfc16f84d0e7849dff85ec7 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>