Commit Graph

7870 Commits

Author SHA1 Message Date
Friedemann Kleint
8e280d1e18 QPlatformWindow: Add Window masks.
Add functionality for window masks to QPlatformWindow, which is
required to implement QWidget::setMask() in order to fix
the regression in functionality from Qt 4.8.

Change-Id: I2c2d5629f0b4c6d90e52595ad70b13559aab1f41
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-06-26 14:40:26 +02:00
Thiago Macieira
799f0841a6 Make QRegion not need to be friends with QVector
This hack was introduced in Qt 4.5 and the intention was to resize
(hopefully, shrink) the QVector without causing it to reallocate
memory. We can accomplish the same by reserving the size: until we
clear() or squeeze(), the container will not free memory.

Change-Id: I03a09537a617be0ce865eefa043005e4051e8706
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-06-26 11:57:51 +02:00
Oswald Buddenhagen
34cb86d46b make using testlib automatically "promote" all modules to -private
autotests often need private headers (especially with qpa headers now
being private) and have no compatibility requirements, so it makes sense
to just use the privates of requested modules.

this also suppresses the useless warning about using privates, in case
they are still explicitly specified.

Change-Id: I9e499bedcf6ef25777283ff1432cef7254e9093a
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-06-26 11:51:34 +02:00
Oswald Buddenhagen
1cb7979e0b ignore mkspecs/modules-inst/
only generated files in there

Change-Id: I6eb327fc686af08d46d343066420525bc2e0dde5
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-06-26 11:51:29 +02:00
Sukhyun Kim
a685e9ae1b Make QGtkStyle build with QT_NO_FILEDIALOG
Fix compilation failure with qconfig large

Change-Id: I8ae14f01879b94430dcbb5c85c61d14e922f6eb9
Reviewed-by: Lincoln Ramsay <lincoln.ramsay@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-26 11:50:15 +02:00
Stephen Kelly
c42a0a7729 Factorize the cmake test infrastructure to be reusable.
This makes it easy to add cmake module tests for all modules.

Change-Id: I303bf7674ca6ae7a8544488f96e8e02afbaa6ff0
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-06-26 11:49:52 +02:00
Konstantin Ritt
a9ba927406 Avoid macro re-definition after 1838a6c2fb
Change-Id: I2631ff687881278ba42edacd237a2130c103b69f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
2012-06-26 11:37:57 +02:00
Martin Petersson
a9c398096b QIODevice: free memory when buffer is cleared
The QIODevicePrivateLinearBuffer does not deallocate any data on
readAll or clear. This fix will change the buffer so that
data is deallocated on clear, readAll and when read emptied the
buffer.

This is needed for QAbstractSockets that don't have
readBufferMaxSize set, as the buffer will grow but never
decrease in size when you read from it.

Change-Id: Iab42e40182f9ebe0739c99b2d1e820ce287dc931
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-26 11:32:39 +02:00
Martin Petersson
1ce203d05a QAbstractSocket: Enable readNotifier on read from buffer
This is needed for the QSslSocket. When we read on that socket we will
only read from the QIODevice buffer to get the unencrypted data.
So when the readNotifier has been turned off on the plainsocket there
is nothing to trigger it to be turned on again.

This will add a readData with zero size when we have read everything
from the buffer. This is so that we get a call into the socket to
check if the readNotifier should be turned on again.

Change-Id: I3b63e33de007db823e964480903186eb1b8caac2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-26 11:32:21 +02:00
Martin Petersson
bf6897edb0 QtNetwork: remove double buffering on sockets
Removes the readBuffer from the QAbstractSocket since data is already
buffered in the QIODevice.

Change-Id: I4e50b791fd2852455e526fa2c07089d4d3f0b2a4
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-26 11:32:04 +02:00
Rafael Roquetto
9e66ee2d59 [QNX] Enable MT screen event handling on Blackberry
Consuming incoming screen events through the BPS event
dispatcher on its current incarnation has proven to be
very inefficient since it cannot put up with the screen
event throughput. This patch enables the screen event
thread also for Q_OS_BLACKBERRY platforms, in addition
to stock QNX. This behavior can still be configured
through the project file, though.

Task-number: QTBUG-26177
Change-Id: I98a3b22549c9fbf0c16b5a8c39a55c1eaa6ec1f4
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2012-06-26 11:07:20 +02:00
Tasuku Suzuki
197b145a23 Fixed inputMethodQuery() for Qt::ImHints
to return QWidget::inputMethodHints()

