Thiago Macieira [Tue, 3 Apr 2012 16:58:39 +0000 (13:58 -0300)]
Adjust a double leading slash in the path for FTP to /%2F
Some FTP implementations (currently not including QNAM) strip the first
slash off the path in an FTP URL so that the path in the URL is relative
to the login path (the user's home directory). To reach the root
directory, another slash is necessary, hence the double slash.
In anticipation of future URL normalisation, which Qt 4 could do, "//"
could be rendered to "/", so this extra slash should be "%2F".
This operation is done only in QUrl::fromUserInput.
Change-Id: If9619ef6b546a3f4026cb26b74a7a5a865123609
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Thiago Macieira [Tue, 10 Apr 2012 15:08:21 +0000 (12:08 -0300)]
Add early-clobbers to the output variables in CPUID
Without those early-clobbers, the compiler might decide to schedule a
register that is also used as output. The existing early clobber in
the tmp variable was there so the compiler wouldn't use a register
scheduled as input (especially EAX).
To be honest, I'm not convinced that the compiler should be allowed to
do this. That means that two output variables are scheduled to the
same register... still, this fixes a problem found with GCC 4.2 (at
least the Mac one).
Change-Id: I6cd4676284e9a83d6aac4b439c6e58e347c40106
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Thiago Macieira [Fri, 23 Dec 2011 12:47:15 +0000 (10:47 -0200)]
Make plugin linking fail if some references aren't present
It's better to fail at linking time than to try and figure out later why
QPluginLoader refuses to load the plugin.
Change-Id: I439bad9dcdbfff9f76efe40381fd7ccfffe738bc
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Oswald Buddenhagen [Tue, 10 Apr 2012 10:48:01 +0000 (12:48 +0200)]
Merge remote-tracking branch 'origin/master' into api_changes
Conflicts:
configure
src/widgets/styles/qwindowsxpstyle.cpp
tests/auto/gui/kernel/qwindow/qwindow.pro
tests/auto/gui/kernel/qwindow/tst_qwindow.cpp
Change-Id: I624b6d26abce9874c610c04954c1c45bc074bef3
Marcel Krems [Thu, 5 Apr 2012 20:12:15 +0000 (22:12 +0200)]
Removed QApplication overloads used solely for documentation.
Also removed a define which was used only for this purpose.
This change brings the constructors in line with Q{Core,Gui}Application.
Change-Id: I1134ca5611453e8445c1a4f3226846621fa8872c
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Giuseppe D'Angelo [Tue, 27 Mar 2012 17:40:06 +0000 (18:40 +0100)]
New qHash algorithm for uchar/ushort arrays (QString, QByteArray, etc.)
Port of Robin's work from I0a53aa4581e25b351b9cb5033415b5163d05fe71
on top of the new qHash patches (the original commit just introduced
lots of conflicts, so I redid it from scratch).
This is based on the work done in the QHash benchmark over the past
few months experimenting with the performance of the string hashing
algorithm used by Java.
The Java algorithm, in turn, appears to have been based off a
variant of djb's work at http://cr.yp.to/cdb/cdb.txt.
This commit provides a performance boost of ~12-33% on the
QHash benchmark.
Unfortunately, the rcc test depends on QHash ordering.
Randomizing QHash or changing qHash will cause the test to fail
(see QTBUG-25078), so for now the testdata is changed as well.
Done-with: Robin Burchell
Change-Id: Ie05d8e21588d1b2d4bd555ef254e1eb101864b75
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Giuseppe D'Angelo [Thu, 22 Mar 2012 09:32:03 +0000 (09:32 +0000)]
Stop relying on qHash always giving the same results
The implementation of the various qHash overloads offered by
Qt can change at any time for any reason
(speed, quality, security, ...).
Therefore, relying on the fact that qHash will always give
an identical result across Qt versions (... across different
processes, etc.), given identical input, is wrong.
Note that this also implies that one cannot rely on QHash
having a stable ordering (even without the random qHash seed).
For such use cases, one must use f.i. a private hash function
that will never change outside his own control.
This patch adds a private hash function for QStrings,
which is identical to the Qt(4) qHash(QString) implementation.
A couple of spots in Qt where the results of a qHash call were
actually saved on disk are ported to use the new function,
and a bit of documentation is added to QHash docs.
Change-Id: Ia3731ea26ac68649b535b95e9f36fbec3df693c8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Giuseppe D'Angelo [Wed, 4 Apr 2012 19:37:04 +0000 (20:37 +0100)]
QHostAddress: improve qHash implementation
Avoid the conversion to a temporary QString -- just hash the address
as a byte array.
Change-Id: Ic35cdbbc3ee66c32a28d911bd27de0092395979f
Done-with: Shane Kearns
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Giuseppe D'Angelo [Wed, 4 Apr 2012 19:19:39 +0000 (20:19 +0100)]
QUrl: added two-arguments qHash support
An unnecessary #include <QHash> was also removed, and other
includes refactored.
Change-Id: Ifcd3e37d75029c142a2e55ab492b88624505670a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Giuseppe D'Angelo [Sat, 24 Mar 2012 18:23:49 +0000 (18:23 +0000)]
More qHash(T, uint) overloads for Qt types
The more we get in 5.0, the better.
Change-Id: If00084477709db4fc3f6b2e15024d046491be2ae
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Giuseppe D'Angelo [Sun, 1 Apr 2012 17:47:56 +0000 (18:47 +0100)]
QFileSystemModel: fix sorting
When sorting a model recursively, the children of a QFileSystemNode
are extracted from their parent in a QHash order; then filtered,
then sorted (using a stable sort) depending on the sorting column.
This means that the order of the children comparing to equal for
the chosen sort are shown in the order they were picked from the
iteration on the QHash, which isn't reliable at all.
Moreover, the criteria used in QFileSystemModelSorter for sorting
are too loose: when sorting by any column but the name, if the result
is "equality", then the file names should be used to determine
the sort order.
This patch removes the stable sort in favour of a full sort,
and fixes the criteria of soring inside QFileSystemModelSorter.
Change-Id: Idd9aece22f2ebbe77ec40d372b43cde4c200ff38
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Thiago Macieira [Mon, 26 Mar 2012 18:34:23 +0000 (15:34 -0300)]
Remove -DQT_NO_STL from the bootstrapped builds
Change-Id: I37ea06426b66e617a49ec46952abdaad8814eadf
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Thiago Macieira [Mon, 26 Mar 2012 18:29:34 +0000 (15:29 -0300)]
Remove references to QT_NO_STL from QtConcurrent
Same as with QtCore, remove the #ifdef and #ifndef and select the side
with STL.
Change-Id: If1440080328c7c51afe35f5944a19dafc4761ee5
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Thiago Macieira [Mon, 26 Mar 2012 18:28:40 +0000 (15:28 -0300)]
Remove references to QT_NO_STL from QtCore
QT_NO_STL is now no longer defined, so remove the conditionals and
select the STL side.
Change-Id: Ieedd248ae16e5a128b4ac287f850b3ebc8fb6181
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Giuseppe D'Angelo [Wed, 4 Apr 2012 15:21:03 +0000 (16:21 +0100)]
qHash: always use the seed in the catch-all template
This pertubates the results of the calls to the one-argument
version of qHash through the catch-all template.
Change-Id: I7037b25d545e6f1360384a83ff895f4bb62ed195
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Giuseppe D'Angelo [Wed, 4 Apr 2012 20:00:11 +0000 (21:00 +0100)]
Add test for qHash(QByteArray)
Two equal QByteArrays must return the same hash.
Change-Id: Iddd45b0c420213ca2b82bbcb164367acb6104ec8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Giuseppe D'Angelo [Wed, 4 Apr 2012 19:44:33 +0000 (20:44 +0100)]
Add test for qHash(QString) / qHash(QStringRef)
Two equal strings / stringrefs must return the same hash.
Change-Id: I2af9a11ab721ca25f4039048a7e5f260e6ff0148
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Marcel Krems [Thu, 5 Apr 2012 21:15:51 +0000 (23:15 +0200)]
Fix compilation with MinGW.
Change-Id: I494c84e8e6889a7d7bb3b29669337483732d02c2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Giuseppe D'Angelo [Sun, 25 Mar 2012 07:18:15 +0000 (08:18 +0100)]
QLatin1String: add qHash overload
It was never introduced in Qt 4, probably because of the implicit
conversion to QString (that is, adding the qHash overload for
QLatin1String in Qt 4 would have been a BIC).
Change-Id: I2ebc8e73a85be497866820e0ca416dd11167bb53
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Shane Kearns [Wed, 28 Mar 2012 15:06:57 +0000 (16:06 +0100)]
Find libssl on linux using paths of loaded libraries
The installed path of libssl may include an element describing the
architecture, e.g. x86_64-linux-gnu or i386-linux-gnu.
In most cases, the libraries already loaded (static dependencies of
Qt, such as libc) will include the path where libssl is installed.
Use dl_iterate_phdr to find the paths. This is a linux specific
function, but it does provide "/lib/<arch>" and "/usr/lib/<arch>"
at the point ssl symbols are being resolved when running the
qsslsocket autotest (which has less dependencies than a typical
Qt app).
Task-number: QTBUG-24694
Change-Id: I9af8081f41bb85c2fcff450a2acda5672a7f7518
Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
João Abecasis [Thu, 5 Apr 2012 08:24:41 +0000 (10:24 +0200)]
Enable variadic macros for MSVC >= 2005
Change-Id: I8793ea0f6e3a640276b073321d29373b2ed18d63
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Friedemann Kleint [Tue, 27 Mar 2012 15:05:53 +0000 (17:05 +0200)]
Windows: Use native font engine by default.
Turn around the meaning of the command line parameter.
The FreeType engine can now be activated by passing freetype.
Change-Id: I9da6cd4a127603f9cfb91f0ce8450088c0883faa
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Pekka Vuorela [Tue, 3 Apr 2012 15:49:23 +0000 (18:49 +0300)]
Include with qt module to avoid configure warning
Change-Id: I8d338f22c4b0dabcca33878b33c6a203828d84c5
Reviewed-by: David Faure <faure@kde.org>
David Faure [Wed, 4 Apr 2012 19:43:53 +0000 (21:43 +0200)]
Fix unittest for QStandardPaths::enableTestMode
It was confusing DataLocation and GenericDataLocation, and the same
for CacheLocation and GenericCacheLocation. The test was passing in
the api_changes branch because these were giving the same result
(empty app name), but the QCoreApplication::applicationName fix in master
makes these different, so the bug in the test showed up after merging.
Change-Id: I80ef6883c96cfd02b8c277d9d686717028d396bb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
João Abecasis [Tue, 3 Apr 2012 23:26:44 +0000 (01:26 +0200)]
Add zero-termination checks to QString and QByteArray tests
This uses an alternative approach to the testing formerly introduced
in
4ef5a626. Zero-termination tests are injected into all QCOMPARE/QTEST
invocations. This makes such testing more thorough and widespread, and
gets seamlessly extended by future tests.
It also fixes an issue uncovered by the test where using a past-the-end
position with QString::insert(pos, char), could move uninitialized data
and clobber the null-terminator.
Change-Id: I7392580245b419ee65c3ae6f261b6e851d66dd4f
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
João Abecasis [Tue, 3 Apr 2012 23:29:26 +0000 (01:29 +0200)]
Revert "Add tests to verify QByteArray's zero termination"
The approach used to verify for zero-termination is too intrusive and
requires additional maintenance work to ensure new zero-termination
tests are added with new functionality.
Zero-termination testing will be re-established in a subsequent commit.
This reverts commit
4ef5a6269c1465662ea3872596ba284a13cce25e.
Change-Id: I862434a072f447f7f0c4bbf8f757ba216212db3c
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Charles Yin [Wed, 4 Apr 2012 01:59:39 +0000 (11:59 +1000)]
Fixed an exit crash that could occur in QQuickPixmap.
The global destructor for the clean up hooks might be called before the
global destructor for QQuickPixmapCache objects.
This is an additional fix for QTBUG-8681
Task-number: QTBUG-8681
Change-Id: I8694a7a246980f488aef78071c613e3a908c7db3
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Thiago Macieira [Wed, 4 Apr 2012 16:51:33 +0000 (13:51 -0300)]
Make QLocale::toULongLong return the proper type: qulonglong
Task-number: QTBUG-25143
Change-Id: Ia8fd588c25d11fe31acd57fd34a90d51dace248c
Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: John Layt <jlayt@kde.org>
Thiago Macieira [Wed, 4 Apr 2012 18:36:21 +0000 (15:36 -0300)]
Get rid of QKeyEventEx
This class was added when we needed more information in QKeyEvent but
couldn't extend it. And we couldn't use the d pointer because the copy
constructor and copy assignment operators in QEvent were
implicit. That is now fixed.
But since this is Qt 5, we can change QKeyEvent to include the extra
information.
Task-number: QTBUG-25070
Change-Id: Iba4ac3378ca70583fcaa8caf96bca8ef75e30701
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Debao Zhang [Thu, 5 Apr 2012 00:23:46 +0000 (17:23 -0700)]
Remove macro _POSIX_ from Win32 special file
Macro _POSIX_ doesn't used by this two files. And it will casued compile
errors under VS2005/VS2008/VS2010 such as:
Error 19 error C3861: \91_fileno\92: identifier not found c:\Dev\Builds\Qt\qt-everywhere-opensource-src-4.8.1\src\corelib\io\qfsfileengine_win.cpp 443
Error 20 error C3861: \91_fileno\92: identifier not found c:\Dev\Builds\Qt\qt-everywhere-opensource-src-4.8.1\src\corelib\io\qfsfileengine_win.cpp 468
Error 21 error C3861: \91_fileno\92: identifier not found c:\Dev\Builds\Qt\qt-everywhere-opensource-src-4.8.1\src\corelib\io\qfsfileengine_win.cpp 607
when we don't use precompiled headers. And this error will triggered when
we reomve QT_NO_STL from QtCore.
Because stdio.h declares fileno instead of _fileno when _POSIX_ is
defined.
Change-Id: I9d9031578dac7b7c5f7b77098839723a4bc8bfdf
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
João Abecasis [Wed, 4 Apr 2012 12:24:01 +0000 (14:24 +0200)]
Don't allocate space for null when using fromRawData
In this case we only need to allocate space for the "header" data.
Change-Id: I059627e47a5bae7a02c82d837c826a6ed0fd20fd
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
João Abecasis [Wed, 4 Apr 2012 12:11:14 +0000 (14:11 +0200)]
Simplify conditionals
alloc >= size is an invariant of both QString and QByteArray, unless
string data is immutable (e.g., when using fromRawData()), in which case
alloc will be 0, regardless of size, That's what needs to be checked
here.
Change-Id: Ief9e6a52a1d5ea1941d23ed3c141edfd15d2a6a7
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
João Abecasis [Wed, 4 Apr 2012 12:04:03 +0000 (14:04 +0200)]
Rename realloc -> reallocData
This avoids confusion with standard ::realloc.
Change-Id: Ibeccf2f702ec37161033febf4f3926bee8f7aea6
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
João Abecasis [Wed, 4 Apr 2012 11:50:21 +0000 (13:50 +0200)]
Move growth computation to re-allocation function
Callers of QByteArray/QString::realloc() are still responsible for the
heuristics and decide whether to provide the "grow" hint, but
computation is centralized there.
With this change we also ensure growth takes into account the
terminating null. Previously, calls to qAllocMore took into account
header and string size, for left out the null, meaning we ended up
allocating ("nice-size" + Null).
Change-Id: Iad1536e7706cd2d446daee96859db9b01c5f9680
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
João Abecasis [Wed, 4 Apr 2012 11:35:02 +0000 (13:35 +0200)]
Drop nullary overload of private QString::realloc
Change-Id: I196ec038ab7b648287e310525681f2d218059b51
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
João Abecasis [Tue, 3 Apr 2012 11:23:55 +0000 (13:23 +0200)]
Introduce initializer macros for QString- and QByteArrayData
This enables easier updating of those structs, by reducing the amount of
code that needs to be fixed. The common (and known) use cases are
covered by the two macros being introduced in each case.
Change-Id: I44981ca9b9b034f99238a11797b30bb85471cfb7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
João Abecasis [Sat, 31 Mar 2012 23:05:47 +0000 (01:05 +0200)]
Clean up constructors for "statics" in QString and QByteArray
There were two constuctors offering essentially the same functionality.
One taking the QStatic*Data<N> struct, the other what essentially
amounts to a pointer wrapper of that struct. The former was dropped and
the latter untemplatized and kept, as that is the most generic and
widely applicable. The template parameter in the wrapper was not very
useful as it essentially duplicated information that already maintained
in the struct, and there were no consistency checks to ensure they were
in sync.
In this case, using a wrapper is preferred over the use of naked
pointers both as a way to make explicit the transfer of ownership as
well as to avoid unintended conversions. By using the reference count
(even if only by calling deref() in the destructor), QByteArray and
QString must own their Data pointers.
Const qualification was dropped from the member variable in these
wrappers as it causes some compilers to emit warnings on the lack of
constructors, and because it isn't needed there.
To otherwise reduce noise, QStatic*Data<N> gained a member function to
directly access the const_cast'ed naked pointer. This plays nicely with
the above constructor. Its use also allows us to do further changes in
the QStatic*Data structs with fewer changes in remaining code. The
function has an assert on isStatic(), to ensure it is not inadvertently
used with data that requires ref-count operations.
With this change, the need for the private constructor taking a naked
Q*Data pointer is obviated and that was dropped too.
In updating QStringBuilder's QConcatenable specializations I noticed
they were broken (using data, instead of data()), so a test was added to
avoid this happening again in the future.
An unnecessary ref-count increment in QByteArray::clear was also
dropped.
Change-Id: I9b92fbaae726ab9807837e83d0d19812bf7db5ab
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Donald Carr [Mon, 2 Apr 2012 18:10:49 +0000 (18:10 +0000)]
Specify generic QPA plugins via env variables
Introduce a mechanism to load comma separated generic QPA plugins via
exported environment variables. (Drastically simplifies QPA usage in custom
environments where a variety of plugins could be used and heuristics are
consequently a poor fit)
Change-Id: I292f3fbfc8b8ad2b4f416984ef0a10b9b59de531
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Bradley T. Hughes [Wed, 4 Apr 2012 10:16:40 +0000 (12:16 +0200)]
Don't ignore tst_QWindow on Mac OS X
QTBUG-23059 only affects 2 test functions, not the whole test. XFAIL the
2 failing tests.
Change-Id: I87086a9ec573362625bc090038dfd7c79aeb9426
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Donald Carr [Wed, 28 Mar 2012 19:23:50 +0000 (19:23 +0000)]
device: Add device support for the Broadcom Raspberry PI
Add mkspec for the Raspberry PI platform to be used in conjunction with the
-device support in configure. This allows you to build Qt with the
application libraries provided by the Raspberry PI foundation.
The Raspberry PI is described here:
http://en.wikipedia.org/wiki/Raspberry_Pi
and its use with Qt is documented here:
http://wiki.qt-project.org/Devices/RaspberryPi
Change-Id: Ib8d11d0a469edaaf34ccc04cf33a42a725fc2bdb
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Stephen Kelly [Wed, 4 Apr 2012 12:33:25 +0000 (14:33 +0200)]
Change the parameter name of the mutex in a QWaitCondition.
IDEs pick up hints like this, so it makes it more clear to the user
what they need to pass in.
Change-Id: I5de272395fc98391cf43963ce4416a845726bb2c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Stephen Kelly [Tue, 3 Apr 2012 17:32:12 +0000 (19:32 +0200)]
Revert "Make the CONFIG and QT_CONFIG contents available downstream."
This reverts commit
6c2e57e6884c1ef524bb22f0ed6a2be2c97cd46d.
This created variables with awkward names and unproven usefulness.
In the FindQt4.cmake file they are considered internal.
Change-Id: I51443b2a39d4f11817bd13332baf025556dd8ebe
Reviewed-by: Clinton Stimpson <clinton@elemtech.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Friedemann Kleint [Wed, 4 Apr 2012 12:56:45 +0000 (14:56 +0200)]
Windows Vista: Fix painting of item view items.
The old QWidget-based treeViewHelper() function silently failed
since the widget no longer had a HWND.
Use a native Window handle instead.
Change-Id: I6902677c565bb165f29b9d1c6fd0d28d9870d567
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Friedemann Kleint [Wed, 4 Apr 2012 12:02:27 +0000 (14:02 +0200)]
Windows: Replace QString keys of XP themes by an enumeration.
Change-Id: I5323e9ed5bc3fe73f278d167acae6fa744b0a299
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Thiago Macieira [Mon, 2 Apr 2012 18:25:29 +0000 (15:25 -0300)]
Update the documentation about the sign in QElapsedTimer::(m)secsTo
Since all implementations calculate other - *this, if other has a higher
value (was started later), then the returned value is positive.
The implementations are:
generic: return other.t1 - t1
win: return ticksToNanoseconds(other.t1 - t1) / 1000000
mac: return absoluteToMSecs(other.t1 - t1);
unix: return (other.t1 - t1) * Q_INT64_C(1000) + fraction...
Task-number: QTBUG-25128
Change-Id: Iff0a3460ae9e9d9bdd82fbaad55657fb60e5235a
Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Stephen Kelly [Thu, 22 Mar 2012 16:31:59 +0000 (17:31 +0100)]
Document that the order of results from QAIM::match are not relevant.
This will allow fixing of QTBUG-10160 in Qt 5.1.
Change-Id: I1ea7579cb4227f9940847c62d5a520c7cee3b0c5
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Thiago Macieira [Fri, 30 Mar 2012 01:19:13 +0000 (22:19 -0300)]
Merge one static function into another
One static function was only being used by the other, so just merge
them and reduce the work for the compiler.
Change-Id: Ia7a1c46ace6254633450632fae7ab35816ff13bf
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stephen Kelly [Wed, 4 Apr 2012 12:29:48 +0000 (14:29 +0200)]
Make sure we create an application before a QWidget.
Change-Id: I2e48f9ca59df62ac28d3cecdb6c2b741c59075de
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Girish Ramakrishnan [Fri, 16 Mar 2012 23:52:39 +0000 (16:52 -0700)]
eglfs: Introduce hooks for the eglfs plugin
EGL provides an api to create a rendering context for khronos APIs
on native surfaces. The board initialization and window creation
is platform specific.
This commit adds platform hooks/extensions to the EGLFS plugin and
implements them for the Amlogic 8726M. The hook interface is internal
and there are no ABI/API guarantees.
EGLFS is now linked with -Wl,-no-undefined to make sure that a hook does not
add unresolvable symbols.
Change-Id: I7f4fcdb422aacbf00de468f4d8e85ae5368bfacf
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Thiago Macieira [Tue, 3 Apr 2012 02:08:04 +0000 (23:08 -0300)]
Add missing #include <stdio.h> for _fileno
..\..\corelib\io\qfsfileengine_win.cpp(443) : error C3861: '_fileno': identifier not found
..\..\corelib\io\qfsfileengine_win.cpp(468) : error C3861: '_fileno': identifier not found
..\..\corelib\io\qfsfileengine_win.cpp(602) : error C3861: '_fileno': identifier not found
..\..\corelib\io\qfsfileengine_win.cpp(847) : error C3861: '_fileno': identifier not found
..\..\corelib\io\qfsfileengine_win.cpp(909) : error C3861: '_fileno': identifier not found
Change-Id: Ib6bed4814fce162e3065848c835f4774f0cbad01
Reviewed-by: Debao Zhang <dbzhang800@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Friedemann Kleint [Wed, 4 Apr 2012 09:55:24 +0000 (11:55 +0200)]
Windows: Fix menu color for Windows, WindowsXP.
Typo in palette.
Change-Id: I8b4c23ef7f75ff3aa3351f15e4af0767a3ccd083
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Bradley T. Hughes [Wed, 4 Apr 2012 10:11:40 +0000 (12:11 +0200)]
Add tst_QWindow::windowModality()
This tests that we get the windowModalityChanged() signal as needed, but
not unnecessarily either.
Change-Id: I2232fa9d45c72e472b324b681859b4b0d574b467
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Jason McDonald [Mon, 2 Apr 2012 13:03:57 +0000 (23:03 +1000)]
Remove/update Qt 5 to-do's that won't be done for Qt 5.
Task-number: QTBUG-23524
Change-Id: Iebf5b78dc2ff27310b5a484bae588862417f693c
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Giuseppe D'Angelo [Sat, 24 Mar 2012 08:50:02 +0000 (08:50 +0000)]
QHash security fix (1.5/2): qHash two arguments overload support
Algorithmic complexity attacks against hash tables have been known
since 2003 (cf. [1, 2]), and they have been left unpatched for years
until the 2011 attacks [3] against many libraries /
(reference) implementations of programming languages.
This patch adds a qHash overload taking two arguments: the value to
be hashed, and a uint to be used as a seed for the hash function
itself (support the global QHash seed was added in a previous patch).
The seed itself is not used just yet; instead, 0 is passed.
Compatibility with the one-argument qHash(T) implementation is kept
through a catch-all template.
[1] http://www.cs.rice.edu/~scrosby/hash/CrosbyWallach_UsenixSec2003.pdf
[2] http://perldoc.perl.org/perlsec.html#Algorithmic-Complexity-Attacks
[3] http://www.ocert.org/advisories/ocert-2011-003.html
Task-number: QTBUG-23529
Change-Id: I1d0a84899476d134db455418c8043a349a7e5317
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Kevin Krammer [Wed, 4 Apr 2012 09:17:17 +0000 (11:17 +0200)]
Re-enable PPS based rotation handling for blackberry devices
BPS based event handling not there yet, so make use of the non-blackberry QNX
facility until it is.
Change-Id: I95cdbfbe36cd23e71710c8cad0b292a5a375c214
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Bradley T. Hughes [Fri, 30 Mar 2012 08:01:14 +0000 (10:01 +0200)]
printing: Make sure window modality works with native print dialogs
Make the native QPrintDialogs and QPageSetupDialogs participate in the
Qt modality system. Even though we are overriding QDialog::setVisible()
and exec() to show the native dialgos, we want to still call into
QDialog::setVisible() so that modality state and events are properly
handled. We do this by setting the WA_DontShowOnScreen attribute on
QPrintDialog and QPageSetupDialog, and call QDialog::setVisible() at the
appropriate places.
Change-Id: I7d800790c40ba1f467c3315e29abb79a7fa0eb34
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Rafael Roquetto [Fri, 30 Mar 2012 13:31:44 +0000 (15:31 +0200)]
Moved 'qnx' CONFIG definition to common location.
Removed the duplicated 'qnx' CONFIG defition from the mkspecs and declared it
on the common qcc-base-qnx.conf configuration file.
Change-Id: Ie215e3dd794762f20bec9c19afd5936a78a9d963
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Samuel Rødal [Mon, 2 Apr 2012 07:28:49 +0000 (09:28 +0200)]
Removed Qt 5 todo comments from qpalette.h
The removal won't happen in Qt 5, and there's no great value in making
NoRole have the value 0 at the potential risk of breaking existing code.
Task-number: QTBUG-25068
Change-Id: I57238f55a23e77a783ebac47b96b4a5e62480add
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Sean Harmer [Mon, 2 Apr 2012 10:37:59 +0000 (11:37 +0100)]
Enable stack smashing protection on QNX and Blackberry platforms
Change-Id: I2610c8e446a74ee584c5b450e1b872b7cda50813
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Giuseppe D'Angelo [Sun, 1 Apr 2012 17:53:55 +0000 (18:53 +0100)]
Stop relying on QHash ordering
tst_rcc and tst_qdom rely on specific QHash orderings inside
rcc and QDom respectively (see QTBUG-25078 and QTBUG-25071).
A workaround is added to make them succeed: QDom checks for
all possible orderings, and rcc initializes the hash seed to 0
if the QT_RCC_TEST environment variable is set.
Change-Id: I5ed6b50602fceba731c797aec8dffc9cc1d6a1ce
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Pekka Vuorela [Tue, 3 Apr 2012 14:01:12 +0000 (17:01 +0300)]
Pass autorepeat info to input context key filtering with XCB
Change-Id: Ifbb658dde6689543f48ed8fb82109ea07bcf8bd7
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
João Abecasis [Mon, 2 Apr 2012 20:45:29 +0000 (22:45 +0200)]
Reorganize unicode string support in QString
Cleaned up preprocessor code to have a single definition for
QStaticStringData. A new qunicodechar typedef is introduced representing
a 2-byte integral type that can be used to represent a UTF-16 codepoint.
When QT_NO_UNICODE_LITERAL is not defined, QT_UNICODE_LITERAL converts a
US-ASCII string literal into a (native endian) UTF-16 string literal of
qunicodechar type.
Change-Id: I04822c4cdc0b240bc0fe113aba897348b7316932
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Stephen Kelly [Mon, 2 Apr 2012 14:11:42 +0000 (16:11 +0200)]
Remove the sectionAutoResize signal.
Despite being documented, it was never emitted, and I can't find
any use of it in the history either.
Change-Id: If89b401004d14ef068ada6a4099bef9dc47936c9
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Jason McDonald [Mon, 2 Apr 2012 12:51:03 +0000 (22:51 +1000)]
Remove duplicate non-const methods from QProgressBar.
Task-number: QTBUG-23524
Change-Id: I80f7eecb9f892fcd026b3c3f9159958fc99cfe23
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Friedemann Kleint [Tue, 3 Apr 2012 07:40:36 +0000 (09:40 +0200)]
Fix warnings about signed/unsigned comparisons in QtJson.
Change-Id: I92071ea870bf0ebb740fcb360aff19658380a0cd
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Friedemann Kleint [Tue, 3 Apr 2012 07:37:13 +0000 (09:37 +0200)]
Fix warnings about unused variables.
Fix MSVC warnings about unused q, d where only static functions
are used.
Change-Id: I239d6fc3c851b0a62434cb09fc0e1967f2e6d031
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Friedemann Kleint [Tue, 3 Apr 2012 07:43:05 +0000 (09:43 +0200)]
Fix warnings about truncations in constants.
Change-Id: I46872c5b2866454112092c1ec5efbfe15db5af33
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Kevin Krammer [Tue, 3 Apr 2012 14:11:30 +0000 (16:11 +0200)]
Fixing the QNX QPA build for non blackberry targets
Change-Id: I3d0bb33cadae946d21f8b2566840be9b1ae5101a
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Thomas McGuire [Mon, 2 Apr 2012 10:03:46 +0000 (12:03 +0200)]
Delete the screen event handler after its last user.
Change-Id: I2e3c6d08c0dcdd4b954570e9a2198c190c8fffd2
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
John Layt [Sat, 31 Mar 2012 20:14:20 +0000 (21:14 +0100)]
QLocale: Merge month name data storage to save 50KB memory
Month Names and Standalone Month Names are stored separately, but for
majority of locales the names are the same and so storage is duplicated.
By storing both sets of names in the same array 50KB is saved in
libQtCore.so on Linux.
Depends on change Ic84bbc82 in branch api_review for CLDR 1.9.1
Change-Id: I83224ebc2180ee6de69797fa50d38348acc94107
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
Giuseppe D'Angelo [Sat, 24 Mar 2012 08:36:52 +0000 (08:36 +0000)]
QHash security fix (1/2): add global QHash seed
Algorithmic complexity attacks against hash tables have been known
since 2003 (cf. [1, 2]), and they have been left unpatched for years
until the 2011 attacks [3] against many libraries /
(reference) implementations of programming languages.
This patch adds a global integer, to be used as a seed for the hash
function itself. The seed is randomly initialized the first time a
QHash detaches from shared_null.
Right now the seed is not used at all -- another patch will modify
qHash to make use of it.
[1] http://www.cs.rice.edu/~scrosby/hash/CrosbyWallach_UsenixSec2003.pdf
[2] http://perldoc.perl.org/perlsec.html#Algorithmic-Complexity-Attacks
[3] http://www.ocert.org/advisories/ocert-2011-003.html
Task-number: QTBUG-23529
Change-Id: I7519e4c02b9c2794d1c14079b01330eb356e9c65
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Thiago Macieira [Thu, 29 Mar 2012 16:00:34 +0000 (13:00 -0300)]
Remove old comment restored by mistake
Change-Id: I1b24556110fe035c96091c5b1c5ecc00830093fc
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Bradley T. Hughes [Wed, 28 Mar 2012 09:36:10 +0000 (11:36 +0200)]
QWindow: add windowModality as a Q_PROPERTY()
This also adds the QWindow::windowModalityChanged() signal.
Change-Id: I6e3bc3155d72811d173857c39d36dcb264928334
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Laszlo Papp [Thu, 23 Feb 2012 05:41:30 +0000 (07:41 +0200)]
Add a remainingTime() method to the public interface of the QTimer class
It is an extension coming from the use case when you, for instance, need to
implement a countdown timer in client codes, and manually maintain a dedicated
variable for counting down with the help of yet another Timer. There might be
other use cases as well. The returned value is meant to be in milliseconds, as
the method documentation says, since it is reasonable, and consistent with the
rest (ie. the interval accessor).
The elapsed time is already being tracked inside the event dispatcher, thus the
effort is only exposing that for all platforms supported according to the
desired timer identifier, and propagating up to the QTimer public API. It is
done by using the QTimerInfoList class in the glib and unix dispatchers, and the
WinTimeInfo struct for the windows dispatcher.
It might be a good idea to to establish a QWinTimerInfo
(qtimerinfo_win{_p.h,cpp}) in the future for resembling the interface for
windows with the glib/unix management so that it would be consistent. That would
mean abstracting out a base class (~interface) for the timer info classes.
Something like that QAbstractTimerInfo.
Test: Build test only on (Arch)Linux, Windows and Mac. I have also run the unit
tests and they passed as well.
Change-Id: Ie37b3aff909313ebc92e511e27d029abb070f110
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Friedemann Kleint [Tue, 3 Apr 2012 12:11:17 +0000 (14:11 +0200)]
WindowsXP: Fix Item view alternate color being black.
The theme palette needs to be initialized by the standard palette.
Change-Id: I91c2ac9aea122e6ed9c09c96b35dfe0ef18a3ca0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Eskil Abrahamsen Blomfeldt [Fri, 23 Mar 2012 13:39:34 +0000 (14:39 +0100)]
Make API in QPlatformSharedGraphicsCache a little more generic
Use EGL extensions for some things to allow serialization
instead of the somewhat specialized serializeBuffer() function.
Change-Id: I8d15e85bfb80d12fa953ba094564ddfca1aa6d6a
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Martin Smith [Tue, 3 Apr 2012 08:17:16 +0000 (10:17 +0200)]
qdoc: findNodeRecursive() was called with a null start node
This occurred in several places. They have
all been corrected to start at the tree root,
when the start node passed is null.
Task nr: QTBUG-25146
Change-Id: I5d75db0626451d30e8be8de5605036ba168f2a14
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Shane [Wed, 14 Mar 2012 13:22:01 +0000 (13:22 +0000)]
Don't require exact IMAP server version in autotests
The string from the server should begin with "* OK" and end
with "\r\n" according to the IMAP specification.
Still have a check for "server ready" as this does not change between
cyrus versions.
Change-Id: Ia01ed8aa054e5726bba8b411d30edc6205cc8465
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Thierry [Wed, 28 Mar 2012 18:09:20 +0000 (20:09 +0200)]
Fixes a problem with the proxy detection on Windows
The current scheme is to use IE's default config.
If that fails get the winhttp config.
That's ok. The problem is that if you run a program as a service
getting the IE config will set the fAutoDetect flag.
But later the call to WinHttpGetProxyForUrl mightfail with the
error code ERROR_WINHTTP_AUTODETECTION_FAILED.
this patch just makes sure that we have a fallback winhttp solution
in case the IE proxy is not set.
The new code detcted if the current process is a service, in which case it
will try to default to the system-wide proxy.
Change-Id: I57e9082a46a8422c54f8f069715752c271a3a001
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Kevin Krammer [Tue, 3 Apr 2012 09:15:39 +0000 (11:15 +0200)]
Move handling of rotation changes from event handler to screen
Have the navigator event handler emit the new rotation as a signal argument
and let the screen class handle all parts of the change, i.e. also notifying
the window system about the geometry change.
This also allows to rotate all screens, not just the primary screen, if this
should be necessary.
Change-Id: I304a80232b84d2d9130e38e955d5a75b1ccad775
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Shawn Rutledge [Fri, 23 Mar 2012 10:25:54 +0000 (11:25 +0100)]
Corrected filenames to build on case-sensitive Mac filesystems
Change-Id: Ie6f0188e3b2140b80b444dfdf24a078d215e0e87
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
Pekka Vuorela [Thu, 29 Mar 2012 13:40:10 +0000 (16:40 +0300)]
Adapt Maliit input context to new input method interfaces
Change-Id: Ia395dbb1689d1c37ef588c49cbb55ad1979f532f
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Thomas McGuire [Mon, 2 Apr 2012 11:37:12 +0000 (13:37 +0200)]
Rename offset() to setOffset()
Change-Id: Iacf7b0a7f3cb3745711fe646e14317be1711d891
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Thomas McGuire [Mon, 2 Apr 2012 10:04:53 +0000 (12:04 +0200)]
Fix adding and removing of windows to their screen
Change-Id: I5e0edf1515db60689c86b16b978863ae9e49bfdb
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Thomas McGuire [Mon, 2 Apr 2012 09:19:05 +0000 (11:19 +0200)]
Get rid of false positive warning when stopping video playback
The multimedia library actually creates two windows, and therefore the
first call to updateHierarchy() would try to update the z-order of
a no longer existing window.
Change-Id: I499d049e2885ff848f38d9cc5880aa63235b1b4c
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Thomas McGuire [Thu, 29 Mar 2012 15:05:14 +0000 (17:05 +0200)]
Fix indentation
Change-Id: I965e7ba2e20798966a8215427e6724e3666aaeea
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Friedemann Kleint [Tue, 3 Apr 2012 07:43:34 +0000 (09:43 +0200)]
Fix release mode warnings about unused variables.
Variables that are only used in asserts.
Change-Id: I0984b676ad9b67f5ae72266b8540e8054163918f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Jerome Pasion [Tue, 3 Apr 2012 08:50:43 +0000 (10:50 +0200)]
QDoc documentation: modified the instructions for documenting signals.
-we document signals, not signal handlers.
Change-Id: I7d52223a393ff0530ead06dfb8a80479e34fd362
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Donald Carr [Fri, 30 Mar 2012 18:20:34 +0000 (18:20 +0000)]
Don't suppress using separate debug info when cross compiling
The configure script currently automatically assumes that if you are cross
compiling, we should avoid trying to generate and strip separate debug
information due to toolchain limitations.
Historically there may have been good grounds for this, but it seems like
an aggressively pessimistic assumption which ignores the
standardization/advancement of embedded toolchains as a whole.
This assumption also extends to host compilers which deviate from the
automatically detected "platform" compiler, such as Clang.
Change-Id: Ifed2750325178bb5291d8ca1dde92925bfa36065
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Jiang Jiang [Fri, 30 Mar 2012 13:01:12 +0000 (15:01 +0200)]
Rename clip() to clipData() to avoid confusion and warning
There are already a bunch of clip() functions in this class.
Rename the one for returning clip data to clipData() to make
it clearer. It also eliminate a warning when compiling with
clang.
Change-Id: I1f890ad6bf1c0274a0b38b3116a3ec3d2957d44a
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Wolfgang Beck [Mon, 16 Jan 2012 07:45:23 +0000 (17:45 +1000)]
Prepare category logging for Qt integration
Change-Id: I0c784a945fe87d7ba52a44f5c7246de1709ae888
Reviewed-by: Lincoln Ramsay <lincoln.ramsay@nokia.com>
Reviewed-by: Peter Yard <peter.yard@nokia.com>
Reviewed-by: Alex <alex.blasche@nokia.com>
Mark Brand [Mon, 2 Apr 2012 20:13:11 +0000 (22:13 +0200)]
add change log entry for QTBUG-23895
Follow-up to
50ad785bdd38fcff9c47125fc545762435aaa158
Change-Id: Ib44a274148631fe96e13b8fe29436b556c14d34d
Reviewed-by: Honglei Zhang <honglei.zhang@nokia.com>
Miikka Heikkinen [Fri, 30 Mar 2012 11:51:42 +0000 (14:51 +0300)]
Windows: Improve Freetype font database registry check for fonts
Some non-scalable fonts like "Courier" list some numbers after the font
name in Windows registry, e.g. "Courier 10,12,15". These are not part
of the font name and therefore confused the algorithm looking for font
files. Improved the algorithm to ignore this kind of number list.
Single numbers are still expected to be part of the font name.
Task-number: QTBUG-24970
Change-Id: I3fe45b798f44bee962e5b3aa748fc4717f723353
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Pierre Rossi [Fri, 30 Mar 2012 20:33:05 +0000 (22:33 +0200)]
Return early in QRawFont::setPixelSize.
We would otherwise end up cloning the font engine for absolutely no
reason when the pixel size is already right.
Change-Id: I8c34d2b53b596ad49d00031a3fb8e79f3b30d591
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Girish Ramakrishnan [Mon, 2 Apr 2012 21:34:36 +0000 (14:34 -0700)]
eglfs: delete screen on exit
Delete the screen when the integration gets deleted. The screen destructor
destroys the window surface and terminates the egl connection. Note that the
egl context is not destroyed since it is managed by QOpenGLContext.
Change-Id: Ifb91c20edb6d5db684c37fb84d5ff40436f40925
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Girish Ramakrishnan [Mon, 2 Apr 2012 20:41:18 +0000 (13:41 -0700)]
eglfs: Fix header guards
Match the filename and the header guard defines.
Change-Id: Id9f795ae8522e574d63115a43b62b9ee4ba33005
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Vincent A [Tue, 27 Mar 2012 21:02:22 +0000 (23:02 +0200)]
Document QFile::rename and QDir::rename's copy operation
Change-Id: Ie81804f77510cfb73917332c8faaf921525fc26e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Jędrzej Nowacki [Fri, 23 Mar 2012 16:14:52 +0000 (17:14 +0100)]
Remove duplicated template code.
Unify TypeDefinitions specializations. I'm not aware of any reason why
QVariant should have a separate set of supported types during
bootstrapping phase. It would cause only crashes.
As a side effect the patch reduces size of core and gui libraries.
Change-Id: I5140d9d3daee39a0171bc718bf46dab6b28085ec
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
João Abecasis [Fri, 30 Mar 2012 23:27:27 +0000 (01:27 +0200)]
Don't use qstrlen if string is not null
Change-Id: I4f9aec21af2ce24a1d27c6d140764e371bce5017
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Mark Brand [Mon, 2 Apr 2012 20:02:31 +0000 (22:02 +0200)]
fix typo in change log
Change-Id: Id7c3cab500fb3f41fbced5a4012dc0ae5d108192
Reviewed-by: Debao Zhang <dbzhang800@gmail.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>