Commit Graph

13685 Commits

Author SHA1 Message Date
Sean Harmer
0fa29e2875 Avoid crash when QOpenGLContext is destroyed before the VAO
Change-Id: I19df59453156a95c5075a065268333a74cec2476
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-06-28 05:28:20 +02:00
Jerome Pasion
f63369d833 Doc: Fixed link to "Downloads" page.
-previous link does not exist

Change-Id: I86cb6311145cdcb0ebccd3e141d1e413744d585a
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2013-06-27 11:40:41 +02:00
Rafael Roquetto
4a3edb5aec QNX: Fix screen rotation
The behavior introduced by qtdeclarative's 475d1ed4f6a2 mandates that an
expose event follows a geometry change event. The fix for this uncovered a bug
on the raster backing store which caused the rotation to break on QtWidgets.
The problem was rooted on the assumption that the
QQnxRasterBackingStore::flush() method was only called after paints to the
backing store surface, which was discovered to be a false assumption. Flushing
the backing store can occur in other circunstances, which are out of scope on
the context of the QNX plugin.

Task-number: QTBUG-31329
Task-number: QTBUG-31934

Change-Id: Icfc3e85324f5a8745f6b5f189f27f8b763f770c7
(cherry picked from commit 0343b92660)
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
Reviewed-by: Vladimir Minenko <vminenko@rim.com>
2013-06-26 21:41:49 +02:00
Oswald Buddenhagen
505617b171 mac frameworks: don't create bogus symlinks
the entry for the normal headers already ensures that there is the
correct version symlink. having an entry for the private headers as well
is pointless, and in fact clobbered the symlink for the actual library.

Change-Id: I2403761bf006b7bfa490ce85c7b0e46d5ef203c0
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-06-26 17:22:11 +02:00
Thiago Macieira
9e893492dd Fix compilation with ICC 13.1: the MSVC 2005 & 2008 code is bad
qvariant_p.h(226): error: name followed by "::" must be a class or namespace name
          template<class C> static Yes test(char (*)[(&C::isNull == 0) + 1]);
                                                       ^

Change-Id: I42eef44d46ca0fb7aac8f82150e917c4fb912b15
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-06-26 12:38:21 +02:00
Thiago Macieira
6086ff01f5 Replace win32-icc/qplatformdefs.h with the MSVC one
There have been fixes done to the MSVC qplatformdefs.h that aren't
reflected in the ICC one -- specially the inclusion of
windows.h. Since ICC is never tested, simply defer to the MSVC one and
hope it's enough.

Task-number: QTBUG-30839
Change-Id: I3c22638cc7fac3399d3606b1583608e95208df6e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-06-26 12:37:53 +02:00
Thiago Macieira
440a227054 Fix win32-icc build: _CHAR16T is not an indication of C++11 support
The macro comes from MSVC's yvals.h header and it actually indicates
absence of C++11 support in MSVC. It is defined if
_HAS_CHAR16_T_LANGUAGE_SUPPORT isn't defined, which is a C++11 feature.

Task-number: QTBUG-31701
Change-Id: I155b8e764f786e95a08de660f70094b2bee38937
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-06-26 12:37:41 +02:00
Paul Olav Tvete
8f8c29b1c8 Android: Fix initial window size for raster backend
We forgot to set the ShowIsFullScreen property for the raster
engine case. OpenGL windows already did the right thing, since
the GL backend is based on eglFS. The iOS backend also has
this logic.

Task-number: QTBUG-31984
Change-Id: I1cf5df32d79f441768126f00632107a7971eb5ad
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-06-26 12:36:17 +02:00
Rafael Roquetto
7e33ec97e3 BlackBerry: fix delayed root window posting on OpenGL
The delayed root window posting introduced by
77a06e7e6c broke the OpenGL support. In that patch, the posting of
the root window is trigerred by QQnxRasterRasterBackingStore's call to
QQnxWindow::post(), that obviously does not happen when OpenGL is enabled,
therefore requiring the OpenGL context to explicitly post() the root window.

