Commit Graph

9312 Commits

Author SHA1 Message Date
Thomas McGuire
e0cf3fcd8f Fix retrieving of the generic system proxy via environment variables
ignoreProxyFor() always returned true if the no_proxy was not set,
which resulted in the first token being an empty QByteArray, causing
the endsWith() check to always evaluate to true.

Add a unit test that is enabled for those platforms that use the generic
system proxy.

Change-Id: I6081ad5e0b8e2c3fee1568835907c32bde5b7772
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
2013-04-23 21:02:50 +02:00
David Faure
1ea1abeb91 Implement startup notification spec again.
This functionality was in Qt4's qapplication_x11.cpp and was missing
from the XCB QPA plugin. Ported the code from xlib to xcb.

This code was actually tested (with plasma), unlike the Qt-4.8 code which
skipped every other character...
    for (uint i = 0; i < 20 && i + sent <= length; i++)
        xevent.xclient.data.b[i] = message[i + sent++];

Provide a QPA native-function for accessing the startup id, for cases where
an application doesn't show a window, but starts another app instead, or asks
a running app to show the window on its behalf.

Change-Id: If392179efddd70a51c45a8fab4fb9d753913094a
Reviewed-by: David Faure (KDE) <faure@kde.org>
2013-04-23 21:02:50 +02:00
David Faure
71a1ff39bc qxcb: output clear error message when running on an 8-bit display
Currently, running a Qt5 widget app in Xvfb (with its default setup, 8 bit color depth)
outputs a stream of error messages, starting with:
QWidget::paintEngine: QWidget::paintEngine: Should no longer be called

Better output clearly the reason why we end up in that method: painting
on a null image, due to the unsupported image format.

Maybe this should even be a qFatal...

Change-Id: Iae8f1b057518c146bf8e034999c1b5e67ce6ef5e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-04-23 21:02:50 +02:00
Konstantin Ritt
3821047e6c Fix memory access violation
The pointer returned by unicode() was deleted right afterwards.

Change-Id: I7cef72386d02c7be42e71134f616926506d37ea6
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2013-04-23 21:02:50 +02:00
hjk
01cbd7e4b5 Remove QLocalePrivate::m_localeID
It was only used for toUpper/toLower but always computed in the
constructor, including QString::toLatin1 conversion and allocations.

This needlessly slows down all other uses, including supposedly "cheap"
operations QString::toDouble, or accesses inside QResourceFileEngine.

The benchmarks indicates that doing it always when needed is bearable.
There's still a lot of improvement potential on these code paths.

Change-Id: I88b637ee11f9f7ea614f8da4ec5df0bf40664fce
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2013-04-23 18:57:45 +02:00
hjk
649da796f5 QDataStream: Be a bit more verbose about operator>>(char *&)
This also fixes a few "sloppy" mentionings of "new" into "new []".

Task-number: QTBUG-30777
Change-Id: I3f4add07777b59cd09cac97b672c73273b3b97eb
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-04-23 18:57:45 +02:00
hjk
32629676b9 Use a QVector<QDateTime> instead of an array in QFileInfoPrivate
Since QDateTime is pimpled, default allocation is expensive and
regularly shows up in profiles of code using QFileInfo.

For Qt 6, QDateTime's data members should be put into the class
proper, and this change here reverted.

Change-Id: I94a50e467b12772e1076181eb2ac6031984d8802
Reviewed-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-23 18:57:45 +02:00
Gabriel de Dietrich
38bf6da7dd Cocoa: Fix disabled minimize button on main windows
Task-number: QTBUG-30775

Change-Id: Idec64f2cc6181e6889498171ead676d33c66e537
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-04-23 18:57:45 +02:00
Morten Johan Sørvig
56cc59110a Don't crash on a null window pointer.
Task-number: QTBUG-30731

Change-Id: Id256b915012b43d1eb85bba62cbc1d42cfb58b34
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-04-23 18:57:45 +02:00
Gabriel de Dietrich
f2fa65e4bf Cocoa: Add setAlertState(), isAlertState(), beep() functions
Also, fix operator precedence error in QApplication::alert().

Change-Id: I140ccfba29638d24bc1c97f5f9a9611f66eb6b8f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-04-23 18:57:45 +02:00
Samuel Rødal
1f6ab6a661 Fixed QGLWidget not being able to be made current with a context.
If the QGLWidget's creation is triggered by a sibling or similar being
created it would end up without the surface type OpenGLSurface. We need
to make sure the QWindow has the correct surface type to prevent
QOpenGLContext::makeCurrent() from failing.

Task-number: QTBUG-30811
Change-Id: Ifc85f9120d89bd0bed4a3911233799830cb3a0f3
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2013-04-23 18:57:45 +02:00
Jan Arve Saether
146658a10f Fixed QLayout::addChildLayout(QLayout *l) when l had a parent
Previously if l had a parent, addChildLayout would warn and skip the
reparenting, but it would still add the sub layout to the layout.
This caused some inconsistencies in the hierarchy which in worst case
could cause crashes.

