Commit Graph

23742 Commits

Author SHA1 Message Date
Liang Qi
4dd8a63fc1 Merge remote-tracking branch 'origin/5.5.0' into 5.5
Conflicts:
	src/plugins/platforms/cocoa/qcocoafiledialoghelper.h

Manually fixed src/testlib/qtestcase.cpp to return the right type.

Change-Id: Id1634dbe3d73fefe9431b9f5378846cb187624e4
2015-06-27 13:54:35 +02:00
Mike Krus
5757b8c516 Return format as specified in original QWindow
Overload QPlatformWindow::format() to return the desired format
defined in the QWindow. This is required for windows that define
specific surface formats (such as those used in Qt3d which require
a depth buffer).

This is similar to what is done in the OS X Cocoa QPA plugin.

Change-Id: I7661a2a9c4e13603d03d3a5be10d000f73c712e6
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2015-06-26 06:54:49 +00:00
Thiago Macieira
3de7a966f1 Fix warning with MSVC 2013
warning C4100: 'name' : unreferenced formal parameter

This is despite the new Q_ASSERT "using" its expression even in release
mode.

Change-Id: Ieebfc4ab72a6493eaa68ffff13ead0574dd78627
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
2015-06-26 06:49:38 +00:00
Friedemann Kleint
e2d3436e4d Windows / Wifi plugin: Refactor code resolving symbols from wlanapi.dll.
Instantiate QLibrary once and use member functions instead of using
the static functions which instantiate QLibrary in each call.
Strip suffix from file name.

Task-number: QTBUG-46710
Change-Id: Ia6ec5542e1104ea9024961dda202e6f22bcf5b69
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-06-26 06:49:29 +00:00
Friedemann Kleint
97207e2c7f Prospective fix to stabilize tst_QAbstractItemView::task200665_itemEntered().
The test tried to position the mouse cursor over item #0 . This
sometimes results in the cursor being outside the window when
the window manager adds the window decoration on X11.
Move the cursor to the center of the window instead.

Add cleanup slot checking top level leaks, remove empty
functions.

Change-Id: I908240e1cc3fdbe370b43eae0015272ca342a312
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-06-26 06:48:32 +00:00
Thiago Macieira
fae33bfbe3 Update the changelog with the LTS discussion results
And include one more ChangeLog entry that was committed to 5.5.0

Change-Id: I255870833a024a36adf6ffff13eb0808447c50f8
2015-06-25 15:58:28 -07:00
Konstantin Ritt
9901bfe914 Simplify permission flag handling a bit
Change-Id: I753f7a398c39e7300821658f27e4813c591eebc3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-06-25 16:53:57 +00:00
Tor Arne Vestbø
a79dd87f3f Add lancelot test for Emoji text rendering / color glyphs
Change-Id: Id69c28ec49be660e40beaf37bad9ac0d4ce0662d
Reviewed-by: aavit <eirik.aavitsland@theqtcompany.com>
2015-06-25 16:53:50 +00:00
Oswald Buddenhagen
f2b7a523da (mostly) build system changelog for 5.5.0
Change-Id: Ib68a73574a2c6c13e90484ad5a86398e1cea24cd
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-06-25 06:54:47 +00:00
Olivier Goffart
021ffbfc6f Changelog: Document the SIC related to indirect includes
Because of 90e7cc172a

Change-Id: I3e9339d6e07d6564e38f3f25df28644437ed5955
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-06-25 06:54:40 +00:00
Konstantin Ritt
7082c20e4a [QFontMetrics] Mark obsolete charWidth() method for deletion in 6.0
It was obsoleted for quite a while already and we forgot to get rid
of it the last time.

Change-Id: Ib15e71829e80648aa667a6b0af31698460b99cc1
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-06-25 00:17:17 +00:00
Christian Kandeler
ec8c1dcf14 Make QDir::relativeFilePath() return "." for a path to itself.
The rationale being that the empty string is not a valid path component.

[ChangeLog][QtCore][QDir] QDir::relativeFilePath() now returns "."
instead of an empty string if the given path is the same as the
directory.