Task-number: QTBUG-31934

Change-Id: Ifd302c1dde612a03b79c778ec4586aa70f88260d
(cherry picked from commit 6a9333841d)
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
2013-06-26 12:04:07 +02:00
Shawn Rutledge
e3cf87bb75 Mac OSX: get the correct key code when the control key is pressed
The control key results in modifiers having Qt::MetaModifier, and then
the correct character is found in charactersIgnoringModifiers.  The
rest of the time, [nsevent characters] seems to be correct.  If we
use charactersIgnoringModifiers too much of the time, then the keycode
will be wrong in some cases even though typing is still possible.

Task-number: QTBUG-29005
Task-number: QTBUG-31811
Task-number: QTBUG-31977
Change-Id: Ib23b89f03bc9a61fe6d177320fa603c05649e979
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-06-26 11:45:04 +02:00
Oswald Buddenhagen
3ffc86e0e6 install qconfig.h into framework bundles
Task-number: QTBUG-31969
Change-Id: I5ade18352a9989bdfd513c51c021d475f39aa7c6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-06-25 14:00:26 +02:00
Oswald Buddenhagen
01270cf672 fix bundled header creation for debug builds
the only case where we want to skip copying the bundled data (which is an
optimization only) is the debug sub-build when we are actually building
both debug and release.

Change-Id: I1f3f67ccd9a64033b133ffaf58639cd9f7107c27
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-06-25 09:18:35 +02:00
Oswald Buddenhagen
6d61dfdbb7 disable non-framework header install also for debug builds
i see no particular reason why debug builds should still get
"normal" headers.

Change-Id: I3625648549e8c234a365bab26823190ed2219cdf
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-06-25 09:18:31 +02:00
Oswald Buddenhagen
7ea8c9d0f0 install private headers into frameworks
Task-number: QTBUG-31641
Change-Id: Ifadc380c0a8983b2be93194e2e2257494b13dff8
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-06-25 09:18:25 +02:00
Oswald Buddenhagen
c0d5a4ee12 don't needlessly do QMAKE_BUNDLE_DATA+=FRAMEWORK_HEADERS
there is no point in adding a structure we don't actually define.

Change-Id: Ica43123f17eca6ebd4b5b7ec2526ebabef31c82a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-06-25 09:18:21 +02:00
Oswald Buddenhagen
7090d4a458 un-nest conditionals
it's cleaner, and it makes it possible to actually have a single else
branch.

Change-Id: I5ef917b678e2bd5a2face8ee19e942e5e952aa80
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-06-25 09:18:17 +02:00
Oswald Buddenhagen
d0e82ede55 mac framework build: always set QMAKE_FRAMEWORKPATH
don't mess with the -F linker flag manually. qt headers include other
headers via the canonical Module/Header syntax, which means that the
compiler also needs the -F flag. QMAKE_FRAMEWORKPATH does exactly that.

Task-number: QTBUG-29003
Change-Id: I5f4af1a462697cd6996c54436ccdb9fc2b216020
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-25 09:18:13 +02:00
Jake Petroules
bd97768ae5 Update for the newest Darwin-family operating systems.
Change-Id: Ib90296e35f8aa8d63692cf03ba9ffcb94a1a7687
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-06-25 07:14:59 +02:00
Bjoern Breitmeyer
1723a9861f Fixed testbuild with QT_NO_CURSOR
Removed the QCursor entry from the list of types
if QT_NO_CURSOR is set.

Change-Id: I6b8e925acedec75ed6e46b2e3fe34d0011667c91
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-06-25 07:14:54 +02:00
Kai Koehne
74ca6034e4 Fix QDir::mkpath failing for drive paths on Windows
This fixes a regression introduced in 3e2cd8ef6f. We shouldn't try
to call mkdir for just a drive letter.

Task-number: QTBUG-31862

