Commit Graph

6446 Commits

Author SHA1 Message Date
Konstantin Ritt
65ae2151c3 mingw: fix a lot of annoying warnings
like "QRect::intersected() redeclared without dllimport attribute
after being referenced with dll linkage" (-fno-keep-inline-dllexport)

Change-Id: Id24e5ee857579ee9f97a60de0ab88ce3db8385cf
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-20 10:29:14 +02:00
Morten Johan Sorvig
128b7c56b7 Implement QCocoaWindow::setWindowState.
Add window state change notification logic. Send
and expose event in addition to window state change
on window restore since the QWidget logic expects
this.

Modify QCocoaWindow::setVisible to sync up window
state that may have been set on the hidden window.

Refactor NSWindow event observing to use one observer
function for all notifications.

Add window state testing to tests/manual/windowflags
Add delay after showFullScreen in tst_qstatusbar to
wait for the Lion fullscreen transition.

Change-Id: I57c523cedd0644d4181b40d72046fad4fdb09a9c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-04-20 10:29:14 +02:00
Morten Johan Sorvig
872f567d53 Set the window title for the QWindow as well.
Change-Id: I2ff20307974c4b6a2a4fb09d09941d0a0dd09d0e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-04-20 10:29:14 +02:00
Jason McDonald
1a65fa711a Remove insignification from QComboBox test on Ubuntu 11.10.
This test has not failed in the last 400 CI runs.

Task-number: QTBUG-23639
Change-Id: I2a8e105ebcba3654a6aac4fd8207c8fbcd2c4db3
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
2012-04-20 10:29:14 +02:00
Eskil Abrahamsen Blomfeldt
ca5918c8b8 Retain bidirectional marks when eliding text
When the text contains unicode markers for bidirectional
text, these will not affect the width of the text, but they
might affects its layout. Thus, we need to retain these
markers in the elided text to avoid the layout of the string
changing when its allocated width changes.

Task-number: QTBUG-3768
Change-Id: I3866c32cd1dcd5fff2b8fa5b25ae89e551531a97
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2012-04-20 10:29:14 +02:00
Samuel Rødal
528cb10d53 Made hellowindow example respect the expose event.
The expose event is sent when the window can start rendering.

Change-Id: Ifdfb01a107e3bf665fb7be65802cdaabea4c5a34
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
2012-04-20 08:14:22 +02:00
Donald Carr
408f3fb200 Adjust device mkspecs to use qpa default plugin var
Change-Id: If7be3517a423324e744805e8508eb9277a600ed4
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-20 03:39:10 +02:00
Martin Jones
1946740446 Provide versions of qRegisterMetaType() that do not normalize typename.
QML is quite capable of providing typenames in the correct format.
qRegisterNormalizedMetaType() does not normalize the typename, so
avoids the huge overhead.

Change-Id: I96c9a42fe0b5d36ac05a9247f6507dbf9583fa67
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
2012-04-20 03:39:10 +02:00
Michael Brasser
7e9f7080b7 Minor QObject::receivers() optimization.
Don't lock if there are no receivers.

Change-Id: I922fad10436adeb27aa4f193cc0dcbaa3f0c0f1e
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-04-20 00:32:53 +02:00
Michael Brasser
5533cc9953 Minor QObject::receivers() cleanup.
Return 0 rather than false; remove extra Q_D().

Change-Id: I3dac733c3fae27c76790f09fd6b63356767a0363
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-04-20 00:32:43 +02:00
Michael Brasser
56d78e5086 Add a receivers callback to QAbstractDeclarativeData.
Change-Id: I767fabd66c7de535db26e779855d21ec5b94e947
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
2012-04-20 00:32:32 +02:00
Andy Shaw
a48d9b52c3 Fix compilation with QT_NO_DEBUG_OUTPUT defined
Change-Id: If96e93c08240e0f626f8e465993b2c38b2cad832
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-04-20 00:29:39 +02:00
Stephen Kelly
384eec86e5 Ensure that this widget has focus before sending a keypress.
This doesn't fix the bug, but confirms that it is CI flakyness.

Task-number: QTBUG-21098

Change-Id: Ic37a7574af88205371f4b2c24113d12b1386835c
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-04-20 00:29:39 +02:00
Stephen Kelly
b780196a95 Add some more output to debug a flaky test.
Task-number: QTBUG-23638

Change-Id: Ib6a8634ede4b6461e41ce6843ac2654dcd1999f5
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-04-20 00:29:39 +02:00
Konstantin Ritt
8e09e0dc45 QImage: fix declaration of inline methods
Change-Id: If97f423329705dccf98742089362db9eecb55087
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-04-20 00:29:39 +02:00
Thiago Macieira
5d0da01b54 Mark qt_assert and qFatal as non-returning functions (excpt. MSVC)
This allows the compiler to optimise the code a bit better: since they
don't return, it can assume in the code after the Q_ASSERT that the
condition was true.

