Commit Graph

8642 Commits

Author SHA1 Message Date
Joerg Bornemann
f6169ae4b1 fix QWidget::activateWindow for child widgets
For child widgets we must use the windowHandle of the toplevel widget.

Change-Id: If7bad8ed4bba694806a2c8b77bae3d25cc200b8b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-07-31 20:26:08 +02:00
Joerg Bornemann
0d8795fcb4 fix window activation in tst_qmdiArea::subWindowActivated2
QApplication::setActiveWindow doesn't activate the native window but
marks the widget as active inside Qt.
We need to use QWidget::activateWindow instead. See docs.

Also moved the activation call further down because on Windows a
minimized window cannot be activated using the activation-by-focus
fake we're currently using.

Change-Id: I752f6ada1f463931fa9cfb3c35f42dbec0207bfa
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-07-31 20:25:59 +02:00
Friedemann Kleint
5b49793d80 Implement synchronous WS events by flushing.
Previously synchronous window system events were
implemented by bypassing the queue and processing
the event immediately. This is not ideal since the
event order is not preserved - there might be "happened
before" events waiting in the queue.

Add QWindowSystemInterface::flushWindowSystemEvents
and change all handleSynchronous* to 1) queue the
event 2) call flushWindowSystemEvents.

flushWindowSystemEvents is almost identical to the
already existing sendWindowSystemEvents with the
exception that it does not call QApp::sendPostedEvents.
Move the common implementation to a new private function.

Task-number: QTBUG-20778

Change-Id: Ie98a83875bc0a14e335e36bed0dd9e0ed4a1dea0
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-07-31 20:25:36 +02:00
Sergio Ahumada
0e904279bd Adding missing QT_BEGIN_HEADER/QT_END_HEADER
Change-Id: I1144497ec8376ec41c714b7a55c05637b6feee66
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-07-31 20:05:01 +02:00
Eike Ziller
67d082223c Mac: Don't crash if language preferences can't be retrieved.
That can happen when e.g. running an application with sudo.

Task-number: QTBUG-26547
Change-Id: Ib16ef7798ebcd1c9b8d661dd2e3ce3aadc393489
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
2012-07-31 11:58:08 +02:00
Friedemann Kleint
58ab483cdb Stabilize the QHeaderView test.
The test has a member QWidget *topLevel which it recreates
and shows in init() without waiting for it to be exposed
although it is not used in every test case. This apparently
interferes with some tests that create separate top levels.
Do not show in init(), delete the topLevel.
Add wait to the cases where the topLevel is shown.

Change-Id: Ib428020b36dc82991d41e68478fd583bdfb004c7
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
2012-07-31 11:57:21 +02:00
Frederik Gladhorn
05815679d8 Accessibility: fix updates for models with rootIndex set.
The accessible table/list implementation would ignore
when a root index is set, resulting in trying to use row/column
for the top level index, leading to accessing invalid indexes.

(cherry picked from commit def2ee829435c705055733a0f99c0ca44a012c50)

Conflicts:

	src/plugins/accessible/widgets/itemviews.cpp

Change-Id: Ic2745ab3e262ccee2d43e0d532e165d2958f519e
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
2012-07-31 11:53:35 +02:00
Joerg Bornemann
a03b14f685 build host tools in release mode again
CONFIG does not contain build_all anymore,
thus we need to check QT_CONFIG in bootstrap.pr{i,o}.

Change-Id: Ia505fa101adc49f185908ca575d3211caed612db
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-31 11:51:55 +02:00
Joerg Bornemann
12a40a7cbb tst_qwidget task reference fixed
Change-Id: I8d65f5912bfc2daa1e35be33a3c4d986508eebeb
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-07-31 11:51:51 +02:00
Peter Kümmel
952788d64b add configure options for debug/release OpenSSL
msvc cannot use the same library for debug and release builds
if openssl libraries are linked statically into the network library.

Change-Id: Ic27ede2d9531b94aff4c50c1699947ce72caf286
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-31 11:47:39 +02:00
Oswald Buddenhagen
9a8d74de0a remove second argument from $$eval() (access to global scope)
sam added this based on a vague notion of backwards compatibility when
he fixed the function to use the local scope, but it kind of makes no
sense - there is very little reason for accessing the global scope from
within a function. google doesn't find any relevant hits except our
source code, so let's just nuke it.