Change-Id: I56035857aec03f9f1cceef62e82f372486b7737b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-06-24 14:51:53 +02:00
Tor Arne Vestbø
d0d158f092 Mac: Ensure that C++11 is always used when linking against a static Qt build
If Qt was built with C++11, it links to libc++, and we need all projects
that use Qt to link against the same library.

Technically, we could do QMAKE_LFLAGS += -stdlib=libc++, but that hasn't
been tested enough without also enabling C++11, so we keep the
relationship between the two for now.

Change-Id: Ic628bcbade60cc82f93707f372c2119c24d9dc8a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Liang Qi <liang.qi@digia.com>
2013-06-24 14:51:50 +02:00
Jonathan Liu
d3190572cc Use BSD licensing for QtOpenGLExtensions instead of LGPL
BSD licensing should be used for QtOpenGLExtensions instead of LGPL as
it is a static library that is linked into applications. Using LGPL
would impose additional requirements for application developers to
provide object files to end users to be able to relink the application
with a modified or updated QtOpenGLExtensions static library.

Task-number: QTBUG-29918
Change-Id: I0bb80f8ba5158be0a71fe4c5e1c37787ce21337d
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-06-24 10:16:32 +02:00
Friedemann Kleint
a4f7bb8733 Widgets: Set qt_button_down for each press.
Do not rely on release events.

Task-number: QTBUG-31333
Change-Id: I09a056fed8892715c04ca78a42ae191e5a9a3b42
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-06-24 10:16:28 +02:00
Stephen Kelly
91ca90d896 CMake: Fix test for value starting with -L
Change-Id: I02ba45beca09c2eb1b1fbdc2a8f6efbc783bd72d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-06-21 18:22:00 +02:00
Jørgen Lind
531b7d303e Fix missing shortcuts for WindowContainers
Change-Id: Iee2d97e1ff2b1f0c56b1dde4f3ce22a427fbe554
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-06-21 09:26:45 +02:00
Jørgen Lind
ad43d9a097 Fix missing focus events for mapped child windows
Its a bit brutal

Task-number: QTBUG-31776

Change-Id: I2d8b530646d1e2b2ba86f0e82d76f928c9a2bb11
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-06-21 09:26:41 +02:00
Paul Olav Tvete
07a727f8b8 Android: handle keyboard connect/disconnect
Even though the documentation says that "This should never normally
 happen", we do get a "navigation" change when an external keyboard
is connected or disconnected.

Thanks to BogDan for finding the solution.

Task-number: QTBUG-31806
Change-Id: Id92639800e617821976f842f93e09517529e14ef
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-06-21 09:26:35 +02:00
Oswald Buddenhagen
172fa29dff fix LD_LIBRARY_PATH manipulation in uic calls not being make-escaped
the evaluator has the bug that function arguments are inherited.
work around that by passing an explicitly empty 3rd parameter to
qtAddTargetEnv().
proper fix upcoming in less critical branch.

Change-Id: Ic45cc890abaa6271985590d4ebe02c96bff6dec4
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-20 12:49:14 +02:00
Peter Hartmann
f5e0ec5e16 update QtNetwork changelog for 5.1.0
Change-Id: I6392fd125657c4a4a3abb4607fa31bb0d8c0fdd6
Reviewed-by: Richard J. Moore <rich@kde.org>
2013-06-19 19:10:23 +02:00
Venu
021264a239 Tagged all those examples that work on an Android device
This change enables the developers to list all the tagged
examples on the Qt Creator welcome screen using the "android"
tag.

Task-number: QTBUG-30173
Change-Id: Ic09183eb441497506b2d35f0d83ecd5d73d724f5
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-06-19 17:10:44 +02:00
Friedemann Kleint
732dcfe7fd QFactoryLoader: Release unused libraries.
Task-number: QTBUG-31476

Change-Id: Ib2eb076afaa21ab1fdc12944f80483e3de260d4b
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-06-18 16:12:41 +02:00
Friedemann Kleint
cf8647d6aa Remove unused member QFactoryLoaderPrivate::keyList.
Task-number: QTBUG-31476

