Lars Knoll [Wed, 15 Aug 2012 20:53:10 +0000 (22:53 +0200)]
Fix a couple of qdoc errors
Change-Id: I79f689e08ed4a496052529af38fca72c3d4e04cb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
aavit [Fri, 17 Aug 2012 12:15:36 +0000 (14:15 +0200)]
Clean up QScreen::grabWindow()
Handle 0 WId parameter as meaning "desktop window"/whole screen.
Also, re-add the default values for the grab area, both for
convenience and compatibility with QPixmap::grabWindow() in Qt4.
Update the screenshot example so it doesn't comlain about usage of
deprecated QPixmap::grabWindow().
Change-Id: I2ad229113ddb8ded0388f2ebc0e8c703c6657f1f
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Stephen Kelly [Wed, 15 Aug 2012 14:46:36 +0000 (16:46 +0200)]
Add a changes file entry for QMetaType QObject related change.
Change-Id: I2f902ffe6b18034047114626dd4cbe9d2f96c2fc
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Stephen Kelly [Fri, 10 Aug 2012 11:18:54 +0000 (13:18 +0200)]
Exclude the qplatformdefs CMake test on Windows.
The fix for this failing test is not yet agreed to. Disable it to
allow progress with the CI system while the fix is decided.
Task-number: QTBUG-26869
Change-Id: Ia8089b8e66d750353e7c1c69597916af0d042856
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Stephen Kelly [Thu, 19 Jul 2012 12:33:28 +0000 (14:33 +0200)]
Remove QWidgetStar.
This allows us to remove the odd hacks to get the static metaobject
for the QWidget* metatype.
The QWidget* is still an automatic metatype thanks to the QObject
partial template specialization. It is registered as a metatype
at runtime automatically in qwidgetsvariant.cpp.
Change-Id: Ie01b69eadf2cbe87af1a86c3284550f60dcf9e94
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Lars Knoll [Wed, 15 Aug 2012 20:50:30 +0000 (22:50 +0200)]
Add Q_DECL_NOTHROW to the tokens qdoc ignores
This fixes a couple of qdoc errors on methods that
are declared as nothrow.
Change-Id: I22bcd18253665280a5c1c3a38539dacf8f869c57
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Wed, 15 Aug 2012 21:12:07 +0000 (23:12 +0200)]
Fix most qdoc errors for QMap
Change-Id: I8cac3b63cab32c655f722aca467489730c3f0a42
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Thu, 16 Aug 2012 07:39:59 +0000 (09:39 +0200)]
Move the statemachine documentation into qtcore
Moved the documentation from qtdoc to here, so the
statemachine class docs can link to it.
Change-Id: I49a10cc7c418d415c64ea538376eb9bd7b031c27
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Lars Knoll [Thu, 16 Aug 2012 07:43:27 +0000 (09:43 +0200)]
Move the animation overview doc into QtCore
Moved here from the qtdoc module.
Change-Id: Ib263848e0637204ec3b0cba973076ca79a25a953
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Thu, 16 Aug 2012 08:20:50 +0000 (10:20 +0200)]
Fix qdoc erros in qfile and related classes
Change-Id: I56b66e6eeb06c84e1157a701a814aebb1ddf4845
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Rafael Roquetto [Fri, 17 Aug 2012 12:43:01 +0000 (14:43 +0200)]
Pass NEON_ASM directly to SOURCES.
This guarantees that qmake gives them the proper flags (non C++) while
building these asm files.
Change-Id: I41150f543b8fac81bcd0da963b4d0e0a19b9db2f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Thiago Macieira [Mon, 6 Aug 2012 14:10:33 +0000 (16:10 +0200)]
Mark simple static methods in QThread as Q_DECL_NOTHROW
These methods aren't often used, but currentThreadId() gets used in the
recursive mutex code to store the identity of the thread with multiple
locks.
Change-Id: I031cf3893aa6e7fd7a53733fc1088d295bdb9079
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Stephen Kelly [Mon, 13 Aug 2012 09:53:05 +0000 (11:53 +0200)]
Emit layoutChange signals when changing QPersistentModelIndexes.
This is necessary whenever QPersistentModelIndexes are changed. Omitting
it means that views are not able to react to the change, such as QTreeView
clearing its (manually held) QModelIndex cache, and the QItemSelectionModel
clearing the item from its storage.
It is necessary to change a QSortFilterProxyModel test which assumed setItem
does not have any such effect. That test is ported to setData instead.
Task-number: QTBUG-18539
Change-Id: Id7a602f18b9773ba4d11019418de886860d26d3e
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
J-P Nurmi [Wed, 15 Aug 2012 14:07:57 +0000 (16:07 +0200)]
QAbstractSlider: fix qdoc warnings
Change-Id: I996d45513a0239d0ed11669ce6e238955ec8a31b
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
J-P Nurmi [Wed, 15 Aug 2012 14:01:12 +0000 (16:01 +0200)]
QSlider: fix qdoc warnings
Removed some Qt3 support leftovers and docs for qt_qsliderStyleOption()
that qdoc wasn't able to tie to anything.
Change-Id: I49bb886b639fe11e4923ef8486e0b9f8a966b10c
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
J-P Nurmi [Wed, 15 Aug 2012 13:41:01 +0000 (15:41 +0200)]
QLCDNumber docs: cleanup Qt3 support leftovers
Change-Id: I22378c5334ac830e94060f20568e200f0ee49280
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Frederik Gladhorn [Wed, 15 Aug 2012 13:28:52 +0000 (15:28 +0200)]
Remove docs for removed functions.
Change-Id: I75ec0137c56581653ee0dd6fd84f10f0a6c3429c
Reviewed-by: J-P Nurmi <j-p.nurmi@nokia.com>
Frederik Gladhorn [Wed, 15 Aug 2012 14:01:46 +0000 (16:01 +0200)]
Reference proper example.
Change-Id: Icda7e21f7e1eee8d4a6939ce3a50d1874ecda1e6
Reviewed-by: J-P Nurmi <j-p.nurmi@nokia.com>
Frederik Gladhorn [Wed, 15 Aug 2012 12:00:08 +0000 (14:00 +0200)]
Remove outdated docs.
Change-Id: I6eaffdad3b800b7d90478cb7c4044ec27e659ec9
Reviewed-by: J-P Nurmi <j-p.nurmi@nokia.com>
Marc Mutz [Fri, 3 Aug 2012 08:58:19 +0000 (10:58 +0200)]
QMessageLogger: mark noDebug() as nothrow
Change-Id: Ib01ad955844e8da376c687876141ad8f21776613
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Marc Mutz [Wed, 25 Jul 2012 08:04:58 +0000 (10:04 +0200)]
QMessageLogger: make member functions const
Just because we can :)
It looks a bit weird that QMessageLogger has a constexpr
constructor, but no const methods...
Change-Id: I794dd2b3326c45be17b29decb47c9cac4778d397
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
J-P Nurmi [Wed, 15 Aug 2012 11:58:29 +0000 (13:58 +0200)]
Moved guibooks.qdoc from qtdoc to qtwidgets
Change-Id: I69e07b7a343c99ebafc7bf4587041b6f9ddbd37e
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Jan-Arve Saether [Fri, 17 Aug 2012 11:39:59 +0000 (13:39 +0200)]
Exclude snippets
Change-Id: Ia31d7923e9a121eb7c16a1fe059dc8c9a5b61bd1
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Sergio Ahumada [Thu, 16 Aug 2012 08:46:42 +0000 (10:46 +0200)]
Doc: Fix spelling errors
Change-Id: Ibae8d10183f6b15a16b1499daa2df8802dbb014e
Reviewed-by: Geir Vattekar <geir.vattekar@nokia.com>
Frederik Gladhorn [Thu, 16 Aug 2012 13:35:20 +0000 (15:35 +0200)]
Make qdoc ignore Q_WIDGETS_EXPORT.
Change-Id: Ic76ba6260a219f5a7f336e6bc15654bc827dfcd3
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
J-P Nurmi [Wed, 15 Aug 2012 15:03:55 +0000 (17:03 +0200)]
QTabWidget docs: cleanup Qt3 support left overs
Change-Id: If73848b0b8dc424b3429f845aff383d088a6a367
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
J-P Nurmi [Wed, 15 Aug 2012 15:01:35 +0000 (17:01 +0200)]
QTabBar docs: cleanup Qt3 support left overs
Change-Id: If2c9245ad454b1f34c44f1d0a0c61700cea53cf3
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
J-P Nurmi [Wed, 15 Aug 2012 14:54:12 +0000 (16:54 +0200)]
QDate/TimeEdit: fix qdoc warnings
Warnings caused by c3e1ab:
../widgets/qdatetimeedit.h:208: No documentation for 'QTimeEdit::time'
../widgets/qdatetimeedit.h:220: No documentation for 'QDateEdit::date'
Both 'date' and 'time' are declared and documented in QDateTimeEdit.
Change-Id: I287b5f20568e4055e6922eb1a70aeedf220de823
Reviewed-by: Shawn Rutledge <shawn.rutledge@nokia.com>
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
J-P Nurmi [Wed, 15 Aug 2012 14:27:52 +0000 (16:27 +0200)]
QMenuBar: fix qdoc warnings
Removed Qt3 support left overs, marked QMenuBar::platformMenuBar()
as internal, and removed the reference to
qt_mac_set_native_menubar() that was removed in 2922f8.
Change-Id: Ia6af9bd399c88fafab26789278b4c82312d6d9c7
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
J-P Nurmi [Wed, 15 Aug 2012 14:11:17 +0000 (16:11 +0200)]
QScrollBar: fix qdoc warnings
Removed some Qt3 support leftovers
Change-Id: Idd8e05fd96f5eb0816f79e6684293c9477d4d52f
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
J-P Nurmi [Wed, 15 Aug 2012 13:21:53 +0000 (15:21 +0200)]
QFrame docs: cleanup Qt3 support leftovers
Change-Id: I8c51f0a379c03e4bdd9dbdccc6cdc98a7013c40e
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Jan-Arve Saether [Fri, 17 Aug 2012 09:52:40 +0000 (11:52 +0200)]
Fix a bug in qdocs handling of excludedirs
The bug was there because the way qdoc tries to exclude the directories
given in the "excludedirs" variable:
It did a simple string comparision on the candidate path (to include)
with every string in the "excludedirs" variable.
However, this did not work for all cases, since the paths are not
canonicalized.
For instance, the problem I faced was that the following qdocconf
fragment: (config file located in doc/qtwidgets.qdocconf)
sourcedirs += ..
excludedirs += snippets
Since qdoc would recursively parse all subfolders of sourcedirs, it
would at one point visit the snippets folder, but it would have the
relative path "../doc/snippets", which did not match with "snippets",
causing snippets to not be excluded.
In addition, it seems that qdoc tries hard not to use absolute paths
(maybe because of more human-friendly error messages). I therefore
chose to canonicalize the relative paths.
As a side-effect this also give a better output from qdoc, as
../doc/foo.qdoc:42: Missing link
will become
foo.qdoc:42: Missing link
Change-Id: If9c25fa569abd03542bd12675acd44d8f4e0282c
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Jan-Arve Saether [Wed, 15 Aug 2012 13:22:49 +0000 (15:22 +0200)]
Clean up docs for graphicsview.
* doc/snippets/graphicsview.cpp is moved from the qtdoc repo
* doc/images/graphicsview-parentchild.png is taken from 4.8
There are still some problems with references to examples, but
Casper meant that Jerome was working on that, so I'll leave
those fixes out.
Change-Id: Ieac8e6564344851fe8e77f2b346b152e57f8485c
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
J-P Nurmi [Wed, 15 Aug 2012 11:25:11 +0000 (13:25 +0200)]
QComboBox docs: cleanup Qt3 support leftovers
Change-Id: I59352edee99321c6119aee9c0f5e428a5371c997
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Rafael Roquetto [Thu, 16 Aug 2012 16:08:19 +0000 (18:08 +0200)]
Decouple -lang-c++ from CXX command on QNX mkspecs
Making -lang-c++ integral part of the $CXX command was wrong, because there are
cases where $CXX must be called without the -lang-c++ file (when building asm
files for instance). This commit moves the -lang-c++ to $CXX_FLAGS where it
belongs.
Change-Id: I667c8d722105c6117fcd8ff3102dbdfcb890b24f
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Marc Mutz [Fri, 17 Aug 2012 08:57:15 +0000 (10:57 +0200)]
QThreadPool: fix race on 'queue' in stealRunnable()
The code under mutex protection already implicitly handles the case where
queue.empty(), so just removing the pre-lock check suffices.
Change-Id: I01467aff62e61bb4efd16359dd64546ff51c6bad
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Marc Mutz [Fri, 17 Aug 2012 08:55:38 +0000 (10:55 +0200)]
QThreadPool: use swap() when making a copy of allThreads
This is the C++98 version of std::move().
Change-Id: Icb73da16bb05bf07114a38e4fd48732b612e2d51
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Marc Mutz [Fri, 17 Aug 2012 08:53:53 +0000 (10:53 +0200)]
QThreadPool: don't loop unless needed
The resulting code is easier to understand, too.
Change-Id: I3cd84d85b3186860dd3ccd67c3771b82695e7f83
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Marc Mutz [Fri, 17 Aug 2012 08:51:48 +0000 (10:51 +0200)]
QFutureInterface<void>: const-correct reportFinished()
The primary QFutureInterface::reportFinished() takes a const T *, so should the
void sepecialisation.
Change-Id: I4d3173f4fd4f8d27baecd407369659a42445aed7
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Joerg Bornemann [Thu, 16 Aug 2012 11:02:30 +0000 (13:02 +0200)]
qmake: object_with_source feature removed
By putting object_with_source into CONFIG one could force qmake to
output each object file into the same directory as its source file
came from. This was a rather nasty work-around from Qt 3 times to
support source files with the same file name in a project.
Unfortunately this doesn't play nicely with shadow builds.
Change-Id: Ie79e14d36ba6eac4219edc14ea75ab6a96f9ea96
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Oswald Buddenhagen [Wed, 15 Aug 2012 17:42:42 +0000 (19:42 +0200)]
unbreak "aux" template for mingw & msvc
we cannot just completely stub it out, as then there are no dependencies
on whatever targets we actually *want* to be built.
Change-Id: I32a92fa937d099c153a0082feae5d23e3998ba48
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Wed, 15 Aug 2012 17:41:22 +0000 (19:41 +0200)]
beautify "aux" target
it works better when it castrates the app template, rather than staticlib
Change-Id: If52960fb48d770e8ec096c66b579539512b8d299
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Tue, 14 Aug 2012 19:53:25 +0000 (21:53 +0200)]
remove unnecessary magic
getXQMakeConf now gives properly expanded variables
Change-Id: I17d82a1889fc4e1ee6b74c90aa0e4179ece0e415
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Sean Harmer [Thu, 16 Aug 2012 08:22:46 +0000 (09:22 +0100)]
Fix compilation of QThread on QNX
Commit
3ef51efbe75bfb9f1dfbe7df073e9eb745a72ad8 broke compilation of
qthread_unix.cpp on QNX. This fixes it by passing in the threadId to
setCurrentThreadName().
Change-Id: I24f32d8054baedbd9a65b6a80fb1f6f37e07092d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Sean Harmer [Thu, 16 Aug 2012 10:21:06 +0000 (11:21 +0100)]
QNX: Allow app to run when spurious 2nd screen is reported
On the PlayBook, libscreen always seems to report the presence of a 2nd
display even when none is connected. This of course leads to the failure
to query this display for its physical size.
This patch relaxes the demand for a physical size to being for the
primary screen only.
Change-Id: If30b1fd704e7a194a426a0a9f0b85557478105f7
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Kevin Funk [Tue, 14 Aug 2012 14:05:52 +0000 (16:05 +0200)]
WinCE: Fix call of GetAncestor in setParent_sys()
There is no GetAncestor under Windows CE.
Use GetParent instead.
Change-Id: I87b86961dade0d5c7c8bf6a470f777d32188dcd2
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Miikka Heikkinen [Thu, 16 Aug 2012 10:03:32 +0000 (13:03 +0300)]
Fix setParent_sys() to use native methods when checking for toplevel
QWindowsWindow::setParent_sys() was checking if window was toplevel
using non-native method, which caused wrong result in some cases
involving native windows. Changed the toplevel check to utilize
native method instead.
Task-number: QTBUG-26826
Change-Id: I72ca17c53c1ed7611f141cee17b2edaaa80c6c17
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Miikka Heikkinen [Wed, 15 Aug 2012 09:54:48 +0000 (12:54 +0300)]
Fix GDI object leak
DeleteObject parameter must be a handle, not a pointer to a handle.
Task-number: QTBUG-26835
Change-Id: Id5de2b0b067bd9fc45c1c8ead4f7d67f0162f070
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Joerg Bornemann [Wed, 15 Aug 2012 10:39:44 +0000 (12:39 +0200)]
remove install/removeEventFilter from QRollEffect
This class doesn't have an eventFilter method.
Change-Id: Ibd7b3b5b954dd2467c9b4dadd85d3613964d9f7c
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Joerg Bornemann [Wed, 15 Aug 2012 10:18:49 +0000 (12:18 +0200)]
qmake: support incremental linking when embedding manifests
When embedding manifests we modified the EXE/DLL after linking using
the manifest tool. This breaks the incremental linking feature of MSVC.
The MS way to embed a manifest without breaking incremental linking is:
- let the linker create the manifest file,
- create a resource that contains the manifest file,
- invoke the linker again to embed the resource.
The embed_manifest_{exe|dll}.prf files have been removed.
All manifest logic is now in qmake's nmake makefile generator.
With QMAKE_MANIFEST one can specify a custom manifest file that gets
embedded without disturbing incremental linking.
Task-number: QTBUG-22718
Change-Id: Idb9d2644a0577b2002cbdd2d62b695b9171b1bd5
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Marc Mutz [Wed, 15 Aug 2012 14:42:06 +0000 (16:42 +0200)]
QSlotObjectBase: re-enable tail-call optimisation in impl()
Two of the three operations in impl() return void, among them the
most common one, call(). Having impl() return bool prevents tail-
call optimisations for these.
Fix by passing the bool return value for Compare as an out-parameter.
Results in a nice decrease in text size
(GCC 4.8-pre -O2 -std=c++11, stripped):
text data bss dec hex filename
507343 13984 48 521375 7f49f tst_qobject (old)
505551 13984 48 519583 7ed9f tst_qobject (new)
Reported-by: Thiago Macieira <thiago.macieira@intel.com>
Change-Id: I7538c5b3f0992970c089e44f07244e6b62794a1d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Marc Mutz [Fri, 10 Aug 2012 14:12:58 +0000 (16:12 +0200)]
QSlotObjectBase: combat virtual function "bloat"
In C++, the compiler creates extra functions and data for classes
with virtual functions. This can lead to "virtual function bloat":
http://www.boost.org/doc/libs/1_47_0/doc/html/function/misc.html#id1382504
This is especially true when the number of instances is of the same
order of magnitute as the number of derived classes, such as is
common with type erasure techniques.
One such case is the QSlotObjectBase hierarchy, which this patch
tackles.
The mechanics of this optimisation are simple: re-implement the
virtual function call mechanism by hand, with function pointers.
But we go one step further and collapse the vtable into a single
pointer to a function that implements all three currently-defined
operations, swtching on an 'int which' argument. This even allows
us to extend this in a BC way, should that become necessary later,
by adding a new Operation and using the void** argument to
transport arguments, if any.
This approach was inspired by:
Ulrich Drepper: How To Write Shared Libraries, Section 2.4.4
http://www.akkadia.org/drepper/dsohowto.pdf
Also move the QSlotObjectBase hierarchy out of QObject so as not
to export all the derived classes.
This was pointed out in review by Thiago.
Results (Linux amd64, GCC 4.8-pre -O2 -std=c++11, stripped):
size tst_qobject*
text data bss dec hex filename
523275 21192 48 544515 84f03 tst_qobject (old)
507343 13984 48 521375 7f49f tst_qobject (new)
relinfo.pl tst_qobject*
(old) tst_qobject: 473 relocations, 0 relative (0%), 240 PLT entries, 240 for local syms (100%), 0 users
(new) tst_qobject: 323 relocations, 0 relative (0%), 238 PLT entries, 238 for local syms (100%), 0 users
Change-Id: I40ad4744dde8c5c29ef62ed2d82d4b1ede178510
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Thiago Macieira [Wed, 15 Aug 2012 16:03:50 +0000 (18:03 +0200)]
Avoid an expensive call to toLocal8Bit upon thread creation
QString::toLocal8Bit() will need to call QTextCodec::codecForLocale(),
which isn't the cheapest of the functions, at least the first time it's
run. So avoid calling it when in most scenarios, the name of the QObject
isn't set, and the information is purely for debugging.
Additionally, avoid allocating memory when setting the thread name to
the class name. The class name coming from the meta object is a static
constant string and we can use it directly.
Change-Id: Ief643bad87a51487b1d41c0a2f323e80bb53e8a7
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Thiago Macieira [Tue, 14 Aug 2012 11:15:14 +0000 (13:15 +0200)]
Remove trailing comma in enum
Spotted by ICC:
qfreelist_p.h(127): warning #271: trailing comma is nonstandard
BlockCount = 4,
^
Change-Id: Ib64d1d19ca0514e7582a295da48cbf6705aa8c44
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Thiago Macieira [Wed, 15 Aug 2012 14:40:30 +0000 (16:40 +0200)]
QUrl is not necessary for configure.exe, drop it from the .pro
qurl.cpp was removed from the Makefiles on
6ab6b0fc1c594a589d96d17b5ab7,
but I missed the .pro file. You're not supposed to use the .pro file
anyway, it's just for opening in Creator.
But if you forget to remove the qmake build step, it would get compiled.
Change-Id: Ia52ae7349e195df58f76f8d2c5f8b46adfdc7454
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Thiago Macieira [Tue, 14 Aug 2012 11:29:24 +0000 (13:29 +0200)]
Silence a false-positive warning about uninitialised variable with ICC
ICC complains like so:
harfbuzz-gpos.c(95): warning #592: variable "error" is used before its value is set
return error;
^
However, line 95 is never executed because the condition on line 94 is
always false. That's why it's a false positive. The same construct
happens in the other two places.
Still, silence the warning.
Change-Id: I168d916d6837d4ac346facfd22b3e5b4e22ef7f0
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Samuel Rødal [Wed, 15 Aug 2012 10:18:35 +0000 (12:18 +0200)]
Made eglfs work with backing store based applications again.
Make sure we pick the same config for the context and window surface,
and do not create unnecessary window surfaces for the desktop widget.
Change-Id: I3c8fb3df9ab8a658196e41dfa1705cfca625a2d7
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
Frederik Gladhorn [Wed, 15 Aug 2012 11:13:33 +0000 (13:13 +0200)]
Documentation for QWidgetItem::controlTypes.
Change-Id: I673b884ac8513714d733411729a7418c19f05682
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Frederik Gladhorn [Wed, 15 Aug 2012 11:13:01 +0000 (13:13 +0200)]
Update docs.
Change-Id: I7bd1f1efe2d6ce3aee8cb7454f43cfef2979f525
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Frederik Gladhorn [Wed, 15 Aug 2012 11:03:20 +0000 (13:03 +0200)]
Remove docs for removed enum values.
Change-Id: I225ea48606d60894a851c1dd620983b7a65d234d
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
Frederik Gladhorn [Wed, 15 Aug 2012 10:56:14 +0000 (12:56 +0200)]
Move docs for QSessionManager to the right file.
Change-Id: Ia3735ac14fe91de8cfbb58fc68f1a37f04d7b668
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
Frederik Gladhorn [Wed, 15 Aug 2012 09:56:32 +0000 (11:56 +0200)]
Remove outdated docs.
Change-Id: Ic878226c3b627b445ac45f56497a6a4ae77b2d38
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
Frederik Gladhorn [Wed, 15 Aug 2012 09:51:30 +0000 (11:51 +0200)]
Remove deprecated docs for QActionGroup.
Change-Id: If086395d3e1d151324df3cc1c59152715cb4af40
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
Frederik Gladhorn [Wed, 15 Aug 2012 09:45:57 +0000 (11:45 +0200)]
Add parameter docs for QAbstractEventDispatcher::filterNativeEvent.
Change-Id: If028d2560d7bb18c9dd3e0f5fa6677c42fbf7d4b
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
Thiago Macieira [Tue, 14 Aug 2012 12:07:31 +0000 (14:07 +0200)]
Disable CPUID checking with GCC 4.2 or older
This is not the first time that GCC 4.2 on Mac has produced bad code
surrounding the CPUID instruction (see also commit
81d1f79a7f4b0f67d71).
So declare it broken beyond repair and don't run the instruction at all.
Instead, initialise the set of features found to be exactly that which
we detected at compile-time. For that reason, we can also disable the
runtime checking of the processor (minFeatures == detected features).
At the time of this commit, only the draw helpers and one QImage
helper make use of the runtime detection. Since the detection now
switches to compile-time, QtGui will start carrying dead code for GCC
4.2 and earlier: it will never run the SSE2/SSSE3 code on 32-bit
builds. (GCC 4.2 does not support AVX, so that code won't be built)
Note: all Clang versions report that they are GCC 4.2, so we need to
exclude it from the test; ICC reports the same version as the system's
GCC.
Change-Id: I43f168a9480a2479c6444eea175782b2eadc2ab2
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Rafael Roquetto [Wed, 15 Aug 2012 10:04:35 +0000 (12:04 +0200)]
Fix tst_qbytearray on QNX
qUncompressCorruptedData() no longer hangs on QNX 650 and Blackberry OS
sytems.
Change-Id: Id131f9f1c6dcd358c152675c7e29ab937052c1d0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Stephen Kelly [Wed, 8 Aug 2012 12:56:14 +0000 (14:56 +0200)]
Only emit headerDataChanged for valid proxy intervals.
Modeltest asserts before the patch, and passes afterward.
Task-number: QTBUG-26515
Change-Id: I08a89cd5c9c59613badcddbd056a3d0b8fbbca13
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Marc Mutz [Wed, 15 Aug 2012 10:52:13 +0000 (12:52 +0200)]
tst_QUdpSocket: Remove unneeded ./ in application name printing
Reported-by: Shane Kearns <shane.kearns@accenture.com>
Change-Id: I12f2a23b98c3b0161a2961a9117c196cd7d72a6d
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Marc Mutz [Wed, 15 Aug 2012 10:16:58 +0000 (12:16 +0200)]
Fix "might be used uninit'ed" warning
GCC 4.8 warns:
main.cpp:165:60: warning: ‘type’ may be used uninitialized in this function [-Wmaybe-uninitialized]
app.arguments().at(3).toInt());
^
Change-Id: Ib0f6847031437b588e14c6708fdddea5fd474b58
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Stephen Kelly [Mon, 13 Aug 2012 16:12:28 +0000 (18:12 +0200)]
Emit the highlighted signal if the model changes.
The bug is that the connection to emit that signal can be made
obsolete if the connection is made too early and the model is replaced.
In the bug report, the connection is made by calling view() early (thereby
causing the creation of a view and a QItemSelectionModel which operates on
the built-in QItemSelectionModel, and then connecting to that
QItemSelectionModel), and then when QComboBox::setModel() is called later
the built-in view creates a new QItemSelectionModel for it. The bug was
that that new QItemSelectionModel is not connected to. This patch fixes that
bug.
Task-number: QTBUG-4454
Change-Id: Ibbdb8731f16ab071008b4a19dc2cc7ae03cebc84
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Jeremy Katz [Mon, 6 Aug 2012 14:01:30 +0000 (16:01 +0200)]
Fix QMessageLogger and associated qdoc errors
Change-Id: I4b9555c8a15a698ef5ce270288c88a0aa88e0033
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Geir Vattekar [Tue, 14 Aug 2012 13:38:53 +0000 (15:38 +0200)]
Doc: Fix broken return codes for a few examples
This reverts remnants of
79747d38987ce42adc510be0c5bb1565f55fd3d6.
Task-number: QTBUG-25571
Change-Id: I1dbf64cfcba889fb0c70ceaeeeffad8334a8aab1
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Lars Knoll [Tue, 14 Aug 2012 14:43:39 +0000 (16:43 +0200)]
Add a module page for QtConcurrent
Fix some foward references from QtCore in addition. This
will require more work.
Change-Id: Ib1bade18c2cc220a7afe25e9fca6a3f50cb1174b
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Lars Knoll [Tue, 14 Aug 2012 15:26:52 +0000 (17:26 +0200)]
Ignore Q_DECL_NOEXCEPT in qdoc
This fixes a large bunch of qdoc errors in Qt Core.
Change-Id: Ie3c3cebc730081a0927a0998d8937d721719c1c6
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Lars Knoll [Tue, 14 Aug 2012 15:05:30 +0000 (17:05 +0200)]
Mark QCollator as internal.
The class is private in 5.0, we'll publish it in 5.1
Change-Id: Ia7511db0393528aafa8c8059b4eb1657c8cdcc64
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Lars Knoll [Tue, 14 Aug 2012 15:03:51 +0000 (17:03 +0200)]
Fix QPointer qdoc errors
Change-Id: I54082a87f076aa511329cfb7a6ed6ecabcfb40f7
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Laszlo Papp [Wed, 15 Aug 2012 05:37:01 +0000 (06:37 +0100)]
Make the "\internal" qdoc command stand on its own line
The qdoc manual currently claims that the command must stand on its own line.
The change follows the consistency with the rest and how the example looks like
inside the qdoc manual for this command.
Change-Id: I6b653dc95cf9d84e4adf32220dace5d313678419
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Jani Honkonen [Mon, 6 Aug 2012 10:18:48 +0000 (13:18 +0300)]
Fix undo and redo in QLineEdit when in password mode
There are some security issues with undo/redo. User should not be
able to get the erased password back in any situation. Therefore
redo must be disabled completely and undo is limited only for erasing
previously entered text.
Task-number: QTBUG-14226
Change-Id: I2b38aca84adbad1c14db76b56ad6303d56b35b4d
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stephen Kelly [Wed, 8 Aug 2012 13:50:31 +0000 (15:50 +0200)]
Make selectAll() do nothing if the mode is NoSelection.
Task-number: QTBUG-26687
Change-Id: Iaa0197efe64c61505e22e4a63a1f5c012af0bc78
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Oswald Buddenhagen [Mon, 13 Aug 2012 15:01:38 +0000 (17:01 +0200)]
set QT_PLUGIN_PATH for tools
Change-Id: Ie76b25b605ab4271eff161ee9bfc4f54df640f4a
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Oswald Buddenhagen [Mon, 13 Aug 2012 13:35:35 +0000 (15:35 +0200)]
make .private_includes in module pri files "self-contained"
this puts the whole logic of assembling those paths into qt_module.
Change-Id: Iafbe3969e3092e294bdb8243b2dffa7a899a7eb8
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Harald Fernengel [Tue, 14 Aug 2012 11:15:11 +0000 (13:15 +0200)]
Speed up construction of basic QVariants
Instead of first creating an initialized Private struct, then overwrite
the member variables, we added an internal constructor that
initializes the private struct sanely.
In the new (inlined, internal) constructor, both the MSB bits in the
bitfield are 0, and since the value of internal meta-type ID is so
low that the two MSB bits should never be set, the compiler can
(hopefully) optimize away the bit-fiddling initialization of the bit-field.
Callgrind shows about 33% speed-up in e.g. QVariant::QVariant(int)
Change-Id: I706773a71c0d8dcbe119ad15411578b81892deb5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Oswald Buddenhagen [Thu, 9 Aug 2012 16:54:40 +0000 (18:54 +0200)]
revamp preparation of command line for qmake calls in makefiles
instead of re-assembling a list from the variables, take the original
command line minus some explicitly stripped out options. this is way
less code and poses no synchronization problem between the two parts.
as a "side effect", variables obtained from $QMAKEFLAGS won't multiply
with each makefile nesting level, as the generated command line won't
replicate data obtained from the environment.
Change-Id: I5d1ce0f11efb338f60405529f9818910103b1b0e
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Thu, 9 Aug 2012 16:45:48 +0000 (18:45 +0200)]
make command line parser use qt containers
way more legible code
Change-Id: I7ba5a66f1f0bc7ae78ba0537ef8e5c780506a149
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Thu, 9 Aug 2012 14:13:56 +0000 (16:13 +0200)]
take parsing of qmake mode out of parseCommandLine()
it wouldn't do anything particularly useful when parsing QMAKEFLAGS, so
take it out of the common path.
Change-Id: I60f1215c4645707e1f99932dd19160e1d1c9d953
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Thu, 9 Aug 2012 14:13:07 +0000 (16:13 +0200)]
remove rather pointless parameter from parseCommandLine()
Change-Id: I97998555c41e8eab2438ac355950abf9dace24a0
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Marc Mutz [Mon, 6 Aug 2012 22:19:59 +0000 (00:19 +0200)]
rcc: use new qEnvironmentVariableIsEmpty()
Change-Id: I48dd9b7b8dd51e1c662273eb37ac2e1f4c1c4d15
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Marc Mutz [Mon, 6 Aug 2012 22:18:45 +0000 (00:18 +0200)]
QtTestLib: use new qEnvironmentVariableIsEmpty()
Except where using the contents of the variable, in which case
collapse two calls to qgetenv() for the same variable into one
that stores the result in a temporary QByteArray and continues
working with that one instead.
Change-Id: I6c09a20ae946327ccb85e4833a60a373a8a07355
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Marc Mutz [Mon, 6 Aug 2012 22:11:51 +0000 (00:11 +0200)]
QtGui: use new qEnvironmentVariableIsEmpty()
In particular, static bool showRasterOverlay is safer.
Change-Id: I9df6c9a9a56d2e61b13391b6889c0ac6e259e801
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Marc Mutz [Mon, 6 Aug 2012 22:11:00 +0000 (00:11 +0200)]
QtDBus: use new qEnvironmentVariableIsEmpty()
Change-Id: If983083cc7f360199716a060464344340c089236
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Marc Mutz [Mon, 6 Aug 2012 22:10:11 +0000 (00:10 +0200)]
QtCore: use new qEnvironmentVariableIs{Set,Empty}()
In particular, qEmergencyOut() is now completely exception-free.
Incidentally, this patch shows that Qt isn't consistent in how it
treats empty environment variables used as flags, but that is something
for a separate commit. This patch aims to be behaviour-preserving,
except in exceptional circumstances, of course.
Change-Id: Ie106e7b430e1ab086c40c81cc1e56cd0e5400cb4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Thiago Macieira [Tue, 14 Aug 2012 11:21:34 +0000 (13:21 +0200)]
Fix warning about change of sign
method_relative_ is unsigned, so we can't store a -1 in it.
qobject.cpp(434): warning #68: integer conversion resulted in a change of sign
callFunction_(0), method_offset_(0), method_relative_(-1)
^
Change-Id: If8bf3835590ef2c26b9ca5010d638aa84675ff62
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Kent Hansen [Tue, 14 Aug 2012 08:58:49 +0000 (10:58 +0200)]
Add some more of my 5.0.0 changes
Change-Id: I606a11cb11d1559476eab6532db22f4bc81fed90
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Thiago Macieira [Sat, 11 Aug 2012 19:55:20 +0000 (21:55 +0200)]
Merge L_FLAGS and l_FLAGS in configure
This is prompted by the fact that QMAKE_LIBDIR_FLAGS is no longer
honoured by qmake, so we need to use LIBS. It didn't make much sense
to have the flags separate anyway...
Change-Id: Iaec4d58f9dbac25755bbc3bad7550e03edb5332b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Oswald Buddenhagen [Sun, 12 Aug 2012 08:14:59 +0000 (10:14 +0200)]
introduce compileTest function
this cuts down the enormous duplication of identical command line args
passed to compile.test.
this necessitates the addition of a -config parameter to compile.test,
as QMAKE_CONFIG needs to be extended in some cases.
Change-Id: I677b2fea4a407b9e4395e70a25e4e349efb0a946
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Stephen Kelly [Mon, 13 Aug 2012 09:01:57 +0000 (11:01 +0200)]
Deprecate Qt::WFlags.
It seems to date from the Qt 1 days, and such abbreviations
are not current Qt style.
Change-Id: Iea7259bd7ba78b2c0863e3f6675e10826712ffd9
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Andreas Holzammer [Thu, 9 Aug 2012 11:02:44 +0000 (13:02 +0200)]
(QNX) Make it possible to set physical screen size
It can happen that the system is reporting a screen
width or height of zero, if the system does not know the
size instead of returning an error. You can either
set a define QQNX_PHYSICAL_SCREEN_WIDTH/QQNX_PHYSICAL_SCREEN_HEIGHT
or set it as environment variable QQNX_PHYSICAL_SCREEN_SIZE.
The preference order is:
1) Take detected size
2) Take size from env var
3) Take defined size if any define is set
Change-Id: I493a2c8988a225224587a6c323efeb9e9b7b5a54
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Holger Hans Peter Freyther [Sat, 11 Aug 2012 20:28:25 +0000 (22:28 +0200)]
build: Fix the FreeBSD build due build system change.
Revision
6f4ff81380862ad0e788151b35d742f548241d5a broke the
QtDeclarative build. FreeBSD's ld.so is using the LD_LIBRARY_PATH
environment variable as well.
Change-Id: I0a91cedfb9d1935a08d348212f5ff1a54bfe3e53
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Jan-Arve Saether [Wed, 8 Aug 2012 15:17:24 +0000 (17:17 +0200)]
Group functions in QAccessibleTextInterface
Do the same in QAccessibleTextWidget
I got a bit annoyed by this, should hopefully make life easier
when forward porting QPlainTextEdit
Change-Id: Ib4b90d1892974ea39ecfcbc5cad6ed0694207b58
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Marc Mutz [Mon, 13 Aug 2012 20:36:54 +0000 (22:36 +0200)]
tst_QToolBar: fix "might be used uninit'ed" warnings
GCC 4.8 warns:
src/testlib/qtestmouse.h:219:67: warning: ‘popupMenu’ may be used uninitialized in this function [-Wmaybe-uninitialized]
{ mouseEvent(MouseClick, widget, button, stateKey, pos, delay); }
tests/auto/widgets/widgets/qtoolbar/tst_qtoolbar.cpp:862:12: note: ‘popupMenu’ was declared here
Change-Id: I19cfd1790fbd948e97bf740d4412ccf3bb98a330
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>