Change-Id: Ie957bb47b531f7e9b5dfcceb4e09f65dd826b422
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-07-31 11:17:50 +02:00
Oswald Buddenhagen
c748cf489c don't set -rpath-link in qmodule.pri
qt.prf takes care of that already

Change-Id: Ibc426583a007edbbe2f53cc21ce676eb60b33485
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-07-31 11:17:46 +02:00
Oswald Buddenhagen
c595405124 run processPrlFiles() over QMAKE_LIBS_PRIVATE as well
there is no reason why private libs should not have prls resolved.

the two variables are resolved independently, so it's possible that
(even more) libraries will appear duplicated on the linker command line,
but that seems easiest for the time being.

Change-Id: I9070ba53808a0661fa72949db8111106b7aca487
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-07-31 11:17:43 +02:00
Oswald Buddenhagen
14bf7ef504 inline MakefileGenerator::processPrlVariable()
the visitor-pattern like approach is not needed any more

Change-Id: I990db681cbeee91d89ecba97745a8104595247e7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-07-31 11:17:40 +02:00
Oswald Buddenhagen
f71a5c8cde make the windows prl processing more like the unix variant
it's more elegant, and more similar code is better.

Change-Id: I2b8b036cb70a932fd171e23cf7d3389188401924
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-07-31 11:17:37 +02:00
Oswald Buddenhagen
202f08dc09 remove apparently useless code
it wouldn't actually *do* anything, as l is not a reference. i cannot
figure out the original intention, so let's just drop it.

Change-Id: Ic0a3457a1872cde827259ee5530959120456e934
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-07-31 11:17:34 +02:00
Oswald Buddenhagen
02cbc0746d stub out MakefileGenerator::processPrlFiles()
the unix and windows variants don't rely on it.
not making it purely virtual only because the project generator inherits
MakefileGenerator as well but does not need an implementation.

Change-Id: I80099b3f5d07cd037b408cf1099c58ff3a2904cd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-07-31 11:17:30 +02:00
Lars Knoll
a806c6a8b2 Search the include paths for json files containing plugin info
This fixes shadow builds with autogenerated .json files as
e.g. used by Qt Creator.

Change-Id: Ibb783b05d97d996100da4b0dca859fa3f310dc83
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-07-31 11:13:43 +02:00
Friedemann Kleint
be4f8393e4 Stabilize QWidget-test alienwidgets on XCB.
Use QTRY_VERIFY for the mappped attribute check.

Change-Id: I3cbde9122405bf7067f3702193e80636edc8c5c6
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-07-31 11:13:35 +02:00
Friedemann Kleint
7b655eef48 qclass_lib_map.h: Fix include of the QDeclarativeView widget.
Task-number: QTBUG-25196

Change-Id: If25c4df29297435b159706257d9f37a9ef2f3d7a
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2012-07-31 11:13:28 +02:00
Lars Knoll
4970fa366b Align the CP949 codec name with ICU
It's name is windows-949 according to ICU. Keep
CP949 as an alias for compatibility with Qt 4.

Change-Id: I115ba2593da6f7b47e25136c3fadb19c7f798ff0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:13:18 +02:00
Lars Knoll
1ee272568b Fixes to the qdom autotest
Don't rely on a black list of codecs for the serialization
test. This breaks badly when new codecs get added to Qt
(e.g. through ICU). Instead use a white list of known
codecs that can encode/decode the test data.

Change-Id: I1dc55a25e852198bb935f070a4a21e8369f56268
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:13:15 +02:00
Lars Knoll
6c8f8ff1b0 Add missing namespace macros
Change-Id: I7cfeece0914b03b6113207de96b931dc54377f77
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:13:10 +02:00
Lars Knoll
9d0b1fc0bc Small doc fixes about the list of supported codecs.
Change-Id: I98b8ec9d5de9e69f1bb6187b4d820d61f7ce03e5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:13:05 +02:00
Lars Knoll
8a883d972d Do not preload any codecs anymore when using ICU
When using ICU we can now avoid pre loading any codecs
at startup. Instead QTextCodecs will always be created
lazily when first asked for.

Change-Id: Ic668f2824700896d2eca7d0de54f978404826163
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:12:58 +02:00
Lars Knoll
bb3637d33c Add a factory method to QIsciiCodec and fix the names
Make the names all lower case to be in line with what ICU
reports. Add a factory method to create the codecs according
to their name.

