Girish Ramakrishnan [Tue, 22 May 2012 06:09:16 +0000 (23:09 -0700)]
qpa api: replace QPA headers with something more benign
The current 'we mean it' headers are considered too aggressive for QPA.
Replaced using the following script.
for file in `find -type f -name "qplatform*.h" -and -not -name "*_p.h"`; do
LINE_NO_1=`grep -n -m 1 "W A R N I N G" $file | awk -F ':' '{print $1}'`
LINE_NO_2=`grep -n -m 1 "We mean it." $file | awk -F ':' '{print $1}'`
if [ -z "$LINE_NO_1" ]; then
LINE_NO_1=`grep -n -m 1 "#define " $file | awk -F ':' '{print $1}'`
LINE_NO_2=$((1+$LINE_NO_1))
else
LINE_NO_1=$(($LINE_NO_1-2))
LINE_NO_2=$(($LINE_NO_2+2))
fi
head -n $LINE_NO_1 $file > $file.new
cat >> $file.new <<EOF
//
// W A R N I N G
// -------------
//
// This file is part of the QPA API and is not meant to be used
// in applications. Usage of this API may make your code
// source and binary incompatible with future versions of Qt.
//
EOF
tail -n +$LINE_NO_2 $file >> $file.new
mv $file.new $file
done
Change-Id: I8a974c9bf8942647b7ad950afb372c1f738aa725
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Thiago Macieira [Fri, 30 Dec 2011 20:08:57 +0000 (18:08 -0200)]
Remove -Winline from the build of SSE2/AVX/etc. sources
If anything, those are development flags. Normal users of Qt should not
be bothered by the lengthy output this flag produces
Change-Id: Iaa629d3f01ddc88e0775f62ffbb96fa734e3247f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Thiago Macieira [Thu, 29 Dec 2011 15:55:34 +0000 (13:55 -0200)]
Make sure we are using the proper -mXXX options
If $(CXXFLAGS) contains -m options (-march or -msse2, for example),
those would override the options we had set. It's amazing no one has run
into this problem before.
Change-Id: Idc765cb2dafd1381357da15593b2fe94a30e0857
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Thiago Macieira [Wed, 28 Dec 2011 19:22:34 +0000 (17:22 -0200)]
Add AVX support for the painting and image code.
There are no new routines, this is just the old SSE2 and SSSE3 code
compiled in AVX mode, meaning the instructions use the VEX prefix.
Change-Id: I79a8bfaf6b30a050618db899f5a3bbc220449f0b
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Jan-Arve Saether [Tue, 22 May 2012 07:15:38 +0000 (09:15 +0200)]
Replace (un)checkAction with toggleAction (3/3)
Remove all references to (un)checkAction.
This commit finalizes the intended change.
Change-Id: I79d3b30b5c3d9fbe276c2c94fed5971bb21d6c02
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Konstantin Ritt [Sat, 19 May 2012 18:31:41 +0000 (21:31 +0300)]
replace remaining "const QChar &" with "QChar"
QChar is actually a ushort and passing it via const-ref is suboptimal
Change-Id: Ib806b90397de6a816142ed130a22c0fe10a85d79
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Tasuku Suzuki [Fri, 18 May 2012 16:08:21 +0000 (01:08 +0900)]
Remove STL from qfeatures.txt
QT_NO_STL is now no longer available
Change-Id: I645a45e4b47539c936ef458b5c616c02f7097ca4
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Thiago Macieira [Wed, 2 May 2012 14:30:04 +0000 (16:30 +0200)]
Deprecate {QString,QStringRef,QChar}::{to,from}Ascii
Make them call exactly their Latin 1 counterparts.
For the QString functions that take a single char, also use fromAscii
directly.
Change-Id: I87645aba6ab9cde34c1df3cbc3a979fbd9e91f9d
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Thiago Macieira [Mon, 21 May 2012 18:21:16 +0000 (20:21 +0200)]
Add the QUrl::FullyDecoded flag to the component formatting
This allows the QUrl component getters to return fully decoded data,
like they did in Qt 4. This is necessary for some use-cases where the
component like the user name, password or path are used outside the
context of a URL. In those contexts, the percent-encoded data makes no
sense, and the loss of data of what could be represented in a URL is
acceptable.
Also take the opportunity to expand the documentation of those getter
methods, explaining what the options argument does.
Discussed-on: http://lists.qt-project.org/pipermail/development/2012-May/003811.html
Change-Id: I89f743cde78c02f169c88314bff0768714341419
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Thiago Macieira [Mon, 21 May 2012 15:02:27 +0000 (17:02 +0200)]
Add QUrl::ParsingMode to the component setters in QUrl
This allows one to instruct QUrl to ignore the percent-encodings and
interpret the data exactly as provided. This is useful in certain
use-cases where the data comes from a non-URL context.
The strict-mode checking of the components is not implemented
yet. Currently, the behaviour is equal to that of TolerantMode.
Discussed-on: http://lists.qt-project.org/pipermail/development/2012-May/003811.html
Change-Id: Ia5abe045a8ce7f9b50cbce3b5a7e3735e068d03a
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Thiago Macieira [Mon, 21 May 2012 13:14:40 +0000 (15:14 +0200)]
Add the QUrl::DecodedMode parsing mode
This mode will be used to support parsing of URL components in their
fully-decoded forms. It is not permitted when parsing the full URL, as
that would be ambiguous.
Change-Id: Id8d39a740845ae8d1efef894085280b322e39c0a
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Thiago Macieira [Mon, 21 May 2012 16:44:31 +0000 (18:44 +0200)]
Port away from QUrl::MostDecoded
Since we're about to introduce QUrl::FullyDecoded, this
QUrl::MostDecoded value would be confusing. Replace its uses with what
was intended at the point in question.
Change-Id: Iefd87bc33d37bace507c5cb0f206fa902e08e2df
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Thiago Macieira [Mon, 21 May 2012 16:27:26 +0000 (18:27 +0200)]
Fix the idempotent recoding tests in tst_QUrlInternal
This was trying all the possibilities by brute force, but it turns out
that some combinations are not valid so they should not be
tested. What's more, it was using old values of the flags, so this was
actually testing nothing.
Change-Id: I6c2f5230d240fc23418df2d3a1ca905dbc47dd10
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Thiago Macieira [Thu, 10 May 2012 02:14:58 +0000 (19:14 -0700)]
Fix compilation on Linux: link to zlib in the bootstrapped tools.
That "else:" with no first condition is probably throwing qmake
off. The condition was removed in
ad2930f82536c9f5d38b644c5a070ce1248f6ee2.
Change-Id: I6af36e3f673a65a6152fb467162c25afc13b4196
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Laszlo Agocs [Tue, 22 May 2012 07:44:48 +0000 (10:44 +0300)]
Add mouse event internal members needed by declarative
In order to remove QQuickMouseEventEx we have to be able to store
touch-related data, like capabilities and velocity, also in mouse
events. However they should not be exposed through the public API in
any way. (at least not in 5.0)
Change-Id: I7774b9ea00074950208559463249fbdcaeeaefbf
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Mitch Curtis [Fri, 18 May 2012 13:08:56 +0000 (15:08 +0200)]
Fixed unused paramater warning in download example.
Change-Id: I9688ff6a583591f04aa81bb2714c33fc02da77c7
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Mitch Curtis [Fri, 18 May 2012 13:42:00 +0000 (15:42 +0200)]
Fixed "No such signal" error in download example output.
The signal sslErrors is not defined by QNetworkReply when QT_NO_SSL
is undefined. The solution was to add the an ifndef guard around the
call to connect so that the signal is only used when it is defined.
Change-Id: I9f104ec630ed448af65669b0861df233de5172ac
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Mitch Curtis [Fri, 18 May 2012 15:02:54 +0000 (17:02 +0200)]
Fixed unused function warning in qsslcertificate test.
Change-Id: I4d402e486a8ceb965d008056f5f1bcb227f6f40c
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Jan-Arve Saether [Tue, 22 May 2012 06:58:48 +0000 (08:58 +0200)]
Replace (un)checkAction with toggleAction (1/3)
Add toggleAction to QAccessibleActionInterface.
This change is split into separate modules, thus we have to be careful
of not breaking qtdeclarative, which currently depends (un)checkAction.
Therefore we apply the patches in this order:
1. Add toggleAction to QAccessibleActionInterface (in qtbase)
2. Replace all references to (un)checkAction with toggleAction
(in qtdeclarative)
3. Remove all references to (un)checkAction (in qtbase)
Change-Id: Ib00fee3139eeabbece97295bc3d713ab119c92e6
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Konstantin Ritt [Mon, 21 May 2012 11:21:19 +0000 (14:21 +0300)]
QTextEngine: minor clean-up
Change-Id: I7e21d5cf0130b412f8053b35abdd3420ed006c1c
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Bradley T. Hughes [Mon, 21 May 2012 09:12:28 +0000 (11:12 +0200)]
QWidgetWindow: handle ShortcutOverride events
ShortcutOverride events sent to the QWindow should be handled by the
QWidget.
Change-Id: Icec504db1066871b02dec639e4c1c624b0afeaa8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Girish Ramakrishnan [Mon, 21 May 2012 21:59:00 +0000 (14:59 -0700)]
eglfs/pi: update handles are 'local' variables
Change-Id: Iec687e9cd015ed389a637b50e4e4e332478b6e1f
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
Holger Hans Peter Freyther [Wed, 16 May 2012 08:29:04 +0000 (10:29 +0200)]
directfb: Handle focus, close and geometry change events
Report the focus, close and geometry to Qt.
Change-Id: I059fef5aba5f0e5c0654ba11b0615bc0f5ac50aa
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Holger Hans Peter Freyther [Wed, 16 May 2012 07:31:35 +0000 (09:31 +0200)]
directfb: Expose the window when it becomes visible
This change is required to make DirectFB windows appear on the
screen again.
Change-Id: Ib00d3fa597bc23879b5646bddd6cbb5c627b0edf
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Donald Carr [Thu, 17 May 2012 22:49:57 +0000 (22:49 +0000)]
Clean up Raspberry Pi spec
Introduce platform libs hook to handle/allow device specific initialization and the associated symbol resolution
Change-Id: I098b07dcb581390d369d9165c6cedc7ace1e088a
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Rohan McGovern [Mon, 21 May 2012 22:57:59 +0000 (08:57 +1000)]
Removed CONFIG+=parallel_test from suspected parallel-unsafe tests
These tests have failed a parallel stress test and may contribute to
instability in test runs.
Change-Id: I2c4456ad7d3846c2262a0ba714ab8f0c9a05c597
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
Shane Kearns [Mon, 21 May 2012 09:54:37 +0000 (10:54 +0100)]
Prevent infinite loops by handling all ZLIB errors
In case the HTTP server returns more data after the end of the
compressed data stream, inflate will return Z_STREAM_END, which
is a normal informative error code.
This was handled in 4.8, but lost in 5.0.
Also catch all ZLIB negative error codes rather than only three.
Task-number: QTBUG-25823
Change-Id: Ibdbbd3dd6fa81a0880c477cb080ad35f2d7116f0
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Friedemann Kleint [Mon, 21 May 2012 11:50:41 +0000 (13:50 +0200)]
Windows-configure.exe: Do not print licensing info in log.
The hash value is not correct after choosing a different license.
Also, Unix configure does not report it.
Change-Id: I988fffc923c3894e8141a91fc50747e30e20966b
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Mitch Curtis [Fri, 18 May 2012 15:10:56 +0000 (17:10 +0200)]
Fixed unused function warning in qsslkey test.
Change-Id: I5039e011f3c9b44ed1887424f11e4e146c3eb07f
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Friedemann Kleint [Mon, 21 May 2012 13:37:47 +0000 (15:37 +0200)]
Windows/MinGW: Fix warnings about missing enumeration values.
Change-Id: I8fa6456e517d670a4d463fdc589cb32e4f79843c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Sean Harmer [Mon, 21 May 2012 10:49:54 +0000 (11:49 +0100)]
QNX: Take orientation into account when reporting physical size
Previously landscape orientation was assumed in the QQnxScreen ctor. We
now calculate the initial physical dimensions correctly.
Change-Id: I6c434eaba1f931c769f343671fb80052287b51e5
Reviewed-by: Kevin Ottens <kevin.ottens.qnx@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Sean Harmer [Mon, 21 May 2012 10:19:14 +0000 (11:19 +0100)]
QNX: Implement the QPlatformScreen::orientation() function
Also removed some invalid TODO comments.
Change-Id: I470a9a6538ce10a3a14df14faa641d7be7f18a74
Reviewed-by: Kevin Ottens <kevin.ottens.qnx@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Johannes Zellner [Thu, 17 May 2012 22:16:55 +0000 (15:16 -0700)]
input: Synchronize multiple mice handled through evdevmouse plugin
EvdevMouseManager now receives relative pointer coordinates from each
connected mouse and is then responsible for clamping and forwarding them
to the QWindowSystemInterface. This avoids jumping cursors when multiple
pointer devices are connected. This does not change behavior together
with devices handled through the evdevtouch plugin.
Change-Id: I7feb358f68c3b3ebd138116224b4747c88c6761f
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Friedemann Kleint [Mon, 21 May 2012 12:49:29 +0000 (14:49 +0200)]
QCssParser: Remove temporary structure storing QIcon data.
This is no longer needed after QIcon moved to QtGui. It is a
revert of
5a0eb4e768435b9ce32b074e620fca33be4df2fb, compile
fixes and uncommenting of commented-out code.
Change-Id: I6cfe6d2582b3e37161862a28e55cc3b010e18a8b
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Friedemann Kleint [Fri, 18 May 2012 14:08:20 +0000 (16:08 +0200)]
QWindowsBackingStore: Implement scroll.
Similar to XCB.
Task-number: QTBUG-24299
Task-number: QTBUG-24296 (partially fixed)
Change-Id: I4c9d813d9645f957f2caad0c4e395ce0d3d222cc
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Thiago Macieira [Mon, 21 May 2012 11:30:49 +0000 (13:30 +0200)]
Make QStringLiteral always choke on non-literals
The fallback implementation of QStringLiteral did not (up to now)
enforce the need to use a literal. So it was possible to write:
const char *foo = "Hello";
QString s = QStringLiteral(foo);
Which would do the wrong thing and create s == "Hel" on 32-bit
platforms (sizeof(foo) == 4) or, wrose, s == "Hello\0XY" on 64-bit
platforms (sizeof(foo) == 8, X and Y are garbage).
This change enforces the need for a literal by producing errors on the
above cases, as well as when foo is a char array variable.
GCC:
error: expected ‘)’ before ‘foo’
Clang (abbreviated):
error: expected ')'
namespace X { QString x() { const char foo[42] = "Hello"; return QStringLiteral(foo); } }
^
note: to match this '('
^
ICC:
error: expected a ")"
namespace X { QString x() { const char foo[42] = "Hello"; return QStringLiteral(foo); } }
^
The first C++11 error currently is:
error: expected primary-expression before ‘enum’ (GCC)
error: expected a ")" (ICC)
Change-Id: I317173421dbd7404987601230456471c93b122ed
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Tasuku Suzuki [Wed, 16 May 2012 20:04:01 +0000 (05:04 +0900)]
Fix QtDBus compilation for -qconfig large
Change-Id: I016dd3cdab10136af04bd10605efe0a665490d8e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Friedemann Kleint [Mon, 21 May 2012 09:11:06 +0000 (11:11 +0200)]
win32/default_pre.prf: Remove exceptions_off, thread_off, stl_off.
- thread_off, stl_off are obsolete.
- exceptions_off causes exceptions to be globally disabled for
applications using MinGW after
2b21dd69d6a4e47f0ec3d3958ab1def0983ce76c.
Change-Id: Ia109c5806f2a0172efed5680a55ca53a2846d778
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Laszlo Agocs [Mon, 21 May 2012 10:41:56 +0000 (13:41 +0300)]
Remove a line of garbage
Change-Id: Iae931b4a944abe29097dc30f97099e9aeaa9387c
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Friedemann Kleint [Mon, 21 May 2012 09:20:42 +0000 (11:20 +0200)]
QRegularExpression: Fix warnings about deprecated tr()-function.
Change-Id: I2325bcab9bb80e5507f53887b282a859d0fdb58c
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Martin Petersson [Tue, 15 May 2012 10:35:34 +0000 (12:35 +0200)]
QNetworkReplyHttpImplPrivate::migrateBackend
If the QNetworkSession change while we are handling a QNetworkRequest
we should try to resume this request if possible. In that case we set
the offset for where to continue the request. Abort the operation
in the http thread. And then post the request again. The offset will
then be set using the range header in postRequest() so that the
operation is resumed.
Task-number: QTBUG-25762
Change-Id: Ib7946905bcc633f8cc3dd7a7ad1ae74579e6bf56
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Morten Johan Sorvig [Mon, 21 May 2012 06:22:01 +0000 (08:22 +0200)]
Cocoa: Fix memory leak in the accessibility code.
QCocoaAccessibleElement takes ownership of the
QAccessibleinterface pointer. Delete it in dealloc().
Change-Id: I45a5540b9cf564c639bfa119ff4882008d63fd96
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Jonas M. Gastal [Fri, 4 May 2012 13:18:39 +0000 (10:18 -0300)]
Fallback to IPv4 when IPv6 is not present.
In tests when IPv6 is not present QSKIP IPv6 tests.
Task-number: QTBUG-23660
Change-Id: I02abc7322d765a93cbf661e53c76257f03dca73e
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Tasuku Suzuki [Sun, 20 May 2012 12:42:36 +0000 (21:42 +0900)]
Fix QtNetwork compilation for -qconfig large
Disables two variables completely in QNetworkProxy
Change-Id: I76483310b37032c44a25e05fb879de1e9d5282f5
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Girish Ramakrishnan [Sun, 20 May 2012 03:43:05 +0000 (20:43 -0700)]
Don't create QBackingStore for QDesktopWidget
QDesktopWidget doesn't need a backing store since it
cannot be painted on. Since the QDesktopWidget is
always created, this change avoids any resources
created in the QPlatformBackingStore contructor.
Change-Id: I33679c98363f9c0d7ea64d9c5e27327679ad92a0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Friedemann Kleint [Mon, 21 May 2012 07:39:41 +0000 (09:39 +0200)]
Fix MSVC warnings about struct/class mismatch for dynamic metaobjects.
Change-Id: I263f25161fa1861ca5e7da9440214fd3ba6e944e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Leonard Lee [Fri, 18 May 2012 08:40:29 +0000 (10:40 +0200)]
Elaborate QUrl::toString() documentation.
Change-Id: If2d726e7b4e8d408312fcb138c3dd146926bfd9a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Jan-Arve Saether [Mon, 21 May 2012 08:51:18 +0000 (10:51 +0200)]
Get rid of ambiguous overload for xgetbv.
The patch that broke this was assuming the signature of xgetbv was
_xgetbv(int). This lead to that there were no exact match for the
function resolver, thus the ambiguity.
Apparently, the signature of _xgetbv is _xgetbv(unsigned int).
Changing the static xgetbv to uint makes the match exact, thus no more
ambiguity.
Change-Id: I8db95e00a9fef264d7a1f84d02bb929db84e6e5a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Martin Smith [Fri, 18 May 2012 13:08:23 +0000 (15:08 +0200)]
qdoc: Write <qmlinheritedby> before <qmlinstantiates>
The order of these two elements has been switched
in DITA XML files for QML types. <qmlinheritedby>
now comes before <qmlinstantiates>.
Change-Id: I1a041c087351734d20629336bbc1c136e04d345a
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Johannes Zellner [Thu, 17 May 2012 20:13:57 +0000 (13:13 -0700)]
Input: evdevmouse plugin cleanup
Remove unused code and variables from the evdevmouse plugin.
Change-Id: Id7881bc726b5ffb2fa452e4d4dd082fe70f7ed28
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Martin Jones [Thu, 17 May 2012 07:39:46 +0000 (17:39 +1000)]
Move rarely used QObjectPrivate data to extraData
Move runningTimers, eventFilters and objectName data members to
ExtraData. Saves 12 bytes per QObject for 95% of use cases
(QObjectPrivate goes from 76B -> 64B).
Change-Id: I5648c89f65a7be3ea51bd703ee8a9dcff6222c3c
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Richard Moore [Sun, 20 May 2012 12:31:55 +0000 (13:31 +0100)]
Change QSslCertificate::toText() to return a QString.
A couple of people reviewing the toText() method (which is new in 5.0)
have said that since the string returned is human readable it should
be a QString not a QByteArray. This change follows their advice.
Change-Id: Ibade9a24870805f7fbe2d299abeb9c6e964f0cf4
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Laszlo Papp [Tue, 1 May 2012 22:34:40 +0000 (01:34 +0300)]
Add the LICENSE.GPL file to the module referenced from license headers
Change-Id: I3821a2679883a8a340acacba24b5ea44607d374e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Girish Ramakrishnan [Sat, 19 May 2012 17:24:48 +0000 (10:24 -0700)]
-device:
c01621ec8 broke device feature
result was never returned by resolveDeviceMkspec
Change-Id: Ibd2f647e5524cdc9dbf4ea06f7b815f9dcc43212
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
James Turner [Fri, 4 May 2012 13:16:05 +0000 (14:16 +0100)]
Cocoa implementation of QPA menu interface.
Implement the QPA platform menu interface for Cocoa,
including native menubar support and merging with the
predefined menus created from the bundled .nib. Cleanup
code previously used to maintain the menus, and add
a manual test of the menus code.
Change-Id: Ia99267ddb6485e18e05c540eb32c5aee6cbb85db
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Mitch Curtis [Fri, 18 May 2012 10:46:43 +0000 (12:46 +0200)]
Fixed unused variable warning in anchorlayout example.
Change-Id: I54c6e471531485e33b20b6a6da7f52dab5c3a32a
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Mitch Curtis [Fri, 18 May 2012 07:27:48 +0000 (09:27 +0200)]
Fixed unused variable warning in chart example.
Change-Id: I0985ff1b1224b29a394ae2a594aeaa783d650ffa
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
James Turner [Mon, 27 Feb 2012 13:04:45 +0000 (13:04 +0000)]
QPA menu abstraction, originally based on Morten's work
Create a QPA abstraction for native menus, derived from the
Cocoa support in 4.8, but with the expectation to support
other platforms too. Update the QtWidget QMenu and QMenuBar
code to maintain their QPA equivalents if they exist.
Change-Id: Id605de3da8811dc832bf48b35f9107778ad320ff
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Tasuku Suzuki [Wed, 16 May 2012 20:01:36 +0000 (05:01 +0900)]
Fix QtNetwork compilation for -qconfig large
Change-Id: I231272e59101e9492a7a1edbacab165b96927877
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Sean Harmer [Tue, 24 Apr 2012 10:17:18 +0000 (11:17 +0100)]
Adding QPlatformTheme support for Blackberry devices.
Starting off simple with fonts that follow the Playbook guidelines.
Change-Id: If772f9a20c5e7566543be6bba47b49cdf3bf1524
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Sean Harmer [Fri, 18 May 2012 10:13:03 +0000 (11:13 +0100)]
QNX: Special case z-ordering of the QDesktopWidget window
The assumption that window creation order implies correct initial
z-ordering is broken when dealing with certain window types. In this
commit we special case the QDesktopWidget's window which maybe created
after normal application windows yet still need to be layered below
them.
Without this fix we may accidentaly activate the Desktop window when the
blackberry navigator service sends an event to activate the window
group. That results in broken focus handling.
Change-Id: I42dfde2efb4a0011e37e7bd2e7c5442590606a24
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Kevin Ottens <kevin.ottens.qnx@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Jan-Arve Saether [Wed, 16 May 2012 12:34:14 +0000 (14:34 +0200)]
Compile fix: Do not rely on __cpuidex() for msvc2008
Since its hard to detect if __cpuidex() is actually available at
compile time, we'll add a function overload that will be chosen if the
intrinsic __cpuidex() is not available.
Note that the QtXgetbvHack that was used for _xgetbv did not really
work (MS compiler will bail out because of ambiguous overloads if the
intrinsic _xgetbv existed).
Therefore, we apply the same workaround for _xgetbv.
Change-Id: Iee3bf8bc6352ba0861b05d779f1f001d4eb013ff
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Girish Ramakrishnan [Tue, 15 May 2012 15:44:13 +0000 (08:44 -0700)]
device: Allow specifying shortnames for device mkspecs
Specifying -device linux-amlogic-8726M-g++ is error prone. With this
change, one can specify any substring of the mkspec names under
devices/ and the first one will be picked.
Change-Id: I7c4522fdaefe4a11e9292f7831075aa766a62c0b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Girish Ramakrishnan [Fri, 18 May 2012 05:23:50 +0000 (22:23 -0700)]
Save configuration feedback into config.summary
commit
d60d98450ada232fc3e8d0c5762a2b7a90beb921 adds the support for
unix configure. This commit adds the same for Windows configure.
Change-Id: Ibcc604154fd7d0d9c6112ae5459d9bb842daf180
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Giuseppe D'Angelo [Fri, 18 May 2012 13:17:25 +0000 (15:17 +0200)]
QRegExp: fix usage of uninitialized values
A (probable) typo was causing the code dealing with anchors
to use uninitialized values. This used to work by chance, but was
indeed detected by Valgrind f.i. when running tst_qregexp --
the indexIn test on anc11 data reported:
==3015== Conditional jump or move depends on uninitialised value(s)
==3015== at 0x514B4EA: PeppeQt::QRegExpMatchState::testAnchor(int, int, int const*) (qregexp.cpp:1813)
[...]
==3015== Uninitialised value was created by a stack allocation
==3015== at 0x514B3EB: PeppeQt::QRegExpMatchState::testAnchor(int, int, int const*) (qregexp.cpp:1803)
Fixing the code also makes the aforementioned test to succeed.
Change-Id: If7b3e518c1bbfcf12573d2637c33ef2eca27c4d5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Lars Knoll [Thu, 17 May 2012 00:37:23 +0000 (02:37 +0200)]
Don't use the deprecated translate() method anymore
The Encoding argument of QCoreApplication::translate()
is deprecated and source code is always assumed to be
encoded in Utf8. Simply remove the encoding argument
from the generated .ui.h files.
Change-Id: If6c40f6df13abd45a0303c863077972c3d1fb685
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Olivier Goffart [Tue, 15 May 2012 13:40:58 +0000 (15:40 +0200)]
Move QIcon metatype handlers back to QtGui
QIcon has been moved back from QWidget to QtGui, so the QIcon QVariant
and QMetaType handler can now be moved back to QtGui.
Also we can give back QIcon its old number, allowing to get rid of some
compatibility hack when unstreaming QVariant
Change-Id: I439d5c2987c06ecd619f394407850f678164afb8
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Olivier Goffart [Mon, 14 May 2012 16:02:16 +0000 (18:02 +0200)]
QIcon: move back to QtGui
- Move the files and tests
git mv src/widgets/kernel/qicon* qrc/gui/image/
git mv tests/auto/widgets/kernel/qicon/ tests/auto/gui/image/
- update the include of QIcon
git grep -O"sed -i s,QtWidgets/qicon,QtGui/qicon," "QtWidgets/qicon"
git grep -O"sed -i s,QtWidgets/QIcon,QtGui/QIcon," "QtWidgets/QIcon"
- Adapt QIcon \ingroup documentation
sed -i s/QtWidgets/QtGui/ src/gui/images/qicon*
- Adapt export macro
sed -i s/Q_WIDGETS_EXPORT/Q_GUI_EXPORT/g src/gui/image/qicon*
- Update .pri and .pro files
- Remove the use of QStyle::alignedRect by copying its content (and
adapt slightly
- Use QGuiApplication::palette() instead of QApplication::palette()
- Add a hook in QGuiApplicationPrivate to call the
QStyle::generatedIconPixmap() from QtWidgets
Another commit follows to adjust QMetaType::Icon and move the QVariant
and QMetaType icon handler back in QtGui
Change-Id: I1b63759f892ebc02dfc30f41bb6e76e0b7451182
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Lars Knoll [Wed, 16 May 2012 21:09:56 +0000 (23:09 +0200)]
Make QCoreApp::translate and related methods use UTF-8
Deprecate the Encoding enum in QCoreApplication and the
trUtf8() methods. Qt now assumes that source code is
always encoded in UTF-8 to be consistent with QString.
Change-Id: Ic62d6947046dee9be0cbd37f2d2f6976b9e572a7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Mitch Curtis [Fri, 18 May 2012 12:47:00 +0000 (14:47 +0200)]
Fixed unused parameter warning in hellowindow example.
Change-Id: I48ea19b5548a179d8116685fa481c4d1b3804bba
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Mitch Curtis [Fri, 18 May 2012 10:15:19 +0000 (12:15 +0200)]
Fixed unused variable warning in diagramscene example.
Change-Id: I85cc038602e22c140f0564b15ebcb3872750b162
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Jędrzej Nowacki [Tue, 15 May 2012 13:42:26 +0000 (15:42 +0200)]
Use QMetaType API directly instead of going through QVariant.
Change-Id: I418ccca7cb6e2aa1ba678e24dd36b39ebecadcbe
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Miikka Heikkinen [Fri, 18 May 2012 07:55:26 +0000 (10:55 +0300)]
Fix backingstore crash with QAxWidgets
The crash was caused by the fact that backingStore parameter is always
null (there seems to be no call in codebase that uses anything else but
the default values for this function).
Using "store" member variable instead of "backingStore" parameter gets
rid of the crash, and it is how it was in Qt4 - probably the bug crept
in when the paremeter and member variables were renamed in Qt5.
Task-number: QTBUG-25803
Change-Id: I4b1ccf540fddd6baa1dffa7f8165272b54caf238
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Girish Ramakrishnan [Thu, 17 May 2012 20:51:51 +0000 (13:51 -0700)]
eglfs: hooks can never be null
e60ca0de6015a8ee16c7be54d0d430252ef525c1 reworked the hooks design.
hooks is initialized with a stub pointer if we don't have a platform
hook.
Change-Id: Ia60facfebd9e4d9c08d237c6d49793efb598130f
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Girish Ramakrishnan [Thu, 17 May 2012 22:53:14 +0000 (15:53 -0700)]
eglfs: Add support for cursor hotspots
Cursor information is now loaded from cursor.json.
Done-with: Johannes Zellner
Change-Id: I093cf8e944d495269973e777d0b444ae4ececee1
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Martin Smith [Fri, 18 May 2012 08:18:57 +0000 (10:18 +0200)]
qdoc: Report multiple QML property docss
Documentation authors sometimes make the mistake of
documenting a QML property more than once. Here, we
refer to cases where a C++ class is documented in a
.cpp file as a QML type. In this context one QML
property might be documented in two qdoc comments,
because the author of the second comment does not
search the file for an existing qdoc comment for
the property before adding the second one. When DITA
XML is generated for this case, the QML type element
will contain two <qmlproperty> elements with identical
id attributes, which is invalid XML. id attributes
must be unique within an XML document.
qdoc now reports an error for this case, indicating
that the QMLN property has been documented multiple
times.
This problem can't occur when documenting QML in a
.qml file because in .qml files, each comment must
appear directly above the thing it applies to.
Change-Id: I3a22650a58371fbda2ac7a5429fc036f41750423
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Stephen Kelly [Thu, 26 Apr 2012 12:40:48 +0000 (14:40 +0200)]
Add test of automated container metatype declaration.
Change-Id: Iddaf444ead6d9f0147b9b11452ccea46aa712ba3
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Tasuku Suzuki [Wed, 16 May 2012 19:52:33 +0000 (04:52 +0900)]
Merge two simple version of translate() functions for QT_NO_TRANSLATION
the commit
53a420a4d1a2d845603dd85ce9ce345c6819088e merged translate()
functions. The simple versions need to be merged too.
Change-Id: Ie873483beb8ed0b911ae0568e97b427f4c6b74e3
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Shane Kearns [Tue, 15 May 2012 14:41:01 +0000 (15:41 +0100)]
Make the windows socket handle non inheritable
This is for behaviour consistency with Qt on unix, as well as the
socket close issues described in the task.
Task-number: QTBUG-4465
Change-Id: Ida95650d8a9bd7b5bc3d3926d22e20a6d7eeb30b
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Jiang Jiang [Wed, 16 May 2012 16:14:45 +0000 (18:14 +0200)]
Fix FreeType glyph caching for high resolution
For high resolution or extremely large font sizes, the advance
cached here is likely to overflow, since FreeType returns 26.6
fixed point value and we only take signed char here for advance.
In those cases we should skip caching because there won't be
that many big glyphs after all.
Also move the metrics caching block a bit down to take glyph
embolden and oblique into account.
As a result we also don't need to increase the linearAdvance
size because any linearAdvance less than 128 should fit in
the old 10.6 fixed format.
Change-Id: Ic4920ada49954ce1e0a8673c9f33f30e385e3046
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Aaron Kennedy [Thu, 17 May 2012 10:08:48 +0000 (11:08 +0100)]
QMetaObject::activate() overload that doesn't require a metaobject
This allows QML to emit signals without having to built lazily created
metaobjects.
Change-Id: If8068fb3cb35d79dc8f3ef79253d9c2eb7c93205
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Aaron Kennedy [Thu, 17 May 2012 10:06:17 +0000 (11:06 +0100)]
Avoid qobject_cast
This is slightly faster, and also avoids accessing the object's meta
object that would cause any lazily created meta objects from being built.
Change-Id: I0a78e09511c120bdbe707a1efc91ba480ab7680c
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Aaron Kennedy [Thu, 17 May 2012 10:02:59 +0000 (11:02 +0100)]
Encapsulate the dynamic meta object pointer
This change allows us to delay creating the actual meta object
until it is actually required.
Change-Id: I1c4a4226bd82fa606b206dd60322f49b49c32463
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Thiago Macieira [Wed, 16 May 2012 15:43:23 +0000 (17:43 +0200)]
Clean up some QT_HAVE_xxx macros in qcompilerdetection.h
We no longer have code doing MMX or 3dNow! on Qt 5, so nothing defines
those macros. If nothing defines them, we don't need to undef
them. Note that the SSE case is a mislabel: the old "SSE" code on Qt 4
wasn't real SSE, it was MMX with some instructions added at the same
time as SSE was added. It's MMX that Windows 64 doesn't support.
As for QT_HAVE_ARMV6, this macro is replaced by the sub-arch detection
in qprocessordetection.h.
Change-Id: Ic3b00e1533e6b4cea32ba7824233de0a5c0fb32b
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Thiago Macieira [Wed, 16 May 2012 11:42:53 +0000 (13:42 +0200)]
Blacklist Apple clang 3.0 and previous support for AVX
In at least one case found in our testfarm, the compiler runs into an
ICE (Internal Compiler Error) compiling the new AVX code. The error it
reported was:
fatal error: error in backend: Cannot select: 0x7fbf1aa42210: f64 = sint_to_fp 0x7fbf1aa88a10 [ORD=1936] [ID=37]
0x7fbf1aa88a10: i32,ch = CopyFromReg 0x7fbf19538768, 0x7fbf1a9f2610 [ORD=1936] [ID=27]
0x7fbf1a9f2610: i32 = Register %vreg38 [ORD=1936] [ID=9]
As is the nature of ICEs, juggling the code around will probably make
it pass. But since I have plenty more AVX changes pending, which make
the code even more complex, it's also very likely that this issue will
happen in other places. For that reason, I choose to blacklist the
compiler instead.
Change-Id: Ide3201f0cc49c7ceb63e966f6de65a8315cbea4b
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Toby Tomkins [Fri, 18 May 2012 05:02:00 +0000 (15:02 +1000)]
Remove parallel flag for qsemaphore because of flaky nature.
The CI system is now using the parallel_test flag to run tests in
parallel. This test has become flaky, or at least more flaky than it
was previously. Mark it to no longer run in parallel.
Change-Id: I47bca3be620a8f648a0eb9c9b9f26d2d925efc01
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Romain Pokrzywka [Wed, 16 May 2012 23:13:34 +0000 (16:13 -0700)]
Remove optimization flag from QMAKE_CFLAGS
-O2 is already the default optimization level for release builds,
as defined in gcc-base.conf. In addition, it shouldn't be set for
debug builds.
Change-Id: Idd7406b0d135d9579676b389050fd6e5776e722c
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Romain Pokrzywka [Wed, 16 May 2012 22:59:00 +0000 (15:59 -0700)]
Apply compiler platform flags to debug builds as well
Compiler flags like CPU architecture and FPU should be set on
QMAKE_CFLAGS instead of QMAKE_CFLAGS_RELEASE, as the latter only
applies to release builds
Change-Id: I2e729a9e413934e904fc2810394e118940b8557f
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Rohan McGovern [Thu, 17 May 2012 07:35:35 +0000 (17:35 +1000)]
testlib: added missing newline to error message
Change-Id: I8b205da4d225d99f8505a46d8d78ad302cb2b9e3
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
Konstantin Ritt [Mon, 14 May 2012 15:12:48 +0000 (18:12 +0300)]
add some more widely-used QChar::SpecialCharacter enum values
Change-Id: Iad58f4366ba6cd6da29a268c56c8a4bc4cf0329c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Girish Ramakrishnan [Wed, 16 May 2012 18:18:09 +0000 (11:18 -0700)]
eglfs: Allow cursor atlas to be specified using an env variable
The atlas it assumed to have 8 cursors per row. All cursors have
to be square.
Change-Id: I7ffbad4662be450b146f84032bb26187894d528f
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Girish Ramakrishnan [Wed, 16 May 2012 18:13:54 +0000 (11:13 -0700)]
eglfs: delete cursor textures in the destructor
Change-Id: I7e86313134c428bacda41f5e5401ebc392ceecd8
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Girish Ramakrishnan [Wed, 16 May 2012 19:30:58 +0000 (12:30 -0700)]
eglfs: remove multiple references to qeglfshooks.h in HEADERS
ce2b46daea5815df1070463b6bc379e1b4573dae introduced the mistake.
Change-Id: Ifbd276dc24138dfb771d0cb14cb5d18dfa7beb2d
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Robin Burchell [Wed, 16 May 2012 08:49:46 +0000 (10:49 +0200)]
Remove src/widgets/kernel/x11.pri.
Presumably, this was set for QSound, which has since moved to QtMultimedia (and
no longer uses nas, anyway).
Configure also no longer seems to have logic for setting nas, as of
4535913c4fb908293f8f1667eff480efc3fadd73.
Change-Id: Ie5b351844bd169ad0548b0d29513adbf6f5d9a12
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Lars Knoll [Wed, 9 May 2012 16:52:44 +0000 (18:52 +0200)]
turn off exceptions by default where they aren't required
This significantly reduces the size of the generated code
in places where we don't need exceptions.
The -(no-)exceptions configure flag has been removed in the
process, as there is now a fine grained way to control this
on a per module level, and Qt is being compiled without
exceptions in most places.
Change-Id: I99a15c5d03339db1fbffd4987935d0d671cdbc32
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Andrew den Exter [Wed, 9 May 2012 06:14:34 +0000 (16:14 +1000)]
Fix cursorToX for right to left text with trailing whitespace.
QTextLine::cursorToX returned the line width for cursor positions
outside the width of a wrapped right to left line because the
leading space width was always calculated as 0.
Returning a non-zero width for the leading space does cause
problems for other uses of QTextEngine::alignLine() though
as the textAdvance already doesn't include the leading/trailing
space so subtracting it there double accounts for it.
Task-number: QTBUG-24801
Change-Id: I56cbb139814c32813bebb49de8c045b29154a958
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Casper van Donderen [Wed, 16 May 2012 12:44:38 +0000 (14:44 +0200)]
QDoc: Generate correct relative paths and links when using -installdir.
This change will generate working links between all modules in qtbase.
Some testing needs to be done on the other modules.
Change-Id: Ic65a9c753f891ac51427ca7c1cdcab13611d2f5b
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Carl Schumann [Fri, 11 May 2012 18:40:21 +0000 (13:40 -0500)]
Fix bug when destruction fields in QWizard
Maintain the consistency of QWizardPrivate's two members:
QVector<QWizardField> fields;
QMap<QString, int> fieldIndexMap;
during and after calls to QWizardPrivate's
void _q_handleFieldObjectDestroyed(QObject *)
member function. The failure to maintain this consistency
caused an out of bounds access and core dump in
QWizard's field(const QString &name) member function.
QWizard's field(const QString &name) member function expects
the values in the QMap fieldIndexMap to be indexes into the
QVector fields. Prior to this change
_q_handleFieldObjectDestroyed only removed the appropriate
entry from the map and erased it from the vector. It did
not decrement by one all the indexes greater than the index
that was removed from the map and erased from the vector
in the rest of the map.
For example ...
So if initially have the following mapping ...
"field0" -> 0,
"field1" -> 1, and
"field2" -> 2
with fields of size 3. After destruction of "field1" have ...
"field0" -> 0, and
"field2" -> 2
with fields of size 2.
Now attempts to look up "field2" using QWizard::field will
have an out of bounds error and possibly core dump or trigger
an internal Qt assert because an attempt to access
this->fields[2] will be made. It should be accessing
this->fields[1], but does not because the map is no longer
consistent with the vector.
This change adds a decrement by one for all the indexes
greater than the index that was removed from the map and
erased from the vector.
Task-number: QTBUG-25691
Change-Id: Ia2a41027628a65faec4ecdd5da235ddd19746a57
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Tue, 15 May 2012 17:02:53 +0000 (20:02 +0300)]
enable the text layout's cache where it is seems to be missed
e.g. in QStaticText, the data is used just to get the line's y-position
and re-calculates just after the loop to determine the bounding rect and to draw the text;
in QWidgetLineControl, the data re-calculated over and over while the result
is seems to remain the same; probably the caching is needed here too
Change-Id: I0f7eb291532f63eccb9c5f749daebb73ff90632f
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Martin Smith [Wed, 16 May 2012 08:47:28 +0000 (10:47 +0200)]
qdoc: Include QML type name in method quid
A case was found where a method inherited from a
QML type marked abstract had the same name as a
method in the inheriting class, and these two
methods received the same quid. This was fixed
by including the QML type name in the guid for
QML methods.
Change-Id: I110eb254b3c6be014cb67fdc5b57b5aa2f575220
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>