Change-Id: Ibcf31904b2ae5edf5639d4c2e5ba234365d347fd
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-06-24 15:43:58 +00:00
Gabriel de Dietrich
0e41a58fb8 QPageSetupDialog: Add missing Q_DECL_OVERRIDE
Also removed unnecessary virtual specifiers.

Change-Id: Id3e0fcf6916d4ccde351e5456e4f92f3cbedc3f6
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-06-24 15:24:14 +00:00
Gabriel de Dietrich
02ea023521 Add missing Q_DECL_OVERRIDE in Cocoa specific header files
Change-Id: I91831390e9e0d97ab28f0e34ca0573fb2c84e954
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-06-24 15:24:10 +00:00
Kai Koehne
235292710b Doc: Improve code snippet in QTranslator overview
Use translator::load(QLocale(), ...) which loads the a translation mapping
the users preferred languages, instead of just hardcoding one. This is
arguably the more common (and interesting) case.

Also, QPushButton::tr() does place the string in the "QPushButton"
namespace, which is just wrong (TM).

Change-Id: Id22851556b3f876da3b756b452811e07fc7b173e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-06-24 10:48:23 +00:00
Kai Koehne
fa09699918 QLocale: Fix example return value for uiLanguages()
The documentation (correctly) states that the first item in the list
is the most preferred one. Anyhow, then it doesn't make much sense to
list "en_US" after "en".

Change-Id: Ib88e5c97d4329b444d1cb49eeb49eaed2ddedad3
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-06-24 10:48:17 +00:00
Tim Blechmann
32ce3b0eaf cocoa: QNSView - guard implementation against deleted window
when embedding a QWindow into a native cocoa gui there are cases that the
QWindow is destroyed while the QNSView is still available. this patch
makes sure that the m_window pointer is cleared when the QWindow is
destroyed and adds checks to the implementation to avoid that m_window
is called when it has already been destroyed.

Change-Id: I7e0614969dedb87b54df74d542a8c1fb15d8acf0
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
2015-06-24 07:25:28 +00:00
Thiago Macieira
f64736188f Don't document the IsGadget flag
There's still some discussion as to whether it's safe to use. Until
we're completely sure, don't let users use it. We can always bring it
back later.

Change-Id: I049a653beeb5454c9539ffff13e5e3e343da0e7d
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
2015-06-23 10:37:07 +00:00
Andy Shaw
bac1116d49 Only require polling when running on Windows XP
Since the restriction for what gets notified for Wireless network
configurations is only on Windows XP then we only want to do polling on
Windows XP. This gives a performance boost as it does not query every 10
seconds for no reason.

Task-number: QTBUG-40332
Change-Id: I73e3903834abe9ffc5adc678de20f7428a578d89
Reviewed-by: Richard J. Moore <rich@kde.org>
2015-06-23 05:56:36 +00:00
Oliver Wolff
756d451a15 winrt: don't return invalidated timers in QEventDispatcherWinRT::registeredTimers
Change-Id: I0dbad7a78080cd8c18893fea8294cf540a5e9e5e
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-06-23 05:47:17 +00:00
Oliver Wolff
bf24838c33 Use qthread_win.cpp for WinRT as well
Since of Windows (Phone) 8.1 most of the desktop's thread functionality
is also available, so we might be able to share the code and get rid of
the extra implementation for WinRT.

Task-number: QTBUG-43837
Change-Id: I0ce907cd94899834527f88c70e1e395bafdb14b3
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-06-23 05:47:14 +00:00
Thiago Macieira
4ce05c6084 Disable C++11 thread_local with ICC on OS X
It appears the ABI is lacking support for this at this point in time,
even though __thread works. ICC 15 works, probably by making it an alias
to __thread, but neither ICC 16 beta nor Clang work with thread_local.

Intel-bug: DPD200371699
Intel-ID: 6000107242
Change-Id: I049a653beeb5454c9539ffff13e639bdb83b8843
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-06-22 22:52:40 +00:00
Thiago Macieira
741a7aef58 QtTest: Increase the size of the alternate stack
The default (8kB) isn't enough for modern Linux on x86-64. I can't
exactly account for it, as the size of the xsave area is 0x340 bytes,
plus the regular area it's still less than ~1.5 kB. But empirically we
can see that 8kB causes a SIGSEGV when a signal is delivered, while 16
kB works.