Task-number: QTBUG-30758
Change-Id: I618ec3341636b97bd71e421201b22c746dcf43e1
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-04-23 18:57:45 +02:00
Friedemann Kleint
ad3b61554b Move Mac translations to .cpp file for lupdate to pick them up.
Task-number: QTBUG-30125

Change-Id: I4e56fd3021b4ef5f344d4d36ae594dd88e2aa1bd
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-04-23 18:57:45 +02:00
Stephen Kelly
ecc11ccd65 Set the sysroot if cross compiling the cmake tests.
Change-Id: Iae268f30b86a67fcf978983ca9b12f850948dd24
Reviewed-by: Volker Krause <volker.krause@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-23 18:57:45 +02:00
Thiago Macieira
06b6784c28 Fix header check: you must #include qconfig.h before QT_NO_OPENGL
Change-Id: I50518bd1b721d19e4712a6c11afb0a93afeaa7ea
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2013-04-23 16:38:09 +02:00
Frederik Gladhorn
9c47a273ff Accessibility: Ignore negative child indices in main window
Change-Id: I6b3d0b066bf20a09b43d6d80255fb8d428d38df1
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-04-23 14:10:05 +02:00
Stephen Kelly
93aa83e074 Fix typo in docs
Change-Id: I3ee3e3d061fc87c0c2ea05197b37a952c8d63dd2
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-04-23 14:07:50 +02:00
Stephen Kelly
38fea4d642 Fix build with QT_NO_CLIPBOARD
Change-Id: I138a29e1099e691770b9e3e094a108fc8c52f8cb
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-04-23 14:07:37 +02:00
J-P Nurmi
a7dc708eb5 Fix QAbstractItemModel::moveColumn()
Task-number: QTBUG-30346
Change-Id: I3d6dbe1e88bb5e2748eadabb2663f30be16f8d18
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-04-23 13:35:31 +02:00
Gabriel de Dietrich
e324f5bc0e Fix crash when deleting a QMenu on exit
If the application object is an ancestor of QMenu, dereferencing qApp
in its destructor will cause a crash.

Task-number: QTBUG-30756
Change-Id: I31a33db0fd783bb210a420618911ea8b412e9a0f
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-04-23 13:12:33 +02:00
Frederik Gladhorn
a7ce34dba4 Accessibility: Menu item should keep track of owner being valid
The QAction may stay around while the parent/owner gets deleted.
This is for example the case for some dynamically created menus.

This is required for fixing QTBUG-30792

Change-Id: I7b6122edec6def69aed77502403134e1568e21c9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-04-23 13:11:22 +02:00
Liang Qi
8d60a10462 QWindow: expose active as property
And add activeChanged signal for it.

Change-Id: I9ebe9263e99863267c3a81b9286eaa5b29222085
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-04-23 12:45:32 +02:00
Liang Qi
941f7a5283 Make requestActivate() as a slot in QWindow
Then it could be used in QML world.

Task-number: QTBUG-28667
Change-Id: Ib65ad3b271a07ba50d3ca50d61f486f829f69119
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-04-23 12:45:30 +02:00
Kai Koehne
a6e903299b Fix def files for Mingw (32 bit)
Add missing symbols.

Change-Id: I73579f13b0cbc8b4b405a50b3745785e088cf82d
Reviewed-by: Jonathan Liu <net147@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-04-23 12:45:22 +02:00
Kai Koehne
43e1c61a19 Add missing intrin.h include for __cpuid
This is already fixed upstream in

https://codereview.appspot.com/8615046/patch/1/2

Change-Id: I4b9e865f6b5622c484418a8381334381bc256887
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-04-23 12:45:16 +02:00
Libor Tomsik
2fbfad8b0d Added grabbing option for qevdevkeyboard and mouse.
Added option grab=1/0 which allows user to choose using environment variable
if the application will exclusively grab the input device or let
the OS read it in paralel(default).

Task-number: QTBUG-30004

Change-Id: If3caa8419584be46f320931ddb152a41893d8693
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-04-23 12:39:14 +02:00
Gabriel de Dietrich
3b992f8319 Enforce focus policy in item delegate's editor
Focus policy can be wider in this case given the limited scope of the
editor widget. This helps workaround platform specific focus policies,
like on Mac, were focus can be restricted depending on the widget type.

Task-number: QTBUG-30715
Change-Id: I69acf8ebff4ba16d473964c91680a1cb0235e3cf
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-23 12:32:47 +02:00
Mitch Curtis
7dd81686e8 Fix QKeySequence::toString() returning gibberish for Qt::KeypadModifier
This is the patch from the bug report with a few alterations to get it
to compile, and also with the GroupSwitchModifier code removed, as this patch
just focuses on Qt::KeypadModifier. The problem was determined to be in
QKeySequencePrivate::encodeString, which doesn't handle the
Qt::KeypadModifier flag.