MSVC is the exception: with MSVC, we have the CrtDbgReport dialog,
which allows the developer to continue execution, inside the
debugger. Therefore, we can't mark any of those functions as
non-returning because they can, after all, return.

Unfortunately, the Q_ASSERT usually expands to no code in release
mode, so the improvement in code generation happens in debug mode
only...

Change-Id: I4d542d6853cd51c71ffab1d563ed64ef7c419115
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-04-19 22:15:16 +02:00
John Layt
886aea1250 PrintSupport - Remove Qt5 To-do Messages
Task-number: QTBUG-25085
Change-Id: I4cf3cc4827f5cc0eeade36cfde94472fab3abb92
Reviewed-by: John Layt <jlayt@kde.org>
2012-04-19 22:15:16 +02:00
Jason McDonald
5fc7490f95 Remove insignification from QMdiSubWindow test on Mac OS X.
This test has four stable failures. Mark those with QEXPECT_FAIL and
re-enable the test.

Task-number: QTBUG-25297
Change-Id: Ic5304443c4467c46f70ef033c8f17d7f3732294c
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-04-19 19:46:07 +02:00
Jason McDonald
7d422688c2 Remove insignification of qsocks5socketengine on Ubuntu 11.10
The test has one stable failure on CI, but that failure is not observed
by all Ubuntu 11.10 users. Mark that failure with QEXPECT_FAIL when it
is going to fail and re-enable the test, following the pattern
established for the qtcpsocket test on this platform.

Task-number: QTBUG-23380
Change-Id: Ic7546595f314c55ebd36957ada92978141a1c509
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2012-04-19 19:46:07 +02:00
Friedemann Kleint
7f533cdd4a Remove Q_WS macros from qwidget-test.
- Remove Q_WS-ifdefed sections and switch by platform name instead.
- Remove Q_OS_IRIX and Q_WS_QWS conditionals
- Fix deprecated QPixmap::grabWidget(), QPixmap::grabWindow()
  calls.
- Use QTest::qWaitForWindowShown() instead of
  qt_x11_wait_for_window_manager().
- Rewrite some platform-specific code using QPA interfaces.

Change-Id: I29ce4c4f3e5c05edddfd018dc2eabdd77738eb23
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-04-19 19:46:07 +02:00
Shane Kearns
a6156d1aed Add test case for checking ConnectInBackground is set
ConnectInBackground should be set when opening a network session
due to a background request. This test checks that.
Unfortunately, none of the bearer plugins currently in Qt Base support
this attribute, so the test result is inconclusive.
(testing with a debugger shows the attribute is set correctly, but
it can't be read back as the set is discarded by the plugin
implementation)

Change-Id: Idcf777fe489a62d4ff5007ffd291a84ba052311b
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2012-04-19 19:46:07 +02:00
Shane Kearns
af100dbd7e Abort background requests if policy changes to disallow them
Using the policy change signal from QNetworkSession.
If the new policy disallows background requests and this is a
background request, then generate an error.
This results in a TCP RST on the socket, and a
BackgroundRequestNotAllowedError on the QNetworkReply.

If the reply is already finished, no action is taken.

Change-Id: I4ff5c681a8b7b852727bb95f03664d666f4efe07
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2012-04-19 19:46:07 +02:00
Shane Kearns
ddf040eccb Expand tst_QNetworkReply::backgroundRequest to ftp & https
Ftp and Http have different implementations of QNetworkReply,
so test both of them.

Change-Id: If502fa1788110edf89e619966534eea08830a19b
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2012-04-19 19:46:07 +02:00
Shane Kearns
a1e961705c Connect usagePoliciesChanged signal to the QNetworkReply
Change-Id: Ibb8ba0b3226e402dfa9a5a1a64faa80702b11dd7
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2012-04-19 19:46:07 +02:00
Shane Kearns
96fe7dad38 Set ConnectInBackground also for http implementation
Change-Id: Id82322250d86f35702036c64d725c9d093046d5b
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2012-04-19 19:46:07 +02:00
Mark Brand
8e053a5dfc fix static library names when generating .pc files for pkgconfig
219a688ac1 added the version extension
which only occurs on the DLL import library.

Change-Id: Ie913adf039d7f3a9aadf43f4af014289a8aeacbe
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Hib Eris <hib@hiberis.nl>
2012-04-19 19:46:07 +02:00
Friedemann Kleint
93b34badfe Add a manual test for the window geometry.
Test positioning QWindow and QWidget (frame / normal geometry)
for testing QPA plugins.
The test can be built with  Qt 4 for comparison.