Since we're increasing the size, let's make sure it ends up in a
separate page from the rest of the .bss data.

Change-Id: I5d1e6f7607404caa96e4ffff13e84c87c33723c7
Reviewed-by: Jason McDonald <macadder1@gmail.com>
2015-06-22 22:22:51 +00:00
Laszlo Agocs
706af26acc Do not claim TextureRGFormats on Mesa with GLES
Mesa provides GL ES 3.0 so using GL_RED in place of GL_ALPHA should work.
This is apparently not the case.

Task-number: QTBUG-46605
Change-Id: I4f661487b47e9cc11f5de110196ec37150c99c7f
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
2015-06-22 21:15:37 +00:00
Laszlo Agocs
8aaf8d33e1 Disable surfaceless QOffscreenSurface with Mesa
With Intel at least Mesa is unable to handle surfaceless contexts in
glReadPixels(). This cripples QOpenGLFramebufferObject::toImage() and
potentially others too.

Task-number: QTBUG-46605
Change-Id: I07c1015eca67b8add14496ec0df0e0c17ac3d896
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
2015-06-22 21:15:31 +00:00
Friedemann Kleint
993889401b Revert "Windows: Use DND effect chosen in DragEnter/Move for Drop."
The change causes items in QListWidget and QTreeWidget to disappear during
InternalMove since the widgets modify the actions of the event
to remember an internal state.

This reverts commit 988f1b2e57.

Task-number: QTBUG-46642
Task-number: QTBUG-43466
Change-Id: I27d888d7a1fdfcf8eaf8806ccd4ca33b292b9d8c
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-06-22 14:32:44 +00:00
Thiago Macieira
4fe865ac7a Doc: document future direction of QCoreApplication::notify()
It will definitely not be called for events outside the main thread, but
we haven't decided for the main thread, in Qt 6.

[ChangeLog][Future direction notices] In Qt 6,
QCoreApplication::notify() will not be called for events being delivered
to objects outside the main thread. The reason for that is that the main
application object may begin destruction while those threads are still
delivering events, which is undefined behavior. Applications that
currently override notify() and use that function outside the main
thread are advised to find other solutions in the mean time.

Change-Id: I27eaacb532114dd188c4ffff13d5a5c8df3bc85b
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-06-22 12:04:15 +00:00
Tim Blechmann
b0a9eddf4d testlib: fix compile error with macosx10.8
[NSDate date] returns an id, so one needs to send a message instead of
accessing a property.

Backport commit 92b3397a from the 5.5 branch.

Change-Id: Id70915e1ac23994a081765e0a527802fef61b573
Reviewed-by: Tim Blechmann <tim@klingt.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-06-22 12:03:57 +00:00
Laszlo Agocs
f0fecf7b61 Fix incorrect warning message in QOpenGLWidget
Change-Id: I3b99894171a3e63b75a14357a1be0c0dd1f45e93
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
2015-06-22 08:28:28 +00:00
Laszlo Agocs
52c35c1ce7 xcb: make it possible to disable gl integrations
By setting QT_XCB_GL_INTEGRATION to the special value "none", no plugins
will be considered for loading. This matches what eglfs does with
QT_QPA_EGLFS_INTEGRATION.

This allows widget or raster-QWindow-only apps to start up faster by not
spending time on plugin loading and potential initialization steps there.

Task-number: QTBUG-46765
Change-Id: Ifeec3548a9b58f619a18e0be75fe4a9f489677a9
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
2015-06-22 08:28:24 +00:00
Eirik Aavitsland
03fd8fa463 Further tune curveThreshold setting based on strokeWidth
ad9698713f reduced the curvethreshold
for wide lines, to fix QTBUG-46151. But as a side effect, the
threshold was increased for lines of widths >=0 and <4.  This commit
fixes that, and also adds a lance test for the issue in QTBUG-46151.