Change-Id: I46735c553e0cb4689cd0c53a69d07ed61ba56bf6
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
2012-06-26 08:14:17 +02:00
Tarja Sundqvist
0a6dc44f24 QTBUG-26035: Remove positive sign from start of string
Updated removeGroupSeparators(QLocalePrivate::CharBuff *num) so that it
removes also positive sign ('+') at the start of the string. Auto test
included.

Task-number: QTBUG-26035

Change-Id: I8e0e071d6c682d9192a8c6bb2f282510e21b3c48
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
2012-06-26 08:14:17 +02:00
Oswald Buddenhagen
ed96d199f1 fix somewhat common edge case in $$shadowed()
if source and build dir are direct children of the common root and we
are shadowing the top-level source dir, there is of course no trailing
slash to match.

Change-Id: I8a34a6a72d16cb21d77d056e037235af9b32a008
Reviewed-by: Davide Pesavento <davidepesa@gmail.com>
Reviewed-by: Andreas Hartmetz <ahartmetz@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-26 08:14:17 +02:00
Girish Ramakrishnan
9dc7f84839 Use valSeen since it results in unused warning otherwise
Change-Id: Iccfa4b895d9e50227efa1747ea20ce07ce70327e
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-06-26 05:30:10 +02:00
Stephen Kelly
fa6ca58b8b Don't re-evaluate the lib location.
Rely on the DESTDIR variable being set correctly by qt_module_config.

Change-Id: I1a166124024722ec5a189a7402b38646179aa890
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-26 04:18:29 +02:00
Stephen Kelly
70c981f973 Fix the DEFINITIONS for Qt modules.
As the DEFINITIONS to be used for QtAddOns is different to essential
modules, rely on the logic in qt_module_config setting this variable
correctly.

Change-Id: I64485ccd6df093216cac4a97fb1cfaac0122a218
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-26 04:18:25 +02:00
Thiago Macieira
ce17ca7791 QGraphicsItem::setAcceptsHoverEvents is deprecated, replace it
It is replaced by setAcceptHoverEvents (note the lack of s), even
though the original name made more sense -- "set (if this item)
accepts hover events".

Change-Id: Ia6137c0e37b0a5932836f1d08fb8fa436f736eed
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-06-26 04:18:22 +02:00
Thiago Macieira
62d4840011 Replace the QGraphicsItem deprecated transforming functions
The scale(), rotate() and translate() functions are replaced with
QGraphicsItem::setTransform.

Change-Id: Icb81c71b1513c049e2fd607995ca3a868108ee30
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Andreas Aardal Hanssen <andrhans@cisco.com>
2012-06-26 04:18:14 +02:00
Lars Knoll
a1f9149ac7 Small documentation fix about the text streams default encoding.
It's UTF-8, not Latin1 on most systems nowadays. Only Windows
still living in the past...

Change-Id: I70f1bd7a49bed6dcc8e39bbc0f0613475791afdb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-25 23:39:27 +02:00
Shane Kearns
afdce18f57 QSKIP test that is blocking unrelated changes in CI
The test looks vulnerable to misbehaviour if the working directory
contains unexpected files and folders. As it's already skipped on
Mac, skip on linux as well to unblock the CI.

Change-Id: Id2e48ea455eb77e36c4f9d899885e101f674c0a3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-25 23:32:50 +02:00
Lars Knoll
df151d21b6 We shouldn't have a Makefile here.
Change-Id: If55952b4aa9b95ff9311c1b7338b77af62a5c503
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-25 02:23:18 +02:00
Lars Knoll
d75a97793a Remove the font codecs
These codecs have only been used for XLFD based fonts.
These are not supported anymore by Qt 5.

Change-Id: I7dc083f2efcd42363b144b24bd62c169d83390cf
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-25 02:23:18 +02:00
Lars Knoll
587b80f67d The codecForTr() should be utf8
tr() assumes utf8 as input encoding, not
latin1.

Change-Id: If834f8c169bdb431d78713d14b03542d3a7ca8e4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-25 00:19:31 +02:00
Lars Knoll
b2412843cb Fix docs mentioning Q_EXPORT_PLUGIN2
Fix all remaining places where Q_EXPORT_PLUGIN2
was being used in the documentation.