Task-number: QTBUG-4022

Change-Id: Ic981eb8b5cd88c7b36892d3019b8175db4b7b6f2
Reviewed-by: David Faure (KDE) <faure@kde.org>
2013-04-23 12:26:13 +02:00
Morten Johan Sørvig
f9ecaa8825 Return GroupRole for unknown accessibility roles.
UnknownRole draws attention from the screen reader
and makes it focus on the unknown item. GroupRole
is ignored and passes focus to child items.

Change-Id: If7b4cd9ec02b1890929a709b84d897f452c39587
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-04-23 07:44:20 +02:00
Morten Johan Sørvig
d576d77f03 Don't set WA_AcceptTouchEvents on Mac OS X.
Setting this flag causes scroll event lag, so we want
to keep it off for all widgets that do not need touch
events. QPanGestureRecognizer is installed on all
QAbstractScrollAreas. Prevent it from setting the
flag.

Change-Id: Idd4fcc545ff26377607b56f75db75c2865a5fc82
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-04-23 07:44:02 +02:00
Thiago Macieira
ccb7db2ee3 Document that the mutex passed to QWaitCondition::wait must be locked
Simply say that the behaviour is undefined if you don't do what you must
do. I don't want to introduce a check: it can't be done reliably anyway.

Task-number: QTBUG-30806
Change-Id: Iba1bbbdfe62ffcb133f9c52215efdcc0ee7bd9bd
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-04-22 18:35:52 +02:00
Frederik Gladhorn
e5e54a9ceb Accessibility Windows: always check for negative child ids
Some screen readers will pass in child id's that are negative
as response to notifications.
We should always check for negative id's on incoming calls.

Task-number: QTBUG-30792
Change-Id: Idaba3d1931d35ed068cfd9f20e70aa26da427616
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-04-22 18:35:52 +02:00
Stephen Kelly
bc4fbcd215 Add IMPORTED targets for the GL libraries used by Qt.
There may be multiple libraries specified in the mkspec, such as
EGL and Mali, as used in devices/linux-sh4-stmicro-ST7108-g++, so
create an imported target for each one. Also populate the
Qt5Gui_EGL_LIBS variable with all created imported targets. Similar
variables are created for the used OPENGL implementation.

In the case of using the packaged ANGLE library, we already know the
exact locations of the binaries.

This makes it possible for third parties to use the same GL
implementation as used by the Qt build itself. As these are used only
privately by QtGui, they are also added to the DEPENDENT_LIBRARIES
of that target so that they are found for rpath-link usage.

On some platforms (eg Raspberry Pi), multiple include directories must
be set to include egl.h, as the headers it includes for vcos are a
bit scattered.

Task-number: QTBUG-29132

Change-Id: I1126da3d37cd51c88d3670347c8b6405b285efb5
Reviewed-by: Volker Krause <volker.krause@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-22 18:35:52 +02:00
Frederik Gladhorn
d257e69a79 Accessibility Mac: Implement accessibilityFocusedUIElement
Change-Id: I17b5b1f741a8b340d8f4b16f4ec39cc9a8159bfa
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-04-22 18:35:52 +02:00
J-P Nurmi
00b11ccdea Fix QTableView::doItemsLayout()
Keep the content aligned to the bottom when the view has been scrolled
to the bottom and the content is relayouted (for example due to
sorting).

Task-number: QTBUG-30653
Change-Id: I9513e295e276d25ff2068036cd80dbf91314fe84
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-22 18:35:52 +02:00
Eskil Abrahamsen Blomfeldt
241ee2ee42 Read correct font hinting config on Gnome/Unity
Fixes regression against Qt 4. This tries to recreate the logic
from 5c46d9a4c85abbcc0b5db2bbbafded3efd784cd9 in Qt 4, where we
on Gnome would override the default hint style specified in
FontConfig with Xft.hintstyle settings. This is the configuration
used for changing the hint style in the Gnome Tweak Tool.

Task-number: QTBUG-29582
Change-Id: I6b9fe2c8ff55ff080d034e5a53fc8cbb49f7651f
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-04-22 18:35:52 +02:00
Morten Johan Sørvig
353f7340a1 Revert "Don't warn on 0x0 sized windows."
This reverts commit 88272d6c04,
which accidentally re-introduced a crash.

Change-Id: Ie60bcf55f940b24f982eed4f20c6af3320b040a7
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-04-22 14:53:39 +02:00
Richard Moe Gustavsen
8a00a42d0d iOS: don't delete m_touchDevice, QPA takes ownership
When registering m_touchDevice with QWindowSystemInterface, it
will also transfer ownership to it. It will eventually be
deleted in clenupDevicesList on qtouchdevice.cpp.

This patch will also stop the app from crashing when telling it
to quit.