Change-Id: I52507db622435fe1d2646640cb0bd9cd8222e453
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
2015-06-22 08:19:57 +00:00
Jochen Seemann
ee73df8363 allow running msvc2013 mkspecs from msvc2015 shell
Visual Studio 2015 integrates the Windows Runtime development
tools, including the msvc2013 compilers.
This patch fixes the error that mspdb120.dll is missing.
It is typically included through PATH variable of the shell,
which points to the "wrong" location in this case.

Change-Id: I46289721912d6b517c6083612582f67536d28b11
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-06-22 07:53:29 +00:00
Gabriel de Dietrich
1fb3273cfd Detect and set Xcode 6.3 clang version
This becomes necessary to avoid compilation errors with
Xcode 7 and clang 7.0.0. (Note that its version information
doesn't state which LLVM version it's based on, though we
suspect it could be 3.7.0svn.)

Change-Id: I2bfc7f2b73ca7a61798b123cc2715037028f0e5f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-06-22 06:25:05 +00:00
Topi Reinio
fb46d63e41 Doc: Update the list of highlighted examples
Remove highlighting for a number of older and less relevant examples.
Add examples from new modules, and examples that have been visually
polished.

Task-number: QTBUG-37203
Change-Id: I4e9be9a54f1ecea3bb407c049c1d44a7c00333a6
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-06-22 06:24:59 +00:00
Oliver Wolff
dbddb1751e winrt: Fixed connectToHost, which is meant to be synchronous
Task-number: QTBUG-46339
Change-Id: I413fef39424a0815ef4604000f85ad37ac2b4dc2
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-06-22 06:24:54 +00:00
Joerg Bornemann
059e1df345 fix PCH related regression in vcxproj generator
When PRECOMPILED_HEADER is set to foo/bar/stable.h and
PRECOMPILED_SOURCE is empty, then a C++ file foo/bar/stable.cpp
is generated that contains the include "stable.h".
We must pass the exact string "stable.h" to the /Yc compile
switch instead of "foo/bar/stable.h".
Commit dc612acdc6 introduced this
regression to allow to have PRECOMPILED_SOURCE in a different
directory than PRECOMPILED_HEADER.

Change-Id: I1a7e096c0455b946a5660d23c70c72abd4c7ac1b
Task-number: QTBUG-46679
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-06-22 06:24:47 +00:00
Friedemann Kleint
56aad2ad60 Fix global coordinate mapping for child widgets in QGraphicsView.
Move the code path handling widgets embedded in QGraphicsProxyWidget
into the loop moving up the parent hierarchy.

Add child widget to test.

Task-number: QTBUG-41135
Change-Id: Ibd86413faaa927145a85a2f5864f162979135053
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-06-21 00:17:41 +00:00
Dyami Caliri
54675bdf7d QCocoaMenu: Fix crash with 10.7 QFileDialog shortcuts
Set target and action in menuHasKeyEquivalent in order to match
the specification, and to avoid QFileDialog crashes on OSX 10.7.

Task-number: QTBUG-17291
Change-Id: Ie8f88cbda31a42c3e1acd8d4ad36d54a295eac65
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
2015-06-20 21:29:37 +00:00
Samuel Gaist
8481500f63 Improve QString doc when using non-spaced numbered place marker
Currently when a developer uses a string like
QString("%1%3%2").arg(x).arg(y).arg(z) he can be bitten by the
sequential replacement done by QString. Adding an example with a little
explanation should help future Qt user avoid generating buggy strings.

Task-number: QTBUG-44044
Change-Id: I81e20af8d9fb2a07e12ec61dcd5bb4544d863777
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
2015-06-19 23:23:31 +00:00
Thiago Macieira
94e364464e Autotest: make the test pass with the Intel compiler
The Intel compiler defaults to "fast math" mode, which is why those
tests had been failing. So for the test that is trying to check whether
we conform to IEEE strict requirements, turn on strict requirements.

Change-Id: I02f8426b1c8e4241ac10ffff13e8efa224f313b2
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-06-19 23:22:34 +00:00
Thiago Macieira
b2be272d35 Make QMetaObject::Connection check its state deeply
Since Connection can be copied, one copy could be used for
disconnecting, but the other's d_ptr wouldn't get updated and would
continue to report as still connected.