Change-Id: Ife9b25ede67837152d94cd500a1d7c6dc6cd8ab8
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-06-18 16:12:38 +02:00
Allan Sandfeld Jensen
a5ecb0bcfd Android Mute and FastForward keys mapped wrong
KEYCODE_MEDIA_FAST_FORWARD is mapped to Qt::Key_Forward,
which undoes Back. I believe the best match in Qt would be
Qt::Key_AudioForward which is also mapped by XCB from
XF86XK_AudioForward /* fast-forward audio track    */

KEYCODE_MUTE is mapped to Qt::Key_Volume_Mute, but the mute button is
for muting the microphone, the volume mute is called
KEYCODE_VOLUME_MUTE.

Change-Id: Id0b78c9bde78faef1f5d31019693e6c466941d70
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-06-17 13:59:44 +02:00
Oswald Buddenhagen
d135a311a3 make Makefiles not depend on .qmake.super
this avoids that an empty rebuild after a complete build re-runs qmake
everywhere again.

according to 1f83f0cf2a this is the behavior i originally intended,
but somehow it got lost when switching to the new interpreter.

Change-Id: Id5158d7e272fdee4f4a041fb7c828295a0a86684
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-15 21:39:40 +02:00
Oswald Buddenhagen
17c38b25f4 fix rcc & uic .depend_commands
unlike the .command, the .depend_command is not executed by make via its
chosen shell, but qmake itself via the system's native shell.
consequently, it needs different path separators and no make-escaping.

Task-number: QTBUG-31289
Change-Id: I480f815753632db6e8d4725f463f8a1fc59680a6
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-15 21:39:34 +02:00
Oswald Buddenhagen
9d48f14a3c always $-escape make commands
nmake needs %-escaping in addition to $-escaping, not instead.
this has little practical impact, so it went unnoticed.

Change-Id: I144b6142eec0151d83a22e0ac5ead7b0415cdafa
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-15 21:39:22 +02:00
Oswald Buddenhagen
c932f2cc13 fix command over-escaping in vcproj files
the vs ide executes the commands verbatim, so they must not be
make-escaped.

Task-number: QTBUG-31289
Change-Id: Ie73fd5c4da5527c2d10bc94ccdf60f8a1ca21351
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-15 21:39:17 +02:00
Oswald Buddenhagen
13e01fda19 assemble the tool commands at use time, after all
the precise syntax depends on what exactly the command is used for, so
we need to resolve it at the last moment. see followup commits.

This logically reverts commits 6f4ff81380
and 731e6bece5.

Change-Id: If285c91d7521069be86d32593b5c2ae2027b3038
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-15 21:39:12 +02:00
Shawn Rutledge
69554e4586 OSX: Disable window restoration for the Mac color panel
because if it is automatically restored it's out of the application's
control, so the user's interaction will be ignored.  Change
I8ce3cd94f5ae81d7877a346743ca4e0e188baa02 did this for normal windows
by default, but the dialog helpers generate windows which aren't
affected by that.

Task-number: QTBUG-31750
Change-Id: I636bd87b664a489a2dc8693dad5370a715b1cf7b
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-06-15 19:06:26 +02:00
Shawn Rutledge
e083aede62 Cocoa color dialog cannot be modal, but should show anyway
Silently failing doesn't seem the right way to handle this.
Updated docs for DontUseNativeDialog option: it's not just for
the Mac anymore.  Ensure that the Qt dialog and Mac panel
will never be shown at the same time.

Change-Id: Ia9e80754df6c7622d9039c8dd050ac4de771a030
Task-number: QTBUG-29161
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-06-15 19:06:21 +02:00
Shawn Rutledge
cf98d1e607 OSX color dialog can be accepted repeatedly
QNSColorPanelDelegate::finishOffWithCode sets mResultSet = true
and it needs to be set false again the next time the dialog is shown.