Change-Id: Ia3dddaa7701a0645d9d8fbcb52f1f8d58f79cf98
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:12:51 +02:00
Lars Knoll
b23f048cf9 Use ICU instead of iconv/windows codecs for the locale
With ICU there's no need to use the windows locale or iconv
codecs anymore as locale codecs.

Change-Id: I50c94a97ed6acbf4c6f05b2a88593a57ebfa8342
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:12:44 +02:00
Lars Knoll
34721c4d36 Make codecForLocale atomic
Change-Id: I8017b1c2aa1df8d613e83919a945fd5f320713d6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:12:35 +02:00
Lars Knoll
88d2e92b39 ICU code page conversion support
Use ICU to do code page conversion instead of the
builtin text codecs. With this QTextCodec simply
becomes a wrapper around ICU's ucnv_* methods.

We only keep our own codecs for UTF-*, ISO-8859-1,
ISO-8859-15 for performance reasons, and for TSCII
and iscii-* because they aren't supported by ICU.

Change-Id: I4fc49eba55cf772b9772c6dac606a47a44346a60
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:12:28 +02:00
Lars Knoll
865a9465f3 Rename some codecs to be in line with ICU
Change-Id: If523d2a12ef64c79e3860da1f430f128d24ff600
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:12:11 +02:00
Lars Knoll
39bdbc2cb5 Disable iconv on utf-8 based platforms
There's no need to use iconv on Mac,
iOS, Android or QNX, as all these
platforms are fully utf-8 based.

Change-Id: I2a03c8dea72ad91f6ec83da0a838de20e46babef
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:12:07 +02:00
Lars Knoll
46e3aa2908 Lazily initialize iconv in the iconv codec
Avoid dlopen'ing libiconv and initializing
it's members until the codec gets used for
the first time. This avoids some memory
and startup time overhead in case we can
use the utf8 codec instead of iconv.

It also removes a circular dependency
between codec initialization during app
startup.

Change-Id: I119c010c288dc59ab32279d8a213ae1f4347cace
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:12:00 +02:00
Lars Knoll
d4510d0d31 Use utf-8 as the locale codec where it makes sense
Use utf8 as the fallback codec in case we can't determine
something else instead of latin1.
Also use utf8 for Mac, iOS, Android and QNX.

Change-Id: I15dc85d2406b1ebdfacff25f45f8b6854c52b97e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:11:54 +02:00
Lars Knoll
e41129c859 Remove encoding detection according to LANG
This code is left over from the 90's, and should not
get used anymore. In all relevant cases we will use UTF-8
or iconv nowadays.

Change-Id: Ie3776f671de33f782fa77f6359bf6e105bd9c1b8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:11:48 +02:00
Lars Knoll
5af9ecafd9 Move the text codec list to qcoreglobaldata.
This removes some global statics in QTextCodec and
makes the code better to maintain in the longer term.

Remove QT_NO_THREAD defines around mutexes as this
isn't required in Qt 5 anymore.

Change-Id: I15ede75f53b16f134f4053f3188c4b47e86fcd8a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-31 11:11:43 +02:00
Thiago Macieira
920dcb0158 Ensure that QAtomicPointer of forward-declared classes works
This is working, but let's just be sure by adding a testcase.

Change-Id: I8c6b5ded0c7b6c90645dbf70a7ce6c1ba447a284
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-07-30 10:43:50 +02:00
Martin Petersson
4d38a3b2da QtNetwork: Better detection of connection failures on Windows
If the error code from WSAConnect is WSAEWOULDBLOCK, then the
operation proceeds but the outcome is not known at that time. We then
check SO_ERROR's value to detect errors. But if that call returns 0
this could indicate that the value is still not know. In this case
we try one more time to increase the chance of getting the correct
value.

This fixed the tst_QNetworkReply::getFromUnreachableIp auto test
on Windows.

Change-Id: I25008aca062b2f823e3d93ebb0ae456d7e4a6ecc
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2012-07-30 10:43:50 +02:00
Marc Mutz
ada38c75cc QUrl: document that setIdnWhitelist isn't thread-safe
This is a forward-port of 6b10fc91 from Qt 4.

Change-Id: I58878bf24e4f1b50ebfd0457c37eef58696f4a4c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-30 10:43:50 +02:00
Rohan McGovern
650cdb62bd Make benchmarks compile without QtWidgets
Ensure benchmarks which need QtWidgets are gracefully disabled when
that module is unavailable.

