Oswald Buddenhagen [Mon, 6 Aug 2012 15:07:18 +0000 (17:07 +0200)]
use global imports install location as the "build" dir for qml plugin files
when doing a non-prefix build (which is the only case where the code is
executed), the build location is always the same anyway, so there is no
use in complicating things.
Change-Id: Id98755d818e05a11bed505abcb8b9d52a7d5b7c4
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Mon, 6 Aug 2012 14:53:44 +0000 (16:53 +0200)]
copy qml files to build dir only when doing a non-prefix build
non-installed -prefix builds can't do anything useful with qml plugin
files anyway, so don't waste time on copying them.
Change-Id: I23f4b8f67402a85d3c6e741a04f88567655c1655
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Mon, 6 Aug 2012 14:44:52 +0000 (16:44 +0200)]
move IMPORT_VERSION fallback into the conditional of the consumer
Change-Id: I01336903aaaff8bca5407aa3c50d330e8fd7910a
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Mon, 6 Aug 2012 14:43:43 +0000 (16:43 +0200)]
move qmltypes "compiler" below TARGET manipulation
load(resolve_target) must not be called before we have a final target
name.
Change-Id: Ia7418672b0c7b7fbd388a63819af9ea9a54c5241
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Andreas Holzammer [Tue, 7 Aug 2012 17:12:41 +0000 (19:12 +0200)]
Rename msvc11 to msvc2012
Microsoft has named their new Visual Studio again
after the old naming schema.
Change-Id: Ib1b971807fa89d90b10892a2d78570058e564f3a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
Marc Mutz [Mon, 6 Aug 2012 23:54:13 +0000 (01:54 +0200)]
Q_DECL_NOTHROW: stronger and more widely available version of Q_DECL_NOEXCEPT
Commit
1adca807 defined Q_DECL_NOEXCEPT to be the same as throw() for the
Microsoft compiler. However, the two are not equivalent:
- C++11 noexcept is defined to call std::terminate() if a noexcept
function nevertheless encounters an exception.
- MSVC throw() has essentially undefined behaviour in this situation:
http://msdn.microsoft.com/en-us/library/wfa0edys%28v=vs.100%29
"Due to code optimizations that might be performed by the C++
compiler [...] if a function does throw an exception, the program
may not execute correctly."
So define two macros:
1. Q_DECL_NOEXCEPT/Q_DECL_NOEXCEPT_EXPR always have C++11 behaviour.
This is expected to be the more efficient implementation if the
function can actually throw.
2. Q_DECL_NOTHROW means that the function gives the nothrow
guarantee. It is stronger than noexcept, but not all functions
that can be marked Q_DECL_NOEXCEPT can be marked Q_DECL_NOTHROW.
In general Q_DECL_NOTHROW functions need to use a try/catch block
in order to prevent exceptions from leaving the functions, unless
you can proove that none of the operations can throw.
For the caller, both macros are equivalent: it can be relied on that
no exception leaves the function.
Change-Id: I32f822a82e06a31cb71d38db438387aee5ec3334
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Sean Harmer [Fri, 20 Jul 2012 15:21:47 +0000 (16:21 +0100)]
Improve the QOpenGLExtensionMatcher class
Using a QSet<QByteArray> internally means that checking for the
presence of an extension no longer uses an O(N) search.
This patch also allows users of this class to easily get a list
of the supported extensions.
Change-Id: I02194e5345573c47be0876f3ea6eb6b69a2ead81
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Joerg Bornemann [Tue, 7 Aug 2012 15:16:56 +0000 (17:16 +0200)]
qmake vcxproj generator: map TARGET_EXT to $(TargetExt)
Task-number: QTBUG-26782
Change-Id: Ib143fa6b8674c4d09d798a9301bb209b886e791d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Joerg Bornemann [Tue, 7 Aug 2012 15:07:50 +0000 (17:07 +0200)]
qmake: un-copy-and-pastify vcxproj generator a bit
Reusing already built strings improves readability and performance.
Change-Id: I8555fb860561ff214ae123efeda78fc770b6459f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Andy Shaw [Fri, 3 Aug 2012 13:25:48 +0000 (15:25 +0200)]
Add the filters for extra compilers for vcxproj files
The files were grouped into the relevant filters but the filters
themselves were not added. This now ensures the filters are added to the
vcxproj files so they appear grouped correctly.
Task-number: QTBUG-26755
Change-Id: I7d2c6fa96dcbb0496fd9d1bb1d01e7dd660052f4
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 18:49:12 +0000 (20:49 +0200)]
fix class and file names in the d-bus examples
some omissions from the com.trolltech => org.example replacement.
Change-Id: I078c272fc3729fc7b9e9cd3e6ede7c21f0386b62
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Andreas Holzammer [Mon, 6 Aug 2012 18:34:34 +0000 (20:34 +0200)]
Add possibility to add OpenSSL, DBUS, MySQL path under Windows
Under Windows it's quite possible that OpenSSL, DBUS or MySQL is
not installed into a central place. If -I and -L is
passed at configure time, it is added to all targets,
and if that path contained a conflicting header things would go
wrong.
Change-Id: Ic3338c49aa6eaa91b3abf5341e709ef604bf7aab
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Marc Mutz [Mon, 6 Aug 2012 22:13:44 +0000 (00:13 +0200)]
QtGui: collapse two qgetenv() on the same variable
Store the result in a temporary QByteArray and continue
working with that one.
Change-Id: I24bc243f0f3dfb37d840faf7592b3383bd37c7e2
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Marc Mutz [Sat, 4 Aug 2012 06:16:47 +0000 (08:16 +0200)]
QUrl::idnWhiteList(): add QList::reserve() call
Avoids reallocation.
Change-Id: I3238574590463596a797d237b066ef60214392a7
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Marc Mutz [Fri, 3 Aug 2012 08:55:04 +0000 (10:55 +0200)]
QtNoDebug: remove special member functions
These are better generated by the compiler.
Change-Id: I5afa9fd17997c220622ed0e5990c33e52700840f
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Stephen Kelly [Mon, 6 Aug 2012 12:30:47 +0000 (14:30 +0200)]
Only emit the clicked() signal from views if the left button is used.
This is consistent with QAbstractButton, QCalendarWidget,
QDialogButtonBox and QGroupBox (ie, all other widgets with
a clicked signal)
Task-number: QTBUG-26105
Change-Id: Ieafe988b5c03216796b69a7cd70ac1a03fc12b0a
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Stephen Kelly [Mon, 6 Aug 2012 16:36:44 +0000 (18:36 +0200)]
Ensure that we return an invalid QTableWidgetItem when none is available.
Task-number: QTBUG-26195
Change-Id: Iede4f51770bd8c8eab3558137aaf7b1721f25a87
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 14:17:05 +0000 (16:17 +0200)]
add support for PKGCONFIG_PRIVATE
this does the same as PKGCONFIG, only that the libraries end up in
LIBS_PRIVATE, not LIBS, which means they don't end up in prl files.
in the vast majority of cases, the user should use this new variable.
Change-Id: Icb57a1166f1896f51284c64e4047cfc79410e73a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 14:09:04 +0000 (16:09 +0200)]
add support for QT_PRIVATE
this is handled the same way as the QT variable, only that the actual
libraries end up in LIBS_PRIVATE, not LIBS, which means they don't end up
in prl files.
the handling of the two variables is entirely independent, including
independent dependency resolution, so some libraries will typically end
up twice on the linker command line. this is not a problem.
Change-Id: I257ad0d414bf273c08a7bd6a874fe9ddb7356009
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Oswald Buddenhagen [Mon, 6 Aug 2012 19:45:58 +0000 (21:45 +0200)]
respect copy_dir_files with manually flagged directories as well
otherwise the second installation on unix would be bogus.
Change-Id: I162533ee262c6820e7e2d4710b5342cafecd9d59
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Mon, 6 Aug 2012 19:34:24 +0000 (21:34 +0200)]
centralize+fix addition of copy_dir_files flag
this is in fact a shell-related flag, which determines how QMAKE_DIR_COPY
is assumed to behave.
Change-Id: If774f8a83b40c9ae7107c8e7ef7263af8a2e6c6e
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Mon, 6 Aug 2012 19:42:41 +0000 (21:42 +0200)]
remove not particularly useful branch
we just determined that the file does not exist, so it's entirely
pointless to query its type from the file system. consequently, the
respective fallback branch would assume a regular file anyway.
Change-Id: I42590ffc2a5f650fb430a9398cb1859217ed4350
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Mon, 6 Aug 2012 18:45:51 +0000 (20:45 +0200)]
remove clearly bogus escapeFilePath() call
the value is still re-processed numerous times, end each "exit path"
does own escaping, while not every path can deal with an escaped path.
Change-Id: I0bf4a043809bf4b7877d02e5d8dfe8f794a7dd00
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Mon, 6 Aug 2012 18:44:10 +0000 (20:44 +0200)]
make $$relative_path() minimize already relative paths
QDir::relativeFilePath() doesn't do anything if the path is already
relative, so make it absolute first to force a re-calculation.
the cleanPath() is gone, as relativeFilePath() already does that.
Change-Id: I8f4d0d839db3fe99a608f70916b4b5bd52c56535
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Mon, 6 Aug 2012 18:41:18 +0000 (20:41 +0200)]
ifdef drivespec handling in relativeFilePath to windows
on unix, the code wouldn't do anything except burning cycles anyway.
Change-Id: I1c28b1a7014af93ca70a17e0bd669debad8003c2
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Laszlo Agocs [Thu, 2 Aug 2012 08:08:16 +0000 (11:08 +0300)]
Properly manage window geometry in kms
If QWindow::setGeometry() is called before QWindow::create(),
QKmsWindow::setGeometry() is not called at all. This is wrong
because there is some special size restricting happening there
which must never be skipped.
Change-Id: I321632d4fdb327b0a75e6791c019b3f4c2793888
Reviewed-by: Elvis Lee <kwangwoong.lee@lge.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Martin Smith [Tue, 7 Aug 2012 07:50:33 +0000 (09:50 +0200)]
qdoc: Don't always add example .qdoc files to source list
When qdoc finds a .qdoc file in an exampledirs directory,
it only adds it to the source list if it isn't already in
the source list. This may be overkill, but it's safe.
Change-Id: I2c5714c968f06e90f9b29b3a5481f80469e19ced
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
Zeno Albisser [Fri, 3 Aug 2012 11:37:03 +0000 (13:37 +0200)]
Only use glXCreateContext if glXCreateContextAttribsARB did not succeed.
If glXCreateContextAttribsARB does not succeed or is not available,
we should fallback to using glXCreateContext. But we should not just
create a context with glXCreateContext by default that is being thrown
away if glXCreateContextAttribsARB succeeds.
Otherwise glXMakeCurrent with context 0 might cause an unexpected
context change when dealing with multiple contexts.
Change-Id: I7627abbe2500b4006180653a1b3b074fe7aca1d3
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Thiago Macieira [Mon, 6 Aug 2012 18:38:08 +0000 (20:38 +0200)]
Don't export QAtomicInt, it's all inline
Moreover, exporting it causes the horrible side-effect on Windows
(with MSVC) that the compiler will not inline the functions, but
instead will place indirect calls to the functions in QtCore DLL,
even in release mode. For such a critical piece of code, inlining
is necessary.
Change-Id: Ib31c12f6bf8dc8ece1b51824716a480559753c24
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Thiago Macieira [Fri, 3 Aug 2012 18:02:03 +0000 (20:02 +0200)]
Add a T parameter to the memory barrier functions in atomics.
This is so we can insert valgrind (helgrind) annotation macros. They
require the actual address of the variable to work.
Change-Id: I988f6a46385ad58143c53ad34b6cf0f58be2cdb8
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Marc Mutz [Fri, 3 Aug 2012 08:58:37 +0000 (10:58 +0200)]
QMessageLogger: mark default ctor as constexpr, too
Change-Id: I6f92f4a01e43dbe811b11b3e8d9b8a02a31463c5
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stephen Kelly [Mon, 6 Aug 2012 14:45:06 +0000 (16:45 +0200)]
Avoid crashes when invalidating a proxy model filter.
Task-number: QTBUG-26107
Change-Id: I2df7ae6402136570c8469d3251edae6ca8290f1f
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Stephen Kelly [Mon, 6 Aug 2012 16:46:50 +0000 (18:46 +0200)]
Do not draw garbage branches if 0px indentation is specified.
This can't realisitically be unit tested.
Task-number: QTBUG-26305
Change-Id: If7f56c44c472ff0ffbda4744b76ed2119bb64bf8
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Kent Hansen [Mon, 18 Jun 2012 07:46:35 +0000 (09:46 +0200)]
Make QSignalSpy copy QVariant parameters directly
Previously, a QVariant parameter would be wrapped inside a new
QVariant, and you would have to cast the QSignalSpy's QVariant to
a QVariant to get the actual value. This behavior was unintuitive
and undocumented.
Check if the parameter type is QVariant, and copy it directly if it
is. This makes the QSignalSpy's QVariant directly usable (no need to
"unwrap" the value in user code).
Existing tests that use QSignalSpy together with QVariant parameters
(such as tst_QPropertyAnimation::valueChanged()) and do cast the
QVariant parameter to a QVariant, continue to work after this change;
this is because qvariant_cast<QVariant>() returns its input value
(unchanged) when the type is not QMetaType::QVariant.
Task-number: QTBUG-21645
Change-Id: Ibfb171edd60c0d3f7ca1d5419e5c5f3d0380d5b3
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Marc Mutz [Mon, 6 Aug 2012 14:07:38 +0000 (16:07 +0200)]
QWindowSystemInterface: fix mem leak and race
There was a race where QGuiApplicationPrivate::processMouseEvent accessed
QWindowSystemInterfacePrivate::windowSystemEventQueue without holding
QWindowSystemInterfacePrivate::queueMutex.
There was a memory leak where QWindowSystemInterfacePrivate::windowSystemEventQueue
would not delete events contained in it when it was destroyed.
Fix both of these by properly encapsulating the QList/QMutex pair
in a small class, WindowSystemEventList, that allows only properly protected access
to the internal QList and calls qDeleteAll() in its dtor.
Change-Id: Ifaa9968c9272096df2f7109a7a6cf1c8e5fa736c
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Stephen Kelly [Mon, 6 Aug 2012 15:20:35 +0000 (17:20 +0200)]
Use == for button flag test instead of &
QMouseEvent::button() returns Qt::MouseButton, not Qt::MouseButtons.
Change-Id: Ib5dc5b3998ed8f442c72e26d1aff62bc4ebcff71
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Thiago Macieira [Thu, 2 Aug 2012 20:43:02 +0000 (22:43 +0200)]
Remove extra Q_COMPILER_xxx defines from the MSVC section.
Those are defined below, after the list that describes the macros and
the papers.
Change-Id: I1f2df0e33c84eb17ebbb0147662f560defed182c
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Thiago Macieira [Thu, 2 Aug 2012 20:17:27 +0000 (22:17 +0200)]
MSVC's throw() behaviour matches the C++11 noexcept, so use it
This allows code using methods marked Q_DECL_NOEXCEPT to benefit from
optimisations before MSVC supports the C++11 keyword. Even MSVC 2012
doesn't have it yet.
Using throw() in other compilers is not a good idea because they might
actually be implementing the C++ standard -- which is broken.
Change-Id: Id07ab4fe40a641583d5285d5abb536998bc419ba
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Thiago Macieira [Wed, 1 Aug 2012 15:54:32 +0000 (17:54 +0200)]
Optimise QMutexLocker a little: don't call relock() in the constructor
QMutexLocker does not support being passed already-locked mutexes,
unless they are recursive mutexes. But in that case, it behaves as if
the mutex weren't locked in the first place.
Since that's the case, there's no point in testing the low bit to see if
it's set or not. It's never going to be.
Change-Id: Ie4b81f7e2cca16e6db36f3cb51a5377dbdfc157d
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Sean Harmer [Mon, 6 Aug 2012 09:55:53 +0000 (10:55 +0100)]
OpenGL: Add finer-grained functionality checks for NPOT textures
The GL_IMG_texture_npot extension only provides partial support for
npot textures in that it allows use of npot textures but it does not
support the GL_REPEAT texture mode (needed for tiling fill modes in the
QQ2 image element).
Adding this new finer-grained feature check allows QQ2 to still use npot
textures where GL_REPEAT is not needed with only the IMG extension
present.
A follow-up commit will make a check for this in qtdeclarative.
Change-Id: Iff3dbdb955fb334d9e32f3abd49e90ff0ed9836c
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Jan-Arve Saether [Mon, 6 Aug 2012 07:50:50 +0000 (09:50 +0200)]
Make sure codecForLocale returns a valid codec in bootstrap mode
This was a regression caused by
acbfb4d777474aadd2813614108,
causing for instance qdoc to crash.
Change-Id: Id8daa19d467c4f1729e5a5a203a388f16ec4a6de
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Jerome Pasion [Mon, 6 Aug 2012 10:21:48 +0000 (12:21 +0200)]
Doc: Adding a landing page for Qt SQL.
-Simple landing page which contains a link to the SQL guide and API.
-Gave a new title to C++ API page.
Change-Id: I54eca4f6933bafa0affd5825e7fe2e1a2522dad0
Reviewed-by: Geir Vattekar <geir.vattekar@nokia.com>
Rohan McGovern [Mon, 6 Aug 2012 04:19:25 +0000 (14:19 +1000)]
lancelot: detect and handle Jenkins CI environment
Make the test behave in Jenkins similarly as it behaves in Pulse:
- a test run in Jenkins is not an ad-hoc run
- the JENKINS_HOME environment variable implies we are running in
Jenkins
- the GIT_BRANCH environment variable, set by the Jenkins git plugin,
is equivalent to PULSE_GIT_BRANCH
- there is no equivalent to PULSE_TESTR_BRANCH, since testr is no
longer used
Change-Id: I89ffeec659b4adaab309d8b93ad793ce640029c7
Reviewed-by: aavit <qt_aavit@ovi.com>
Joerg Bornemann [Mon, 6 Aug 2012 08:20:48 +0000 (10:20 +0200)]
fix maximize -> fullscreen -> maximize on Windows
Using a reference changes the value of oldState within this function,
which is undesired.
Change-Id: I9fb66e488015d6b3e586ffa2f0b05a40c095e16b
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
Thiago Macieira [Fri, 3 Aug 2012 17:56:23 +0000 (19:56 +0200)]
Fix builds with sysroot: a space is necessary before ] in scripts
When using [ ] for tests in shell scripts, the ending ] must be a
separate parameter. Otherwise, it won't work. configure was reporting:
configure:5918: ']' expected
Change-Id: I38a843356ee0feb97edb8692a828306821045c77
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Mitch Curtis [Mon, 6 Aug 2012 10:41:56 +0000 (12:41 +0200)]
Add missing const qualifier to snippet in QIdentityProxyModel doc.
Task-number: QTBUG-26751
Change-Id: Icb1f25dd015bcc62ec7c4c2b26c897649f1bbabb
Reviewed-by: Michalina Ziemba <michalina.ziemba@nokia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stephen Kelly [Tue, 31 Jul 2012 15:55:27 +0000 (17:55 +0200)]
Fix some documentation inconsistency in QtNetwork.
Change-Id: Id3e25480d4a8529813e02dc3d19f553a9263a363
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Martin Smith [Mon, 6 Aug 2012 10:42:58 +0000 (12:42 +0200)]
qdoc: Removed "../" from paths to images
qdoc was mistakenly assuming that the output
was going into subdirectories. The base dir
variable was not being tested.
Task nr: QTBUG-26638
Change-Id: I9b331926f8954b58102f75fad3f233eaebb2bb4d
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
Rafael Roquetto [Fri, 3 Aug 2012 17:35:54 +0000 (19:35 +0200)]
Fix qmake -project
qmake -project was always outputting a project with subdirs template, because
Option::h_moc_mod was not being properly read, causing addFile() to misbehave.
Change-Id: I2c07aea132f9885eabf188de993b0fabfb352886
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Mitch Curtis [Mon, 6 Aug 2012 13:31:33 +0000 (15:31 +0200)]
Fix typos in qdatetime.cpp.
Change-Id: I1c2e3dafcca69590cd7a18fdf65e2c9083ba91b9
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 13:37:50 +0000 (15:37 +0200)]
introduce -fully-process configure option, change behavior of -process
configure will now run qmake without -recursive, as on modern systems
one can get a lot more out of parallelization done by make, which qmake
cannot do.
use -fully-process to get back the old behavior. -dont-process is
unchanged.
Change-Id: I2874321a963175463ae8992f3ab2b01bc13c9922
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 12:58:02 +0000 (14:58 +0200)]
remove phonon vestiges
Change-Id: Ifae2c631ddaae95ad9fc92e1f768fd910b254292
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 13:23:15 +0000 (15:23 +0200)]
remove -dsp & -vcp vestiges
only -vcproj is meaningful at this point
Change-Id: If727c96a9628e37a5a00a19a6eabede261c9c4b2
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 13:24:56 +0000 (15:24 +0200)]
remove references to dead variables
Change-Id: I2603ebabbec5011fa0bf3e858401655a9a822768
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 13:33:35 +0000 (15:33 +0200)]
remove stray message
i think this was a vestige from the old wince build proces
Change-Id: I13305de627c65fc1c93ba6d2383557ff5ea7a147
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Wed, 1 Aug 2012 12:43:42 +0000 (14:43 +0200)]
remove stale messages about using setcepaths
Change-Id: I9c0a61254aa50e57b18718aa44935007fd25bd74
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Samuel Rødal [Fri, 3 Aug 2012 12:55:39 +0000 (14:55 +0200)]
Do not call markDirty() for hidden widgets.
Fixed crash when resizing a scroll area with a native viewport
(typically a QGLWidget) causes the scroll bars to get hidden, while
there are still expose events in the queue for the scroll bar widget.
Task-number: QTBUG-26746
Change-Id: Ia77c8eb32a6730670333120af3f9a772c64807f1
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Samuel Rødal [Thu, 2 Aug 2012 13:18:57 +0000 (15:18 +0200)]
Fixed popups getting blocked by modal windows.
In the case of a file dialog with a completer, the completion list view
is a popup that is not a transient child of the file dialog. Thus it
ends up getting its blockedByModal flag set due to the file dialog
window being a modal window.
To prevent this we make sure popups don't get blocked by modal windows,
as they were special cased and processed before modal windows in Qt 4.x.
Change-Id: Id5688cfb1534541cd1678b1e53d75e34a68f9b8e
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Martin Smith [Fri, 3 Aug 2012 10:29:40 +0000 (12:29 +0200)]
qdoc: No longer prints namespace qualifier twice
enum values in the Qt namespace were being printed
as. e.g.: Qt::Qt::AlignLeft. This was due to the
presence of a collision node that was not handled
properly.
Task nr: QTBUG-26628
Change-Id: I54adaba72410b2838f0922f181846bb7e76b61d4
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
Marc Mutz [Fri, 3 Aug 2012 08:28:49 +0000 (10:28 +0200)]
Logging: mark qEmergencyOut() noexcept
This function is called in OOM situations and when other exceptions
are still in flight, so it really shouldn't throw, indeed.
Change-Id: I50cda699ffd74f3710c3bafd15af356ff410bc47
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Frank Osterfeld [Thu, 2 Aug 2012 20:06:22 +0000 (22:06 +0200)]
Fix intended assignment to customSet variable.
The naming suggests that this variable should be set to true here (instead of leaving the expression result unused). Also, the variable isn't written to anywhere else.
Change-Id: I8aae904f6e4456ce0bdd053ce89c2721168dccd3
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
hjk [Wed, 27 Jun 2012 11:15:07 +0000 (13:15 +0200)]
qdatetime: micro optimization in fmtDateTime
The function showed up in the profiler when doing
heavy logging involving timestamps in Qt Creator.
Change-Id: I81c4e22981a5de91df3da6a0f1df2a08552fa71a
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 13:56:46 +0000 (15:56 +0200)]
use QMAKE_LIBDIR for passing LSB library path
-L in QMAKE_LFLAGS is just wrong
Change-Id: I05eae0bb5e5e3dc8f8234616cb2ccdfba1d517fb
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 12:54:26 +0000 (14:54 +0200)]
remove the option summaries from the configures' help messages
they are an unreadable and unmaintainable mess. the options are properly
documented below.
Change-Id: If2ec683fb7c3740b19798979f8a1f9cd8d84f457
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 12:01:40 +0000 (14:01 +0200)]
s/QT_PRIVATE/QT_FOR_PRIVATE/
QT_PRIVATE is meant to be for something different.
only jsondb uses that so far. as it has little activity, i feel free to
break it temporarily.
Change-Id: Ifaa054af7234594ee534120c99506b76aebbf59f
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 10:11:13 +0000 (12:11 +0200)]
findLibraries(): don't remove -L options for system paths
the paths may be explicitly added before some other paths, so it would
be wrong to remove them.
Change-Id: I68ae93fd307afe14a07a0f24de952783950b5bea
Reviewed-by: Holger Freyther <holger+qt@freyther.de>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Sean Harmer [Fri, 3 Aug 2012 13:08:59 +0000 (14:08 +0100)]
XCB: Correction to OpenGL version check for profile support
Change-Id: I2f2bf877b1e2e628806f22fe66180b05090f4b3e
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 19:37:18 +0000 (21:37 +0200)]
introduce ability to selectively pass options to qdbusxml2cpp
DBUS_{INTERFACES,ADAPTORS} now also accepts "structures":
DBUS_INTERFACES += foo
foo.files = foo.xml bar.xml
foo.header_flags = -i qfoobar.h
foo.source_flags = ..
Change-Id: I98d757c8d3a3c6f79cedca7b90b533289114c102
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 19:31:36 +0000 (21:31 +0200)]
add ability to pass command line options to qdbusxml2cpp
QDBUSXML2CPP_{INTERFACES,ADAPTORS}_{HEADER,SOURCE}_FLAGS are now
understood.
Change-Id: I26492cec5ecb7ff4a6b83755ee8a0c17859b2a68
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 17:15:45 +0000 (19:15 +0200)]
de-duplicate dbusadaptors.prf vs. dbusinterfaces.prf
it's two times the same code, once with "adaptor" (and an -a option) and
once with "interface" (and a -p option).
the de-duplicated code looks a bit nasty, as qmake cannot deal with
braces on the LHS yet.
Change-Id: I199a07947661ab9abe7a736b56c437f3f6dc4fa4
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Thiago Macieira [Fri, 3 Aug 2012 10:27:28 +0000 (12:27 +0200)]
ICU: lock the mutex before calling an Unlocked function
The QIcuCodec::defaultCodecUnlocked function is not thread-safe
because it calls codecForNameUnlocked. In turn, that one accesses and
even modifies a QHash stored in the QCoreGlobalData singleton, which
is what makes it non-threadsafe.
In order to call the Unlocked function, we need to lock the mutex
first.
Change-Id: I915570110229f4c0929986aa26731244317ef6ab
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Thiago Macieira [Fri, 3 Aug 2012 09:40:35 +0000 (11:40 +0200)]
ICU: Mark which functions are threadsafe and which ones aren't
Mark the thread-safe functions with the \threadsafe doc marker. This
includes public API, which should be thread-safe anyway.
The thread-unsafe functions are marked "\nonreentrant" already. In
addition, I renamed the functions that must be called with locked
mutexes to Unlocked, following the convention in other libraries like
libdbus-1.
Change-Id: Ibd93d1266149767f546c8e82959b73c138008469
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Sean Harmer [Thu, 2 Aug 2012 12:17:16 +0000 (13:17 +0100)]
QNX: Ensure that m_requestedBufferSize is properly initialised
This solves a new corner case resulting from the recent refactoring of
QQnxWindow::setGeometry() that occurs when using a plain OpenGL backed
window in a single threaded environment and the user code calls
QOpenGLContext::makeCurrent(this) in the QWindow subclass ctor.
Change-Id: Iaf07fbff1cb2743f5706020a8d657a82cb9f2255
Reviewed-by: Kevin Ottens <kevin.ottens.qnx@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Sergio Ahumada [Fri, 3 Aug 2012 13:15:01 +0000 (15:15 +0200)]
Fix order of QT_END_NAMESPACE and QT_END_HEADER macros
Change-Id: I798311bdacaac341210626489410740c130f8724
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Stephen Kelly [Thu, 26 Jul 2012 07:44:05 +0000 (09:44 +0200)]
Remove some dead code wrapped in Q_WS_QWS.
Change-Id: Ie1ee8c4af603b924abe40145041357981d174445
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Stephen Kelly [Thu, 26 Jul 2012 07:51:15 +0000 (09:51 +0200)]
Remove unused Q_WS_QPA define.
Change-Id: Ie77526000cf93ad6901e28abe2558d254ccf8f1a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Stephen Kelly [Thu, 26 Jul 2012 07:48:15 +0000 (09:48 +0200)]
Remove some dead QWS code from configure.
Change-Id: Ic1b47533e3f04cebaac83ca632068c2e791a846c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Andreas Holzammer [Thu, 2 Aug 2012 07:57:15 +0000 (09:57 +0200)]
Fix FullScreen for Windows CE
For Windows CE the taskbar needs to be hidden
manually.
Change-Id: Ife69a2a91457ba0c162e4e1be88f87ad22c61190
Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Paul Olav Tvete [Thu, 26 Jul 2012 11:23:28 +0000 (13:23 +0200)]
Revert "Move QWindowSystemInterface out of qpa."
This reverts commit
784a877d3cd9a1a75aca9c83146389503a966071.
Conflicts:
src/plugins/platforms/cocoa/qcocoawindow.mm
src/testlib/qtestkeyboard.h
src/testlib/qtestmouse.h
src/testlib/qtesttouch.h
Change-Id: Iebfed179b3eb7f30e4c95edcae5a8ad6fd50330e
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Lars Knoll [Mon, 30 Jul 2012 21:36:59 +0000 (23:36 +0200)]
Remove the obsolete scene argument for constructors of graphics items
The argument has been obsoleted and not documented since 2007. Get rid
of it now before Qt 5.0
Task-number: QTBUG-25089
Change-Id: I91a5508a5e1606f5b5c289501295c67be4abe6a0
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Jan-Arve Saether [Mon, 30 Jul 2012 12:21:15 +0000 (14:21 +0200)]
Use glFlush() if swapBehavior is single-buffered
Otherwise, use swapBuffers()
This fixes an issue where swapbuffers() did not swap the
"back buffer" to the "front buffer" if we had single-buffered swap
behavior.
This was an issue on Windows 7 with an NVIDIA graphics card that
by default was using single-buffered mode.
Change-Id: If53f54146e4633305be3ad5158565752b6516b59
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Friedemann Kleint [Thu, 2 Aug 2012 12:14:15 +0000 (14:14 +0200)]
Fix default font for X11.
Qt 5 X11 applications currently have differing fonts since they
no longer read ~/.config/Trolltech.conf.
Set the default font value 4.8 would return for
XRender/FontConfig in the theme classes.
Change-Id: Ie0a77e6781a47a68fd67895821ab1773c25e0470
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: hjk <qthjk@ovi.com>
Gatis Paeglis [Mon, 30 Jul 2012 10:12:08 +0000 (12:12 +0200)]
Fix mimedata updating and signal emision issues in xcb clipboard.
Clipboard should reacquire the clipboard whenever the content or metadata
(e.g the list of supported targets) changes. Patch enables us to monitor
changes to the clipboard through help of XFixes extension.
Cleanup xlib xa_* naming conventions
Task-number: QTBUG-26709
Change-Id: I9d47766ad9859b5628b0358b1c47e8af8fecef73
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Gatis Paeglis [Mon, 30 Jul 2012 09:31:54 +0000 (11:31 +0200)]
Fix badAtom issues introduced by behavior changes between Xlib and xcb.
In Xlib, the 'length' variable gets updated with the the actual number
of 8-bit, 16-bit, or 32-bit items stored in the returned data, but xcb
returns the actual number of bytes read through xcb_get_property_value_length,
therefore the logic of calculating offset was broken.
Task-number: QTBUG-26709
Change-Id: I04de3b5c5631cfaf9b3c2c3d4513be73c569f61f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Friedemann Kleint [Thu, 2 Aug 2012 09:02:24 +0000 (11:02 +0200)]
uic-Autotest: Remove SRCDIR-define, add stdout-test.
- Replace SRCDIR define by QFINDTESTDATA, simplify code.
- Introduce a test for stdout mode that verifies the newline
convention.
- Use a temporary directory as not to clobber the
test directory and introduce an environment variable
UIC_KEEP_GENERATED_FILES to keep them for error
analysis.
Task-number: QTBUG-26730
Change-Id: I22e3bb5a9ca92a1977c29b165ea605f1017baa02
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Martin Smith [Thu, 2 Aug 2012 11:25:55 +0000 (13:25 +0200)]
qdoc: Ignore property functions of obsolete properties
Property setter and getter functions are no longer
included in the output when the property itself has
been marked \obsolete.
Task nr: QTBUG-26425
Change-Id: Iac315445d1916467b12be03989bd4513a03a2397
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Laszlo Papp [Thu, 2 Aug 2012 06:22:37 +0000 (07:22 +0100)]
Fix a typo in the qdoc manual (QChra -> QChar)
Change-Id: I331765f42f8dd46bf312223754ade3c5d156e6dc
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Casper van Donderen [Thu, 2 Aug 2012 06:19:44 +0000 (08:19 +0200)]
QDoc: Set HTML Doctype to XHTML 1.0 Transitional.
Previously QDoc HTML output was marked as XHTML 1.0 Strict, but did not pass validation.
As XHTML 1.0 Transitional the W3C validation passes.
Change-Id: Iced8c02b2602a82b94ee394e580bfb92023a517b
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Casper van Donderen [Wed, 1 Aug 2012 17:41:20 +0000 (19:41 +0200)]
QDoc: Set the default output encoding for HTML to UTF-8.
Change-Id: Ic6d8efae967514e143f224aed4c761a4c01eb434
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Casper van Donderen [Wed, 1 Aug 2012 17:10:47 +0000 (19:10 +0200)]
QDoc: Add extra tags when no HTML.endheader is specified.
The default Qt template inserts </head><body> with some arguments in the header of the HTML document.
When you don't specify the HTML.endheader qdocconf variable those tags will not be generated and the
QTextBrowser-based view in Qt Assistant will not be able to render the documentation.
Change-Id: Ieee231f300e1dc71d6b6343771d2682b3de96d73
Reviewed-by: Pierre Rossi <pierre.rossi@nokia.com>
Paul Olav Tvete [Thu, 26 Jul 2012 16:48:56 +0000 (18:48 +0200)]
Make tests compile without gui-private
Add new qt_handleXXX functions that forward to the QWindowSystemInterface
functions, and use those in the testlib inline functions. Remove use of
struct QWindowSystemInterface::TouchPoint from the testlib header files
(requiring some slight increase in ugliness in the two tests that use
that struct).
Also remove the qmake hack that adds private headers to all tests
Change-Id: Iec23537e55a44802f6e9cd463f7a0f82007c5250
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Oswald Buddenhagen [Thu, 2 Aug 2012 11:55:36 +0000 (13:55 +0200)]
string.h is needed for memcpy()
... which is used by some template code. apparently, the glibc on my
rather recent system removed some implicit includes again.
Change-Id: I9f85362e54a42cccc1e743f2b27bcdb6a90162e3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Laszlo Agocs [Thu, 2 Aug 2012 08:37:34 +0000 (11:37 +0300)]
Move QPlatformWindowPrivate into its own header
Most other qplatform* classes have the same setup and more
importantly this allows QPlatformWindow subclasses to utilize
the d-pointer.
Change-Id: I52afeaaf35bba8ef42d59ff3107f7d7bcf931e5e
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Simon A. Eugster [Mon, 11 Jun 2012 07:45:01 +0000 (09:45 +0200)]
Mention setFont() in QPainter::drawText() functions
Change-Id: Id0d06d27f3aeb6a6e7e1a415da78591ae5eae91c
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Stephen Kelly [Wed, 1 Aug 2012 15:00:51 +0000 (17:00 +0200)]
Fix some typos in static assert message.
Change-Id: I1abc79d86a4b101e6f32d37a58ac3c7d8cc16237
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Martin Petersson [Wed, 11 Jul 2012 10:31:29 +0000 (12:31 +0200)]
QtNetwork: Handle FD_CLOSE on Windows
We need to handle FD_CLOSE separately on Windows as this will be sent
only once. When we get FD_CLOSE we need to check if there is more data
available for reading. It there is this might indicate that there is
another FD_READ that we need to handle after the FD_CLOSE. So in this
case we will manually create another close event.
Task-number: QTBUG-19409
Task-number: QTBUG-25386
Change-Id: Ie19906bc3f64fb6a85a508a5ab12caac5d70ccdb
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Martin Smith [Tue, 31 Jul 2012 11:57:20 +0000 (13:57 +0200)]
qdoc: Added support for modularized example doc
qdoc now searches for .qdoc files in the directories
listed in the exampledirs variable. These files are
added to the list of sources to be parsed.
Task nr: QTBUG-26708
Change-Id: I6dfd7cd7b41e0bdf847f88b6d61ac0272902d4e1
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Jeremy Katz [Wed, 1 Aug 2012 12:51:35 +0000 (14:51 +0200)]
fix a few qdoc command typos
Change-Id: I5eb3a6d2bb7939f001f1fcb836660dd46a47c350
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Jeremy Katz [Wed, 1 Aug 2012 12:44:51 +0000 (14:44 +0200)]
change \img to \image in docs
\img was a macro defined in macros.qdocconf. This collection
of macros is being phased out. Use the full command instead.
Change-Id: Ia55212f87bb46349d61359d40568e0aa33882596
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Jeremy Katz [Wed, 1 Aug 2012 12:36:13 +0000 (14:36 +0200)]
replace \key and \gui qdoc commands with \uicontrol
Change-Id: I0753305d4fe1ea20417f451766101da1247dfeeb
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>