Change-Id: I695bf28d5fdf738262d322518d01ad04aa5056f5
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
2012-04-19 19:46:07 +02:00
Jason McDonald
c1bfcb29ff Remove insignification from QMenuBar test on Ubuntu 11.10.
This test hasn't failed in the last 400 CI builds.

Task-number: QTBUG-4965
Change-Id: I2ff03b7a12906a2b583b3127bf47c12b901ed319
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
2012-04-19 17:05:41 +02:00
Kim Motoyoshi Kalland
8aa0be210a Removed legacy pixmap and image cleanup hooks.
Task-number: QTBUG-25114

Change-Id: Id87172665ec15874e293e3891738e6366aef4554
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2012-04-19 16:57:08 +02:00
Konstantin Ritt
907909d858 fix qsslsocket build in -permissive mode (assigning const char* to char*)
Change-Id: I76269630ebabdf601c2fcb5f65a8dffbd6cdbc5e
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2012-04-19 16:44:47 +02:00
Girish Ramakrishnan
0074cc5d34 Fix detection of default platform plugin.
Let configure generate the QT_QPA_DEFAULT_PLATFORM_NAME in
qconfig.h. This allows us to override the platform name
using a configure argument.

This commit adds -qpa <platform> that lets the user specify
the default platform at configure time. Note that the default
platform is not checked against the tree since plugins are
allowed to exist outside the Qt source tree.

In the absence of -qpa argument, configure checks the mkspec
for a variable named QT_QPA_DEFAULT_PLATFORM. This check is
implemented only in the unix configure because it will be primarily
used in custom mkspecs (devices, boards).

If -qpa argument is absent and the mkspec variable is absent,
the default value is determined based on the OS as below:
    Unix - "xcb"
    Windows - "windows"
    Mac - "cocoa"
    QNX - "qnx"

Done-with: Jørgen Lind

Change-Id: I0df31811a1b901a3242bfada1232e596ebda04f4
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2012-04-19 16:40:29 +02:00
Bjoern Breitmeyer
14ea50598f Fixed QSimd WindowsCE build
Change-Id: I94de251cf1f283d30f92d0fb9d37a1646765cbdd
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-04-19 16:27:22 +02:00
Jason McDonald
2b130d0cf6 Remove insignification from QDoubleSpinBox test on Ubuntu 11.10.
This test has not failed during the last 400 CI builds.

Task-number: QTBUG-23641
Change-Id: Ibcb840679e023db41456e41eedcfcc38ecedbaac
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
2012-04-19 16:25:55 +02:00
Andreas Holzammer
90292529b9 Compile fix if QT_NO_CLIPBOARD defined
Change-Id: Ie8ecaa2ba8f99d0b531b3a81b5f0005508e677eb
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-04-19 16:20:28 +02:00
Andreas Holzammer
4acb8bfc59 Compile fix if QT_NO_CLIPBOARD defined
Change-Id: I818122f2b2d2119248ad2e84b138aab8ab621a41
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-04-19 16:20:02 +02:00
Konstantin Ritt
d48f3fc1e7 fix undefined behavior issue on Integrity
in contrast to ::strdup(), qstrdup() allocates memory via new[];
deallocating this memory with free() leads to undefine behavior.

Change-Id: I0692c4bef010c05de547283b00b6c6043ac24c79
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-19 15:58:03 +02:00
Konstantin Ritt
f4d02ecdbf optimize canonicalOrderHelper() for generic case
if there is no need to swap codepoints A and B,
then we proceeding with advance to the next codepoint B
that becomes A, and some next codepoint C becomes B;
in such case we can easily skip the re-calculations for A
by using previously calculated results for B

Change-Id: I5c63589c274acaddf0f6a4cb1e0608d352a0c1b3
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-04-19 15:57:38 +02:00
Konstantin Ritt
73423db31d qwindowsintegration: fix build with -no-accessibility config option set
Change-Id: I2f4080b04f61ec425d41180f0163cebcc745c1b9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-04-19 13:26:51 +02:00
Casper van Donderen
c4e308d3f7 QDoc: Generate index file for DITAXML.
This change moves the fullDocumentLocation function to the generator
base-class and adds generateIndex to the DITAXML Generator.
All function calls to fullDocumentLocation are now handled by the static
function in the base-class which will use the file extension from the
currently active generator (either DITAXML or HTML).

Change-Id: I24ce09c05a63eb5980b1243c58990e7ce9d42036
Reviewed-by: Martin Smith <martin.smith@nokia.com>
2012-04-19 13:26:51 +02:00
Jason McDonald
4de95586f1 Re-enable QGLThreads autotest on Mac OS X.
This test passes consistently on Mac OS, but crashes consistently on
Windows and fails consistently on Ubuntu 10.04 and 11.10.