Change-Id: I97070efdf16b4db7d076935fbec62e60f094a7df
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-04-22 14:38:28 +02:00
Kai Koehne
38f6467b81 ANGLE: Fix compilation with MinGW
Make sure ImageSSE2.cpp is compiled with the right flags (-msse2)

Change-Id: I410bbd1fd78112d01ebd486908cd22d827e2e472
Reviewed-by: Jonathan Liu <net147@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-04-22 14:30:03 +02:00
Andy Shaw
d672ef0768 Convert the CGImage into a QPixmap after reading from clipboard
Now that the relevant function is available we can do the conversion
inside QMacPasteboardMimeTiff when obtaining an image from the clipboard

Change-Id: Ie41b0fffedf4dd3f8ef49431482bd075a69722b1
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-04-22 08:57:48 +02:00
Andy Shaw
f78842abe4 Ensure the QLineEdit::returnPressed() signal is still emitted
The signal needs to be emitted directly as the event is not passed to
the QLineEdit if the QSpinBox gets the Key_Return. Since this signal
may be relied upon then we ensure it is emitted directly.

Change-Id: I17cdec62c9f995bacfd7d3cc66d6324f26c84c67
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-21 02:01:29 +02:00
Thiago Macieira
51ee309a79 Mark that GCC 4.8.1 has support for C++11 member reference qualifiers
This also marks it feature-complete for C++11 (at least, language
features). See http://gcc.gnu.org/gcc-4.8/cxx0x_status.html and
http://gcc.gnu.org/projects/cxx0x.html.

Support for the C++11 features in the Standard Library is still
incomplete, but we don't try to detect those features anyway (see
http://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#status.iso.2011).

Change-Id: I55702ef48f757b536ebbf17e921442ff5bfc29f8
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-04-20 18:36:47 +02:00
Eskil Abrahamsen Blomfeldt
1b289379dc Don't bootstrap QT_EVAL code
For most bootstrapped tools, the QT_EVAL code will not
have any effect, because most of the tools don't instantiate
a QCoreApplication. However, qdoc is bootstrapped for cross
compilation, and will instantiate QCoreApplication which
calls the QT_EVAL code. Since the QT_EVAL code requires QObject,
and QObject requires moc, it does not make sense to compile the
eval code into the bootstrap library. Instead, we simply disable
it to make sure the build succeeds.

Change-Id: I472803572b070df041014d337c23d3f3dc0749e4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-04-20 01:35:33 +02:00
Mark Brand
0631caf555 update bundled sqlite to 3.7.16.2
Change-Id: Iae9b3012e93af3399e482e32e4bc201213567496
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-04-19 20:10:46 +02:00
Friedemann Kleint
155ff13bb6 Implement QApplication::beep().
Invoke slot "beep" on QPlatformNativeInterface. Implement for
Windows and X11.

Task-number: QTBUG-30416

Change-Id: I2be651165b899e5147818a012001d354827bb090
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-04-19 20:10:46 +02:00
Friedemann Kleint
da01deb0ac Implement alertion state for windows.
Add QWindow::alert() and QPlatformWindow::setAlertState().
Add logic to clear alertion state when the window becomes
active. The platform plugins then only need to implement a setter
and a cheap getter and need not handle activation.

Prototypically implement X11 and Windows.

Task-number: QTBUG-30416
Change-Id: Ia70c4722d812462a21f4034b7d52735c9f2bc49c
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-04-19 20:10:46 +02:00
Gabriel de Dietrich
926086b9e3 Cocoa: Disable QTBUG-30266 hack in full screen
That would set the full screen window in a weird state, where is was
full screen (but unable to exit that mode) and showing the title bar
at the same time.

Change-Id: I3ac913876f3b326504dd5af18c34181d002509d0
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-04-19 20:10:46 +02:00
Frederik Gladhorn
0d57da067b Let platform plugin decide if accessibility is active
Change-Id: I881a8ff3fedf3db73ee37046a4363c70960a92a6
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-04-19 17:52:45 +02:00
Nico Vertriest
c2059ac80d Doc: added details for QRegisterStaticFunction(plugin)
Added reference to macro Q_IMPORT_PLUGIN()

Task-number: QTBUG-30548

Change-Id: Ibc20ad52cd57d497f5a7fb5c4dd4a4c778e4a660
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-04-19 17:24:30 +02:00
Jonathan Liu
ca0e350183 QMessageBox/Win: Include detailed text using Ctrl+C to copy
Task-number: QTBUG-21150
Change-Id: I14c214e9f96892f0da4369e7253e363b7313c252
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-19 12:03:36 +02:00
Richard Moe Gustavsen
526eaeea09 qprocessordetection: add armv7s
Xcode builds projects for armv7s if a compatible device is set as
target device. If trying to include <QtCore/QtCore> into such
projects, the build fails complaining about "the usage of sizeof missing
QMutexData definition in qgenericatomic.h"

