summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* QImage plugins should report supported mime typesAllan Sandfeld Jensen2013-01-239-38/+175
| | | | | | | | | | Introduces the methods QImageReader::supportedMimeTypes and QImageWriter::supportedMimeTypes which corresponds to the similar supportedImageFormats methods, except they return lists of MIME types. Task-number: QTBUG-28177 Change-Id: Ibb0e264a12eaf972a8bfd6bd891dcd9f89efd085 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Change QT_FATAL_WARNINGS behavior to require a non-empty valueThiago Macieira2013-01-231-1/+1
| | | | | | | | This allows easy unsetting of the variable in a shell like: QT_FATAL_WARNINGS= progname Change-Id: Ie9cfb6ebfd4931de1c90af68bfeeae1e9f3d4b9d Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Detect Clang and Apple Clang's version properlyThiago Macieira2013-01-231-0/+15
| | | | | | | | | The current code matches *g++*, which matches "clang++" and detects Clang as GCC. That's highly incorrect. Change-Id: Ifd85bbd35aa130be3094fc75d471614d06ca23bd Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Several bug fixes in QCocoaFileDialogHelper to support declarativeShawn Rutledge2013-01-231-4/+26
| | | | | | | | Required to prevent crashes and incorrect behavior in https://codereview.qt-project.org/#change,44201 Change-Id: If6025429caabafd150cdd44fec152ff584232220 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Simplify checking of the SHM/SEM Unix key file's existenceThiago Macieira2013-01-231-3/+0
| | | | | | | | | | We don't need to stat(2) the file to check if it exists before creating it. We're about to open(2) with O_CREAT|O_EXCL, which will not recreate it if it existed. Change-Id: I2d2176054e7776a32a4520832ee104b9c4ccf748 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Richard J. Moore <rich@kde.org>
* Support shared GL contexts in eglfs.Michael Brasser2013-01-231-1/+1
| | | | | | | This allows shared texture uploads in a background thread. Change-Id: Ib390243bc9dfabd6c579dff9b74e7f44211739d3 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Implement click-to-focus for native child windows.Friedemann Kleint2013-01-231-0/+4
| | | | | Change-Id: If7633781a7167de2161cd74c62cfc883eb4d1b0e Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Fix qstring-literals test for MinGW.Friedemann Kleint2013-01-231-2/+2
| | | | | | | | | | The test is compiled since QT_UNICODE_LITERAL is always defined on Windows and ref.isStatic()) then fails since C++ 11 is not enabled. Task-number: QTBUG-29014 Change-Id: I357574a493c5191f1463e7ee5851d7db0e569315 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Implement focus handling of child windows for cocoa.Gunnar Sletta2013-01-235-3/+32
| | | | | Change-Id: I1e05ef39aa67f8febdd27215d8ad05d26ece7caa Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Undefine overlapping variable names defined in VxWorks headersPasi Petäjäjärvi2013-01-231-0/+38
| | | | | | | | | VxWorks has defined variables with same name as in Qt's headers. Undefine those variables to avoid naming conflict. Change-Id: Ia8ca04a66acece683cd6c7f71df7e5a2800ec98d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Check existence of QProcess feature before using it on Qt autotests.Pasi Petäjäjärvi2013-01-2311-8/+49
| | | | | | | VxWorks does not have QProcess support. Change-Id: I20ed479125097d468a1aa50afb18c3749f0fbb98 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Use time.h related includes from qfunctions_vxworks.h file.Pasi Petäjäjärvi2013-01-231-3/+1
| | | | | | | | | In VxWorks qfunctions_vxworks.h file includes correct time related headers and it is included already at file qplatformdefs.h for all mkspecs targets. Change-Id: I8677eef8c79cebb445d89203284f3af27abbdd7f Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Fix comments to use pre C99 standard style insteadPasi Petäjäjärvi2013-01-231-5/+5
| | | | | | | VxWorks compiler fails to compile *.c file with C99 style comments on it Change-Id: Ib5c5ff14006c17f9392b77363232b8b7cc112d34 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Use sched_get_priority_* functions only for SCHED_RR and SCHED_FIFOPasi Petäjäjärvi2013-01-231-2/+14
| | | | | | | | | In VxWorks set default values for scheduling priority to use SCHED_FIFO_HIGH_PRI and SCHED_FIFO_LOW_PRI defines for other scheduling policies than SCHED_RR or SCHED_FIFO. Change-Id: If78b84cd9ef94d7712206e9442e96cdba727610f Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Add support getting memory page size to RTP mode on VxWorks.Pasi Petäjäjärvi2013-01-232-1/+7
| | | | | Change-Id: Id71bf7fd8e7371284076247558cba7edb0307e13 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* VxWorks process (RTP) mode does not have taskLock/taskUnlock functionsPasi Petäjäjärvi2013-01-231-0/+5
| | | | | | | | | VxWorks does not support to globally lock and unlock the scheduler from process. In kernel mode (DKM) above functions disable preemption from requested task and such functionality does not exist for process. Change-Id: Id41eab4c1973e4181e82539d08707659e0780f99 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Use QDir::homePath() for tilde expansionPasi Petäjäjärvi2013-01-231-1/+3
| | | | | | | | | VxWorks does not have concept of users and therefore has no function getpwnam. Use QDir::homePath() which returns actually QDir::rootPath() if there is no HOME env variable set. Change-Id: I15fe15862c4491b56cfa13bbdb218ef00dfd1f15 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Use stub functions getpwuid and getgrgid for VxWorksPasi Petäjäjärvi2013-01-231-2/+2
| | | | | | | | | VxWorks has no concepts of users and groups, therefore no such functions exists on VxWorks. Use stub functions from qfunctions_vxworks.h for those, so we don't need to make major source code changes. Change-Id: Iaad80ec18441e3d3e9c0f96e92ccc3766b27d976 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Use stub function gettimeofday for VxWorksPasi Petäjäjärvi2013-01-231-0/+4
| | | | | | | | Vxworks does not have gettimeofday function, use function implementation from qfunctions_vxworks.h/cpp instead. Change-Id: Iad2a71c8484ba00dd9406706b1c136297260de4b Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Do not define QT_NO_DYNAMIC_LIBRARY for VxWorks process (RTP)Pasi Petäjäjärvi2013-01-231-1/+1
| | | | | | | | Shared libraries cannot be used in kernel mode (DKM), only at process mode (RTP). Change-Id: I8cecc12461aa4417b16577db3bc9cd85a1aa7efa Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Strip prepending <hostname>: string from currentPath() for VxSimPasi Petäjäjärvi2013-01-231-1/+9
| | | | | | | | | | VxWorks simulator (VxSim) maps SDK rootdir usable as normal directory. Mapped directory name is either host: or <hostname>: and can be used without prepending prefix containing colon. Strip prepending string and colon to get valid native path to host SDK rootdir running VxSim. Change-Id: I9d2829e32431c2d50fefe55c93780cd37165e565 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Use taskIdSelf() function instead of taskIdCurrent global variablePasi Petäjäjärvi2013-01-231-2/+2
| | | | | | | | | | The uniprocessor taskIdCurrent global variable (declared in taskLib.h) does not exist in VxWorks SMP, because of concurrent execution on multiple CPUs. Any uniprocessor code that reads taskIdCurrent should make calls to taskIdSelf() instead. Change-Id: I4e0efef32297f339d6121c7d4bca3820e0fc9294 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* VxWorks header only available in DKM mode and not in RTP mode.Pasi Petäjäjärvi2013-01-231-1/+1
| | | | | | | Check if _WRS_KERNEL is defined so we are compiling for DKM mode. Change-Id: I15801b0575d3fe6e543f81a177fd01d015d9085f Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Use Qt defined gettimeofday for VxWorks and no fallback to X11 versionPasi Petäjäjärvi2013-01-232-1/+9
| | | | | | | | | | | VxWorks don't have gettimeofday function so we always use the one implemented in Qt. VxWorks DIAB compiler is not supported building Qt for VxWorks 6.9.2. Anyone using older VxWorks should also not be affected so use new defines VXWORKS_DKM and VXWORKS_RTP for VxWorks version 6.9.2 onward. Change-Id: I2e9546a101256ea0557b65163b40cd0f28be8519 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Remove debugging messages from QDBusConnection::registerObjectThiago Macieira2013-01-231-4/+4
| | | | | | | | Qt does not print debugging in released versions. We print warnings in case of error in using the API, but that's not the case here. Change-Id: I14d54be5d6a1d4e1f147afd091ba850670972cdf Reviewed-by: David Faure (KDE) <faure@kde.org>
* Improve the QDBusConnection node children garbage collectionThiago Macieira2013-01-231-25/+24
| | | | | | | | | | | | | | | | | | This replaces the implementation from ac9ab9703ff299c94dca7585d5a12e. If the number of active children drops to zero, we know we can simply delete the vector of children. We know none that might be there are active. If the number is not zero, but is considerably smaller than the vector size, we can shrink the vector by reordering the elements, skipping the inactive ones. We use qMove, which expands to std::move on C++11, but a regular copy on C++98. Change-Id: I2e74446081f91fbd698425b08910fbda4746d673 Reviewed-by: David Faure (KDE) <faure@kde.org>
* Make the QtDBus object tree keep a count of active childrenThiago Macieira2013-01-234-13/+45
| | | | | | | | | | | | | | The new member variable activeChildren shall contain the number of direct children that are active. This number differs from children.count() because the vector may contain empty entries that haven't been garbage-collected yet (obj == NULL and activeChildren == 0). When this count drops to zero, we know we can simply erase the vector of children. Change-Id: Ia20604d3fac852ea4a6e8862d934fbb936fa5e18 Reviewed-by: David Faure (KDE) <faure@kde.org>
* Rewrite QDBusConnection::unregisterObject to be recursiveThiago Macieira2013-01-233-28/+42
| | | | | | | | | The current implementation is a loop. We need it to be recursive so that we can execute more operations when unwinding. This will be necessary in the next commit. Change-Id: Ia3c98fed0719cede0a0d92d3e343cf016ec7baf2 Reviewed-by: David Faure (KDE) <faure@kde.org>
* Don't clear the pointer in QScopedPointer's destructorThiago Macieira2013-01-231-1/+0
| | | | | | | | | | | | | | | | | It helps in valgrinding applications. It's the difference between: ==17609== Address 0x38 is not stack'd, malloc'd or (recently) free'd and ==19789== Address 0x598f478 is 56 bytes inside a block of size 112 free'd ==19789== at 0x4A0736C: operator delete(void*) (vg_replace_malloc.c:480) ==19789== by 0x53A77CD: QObjectPrivate::~QObjectPrivate() (qobject.cpp:239) ==19789== by 0x53B4EB5: QScopedPointerDeleter<QObjectData>::cleanup(QObjectData*) (qscopedpointer.h:63) ==19789== by 0x53B3980: QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer() (qscopedpointer.h:99) ==19789== by 0x53A8EEC: QObject::~QObject() (qobject.cpp:750) Change-Id: If42107c94401a96c05caa511442d6bd010fd4e29 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Add a new Q_GLOBAL_STATIC implementationThiago Macieira2013-01-226-119/+397
| | | | | | | | | | | | | | | Unlike the previous implementation, this implementation is locked: only one initialisation is ever run at the same time. It is exception-safe, meaning that a throwing constructor will restart the process. Also, start using the thread-safe behaviour that GCC has offered for a long time and C++11 requires. Change-Id: I20db44f57d258923df64c0051358fd0d9a5ccd51 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: David Faure (KDE) <faure@kde.org> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Fix testlib-selftest for MinGW.Friedemann Kleint2013-01-221-2/+5
| | | | | | | | Fix float format and exclude crashing sub-binary. Task-number: QTBUG-29014 Change-Id: I404f971edeb128263122a194f23e2806d6fd3bd0 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Windows: Introduce pixmap cursor cache.Friedemann Kleint2013-01-222-1/+17
| | | | | | | | | Cache custom cursors. Task-number: QTBUG-28879 Change-Id: I8f2b5b9149966399a6173dbd19f6a8e85898924b Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Don't build lance as application bundle on Mac OSTor Arne Vestbø2013-01-222-0/+2
| | | | | Change-Id: I23732b4ec0dc45d9d3a2cc5f21dad2cb33af5830 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* QTestLib: improve output when comparing lists fails.David Faure2013-01-227-30/+103
| | | | | | | | | | | | | | | | | | | | Only QStringList was handled before, now any QList is handled. A specialization for QStringList is still needed though, due to the way template matching works. Example with QList<int>. Before: FAIL! : tst_QTextCodec::threadSafety() Compared values are not the same Loc: [../tst_qtextcodec.cpp(2057)] After: FAIL! : tst_QTextCodec::threadSafety() Compared lists differ at index 0. Actual (res2.toList()): '0' Expected (mibList): '3' Loc: [../tst_qtextcodec.cpp(2057)] Change-Id: If0fdec3236ddb78a679ee549aba569ef5571c395 Reviewed-by: Jason McDonald <macadder1@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Fix cleanup of temporary files in test of QFileInfo.Friedemann Kleint2013-01-221-25/+24
| | | | | Change-Id: I0d21fc05a7d816acab5f7284f905bf971a5c04da Reviewed-by: David Faure (KDE) <faure@kde.org>
* MinGW: Disable tests in tst_qstring that use unsupported formats.Friedemann Kleint2013-01-221-0/+6
| | | | | | | Task-number: QTBUG-29014 Change-Id: I7dc879c456da8dabe02a2bce07e8628d176ca9d1 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Remove some dead code.Frederik Gladhorn2013-01-221-31/+0
| | | | | Change-Id: Iea86a30d96465bcfe78531c88040b65c6eb9f5b4 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Regression: Fix setting of custom cursors for native widgets.Friedemann Kleint2013-01-2114-45/+135
| | | | | | | | | | | | | | | | | | | | | | | | | Currently, there is no concept of not having a cursor set on a Window. Qt::ArrowCursor is always set instead. This causes bugs when native child widgets are involved, for example setting a cursor on the native widget's parent no longer works since the child's Qt::ArrowCursor applies. Introduce QWindowPrivate::hasCursor tracking whether a cursor has been explicitly set and clear in QWindow::unsetCursor(). Handle 0 in QPlatformCursor::changeCursor() to mean "unsetCursor()": - Windows: Introduce default constructor for QWindowsWindowCursor meaning "0". Search for applicable parent cursor in applyCursor. - XCB: No big changes required, set XCB_CURSOR_NONE for no cursor. - Other platforms: Assume Qt::ArrowCursor when cursor = 0 is passed for now. Task-number: QTBUG-28879 Change-Id: Id82722592f3cd5fe577a5b64dcc600c85cfea484 Reviewed-by: Jonathan Liu <net147@gmail.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Fix MinGW-warning about pointer/integer of different sizes (64bit).Friedemann Kleint2013-01-211-2/+2
| | | | | Change-Id: I26945bbcd0994e478332ea1250ad7d0bbaa8420f Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Fix Windows native file dialogs for use with QtQuick.Friedemann Kleint2013-01-212-167/+254
| | | | | | | | | | | | | | | | | | | | | | | - Correct modality check. - Allow for properties to be set if there is no native dialog. - Make dialog thread for non-modal call back into dialog helper for exec(). - Introduce QWindowsFileDialogSharedData to contain data to be cached while no native dialog exists and to be updated by the change notifications of the IFileDialogEvent interface to avoid querying the dialog results after the dialog has closed. Reduce virtual methods of QWindowsNativeFileDialogBase accordingly. This also fixes a bug in the previous implementation causing the directory not to reported back since the native API would not return the directory after closing the dialog. - Support nonmodal native dialogs when constructed on a QQuickWindow. - Delete native dialogs after exec as QtQuick keeps the dialog instances around. Change-Id: Id1169d6657d9476afe12fb9909c36cbd03aa2a40 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Cocoa: Make QCocoaMenu::showPopup() more robustGabriel de Dietrich2013-01-211-2/+2
| | | | | Change-Id: Ie4ae5806ea2f23f16597578796be36f2123c05fa Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Add support for retina glyph-based text drawing in the GL paint-engineTor Arne Vestbø2013-01-215-18/+53
| | | | | | | | | | Instead of always using a non-transformed glyph-cache we now allow a scaled glyph-cache so that retina-screens can take advantage of this. We take the cache's scale into account when positioning and drawing the glyphs so that the scale is not applied twice. Change-Id: Ia927656f0070df61e78da76e97d2c49de4d856d9 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Reduce invocations of QFINDTESTDATA in tst_qfileinfo.Friedemann Kleint2013-01-211-31/+47
| | | | | | | | Introduce variables for the paths used in the test and check in initTestCase(). Change-Id: Ie801266e30cd860e5bdf079c1182fe385f9598c7 Reviewed-by: David Faure (KDE) <faure@kde.org>
* Fix temporary file leak in tst_qfileinfo.Friedemann Kleint2013-01-211-4/+3
| | | | | Change-Id: I0d679638d5a9564f612ae5e70717f164b74aefb0 Reviewed-by: David Faure (KDE) <faure@kde.org>
* Android-eglfs: Fixed build against Android 4.0.xSamuel Rødal2013-01-212-1/+13
| | | | | | | | | The header location for SurfaceComposerClient.h changed between Android 4.0 and 4.1, so we need to select based on the major and minor version. Change-Id: I7a6408f8ba3c644facca3a7e64b8d68fde9c4472 Reviewed-by: aavit <eirik.aavitsland@digia.com> Reviewed-by: Rainer Keller <rainer.keller@digia.com>
* Add a note for merging QString::contains(QRE, QREM) overloads in Qt 6Giuseppe D'Angelo2013-01-201-1/+1
| | | | | Change-Id: I19609b192618287dbac0de2e893e3e9b40d6a969 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Add support for defining properties from member variables.Gerhard Gappmeier2013-01-196-24/+197
| | | | | | | | | | | | | | | This associates properties with member variables and avoids writing getter and setter methods manually. The metaCall() method directly accesses the member variable, so additional method calls can be avoided. The metaCall() setter code also supports NOTIFY signals, which means the according signal is emitted when the property gets written. Task-number: QTBUG-16852 Change-Id: I88a1f237ea53a1e9cf65fc9ef2e207718eb8b6c3 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Fix MinGW-warnings about comparing signed/unsigned.Friedemann Kleint2013-01-184-6/+6
| | | | | Change-Id: I970264e5b096a3d6384b59d0ae0876bb80fd0009 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Fix crashes in tst_qthreadpool on Windows.Friedemann Kleint2013-01-181-6/+28
| | | | | | | | | | | Qt 4.8 shows frequent crashes in runMultiple apparently caused by the QMutex construction in the free functions by different threads. Use a common QMutex class member instead. Change-Id: I851d4e2d3637a7b4f404ed843f5360c10caa21f5 Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Android-eglfs: Added support for non-composited rendering.Samuel Rødal2013-01-182-2/+64
| | | | | | | | By using FramebufferNativeWindow Qt can render directly without going through the SurfaceFlinger compositor. Change-Id: I0538fca9f2e905c076ff5837dd73589ee9c632ca Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>