Disable the test only on platforms where it known to fail, so that CI
can use it to detect future regressions on platforms where the test
currently passes.

Task-number: QTBUG-22560
Change-Id: I0def45e1ed7dd3387e42e7294a495c89bc0caea6
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-04-19 13:26:51 +02:00
Jason McDonald
970f5e18fe Re-enable QGL autotest on Mac OS X and Ubuntu 11.10.
This test passes consistently on Mac OS and Ubuntu 11.10, but crashes
consistently on Windows and fails consistently on Ubuntu 10.04.

Disable the test only on platforms where it known to fail, so that CI
can use it to detect future regressions on platforms where the test
currently passes.

Task-number: QTBUG-25293
Change-Id: I5d6a474ea1e6fdf3983f164ebc181e1dd6e3f639
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-04-19 13:26:51 +02:00
Jason McDonald
fb0978e963 Remove insignification from QtConcurrentFilter test.
This test has one unstable failure that occurs about 0.8% of the time in
CI.  Make the test catch this particular failure and re-enable the rest
of the test.

Task-number: QTBUG-20688
Change-Id: I22f5d372db77ea35163f96195ac0c174d8078899
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-04-19 13:26:51 +02:00
Thiago Macieira
77cc912590 Don't use QByteArrayLiteral for a non-stored QByteArray
Unless you're creating a QByteArray that you will store, don't use
QByteArrayLiteral. Using it for 1 byte that is always concatenated to
something else is an extreme waste.

Change-Id: Icc29e4c4cb1d0aad1714bdeec8ff41da7c301af9
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-04-19 13:26:51 +02:00
Friedemann Kleint
a633d80efe Fix font substitutions.
- Remove remains of platform-specific substitution tables in QtGui.
- Deprecate QFont::removeSubstitution() in favour of
  QFont::removeSubstitutions() (as suggested in the comments).
- Clean up substitution code, remove postfix operator++ on
  iterators and repeated invocation of .end().

Change-Id: I2e82e4ce2dd357d49e4d2b7fd6f95785acfcda95
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-04-19 11:07:25 +02:00
Girish Ramakrishnan
c0d8d97802 -device: create qdevice.pri only when build tree is initialized
The build tree is not initialized when -help is passed to configure.
The mkspecs/ directory is not created and thus the mv fails results
with the following error:
mv: cannot move `.device.vars' to `/tmp/qtbase/mkspecs/qdevice.pri': No such file or directory

The solution is to create qdevice.pri just before we run config.tests.

Change-Id: Ie83018e27a03bb840d213aae8c963b0074e62bb4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-19 11:07:25 +02:00
Konstantin Ritt
21eb4578e5 replace getenv("HOME") with a "centralized" QDir::homePath()
Task-number: QTBUG-4902

Change-Id: Ie9124de45be2d8e859f8b0aaea246e660145a1c5
Reviewed-by: John Layt <jlayt@kde.org>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-19 11:07:25 +02:00
Stephen Kelly
1f622c986b Don't fail to configure if QNX platform plugin is built.
Change-Id: I781eab2fb07fe62d733317b8a72dd899caaf5a80
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-19 11:07:25 +02:00
Thiago Macieira
a0aad0b1b2 Add a functionality test for DirectFB to ensure it compiles.
Some versions of the DirectFB headers are unclean and will cause Qt
compilation failures. So blacklist those versions. Version 1.5.3
(present in Fedora 16) is known to be buggy and gets disabled by this
patch.

The compile error was:
  qurlquery.h:169:5: error: ‘typeof’ was not declared in this scope

(qplatformcursor_qpa.h includes qevent.h which includes qurl.h which
includes that)

The error comes from the Q_FOREACH expansion. Note that Q_FOREACH uses
__typeof__, so it's supposed to be safe, unless someone ill-advised
goes and defines the GCC "safe" macro (double underscores on both
sides) to something else.

Change-Id: Ida41ee3b3c2fcba86a7e12182e7055123166693b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-19 11:07:25 +02:00
Samuel Rødal
197aa9f67f Get rid of warning when building qplatformwindow_qpa.cpp.
This Q_UNUSED was unintentionally lost in 55fa3c189f.

Change-Id: I832ee7c8d46cf66f7b63045015bef181fddebeef
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-04-19 11:07:25 +02:00
Sean Harmer
4c0289c337 Do not force OpenGL sample buffers on in the qnx qpa plugin
Change-Id: I6af40382102f2163f5ad8606b498a89db420c5d6
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-04-19 11:07:25 +02:00