The reason is that qprocessdetection.h fails to pick up that we're
building for ARM, and includes qatomic_gcc.h instead of qatomic_armv7.h.
So we need to check for __ARM_ARCH_7S__ as well. In addition,
iPhoneOS6.1.sdk/usr/include/arm/arch.h will define _ARM_ARCH_7 if
any of the more specic ARM defines are defined, so I add this check
as well to more easy support new version of ARM7.

Change-Id: Ic51a4d7ac99f7f6ba1065f870b3ef82d1250b56c
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-04-19 12:03:36 +02:00
Stephen Kelly
a680fe609f Add the GL headers to cmake variables.
If building angle ourselves, that's just the basic Qt include dir,
and if using an external gl, look for it in the places specified
in the mkspec.

As the qopengl.h header includes the gl header, this is a 'public
include dependency' of QtGui, so it is added to the relevant
variable and the INTERFACE_INCLUDE_DIRECTORIES of Qt5::Gui.

Change-Id: I8c2c1782e0a2600032771175444b087da28433fc
Reviewed-by: Volker Krause <volker.krause@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-19 12:03:36 +02:00
Richard Moe Gustavsen
5ea3845bd0 iOS: use an explicit pointer to qiosViewController
As it stood, we always relied on the root view controller
being a QIOSViewController if isQtApplication() returned
true. For mixed application, this might not always be true
as native code can choose to replace the root view controller
at times, or even rip it out, and place it as a child of
another (e.g UISplitViewController).
This change will give an extra protection against that.

Change-Id: I0cb85796a8b82f9037c32f9e85e04e1dc7aad8e2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-04-19 12:03:36 +02:00
Tasuku Suzuki
02713994bf Make qtbase compile with QT_NO_DRAGANDDROP
Change-Id: Id1a74c6b22b388d20103b4e73f83c8345ec70ba6
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2013-04-19 09:57:09 +02:00
Mitch Curtis
f3612f39ff Make password mask characters themeable.
Task-number: QTBUG-29871

Change-Id: I3cf739a321d7917f8f8431992e29bba0871b1934
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-04-19 09:57:09 +02:00
Topi Reinio
8597458ceb qdoc: Include words from the module name as tags in example manifest
This change adds words from the module name (QHP 'project' name defined
in .qdocconf files) as tags for the module's examples. This makes
searching for examples easier in Qt Creator: For example, typing
'multimedia' will list all examples in Qt Multimedia and Qt Multimedia
Widgets modules.

Other minor changes:
    - Exclude 'qt' as a tag (not needed)
    - Exclude one-character strings as tags

Task-number: QTBUG-28720
Change-Id: I53751b7a87ff39ee7b648f865c9090c52444de76
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-04-19 09:57:09 +02:00
Richard Moe Gustavsen
e9b2d029f9 iOS: QIOSBackingStore: enable FBO depth and stencil buffer
Unless we enable those buffers for the FBO that backs the
backingstore, setting a clip region on an associated QPainter
will not work.

One apparent bug from this was the menubar. Without this patch
it appeared to never be drawn. The reason was that we ended up
drawing the menubar background over the whole menubar instead
of inside the clip region.

Change-Id: I25660cec6ce9e43fe4cd693127dca6afeb8dcf65
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-04-19 09:57:09 +02:00
Thiago Macieira
96134c6f58 Make sure to also check for null CFPropertyLists.
In 1b08e0307d, I removed the null check
by accident. It's possible for the Darwin API to return a null
property list.

Task-number: QTBUG-30760
Change-Id: Iaf0125767fe4b47c19810b70483a5219e94e4305
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-04-19 07:53:21 +02:00
Kai Koehne
e34dccc9e5 Allow using Ctrl+C to copy selected text from DetailedText in QMessageBox
Task-number: QTBUG-21895

Change-Id: Ib28f064295493595263945bc72907bf95d2cb909
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-19 02:30:52 +02:00
Morten Johan Sørvig
6e73061c58 Actually set devicePixelRatio on copy.
Followup to 7b9d4531 - the second part refactors
to call setDevicePixelRatio but the call itself
was left out.

Change-Id: I3e36452603fe1d7d53fa1a74d87169efea1c2e78
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-04-19 00:11:37 +02:00
Peter Hartmann
835e720c7e SSL internals: fix memory corruption using QSslConfigurationPrivate
We are passing a QSslConfigurationPrivate that is allocated on the stack
(in QSslSocketBackendPrivate::initSslContext()) to
QSslConfiguration::QSslConfiguration(QSslConfigurationPrivate *dd).
When the SSL context is destroyed, this object is not there any more.
So now we create a deep copy of the configuration like we do in
QSslSocket::sslConfiguration().

Task-number: QTBUG-30648
Change-Id: Iaefaa9c00fd6bfb707eba5ac59e9508bf951f8a5
Reviewed-by: Richard J. Moore <rich@kde.org>
2013-04-18 22:02:18 +02:00
Friedemann Kleint
b3bed2c8de Fix format for alpha drawing.
Task-number: QTBUG-28531

