summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* iOS: Don't pretend like our OpenGL context is single-bufferedTor Arne Vestbø2013-04-301-4/+5
| | | | | | | | | | | | | | | Internally iOS double-buffers its rendering using copy instead of flipping, so we reported that our context was single-buffered so that clients could take advantage of the unchanged buffer. This failed when clients (such as Qt itself) then assumed that calling swapBufferes() was not needed. We now properly report that we're double-buffered, and we'll have to find another way to report the way double-buffering works if that's still an optimization we'd like to provide to clients. Change-Id: Id2e4faa68ed3b837ad01d6f22b2927fc9c9769c2 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* QAccessible::State is no longer an enumOlivier Goffart2013-04-301-1/+1
| | | | | | | | | | | Since 39a052c66479c6d7bd13c4f583fecf6a895b2948, QAccessible::State is no logner an enum that moc understand. moc currently silently ignores it the Q_ENUMS Change-Id: Iecc30ad57055fc9ccaa33e9e9c400d96997d0902 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Cocoa: Port QCocoaTheme::fileIconPixmap() to CocoaGabriel de Dietrich2013-04-301-19/+10
| | | | | | Task-number: QTBUG-30907 Change-Id: Ie460db63413ab9c8e0fb5fb85af907e1c7f12759 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Make QLocalePrivate PODThiago Macieira2013-04-302-12/+21
| | | | | | | | | QSharedDataPointer does not actually need a class derived from QSharedData. All it needs is a member called "ref". Change-Id: I2f7fe4cc143478ef7ef64681eada16e2d4c2e63a Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* QLocalePrivate: remove QLocalePrivate::m_indexThiago Macieira2013-04-302-27/+10
| | | | | | | | | | | | | It's not used anywhere, so we don't need to cache the locale data index. We already have the pointer to the QLocaleData anyway. This saves us a few roundtrips calculating the index from the data pointer only to get the data pointer again. Change-Id: I6905d20a382ddcb9fb04cc886a17499b467f905a Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Move the code that creates QLocalePrivate to separate functionsThiago Macieira2013-04-301-27/+33
| | | | | | | | | | | | Direct benefit is that the code between the two QLocale constructors taking language, country and (maybe) scripts is merged. This will also allow us to cache the QLocale::c() result. Change-Id: Ia46c5a37764dc287bfcd3a52a022ac413c53a582 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Android: don't crash on exitPaul Olav Tvete2013-04-302-27/+21
| | | | | | | | | | | We have to call DetachCurrentThread() for each time we call AttachCurrentThread(). Fortunately we have this convenience class that we prepared earlier. Task-number: QTBUG-30847 Change-Id: I5ffb94b336d3787a3bae197bab22b91770d58848 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Don't block back button after keyboard is hiddenPaul Olav Tvete2013-04-301-4/+2
| | | | | | | | | | | | The back button would be non-responsive for 5 seconds after hiding the software keyboard. This is a minimal change that does not look into why we need to have a 5 second delay in the first place. Task-number: QTBUG-30752 Change-Id: Ied514b77650cea7accc37a03efef2ce861090f65 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Clarify documentation for QKeyEvent::textFrederik Gladhorn2013-04-301-5/+8
| | | | | | Change-Id: I4b455a512b2e678b6127ea488b456c68eb80cdbc Reviewed-by: hjk <hjk121@nokiamail.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* iOS: Simplify context format setupTor Arne Vestbø2013-04-301-9/+5
| | | | | Change-Id: I6a6a025410298cecd5f62abd08388a7379359af7 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Doc: Adding Qt Creator Manual as \externalpageJerome Pasion2013-04-301-0/+491
| | | | | | | | | -This should allow any Qt 5 module which inherit qt-module-defaults to link to the Qt Creator Manual. Change-Id: If413fe299fa604d16c06fa261024c1a12be24b09 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Mac style: Fix text offset within 'small' comboboxGabriel de Dietrich2013-04-301-0/+2
| | | | | Change-Id: I2bde1c71e0e79a6d8ef2897acc053357b12dc00c Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Mac style: Update appearance of 'button with menu'Gabriel de Dietrich2013-04-301-19/+69
| | | | | | | | | | Most of the logic was still following the 10.6 UI guidelines, and had not yet been upgraded to the 10.7 new button look. We tried to keep 10.6 compatibility were possible, and improve 'small' and 'mini' Aqua sizes support. Change-Id: I64139f24cccd095e9349b27a987395210b55c586 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* qdoc: Config class uses current path for each path varMartin Smith2013-04-305-25/+10
| | | | | | | | | | The Config class is further modified to make use of the current directory information it stores with each configuration variable. Task-number: QTBUG-30725 Change-Id: I34c845e6c05d7868266324f1d54e56f94d709f95 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* qdoc: Config class keeps track of current pathMartin Smith2013-04-306-180/+221
| | | | | | | | | | | | | | | The Config class is modified to build a single multimap containing a record for each variable found in each .qdocconf file. Each reacord contains not only the name and value of the variable, but also its location in the qdocconf file it was read from and the path to that file. This single multimap replaces 3 maps in the Config class. Task-number: QTBUG-30725 Change-Id: I049a69790f943b24c014a24b55b2b39725a1b56f Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* don't customize dialog buttons if GTK version is too oldShawn Rutledge2013-04-301-0/+2
| | | | | | | | gtk_dialog_get_widget_for_response was introduced in GTK 2.20 Task-number: QTBUG-30610 Change-Id: I30510f132c1d81c5d44863b3efddbc5e50771362 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Fix possible segfault when setting up window's transient parentShawn Rutledge2013-04-301-1/+1
| | | | | | | | tp->handle() can be null. Task-number: QTBUG-30919 Change-Id: Ie18b70d4cc6916d2e821a71d00d1bf99956b0632 Reviewed-by: Liang Qi <liang.qi@digia.com>
* QPlainTextEdit: add missing feature zoom on Ctrl+WheelCaroline Chao2013-04-302-0/+49
| | | | | | | | | | | When the control is read only. This is documented but not implemented. Add functions to zoomIn and zoomOut. Task-number: QTBUG-30845 Change-Id: I692b5f8cc5791498d34d35ea3dafa18b6e5d3e65 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Doc: Zooming inside QTextEditCaroline Chao2013-04-301-0/+2
| | | | | | | | | | | | | One can zoom in/out text inside a QTextEdit when the widget is read-only or when using the zoomIn/zoomOut functions. Zooming inside a HTML document only works if the font-style is not set to a fixed size inside the document though. Adding this information to the documentation. Change-Id: I66a62da53827e1ce3241ba16b91e86926b97c297 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Doc: Give C++ class lists consistent titlesSze Howe Koh2013-04-297-8/+8
| | | | | | | | | | | | | The majority format is "<Qt Module> C++ Classes" (see http://qt-project.org/doc/qt-5.0/qtdoc/modules-cpp.html) Also, fix a broken link (Qt Network C++ Classes) "<Qt Module> C++ API" is perhaps the more correct format, but that's part of a much bigger cleanup: QTBUG-30556 Change-Id: I753365e2bec8d85d9a5f686b4aa35c9eeeaf0871 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Add some extra tests for QString::argThiago Macieira2013-04-291-0/+22
| | | | | | | | | | Test locale-based formatting of numbers when we pass field width, base and fill characters. This now tests the fact that we replace a '0' for the locale's zero character. Change-Id: Ib872a592fd9a754e3ef11495a9497a6947056631 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* iOS: Don't resize backing store twice in beginPaint()Tor Arne Vestbø2013-04-291-1/+0
| | | | | | | The first call to resize() was a left-over from before we had retina-support. Change-Id: I637e8d40f443f81fe7cfc367650bb28b917da2bc Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* fix quoting issues in vcxproj generatorJoerg Bornemann2013-04-291-2/+2
| | | | | | | | | | | | | Fix passing of preprocessor definitions with double quotes to the resource compiler and to MIDL. Both have a different escaping mechanism then the C/C++ compiler tool. This fixes a regression introduced in 9e9911715c37511ece018aa9d36491b77872501b. Task-number: QTBUG-30859 Change-Id: Ifa041df407030320847373a5964a547c39dd5439 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* test: Mark tst_menubar::task256322_highlight as XFAILSergio Ahumada2013-04-291-1/+6
| | | | | | | | | | This test is unstable on Mac OS 10.7 with developer builds, so marking it as XFAIL if it happens to fail. Task-number: QTBUG-30565 Change-Id: If7094c3b19299f0dbe57cb82a8614032a75573d8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
* Make sure window is updated on resize eventEskil Abrahamsen Blomfeldt2013-04-291-0/+1
| | | | | | | | | | | After 475d1ed4f6a21686828fbd018542b469a8b2dbcd in qtdeclarative, orientation changes on Android were broken, because the resize event no longer implicitly causes an expose event. So we need to post both when doing the resize. Task-number: QTBUG-30909 Change-Id: I87c8c38e14d96a03b3409ef6439c3ac6ef432005 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* uclibc/pcre: Fix the linking of libQtCore for mips/uclibcHolger Hans Peter Freyther2013-04-291-4/+4
| | | | | | | | | | | | The mips/uclibc features.h of the toolchain used by a former key account of PSO is defining both __USE_XOPEN2K and __USE_BSD this will lead to POSIX_MADV_* and MADV_* being defined while only the symbols for madvise are present. Change the order to make it link. Change-Id: If324b978d72ad2b37b8cd624562e81503c9465d4 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Fix possible race in QMutexOlivier Goffart2013-04-291-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As described in the QTBUG-30872, there may be a race condition involving 3 threads fighting for a mutex. I am surprised it was not caught before despite all the Q_ASSERT and the stress test in tst_qmutex. We do not need to call store(0) because the unlocking thread will eventually remove the BigNumber flag. And perhaps it even did it already, and another thread has incremented waiters (hence the Q_ASSERT is wrong) Here is a paste of part of the description from the bug report: --- many threads, one of them is ready to release mutex, while at least two other trying to acquire it d->waiters is 0 Thread 1 release mutex in unlockInternal: if (d->waiters.fetchAndAddRelease(-QMutexPrivate::BigNumber) == 0) d->waiters is now -QMutexPrivate::BigNumber Thread 2 try to acquire mutex in lockInternal: old_waiters = d->waiters.load(); if (old_waiters == -QMutexPrivate::BigNumber) { if (d_ptr.testAndSetAcquire(d, dummyLocked())) { It acquire 'about to release mutex' by changing d to dummyLocked Thread 1 continue release procedure: d->derefWaiters(0); d->waiters is now back to 0 Thread 3 try to acquire mutex in lockInternal: while (!d->waiters.testAndSetRelaxed(old_waiters, old_waiters + 1)); d->waiters is now 1 Thread 2 continue its dummy lock: d->waiters.store(0); d->waiters is force to 0 Thread 3 continue wait procedure but it realize that mutex was already unlocked so decrease back waiters if (d != d_ptr.loadAcquire()) { if (old_waiters != QMutexPrivate::BigNumber) { d->waiters.deref(); d->waiters became negative value of -1 Neither thread need internal data so it is released back to pool The waiters counter in released internal structure is still -1 --- Change-Id: I1b22555db764482775db6e64a8c9ffa9e1ab0cf6 Task-number: QTBUG-30872 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix QKeySequence matchingGatis Paeglis2013-04-291-3/+5
| | | | | | | | | | | QKeySequence failed to find a match in the shortcut table when QKeyEvent contained Qt::GroupSwitchModifier modifier. It's not a part of the shortcut, it simply shifts character group in a keyboard mapping table. Task-number: QTBUG-26302 Change-Id: Id91cd4999777f7085068e9dba5cb22b40653e23d Reviewed-by: David Faure (KDE) <faure@kde.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Prevent crash due to giving QWidget::update() a large rect.Samuel Rødal2013-04-291-4/+9
| | | | | | | | | | | We can simply clip the update rect against the widget's rect and return if it's empty. Otherwise we risk ending up with update rects that are larger than INT_MAX due to multiple update rects being merged. Task-number: QTBUG-30876 Change-Id: I23bd0149fbe8d1a007a60b228e6bddb45dc4fc32 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* QFlags: Remove text promising 64 bit enums for 5.1Kai Koehne2013-04-281-1/+1
| | | | | Change-Id: I34173abd693cb124beb8feec5e0cee1f7842725e Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* README: Update the README fileSergio Ahumada2013-04-271-19/+16
| | | | | | Change-Id: I33d73c7af46a22beb082b16d5b0775e9cdfd0f27 Reviewed-by: Iikka Eklund <iikka.eklund@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Get rid of this hack where QAccessible inherits from QObject.Jan Arve Saether2013-04-269-228/+25
| | | | | | | | | | | | | This was added just so that moc could pick up the enums and so that we could use the enums in Q_PROPERTY declarations, which was needed for accessibility in QML. It turns out that Q_GADGET is enough for us. This is a strictly a binary compatible change. However, QAccessible was marked internal in 5.0, so we are free to change it. In addition, this class is static and cannot be instantiated. Change-Id: I27e2e97c5f4b45c38678264c6b593a4383db8d3e Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Define QMAKE_CXXFLAGS_RTTI_{ON|OFF} for aix-xlc mkspecAndy Shaw2013-04-261-0/+2
| | | | | | | Task-number: QTBUG-26393 Change-Id: I2d676ad6004c3fad2ef0a3ab990d6e120ed7f73c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Android: fix crash on exitPaul Olav Tvete2013-04-261-1/+0
| | | | | | | | QTouchDevice is already automatically deleted at shutdown. Task-number: QTBUG-30847 Change-Id: Id6a407083efed849a34ccb1caa315204fc5a5891 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* split qt_app.prf out of qt_tool.prfOswald Buddenhagen2013-04-262-22/+35
| | | | | | | this way we can use it for "regular" apps (gui tools) as well. Change-Id: I3b00d0bde215dff1c2726b35626c4c0c256d92c2 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* make src/ subdir optionalOswald Buddenhagen2013-04-261-12/+14
| | | | | | | | | | | | there is at least one examples-only repo (qtwebkit-examples). we look for tools/ only when src/ is also present, based on the assumption that if there was only tools/, it would be actually named src/ (like in qttools). the split between the two is nowadays arbitrary anyway. Change-Id: I982b1d0e26dd7d0a5de751546099a58f86390124 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* groundwork for making "configure -nomake tools" saneOswald Buddenhagen2013-04-262-1/+17
| | | | | | | | | | | the idea is that "tools" actually means "graphical applications". that means that all bootstrapped/build tools are consistently built, regardless of their location in the source tree. non-bootstrapped non-graphical tools are a bit of a grey area. it's going to be decided on a case-by-case basis. Change-Id: I28b959b7e659d8aa86cf6769ab6d2689c855ec6b Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* iOS: remove setMouse/keyboardGrabEnabled warningRichard Moe Gustavsen2013-04-261-0/+3
| | | | | | | | | | Setting mouseGrabEnabled means that the window should continue to receive mouse events even when the mouse is not over the application. This is not an issue on iOS, but the warning is still annoying. Change-Id: I0dd7c3828bcb1a51a4eae534aca1da5bfa258f03 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* iOS: stack true popup windows ontop of tool windowsRichard Moe Gustavsen2013-04-261-1/+3
| | | | | | | | | The current implementation would never hit the Qt::Tool case, since a tool is also a Qt::Popup. This patch fixes that by making the logic more explicit. Change-Id: I0e6898081a18289e1007c8a168b374740915b3ff Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* iOS: add convenience functions for getting window typeRichard Moe Gustavsen2013-04-262-2/+5
| | | | | Change-Id: I971df06dd348d1da68578e04076a02e85866e141 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Add QXcbWindowEventListenerJørgen Lind2013-04-266-36/+90
| | | | | | | | This makes it possible to listen for events on xcb_window_t which are not platformwindows inside the xcb plugin Change-Id: Ic9ec17ed757a7f9a5302ef2759c119a72bac573c Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Moving logic from Qt4 for grabbing the X serverJørgen Lind2013-04-264-5/+55
| | | | | | | | | Basically you don't want to grab the X server while your debugging. Also added an environment variable which lets you force to not grab the X server Change-Id: Iba03f11c8f486ce71c55fac7716bffcb7cc8cb98 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Don't crash on null QCoocaMenuItem.Morten Johan Sørvig2013-04-261-2/+4
| | | | | Change-Id: Ia70f616983141134afe874b69a5957e31f6f5ed9 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Fix ignoring close events on OSXJosh Faust2013-04-268-10/+20
| | | | | | | | | | | | | QNSWindowDelegate was not handling windowShouldClose, which is how you can tell Cocoa that your window should not close if the close button is pressed. This change moves the close handling from windowWillClose to windowShouldClose, and adds an optional "accepted" pointer to QWindowSystemInterface::handleCloseEvent so that QNSWindowDelegate can return a true/false value for whether the window should actually close Task-number: QTBUG-28965 Change-Id: I67c6296ad42cbeeb71413e05411467d4e558adb4 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Doc: Fix module name in .qdocconfTopi Reinio2013-04-262-22/+22
| | | | | | | | | Use CamelCase for module name(s) used in in .qdocconf - this is required as qdoc will generate visible output (tags in example manifest files) based on these names. Change-Id: Ie246e740203ee0b996fea5dee612bf7f61638991 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* qdoc: Adjust regexp that generates tags from module namesTopi Reinio2013-04-261-1/+1
| | | | | | | | | | | Use a slightly better regular expression for splitting module names into tags used for example manifest files. This will correctly split words with consecutive capital letters (e.g. QtDBus) Change-Id: I1320e08a1fbd44f718b82a1fcfea19eabca035fc Reviewed-by: Martin Smith <martin.smith@digia.com>
* make sure qmake finds itself in CWD on windowsOswald Buddenhagen2013-04-261-0/+1
| | | | | | | | and consequently that it finds qt.conf. Task-number: QTBUG-30583 Change-Id: I48441477e941d9609270d6e5e1b405127c0c0aca Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Don't use the SubWindow flag for windows embedded in foreign windowsShawn Rutledge2013-04-265-7/+30
| | | | | | | | | Instead, add QCocoaWindow::setEmbeddedInForeignView which can be called via QPlatformNativeInterface::NativeResourceForIntegrationFunction Task-number: QTBUG-30805 Change-Id: I05861e80ca664ddb430216388cf0fec573a4d32b Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Increase the loopLevel when activating menu items.Morten Johan Sørvig2013-04-262-0/+6
| | | | | | | | | | | | | | | | | Apply 0293aff5c44202e5c62e229b74d8bd0bf9206185 from Qt 4. Without this, calls to deleteLater() may create delete later events with a loopLevel of 1. Those events will not be processed until QApplication::exec() returns. Add a QScopedLoopLevelCounter that increases the loopLevel for the duration of the activated() call. Task-number: QTBUG-30660 Change-Id: I7ab3bb3a53243691b8f7f64e025150e5cc7da2c8 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Fix shortcut override for menusFrederik Gladhorn2013-04-263-9/+104
| | | | | | | | | | | | | | | | | | Since we use native Cocoa menus, we cannot rely on the normal shortcut handling. Shortcuts can be overridden by the currently focused object in Qt. In order to make that possible we need to send a QShortcutOverride event before accepting any key event. For menus the key event goes from the NSApp directly to the menu, so the shortcutOverride would not work. This is mostly an adaptation of the Qt 4 code. Task-number: QTBUG-30695 Change-Id: Icb4979309d2d6f9606eb9c8abc4130dc79926593 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>