Task-number: QTBUG-31566
Change-Id: If1d4bb9d4e76273c6423f5bf2ae37790e8a9704e
Reviewed-by: Liang Qi <liang.qi@digia.com>
2013-06-15 19:06:17 +02:00
Peter Hartmann
dd050d35d7 network requests: do not access 1st byte of empty byte array
... because otherwise this would crash.
Apparently there are cases where the header name is empty.

Task-number: QTBUG-31667

Change-Id: I31b3e964502c05b7614c23876bb3752fa75ab22d
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2013-06-15 19:05:02 +02:00
Topi Reinio
19ed991e56 Doc: Remove Tweet Search demo from the list of highlighted examples
Don't highlight the example until it's updated to use a new version
of the Twitter API.

Task-number: QTBUG-31745
Change-Id: If7f9ac3391c549f48cfebcdbe6bdcd12eb4a3e13
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-06-15 19:04:58 +02:00
Stephen Kelly
703cca8bb7 Adjust the cmake files to find the dlls in the bin dir.
Change-Id: I840f963c3648d123b31f79aa2c8902c0ad74e982
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-06-15 19:04:53 +02:00
Shawn Rutledge
3e2cd8ef6f fix QFileSystemEngine::createDirectory race condition
During a call to QDir::mkpath(), the same path could be created
by another process, in which case the OS mkdir will fail with EEXIST.
But the docs for mkpath() state that it's not an error if it
already exists, whereas for mkdir() it is an error.  So
QFileSystemEngine::createDirectory should accept the EEXIST error
silently if it occurs while creating the sequence of parent directories
and the final leaf directory, but should fail if EEXIST happens when
it was called from QDir::mkdir(), which is when the createParents
parameter is false.  We assume the operating system mkdir() and
CreateDirectory() are atomic, so there should be no race condition
in QDir::mkdir().  It's not necessary for mkpath() to call stat()
at each level, only to check whether an existing entry is a directory
or a file.  Also added to the autotest to verify that if the
path is an existing file, creating a dir with the same name will
fail in either mkdir or mkpath.

Task-number: QTBUG-30046
Change-Id: I926352f10654fdf3b322c8685bb85ad8b8844874
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-06-14 16:57:57 +02:00
Friedemann Kleint
0bc96d1d6b Widgets: Do not create QWindow in createTLExtra().
QWidget::setWindowIcon() and similar call createTLExtra()
which creates a QWindow without setting the native attributes
on the parent, which can cause crashes when setParent_sys()
decides to delete the window.

Task-number: QTBUG-31672

Change-Id: I4c40ee12741be88b2281df90329ffb698d4009eb
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-06-14 14:40:18 +02:00
Shawn Rutledge
b6f2442371 Fix another type of crash when dragging QDockWidget in and out
QDockWidgetPrivate::mouseMoveEvent calls q->move() which can result
in a call to QDockWidgetPrivate::endDrag(), which will delete the
state struct.  Therefore mouseMoveEvent needs to check whether it's
null or not before accessing it.

Task-number: QTBUG-31672
Change-Id: I91a31620f16a80b31b65b2742e7937ae8960f0fd
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-06-13 12:01:08 +02:00
Friedemann Kleint
443253cf11 Let QTemporaryDir::stressTest() run in temporary directory.
Task-number: QTBUG-31618

Change-Id: I60aaa4f57710816cd0e22ea9b097c7e85466fd0c
Reviewed-by: David Faure (KDE) <faure@kde.org>
2013-06-12 14:12:05 +02:00
Kai Koehne
eab6700ec0 Fix crash for pressing Ctrl+C in a message box
This fixes a regression introduced with e34dccc9e

Task-number: QTBUG-31635
Change-Id: I7c991f3b98f5c51e5fb3c12db04d3ace7be87010
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
2013-06-12 14:11:58 +02:00
J-P Nurmi
2d9cd8eef8 Fix xkbcommon.pri not to override QMAKE_CFLAGS
Task-number: QTBUG-31585
Change-Id: I6628a8eececc34aef4cd358ad2c8b246d8845602
Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2013-06-12 10:18:27 +02:00