Change-Id: Ie97953950cad26776724848adc5751c861903cf7
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-04-18 22:02:18 +02:00
Friedemann Kleint
b982679940 Mac: Fix warnings about non-existing native Windows on startup.
Shown for example by Qt Designer.

Change-Id: Ia866a93a781a027aa3703f44314954888d75d436
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-04-18 22:02:18 +02:00
Sérgio Martins
cbde509965 Fix memory leak.
Change-Id: I7d308a869fdc729bd46ace336b71c7e30556d65d
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-04-18 19:54:16 +02:00
Stephen Kelly
67bd27fee2 List the Qt5::WinMain Release configuration before the Debug one.
Apply the logic from commit d7ae34fdfd
(List the Release library before the Debug library in cmake files.,
2013-02-21) to the Qt5::WinMain library too.

Task-number: QTBUG-29186

Change-Id: Ie465fef1cc0fc842d86c5bc69ab84ec65ec652d9
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2013-04-18 16:53:46 +02:00
Morten Johan Sørvig
8ddcc18ac1 Remove nativeResourceForWindow warning.
The warning is useful for pointing out the the return
value will be null. However, code that correctly
checks the return value (such as qt_macWindowIsTextured),
still causes the warning to be printed.

Change-Id: I3828992b3d5e7b08451cf0e051b937fa9d9536d3
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-04-18 15:33:38 +02:00
Gabriel de Dietrich
b381581579 Mac: Fix various memory leaks
Change-Id: Id554be11ffcf9a506c217b0dc5b96cb37c4dd57c
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-04-18 15:31:29 +02:00
Gabriel de Dietrich
2bd846f8da Cocoa Menu: Remove unnecessary retain, release/retain in the right order
Also, make sure platform menu item is deleted on ActionRemoved event.

Change-Id: Ic07a81cb77833bdffd1464abf1c81ebdee4d16e9
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-04-18 15:31:18 +02:00
Andy Shaw
8cbc7ef05c Fix the QTouchEventSequence code snippet so that it compiles
The release() function also requires the QPoint to be set which was
missing from the code snippet.

Change-Id: I4a5cd2bed0915eb1fbaac3a34fb229eac9c284df
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Geir Vattekar <geir.vattekar@digia.com>
2013-04-18 09:18:43 +02:00
Andy Shaw
9ec493fa41 Convert the new filename to native separators before checking it
If a native separator was put in the new name when renaming a file name
via the file dialog then it would correctly fail. But if a non-native
one was used on Windows then it would cause the file to be moved
instead if the directory existed.

Change-Id: If01760b8c54a69b600c9a44c7509017be70d33e3
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-18 09:18:43 +02:00
Eskil Abrahamsen Blomfeldt
eb95685556 Android: Don't crash when displaying multiple top-levels
While the raster platform plugin supports multiple top
level windows, this is not supported on the GL plugin,
so if you use GL or QtQuick2 in your app and use several
top levels, the app would crash with an error message.

A problem is that the top-level SurfaceView is a special
overlay View and does not support being stacked in a
layout. So instead, we let all windows share the same
GL surface and draw on top of each other. This works
fine for simple use cases.

We implement a new platform capability to make sure no
top level windows (even combobox popups and dialogs)
get non-fullscreen geometries. That has never
worked properly with the eglfs plugin.

Task-number: QTBUG-30473
Change-Id: Ia1438019638fc739cc93ffe79b46b81631254df2
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-04-18 09:18:43 +02:00
Jens Bache-Wiig
1770f25857 Fix GroupBox painting on Windows when not using widgets
This is simply removing some slow and rather ugly hacks that tried
to reconstruct broken data from the windows xp theme. After testing
without these hacks on both XP and Windows 7, I believe we can
conclude that these workarounds are no longer required and even
breaks our look and feel in several places.

Task-number: QTBUG-29888
Change-Id: Ifaffd660e8d9ed6dfd43657745c3fa1606d33a7c
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-04-18 09:18:43 +02:00
Morten Johan Sørvig
e25db96884 QOpenGLPaintDevice: correct painting on retina.
Make QOpenGLPaintDevice::metric(PdmDevicePixelRatio)
return d->devicePixelRatio instead of 1.

Change-Id: I4cf9dd552a700b958212edc8efb990a45e77fd66
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-04-18 09:18:43 +02:00
Shawn Rutledge
acfccd0483 Fusion & GTK styles need to check direction from style option not qapp
An RTL menu containing a menu item which opens a submenu was showing
the wrong arrow if the application's direction was not also RTL.
So now the test for QTBUG-30595 can be simplified: no need to set
the application direction, and therefore less chance of failure.