Change-Id: I7be67b83c18545d0e74f250b4b26583444b01909
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-25 00:19:26 +02:00
Lars Knoll
72cd356200 Use the new plugin system
Convert the last remaining three plugins over from
the old plugin system.

Change-Id: I355e6bb068ec4afb58a2ee9542f86e2913b3851d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-25 00:19:15 +02:00
Simon Hausmann
03e3fa5dd1 Fix return type of isActiveConfig("host_build")
The return type of isActiveConfig is a boolean, so return that when
host_build is queried.

Change-Id: I6d1420b49b09e51442c4b2d482e2f19b165081d8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-24 21:22:51 +02:00
Tasuku Suzuki
d2e83f3056 Make qtbase compile with QT_NO_DRAGANDDROP
Change-Id: Ief16e435af6e6d246b84505a1c1208994c7b0b38
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Jeremy Katz <jeremy.katz@nokia.com>
2012-06-24 21:22:51 +02:00
Thiago Macieira
7590ca03ce Ensure that no extra bits can leak into QUrl::toEncoded.
Technically, this function should take QUrl::UrlFormattingOptions, but
that doesn't exist. So we just mask out the high bits that determine
the encoding options. toEncoded only supports one encoding way: fully
encoded.

Change-Id: I1445ad7c292500921ec2672be4524d7d76a39f98
Reviewed-by: David Faure <faure@kde.org>
2012-06-24 19:26:29 +02:00
Oswald Buddenhagen
d921182310 add possibility to set $$MODULE_IMPORT_SUFFIX in module .pri files
quick1 got a suffix, so we need a way to set it