This patch fixes that by making it check the internal state. That is
only done after d_ptr is already known to be non-null. Unfortunately,
that is the common path:

  if (connect(sender, &Sender::signal, [] {}))

will call an out-of-line function. I don't see a way out.

Task-number: QTBUG-46213
Change-Id: I66a35ce5f88941f29aa6ffff13dfb45dca68a350
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-06-19 23:22:33 +00:00
Thiago Macieira
54589f2932 Autotest: Check where global event filters get run
Global (application-level) event filters are supposed to be run only in
the main thread, so ensure that it is the case.

Change-Id: I27eaacb532114dd188c4ffff13d5a17d991b8bd2
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-06-19 23:22:30 +00:00
Thiago Macieira
e70d4b9899 Use the default QLocale for QFileSelector, not the system locale
The default locale is the system locale, unless you changed the default
with QLocale::setLocale(). If you did that, you probably want it to
apply to QFileSelector too.

Task-number: QTBUG-45951
Change-Id: I0d4913955e3745b69672ffff13db5a2c7f8b1227
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
2015-06-19 23:22:09 +00:00
Alexander Volkov
36df3305f9 xcb: Map touch points to screen coordinates
Add QPointF overloads for QXcbScreen::mapToNative() and
QXcbScreen::mapFromNative(). Use mapFromNative() to map
the coordinates of a touch point to screen coordinates
as we do it for mouse events. It fixes touch events when
QT_DEVICE_PIXEL_RATIO is set.

Change-Id: Id8362cda526e0f837b76899eba21d9bfc895988c
Task-number: QTBUG-44840
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
2015-06-19 10:49:49 +00:00
Gunnar Sletta
de81159574 doc: mark QWindow::requestUpdate() as \since 5.5
Change-Id: I322e2e93edc4bdb6582c7614b9a8552221317553
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
2015-06-18 05:54:02 +00:00
Sune Vuorela
a8621a3f85 Respect manual set icon themes.
Currently all icon resolving is passed thru to the platform icon engine,
even in the case where the application developer has set their own
requested icon theme. In that case, the application developer
specifically does not want to follow the icon theme of the system, so
don't ask the platform, but rely on Qt code instead.

It leads to bugs reported to platform icon theme providers like this:
MMC: https://github.com/MultiMC/MultiMC5/issues/796
KDE: https://bugs.kde.org/show_bug.cgi?id=344469

Thanks to the multimc people (Jan Dalheimer and Peterix) for the
reports and testcases.

Change-Id: I52cda6f688b2ef9e44e060c8ae67831cb02b26c8
Reviewed-by: Eike Hein <hein@kde.org>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-06-18 04:57:02 +00:00
Shawn Rutledge
aec2b28eea OSX: show file dialog in showCocoaFilePanel, don't wait for exec()
This reverts commit 21e6c7ae47
because in QtQuick.Controls, we do not call exec(): we just set the
dialog visible.  If it is a sheet, then it is already acting as a
modal dialog, basically.

Task-number: QTBUG-46691
Change-Id: I7fe89f2a2ade0d4ddcf540c9bfc4f5963a077471
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
2015-06-17 16:55:52 +00:00
Topi Reinio
997f52b83d qdoc: Keep track of attributes written to example manifest files
The content written to example manifest files can be extended with
additional metadata in the form of xml attributes. In order to
avoid invalid (duplicated) input from generating malformed xml,
QDoc now keeps track of the attributes and only writes metadata
that hasn't already been written.

Task-number: QTBUG-46692
Change-Id: I645935fa8f32b915b7335c400f5a8f2cf72802b7
Reviewed-by: Martin Smith <martin.smith@digia.com>
2015-06-17 16:55:40 +00:00
Olivier Goffart
0e8d657ae0 Changelog: Mention changes regardig Q_GADGET
Change-Id: I8d0e76bd1f9697c48f88452555e6792ab124074a
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-06-17 16:55:25 +00:00
Kai Koehne
39f53be619 Doc: Remove link to deprecated QProcess::pid()
QProcess::pid() is deprecated since Qt 5.3. Rather link to it's
replacement.

Change-Id: Iaea86137a046513809f9f92ff88fe21233adaa34
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-06-17 16:55:03 +00:00