Change-Id: Id140656206c6fefea3649289477dc54c77e2dd5e
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2013-04-18 09:18:43 +02:00
Shawn Rutledge
4c7881396e An RTL submenu should be right-aligned
Task-number: QTBUG-30595
Change-Id: Iac54cae70b5a2ac6be5a750279fb390bb158776a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-04-18 09:18:43 +02:00
Gunnar Sletta
7c791171a1 Calling wglMakeCurrent on an already current context gives 100% cpu load
The problem occurs at least with nvidia cards when vsync is enabled
in the control panel.

Task-number: QTBUG-29686
Change-Id: I6fd2a3560a5baeeac7c3fe0440db85904c45026d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-04-18 07:09:09 +02:00
Friedemann Kleint
333817b9cf Do not send clipboard message to application under debugger.
Fix Qt Creator hang when copying a stack trace from an
application showing a runtime assert.

Change-Id: I874bd48643ebce1a3551644dc850cb7cf5869522
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-04-17 22:14:19 +02:00
Friedemann Kleint
9a89d614f2 Windows: Fix compile with -directwrite.
Task-number: QTBUG-30643

Change-Id: I3a2a0e767a92bc2ff9d7d241dfad6771034e6ad4
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-04-17 22:14:19 +02:00
Gunnar Sletta
5a05d0716f Emit animation driver signals after we change the state.
Change-Id: I4d5d6efdcb519cd4bb53626ae9412a4f5f130689
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-04-17 19:22:19 +02:00
Cyril Oblikov
9557cc6536 Correct dir entries caching in QFileDialog
Using QFileSystemWatcher to update cache when directory is changed. It is
needed to correctly filter files created after the dialog opening.

Task-number: QTBUG-30604

Change-Id: I5479f9a54095de59ca2ba36b2bd4906de0907ac8
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-04-17 12:31:42 +02:00
Martin Smith
c77f7229d5 qdoc: Add index of obsolete members to obsolete page
qdoc has been modified to emit a compact list of the
classes that have one or more obsolete members. The
command is:

\generatelist obsoletecppmembers

This generates an index of all such classes,
where each class name is a link to the class's
subpage of obsolete members. A class's subpage
of obsolete members is also accessible from the
class's reference page, but now it is also
accessible from this index.

Also, The command shown has been added to the
page obsoleteclasses.html in the generated
output. This page already contains the index
of obsolete classes.

Currently, no such output is generated for
QML types and QML types with obsolete members.
But qdoc does accept commands for those:

\generatelist obsoleteqmltypes

and

\generatelist obsoleteqmlmembers

...but qdoc doesn't know what to do with
those commands yet.

Task-number: QTBUG-30270
Change-Id: If19a3b977f64c948e4bd6f14a9e0a287419baa8a
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-04-17 12:29:55 +02:00
Jørgen Lind
3ae271523f Move Fusion styles palette into QtGui
So that it can be used as the standard palette for QtGui
applications instead of the absolutely useless black palette.

Change-Id: Ie001439fcd8840a66275009c9f42cbf8bab4864a
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-04-17 07:43:11 +02:00
Sergio Martins
d42e54c862 Fix typo in qWarning()
Change-Id: I17aa0a1985c2da889bc602fd76dc07c890ed6f6b
Reviewed-by: David Faure (KDE) <faure@kde.org>
2013-04-17 02:22:28 +02:00
Gabriel de Dietrich
2dbb73b54b Cocoa: Fix menu popup, again
This time, popUpContextMenu:withEvent:forView: wouldn't respect the
menu's minimum width setting.

Change-Id: I7731851f2cf45d596d45a24dab5abe7b9239f07f
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-04-16 19:45:11 +02:00
Gabriel de Dietrich
21f6ab2860 Cocoa: Make sure no invisible proxy icon button is created
If the icon is null, don't force creation.

Task-number: QTBUG-30064
Change-Id: If639714f667fedfcc67a3393a7d75111a7dbff3f
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-04-16 19:45:11 +02:00
Frederik Gladhorn
f5ea183cc6 Prevent recursions when triggering menus in QToolButton
With a global shortcut set it would be possible
to let the button re-open the menu again and again,
each time spinning an event loop.

Task-number: QTBUG-30399
Change-Id: If7eddc115c77fef3df3e751fd72e7414cedaf272
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-04-16 19:45:11 +02:00
Thiago Macieira
2ddbba9ba9 Make QBuffer unbuffered
Sounds non-sense but it means that QIODevice will not try to copy from
QBuffer's buffer onto its own.

Eventually we should figure out to make QBuffer use the
QIODevice::buffer member that is already there and avoid all of this
mistake. Something for the future.