Change-Id: I099b868106abd4d3040047703472faa65f694f31
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-06-24 15:26:34 +02:00
Tasuku Suzuki
165dc2cb3d Make qtbase compile with QT_NO_CSSPARSER
Change-Id: Iadcc7dfde6b06c339118c00a645d9dc592a0eead
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-24 15:26:34 +02:00
Thiago Macieira
e2d360c04d Wrap QObject usage in qsharedpointer_impl.h with ifndef QT_NO_QOBJECT
Otherwise, bootstrapped tools like qmake and moc won't compile, unless
QObject is forward-declared (which it isn't anymore).

Change-Id: If67ca1cd8fdb7b29628f9dc4b454595d26a715d0
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-06-24 13:32:59 +02:00
Robin Burchell
ffa249f9da Remove documentation for QIconEnginePlugin::keys().
Method was removed in dcf3c95175.

Change-Id: I6c01ea7d329e15aec8b4ce29e8d3d5c3e784731a
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
2012-06-24 09:31:57 +02:00
Robin Burchell
d153b73c12 Guard evdev specifics with QT_NO_EVDEV.
Android fails the evdev configure test at present.

Change-Id: I1cbaf2dab589f647c02c8c5b92f72bd5159ccfa9
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-06-24 05:26:39 +02:00
Donald Carr
e6ccfe40eb Set Wayland as default platform on Raspberry-Pi
Update Raspberry-Pi mkspec to indicate that wayland is the default platform
for the Raspberry-Pi.

Change-Id: I10b30ecfb16faed6027137225d9e95409faa7e87
Reviewed-by: Johannes Zellner <johannes.zellner@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-06-24 05:26:10 +02:00
Laszlo Agocs
642a26dab4 Fix setMouseTracking on QGLWidget
Remove the function altogether. Alternatively we could call the
base class implementation but there is no reason to keep this
confusing, non-virtual override.

Change-Id: Ie8724f7bbc6666fdace7ff777bcde99f3d8a9561
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-06-23 20:27:45 +02:00
Harald Fernengel
62d481757c Make test work on Mac OS X
Change-Id: I0c2d9bc7500972144d44060f38bc7a5da65ed30f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-23 16:25:47 +02:00
João Abecasis
796f85b611 Don't operate on bogus data, assert on preconditions instead
QVector::erase shouldn't try to make sense of iterators it doesn't own,
so the validation being done here is bogus and dangerous. Instead, it's
preferrable to assert, the user needs to ensure proper ownership.

The case of erasing an empty sequence is not checked for preconditions
to allow

    QVector v;
    v.erase(v.begin(), v.end());

, while being stricter on other uses.

Autotests were using ill-formed calls to the single argument erase()
function on an empty vector and were fixed. This function erases exactly
one element, the one pointed to by abegin and require the element exist
and be valid.

Change-Id: I5f1a6d0d8da072eae0c73a3012620c4ce1065cf0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-23 14:16:33 +02:00
David Faure
86ae3809a9 Skip 3 test methods if the test server isn't set up.
This makes things easier for developers touching QtCore and running
all QtCore unit tests.

Change-Id: I7aa832a6a1be07d90cacad2eecb2364285ff3818
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2012-06-23 14:16:29 +02:00
Stephen Kelly
3d2a8d09d1 Add a variable for the private includes for modules.
This is required to use QPA for example in 5.0.

Change-Id: I44bfc6987d778370e55c05c591f63ff84c482d0a
Reviewed-by: David Faure <faure@kde.org>
2012-06-23 14:16:24 +02:00
Stephen Kelly
2af438a6ce Give the CMake unit tests more meaningful names.
Change-Id: I0a54d32ec62ff6daf7672d0aabdeb038f4c7c78f
Reviewed-by: David Faure <faure@kde.org>
2012-06-23 11:37:49 +02:00
Stephen Kelly
ddf5226bd7 Forward-port change to QT4_ADD_RESOURCES macro for missing rcc files.
Forward-port of commit 9ce67d30011db4528d3d0bbee36412e13cfb80cc in
cmake.git.

Change-Id: I2d6c14f68f1630fc0835b3103e5058f52c2d0d13
Reviewed-by: David Faure <faure@kde.org>
2012-06-23 11:37:39 +02:00
David Faure
9a16e14666 Implement QXcbIntegration::queryKeyboardModifiers()
Change-Id: Ifd2255362f5ef005e2a57f4001a72d932497b453
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-06-22 17:38:59 +02:00
David Faure
3506ee51b2 Docu: fix copy/paste typo
Change-Id: Ie3573ab6983c2b66c66b0f9c342f72018674016c
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-06-22 17:38:59 +02:00
David Faure
ee45201415 QPA docs: list the platform names that the method is likely to return.
Change-Id: Ia98c534fbdb157ff7b2b328a832941772ea833ec
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-06-22 17:38:59 +02:00
Girish Ramakrishnan
17d35cfdca Add gui-private to generic plugins
QWindowSystemInterface will shortly be marked as QPA API.

Change-Id: I0b7cb1a75e3a4f0fc4627329edd3bfd21583a0a6
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
2012-06-22 15:42:44 +02:00
Girish Ramakrishnan
7042de0894 eglfs: move m_pos into Cursor
Change-Id: I51e92d265e7ea6372ae58b357f75362e2d9a2df9
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-06-22 15:42:44 +02:00
Shane Kearns
1655cb5a69 Fix non inheritable socket creation on old windows versions
The documentation is misleading, as using the new API actually
causes WSASocket to fail.
New behaviour:
On windows vista or earlier: skip the new API, use old one
On windows 7: try the new API first, if it fails try the old one
On windows 8: try the new API only

The windows 7 behaviour is because we don't know if the service
pack has been installed or not. (And IT departments may have
specifically installed/blocked the hotfix)

Task-number: QTBUG-26224
Change-Id: I6da47959919caee0cd2697f1ae1fca46aa33c1ff
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Mikhail Vorozhtsov
2012-06-22 13:43:28 +02:00
Andy Shaw
66589cd545 Ensure that Proxy-Connection: Keep-Alive is respected for HTTP 1.0
When doing a NTML authentication it would close the connection after
the second phase before replying when the reply was a HTTP 1.0 version
reply. Since the Proxy-Connection header is set to Keep-Alive in this
case we want to ensure we do not close in this siutation.

Task-number: QTBUG-26037

Change-Id: Icaaf2277efc0d05a946c52fb42b5191964e2e0fe
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2012-06-22 11:47:24 +02:00
Glenn Watson
4a8d9eed87 Fix key modifiers in mouse wheel events on Windows.
The Windows platform plugin was not checking for the control or
shift keyboard modifiers when processing mouse wheel events. Added
a function to convert Windows wheel events to Qt::KeyboardModifiers
and passed this through the event chain.

Task-number: QTBUG-25754
Change-Id: I6551e98b4eaebad5704058bddfb06502ded5155d
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-06-22 11:47:24 +02:00