Fixed one unnecessary usage of "QT+=widgets".

Change-Id: I8031b5dca585749f0f4d22e0637adc3f57f4e418
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
2012-07-30 10:43:50 +02:00
Martin Smith
d294ac8d68 qdoc: Added safety checks to findUnambiguousTarget()
This is a blind attempt to fix QTBUG-26615. I can't
reproduce the crash on OSX.

Task nr: QTBUG-26615

Change-Id: Ifc6b68b7f302b9cd7d02129be8ae56841a35e5de
Reviewed-by: Martin Smith <martin.smith@nokia.com>
2012-07-30 10:43:50 +02:00
Jeremy Katz
ff1ea44b67 fix QEventLoop qdoc errors
Change-Id: I17bb720d539a7ccf5d9a3b20853897ff052fc8a6
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
2012-07-30 08:45:15 +02:00
Rohan McGovern
6a5dc7eb3f tests: fixed check for QtOpenGL
contains(QT_CONFIG,opengl) tells whether Qt itself is able to use
OpenGL, which is not the same thing as whether the QtOpenGL API is
available. Make the check correct; fixes compilation when Qt is
configured with -no-widgets (which also disables QtOpenGL).

Change-Id: Iaa296c2b10650971ef4846f8bc6f44761fadcf7c
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
2012-07-30 06:06:12 +02:00
Rohan McGovern
3f5f692630 tests: disable qstandarditemmodel test when building without QtWidgets
This test uses QTreeView.

Change-Id: I6ba56ad6ec3687a5b90d516be10d6f88e248d53d
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
2012-07-30 06:06:10 +02:00
Rohan McGovern
8b6f8d66ec tests: removed QtWidgets dependency from tst_qsignalmapper
This test was using some QSpinBox instances to generate signals for
testing. Use our own QtTestObject to generate the signals instead.

Change-Id: I3714955ae040d541c3b613a478945c38a18be18d
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
2012-07-30 06:06:05 +02:00
Kevin Krammer
1772168c00 QNX: Reduce dependency on QtWidgets
Use QObject::inherits() to check if the current input focus object is
a numerical input instead of trying to cast.

Change-Id: Ie476fba3d2f9f20a1ce0328043430cb6a96a8a3d
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2012-07-29 14:28:14 +02:00
Laszlo Agocs
05c07c7636 Send the native scancode in evdevkeyboard
Until now the native scancode was not specified which meant
when qwindow-compositor (or any other Qt-based compositor using
the standard Wayland protocol, i.e. sendKeyPress() and such) tried
to send the native scancode over to the clients, all it got was a
code of 0.

This fixes keyboard input when running qwindow-compositor on top
of kms and EvdevKeyboard.

Change-Id: I5d9a882f249634fb7584900b5f298f794befee3b
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-07-28 15:23:07 +02:00
Mitch Curtis
10cd17d0d3 Document QEvent::EnterEditFocus and QEvent::LeaveEditFocus properly.
These enums are only accessible if QT_KEYPAD_NAVIGATION is defined.

Task-number: QTBUG-15631
Change-Id: Ifa826ac8f2bf28225572e0c664f18ffa5e78c302
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
2012-07-28 04:32:07 +02:00
Jeremy Katz
e2f40da257 removed duplicated docs in android qsharedmemory and systemsemaphore
Qdoc sees all source and header files, rather than the subset selected
by qmake. This leads to qdoc errors when the same functions are
documented in multiple implementations.

In the cases fixed here, all documentation was duplicated, so no
information was lost.

Change-Id: Id7f8e2e617862a3778d0b05b38d8811aad456ac5
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-07-28 04:30:38 +02:00
Stephen Kelly
339dc331fd Specialize QTypeInfo for QUrlTwoFlags to mark it PRIMITIVE.
QTypeInfoMerger combines the typeinfos for the (PRIMITIVE) flag arguments.

Change-Id: I5abf00489491d099f2bf7ba25c191a771a383d78
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2012-07-28 04:30:19 +02:00
Stephen Kelly
bb0ef1cc5b Mark the QFlag and QIncompatibleFlag as primitive.
Change-Id: I7dab4d029e7840fe4778a750a8dd7367675d7a27
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-07-28 04:29:48 +02:00