Change-Id: Ib700c9cadb46cec20a8ea5a69a488ded7104ac76
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2013-04-16 19:45:11 +02:00
Andreas Holzammer
0d1ab4e667 [QNX] Fix build/runtime if QT_NO_OPENGL defined
Change-Id: I38d511ac0a53b65abfe47baaa6333629df5b578d
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2013-04-16 19:45:11 +02:00
Thiago Macieira
b4ce49287f Make QBuffer::bytesAvailable() work
We don't need to keep an internal QBuffer position, we can just use the
one from QIODevice::pos(). It will keep track of goings ahead and
backwards for us, plus it will make the default bytesAvailable() work
out-of-the-box too.

This error was reported on IRC.

Change-Id: I8559e8ee56edaa01ca8732c1f1012082ebe3a3f2
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2013-04-16 19:45:11 +02:00
Bjoern Breitmeyer
fb1649d30b Fixed CE build of sqlite3
The updated sqlite3 lacks a forward declaration of localtime.
Depending on the CE version that forward declaration
was sometimes available.

Change-Id: Iec7de1167702ccec46b62f63b65a4710231c8534
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-04-16 19:45:11 +02:00
Frederik Gladhorn
ae6f9d00a6 Accessibility Mac: Enable ignoring of children
The ignored children do not show up in the
hierarchy, this should improve performance
significantly.

Previously the code would ignore the grouping
property which seems to break QGroupBox.

Change-Id: I4535af9c95bce76ded65f6d40fe07f17f3acffad
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-04-16 16:50:59 +02:00
Jens Bache-Wiig
6300caf01f QGtkStyle: Remove widget dependency from GroupBox
This patch makes it possible to draw a checkable groupbox without
passing a widget pointer.

Task-number: QTBUG-29867

Change-Id: I9b74bcffa0401c88f9dcbcd9816081b7f03a5173
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
2013-04-16 15:36:09 +02:00
Konstantin Ritt
201bd2e59a QFontConfigDatabase: Fix performance regression
..introduced by 244cc5da55
Symbol fonts usually don't have code ranges support except Latin.
Don't load FT face for font that doesn't look like a symbol font.

Change-Id: Iec46aa84e27227e0bda5d50f96a2b2f75f58e950
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-04-16 15:33:16 +02:00
Tor Arne Vestbø
8e127d9df8 Add default value for qHash's 'seed' argument for QOpenGLVersionProfile/Status
Although template<typename T> inline uint qHash(const T &t, uint seed) from
qhash.h is never instantiated because we have the two-argument version of
qHash() for both QOpenGLVersionProfile and QOpenGLVersionStatus, we need
the default argument, as the template in qhash.h uses noexcept, which
is evaluated regardless of instantiation, and uses qHash(t) without a
seed.

This behavior seems to not be the case with Apple clang 4.2, but has
been observed with Apple clang 4.1, Clang 3.2, and GCC 4.8.

Change-Id: If70e93f64eb9675a7c3ef7897ced2c6aebbec2d6
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-04-15 17:45:20 +02:00
Janne Anttila
aa009e3dcc Fix QFSFileEngine::renameOverwrite for Windows Embedded Compact 7.
Windows Embedded Compact 7 does not have MoveFileEx, simulate it with
the available file I/O functions [1]. For more details please check the
comments in source code.

[1] http://msdn.microsoft.com/en-us/library/ee490588.aspx

Change-Id: Ib0fb0ba84e2d070dee2f633af1b81bec132f4c17
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Johannes Oikarinen <johannes.oikarinen@digia.com>
2013-04-15 15:32:40 +02:00
Thiago Macieira
c57dd789fd Mark as unused the private members that aren't and CANNOT be used
Those members were left uninitialised by inline constructors and/or
the destructor of those classes is/was also inline. Those members
cannot be used to store pointers that need managing during the Qt 5.x
lifetime.

They can be used to store simple values, as if they were integers.

Detected by Apple Clang 4.2.

Change-Id: I20e2def7c4006668e2d6a7e332c89e2dc8c2a184
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-04-15 15:32:40 +02:00
Eskil Abrahamsen Blomfeldt
aec1bcf6a3 eglfs: Make sure virtual functions are not called from ctor
We want to override some of them in a subclass.

Change-Id: Ic7a22d7bc4589199b3f764157125094a4ff6ec28
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-04-15 15:32:40 +02:00
Eskil Abrahamsen Blomfeldt
2b4dff8dc1 Make surface and window accessible to subclasses
We need to access these in the Android plugin.

Change-Id: I8c7f279bbe0b7087260cceb1f965c833c0097984
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-04-15 15:32:40 +02:00
Eskil Abrahamsen Blomfeldt
c1ac77b34c Remove code for Android API level < 9
We don't support API levels < 9, so we can simplify this code
a little.

Change-Id: I9823d4c5a44d265e03dec0ceedeeb3c34a1e1eab
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-04-15 13:20:17 +02:00
Eskil Abrahamsen Blomfeldt
72e9cad560 Remove dead code
Just some code that was commented out and only adds to the
confusion.

Change-Id: Icfdf81de9731eeb2c473a2f6e2723742601a2037
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-04-15 13:19:01 +02:00