Commit Graph

11290 Commits

Author SHA1 Message Date
Jerome Pasion
5c389cecd0 Doc: Updated url variable in qdocconf files.
In 5.2, the HTML output is in a flatter structure and when they are
hosted in qt-project.org/doc, the documentation will be found at
http://qt-project.org/doc/qt-$QT_VER

The url variable is used by projects outside of Qt 5 which need
to link to Qt 5 documentation, such as Qt Creator.

Task-number: QTBUG-34584
Change-Id: Ifa55fcd9e402b0e184a41e316340e46aeb7101de
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
2013-11-06 11:31:39 +01:00
Gunnar Sletta
f78661b03c Make OpenGL texture glyph cache use the right freetype glyphs
The freetype font engine would fall back to rasterizing glyphs
via QPainterPath in QFontEngine::alphaMapForGlyph() which has
a rather unfortunate implementation.

Change-Id: Ic0b4095b6f17ab33f0602139f0a8fb441dfba0ee
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-06 11:31:39 +01:00
Marc Mutz
6d45bf683e QGlobal: static_assert that sizeof(int) == 4 and UCHAR_MAX == 255
According to Thiago, Qt assumes this in a lot of places,
so make it explicit.

Change-Id: I3f4a55699379fd9fe4d792061c80b3b589c10c53
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-06 09:35:01 +01:00
Kai Koehne
6381c807e5 Force length fo licensee literals to be computed at runtime
Prevent compilers from computing strlen() at compile time by
passing a volatile pointer.

Task-number: QTBUG-34261
Change-Id: I5e5e80181024d57496907918d2a43d7c83841082
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-06 08:55:45 +01:00
Thiago Macieira
6adfca1acb Doc: Add a little more information about current dirs
Task-number: QTBUG-34300
Change-Id: Ib71d6ace77b525942ca40645299cdfd87b753d70
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-11-06 08:35:29 +01:00
Frederik Gladhorn
49a3c87175 Remove two unused functions from QAccessibleTabBar
Change-Id: Ib3296a11b1bb9656f2b0c14106ea09f529311ccf
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-11-06 08:34:34 +01:00
Gunnar Sletta
e7fd798af0 Disable threaded rendering for Intel HD 3000 cards.
Task-number: QTBUG-34492
Change-Id: I1848cde3fb9517679fd54a7170ed5bee40880edc
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-06 00:35:43 +01:00
Andy Shaw
0cdf2a8023 Revert "Ensure CSS rules are inherited from the parent tags"
Since the original change caused a problem with the CSS
rules being always inherited where in some cases this should
not be happening.

This reverts commit 6f65466137.

Change-Id: I6e9cf163d752b1869b5e967a7ab59963d655ba87
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-11-05 23:04:16 +01:00
Pekka Vuorela
0c9a5698a1 Add missing \since 5.1 for QVector::takeFirst() and ::takeLast()
Change-Id: Ic2d7e82187a17e21c2ed0e81318294730c3a0930
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
2013-11-05 22:24:05 +01:00
David Faure
44d48862c0 QStandardPaths: add GenericConfigLocation
This is what ConfigLocation was meant to be. A directory shared by all
applications. Unfortunately when I wrote the fallback on Windows,
I picked DataLocation (which is app-specific) instead of
GenericDataLocation (which is shared between apps). This makes it
impossible to have config files shared between apps, e.g. for libraries.
It also makes ConfigLocation quite inconsistent (on Windows one cannot
use it to load another app's config file, while it works everywhere else).

All this is fixed by GenericConfigLocation, which is shared between apps.

Change-Id: I23a755131061d4fea01e13dd1038fbd8ef333a5d
Reviewed-by: Alex Richardson <arichardson.kde@googlemail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-05 19:08:08 +01:00
Frederik Gladhorn
2c11a492fb Add better version checks for accessibility
We would spam the debug output on devices with api < 16 with some
warnings that the super class a11y delegate could not be found and
others.
Instead check the runtime version before trying to load the JNI code and
only load the delegate if api is new enough.

Change-Id: I52286cb99924b034b9b58c53566f15030939b0c9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-05 19:08:08 +01:00
Jan Arne Petersen
54ed14d5c6 Support native event filters for screen events
Change-Id: If0af4544191c513e64f582cece4a453c1ab5c8e7
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-11-05 19:08:08 +01:00
Morten Johan Sørvig
fc26b053df Declare Cocoa conversion funcs in objc-mode only.
In practice, there are several ways to forward-declare
objective-c classes. Qt uses "struct objc_object",
other projects may use a plain "class". Mismatched
forward declarations will lead to compile errors,
and this is a form of header pollution.

dd5e40d9 added a workaround where Q_FORWARD_DECLARE_OBJC_CLASS
can be predefined in order to sync up the declarations.

Make forward declaration clashes less likely by
forward-declaring in objc-mode only.

Change-Id: I9f7a399d64dc88bfe05d5385b3d46b5302112aef
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-05 17:37:05 +01:00
Gabriel de Dietrich
2eb1e28a90 Cocoa (OpenGL): If no view is attached, makeCurrent() should return false
Change-Id: Ie2869fae1549c3b0a8ef78702410e6ca0c980737
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-11-05 17:37:05 +01:00
Gabriel de Dietrich
a199a87ad5 Cocoa: Don't hide views when reparenting
Commit a2bdda8e3b was meant for creation only. We should not
hide views on our own, particularly when Qt had not asked for that.

Task-number: QTBUG-33581
Change-Id: Ib35fc78a27be1498f80aabd385e7a2185475b949
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-11-05 17:37:05 +01:00
Alex Merry
f2720a806e Improve documentation of QImageIOPlugin
Expanded the documentation to describe what the code in QImageReader and
QImageWriter actually expects from these plugins.

Change-Id: I04bb0cbf56d57a56ed246e723e533d73440a4d3a
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
2013-11-05 17:37:05 +01:00
J-P Nurmi
71ce869825 Fix placeholder text in QTextBrowser
Task-number: QTBUG-34051
Change-Id: Ief55cda861ef293a5fdeb2e5fa287b835c729894
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-05 17:37:05 +01:00
Mitch Curtis
46a8885ae4 Disallow deep or widely nested entity references.
Nested references with a depth of 2 or greater will fail. References
that partially expand to greater than 1024 characters will also fail.

Change-Id: Id4e49d6f7cf51e3a247efdb4c6c7c9bd9b223f6e
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-05 15:55:17 +01:00
Tor Arne Vestbø
1b58d9acc4 Remove Q_INIT_RESOURCE_EXTERN
It's not providing any convenience over using Q_INIT_RESOURCE, which does
its own extern, were never documented, and was added back in 2010 without
any commit message justifying its existence.

Change-Id: I1ca9a042d3f4fca34007d28b140661c50064f11b
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-11-05 15:41:54 +01:00
Martin Smith
2bb6fbbd0f qdoc: Eliminate qobject_cast() collision
Two template functions for qboject_cast() are defined
in qwidget.h that confuse qdoc because qdoc doesn't
handle template functions correctly. In this case, the
documentation for all qobject_cast() functions appears
in qobject.cpp where it is declared to be related to
QObject. This fix surrounds the template functions in
qwidget.h with #ifndef Q_QDOC ... #endif, since qdoc doesn't
need to see them.

This fix unmasks a linking bug QTBUG-34564, which will
be fixed separately.

Task-number: QTBUG-34505
Change-Id: I97fd32cc563bfa4a232819c097f41be56adf0114
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-05 15:40:14 +01:00
Friedemann Kleint
d1870d9036 Clean up QWindowsSessionManager.
Fix spelling error in method name and inline simple functions.

Change-Id: I7f2a67fb1951b58874b09002ee57e15e75561727
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2013-11-05 15:40:14 +01:00
Maciej Kujalowicz
450d3efcb1 iOS: Enable threaded OpenGL.
This change activates ThreadedOpenGL and ThreadedPixmaps capabilities
in the iOS integration. QIOSContext is expanded with a support for
a shared context.

Change-Id: I56615c870a24e17850ad2748421c54e015de3ab2
Reviewed-by: Ian Dean <ian@mediator-software.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-05 15:40:14 +01:00
Tor Arne Vestbø
aa6a0cdbf5 Clarify use of Q_INIT_RESOURCE
The Q_INIT_RESOURCE macro is needed if a library itself uses resources, in
which case the Q_INIT_RESOURCE can and should happen in the library (like
we do for eg. widget styles), or if a library exposes resources that are
supposed to be used by the library clients, in which case the macro needs
to be put in the application code.

The distinction between the two, and the fact that resources built as part
of the main executable do not need the explicit initialization, were not
all that clear.

This was evident by the lack of Q_INIT_RESOURCE in our own Qt libraries,
and the various Q_INIT_RESOURCE calls in our examples where they are not
needed.

Change-Id: I40258458e9fdf9ee5502c212971fb3d90b4fc388
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-11-05 15:40:14 +01:00
Jan Arne Petersen
6802f34bed Process screen events in the main thread
Screen events are still read in the screen event thread but are
processed in the main thread to make it possible to support
QAbstractNativeEventFilter for screen events later.

Implementation is similar to the xcb platform plugin.

Change-Id: I7bade3e13e51c6d70bb608727a93bbd3aabc5d47
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-11-05 11:27:10 +01:00
Friedemann Kleint
161e8653c3 Disable clear button in read-only QLineEdit.
Task-number: QTBUG-34315
Change-Id: I6c318879aee907c080e871a541da4ba5eadd71ed
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-05 09:16:47 +01:00
Friedemann Kleint
142c5ef9dd QLineEdit: Fix potential crash when removing the clear button.
Remove it from the side actions list.

Task-number: QTBUG-34315
Change-Id: I70063351193b504f8656e903896d155ac74f73a6
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-05 09:16:41 +01:00
Bernd Weimer
e9c51a1fdc BlackBerry: Prevent superfluous removal of socket notifiers
File descriptors have always been removed from bps before adding them,
which lead to an annoying warning.
"QEventDispatcherUNIX::registerSocketNotifier()" needs to be called
after "ioEvents()" to prevent this.

Task-number: QTBUG-34536
Change-Id: If074ff7a6638fe234abc100c81d094e182de7537
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-11-05 09:13:09 +01:00
Stephen Kelly
215e525a5c Make error messages a bit better.
Change-Id: I83b5852abfbb3437c03516bc4b36eff385ddb983
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2013-11-05 09:07:53 +01:00
Thiago Macieira
82fe2c6c1b Add qcollator_p.h to the list of headers.
Change-Id: I91963843e10fe0c33e5f13c06562dc5f9fdc2b6d
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2013-11-05 06:16:08 +01:00
Sze Howe Koh
16198d963d Doc: Fix broken links
Task-number: QTBUG-33360

Change-Id: Ic944cb2f575c35ebad64852ef5fc44a50ac03571
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2013-11-05 00:29:01 +01:00
Sze Howe Koh
6b8e866391 Doc: Clean up threading examples
- Example 3 (Clock) is a collection of anti-patterns.
    - It implements a slot in a QThread subclass and then forces the new
      thread to use Qt::DirectConnection to invoke the slot in the
      "wrong" thread.
    - It talks about getting away with non-thread-safe usage
    - It uses a thread as a timer and then admits that it's an over-
      complicated approach.
- Example 4 (Permanent Thread) is over-complicated yet incomplete. A
  better one exists in the QThread class ref.
- Example 1 (Thread Pool) is covered by the QThreadPool class ref.
- Example 2 (QtConcurrent::run()) is covered in the "Threading and
  Concurrent Programming Examples" page and the "QtConcurrentRun" page.
- The undocumented "Hello Thread" example is covered in the QThread
  class ref.
- These examples cannot be accessed from Qt Creator's Examples tool.
- These examples are neither widget-related nor tutorials, contrary to
  their source paths.

Task-number: QTBUG-33360
Change-Id: Ic79cb764ee925ddbcbeafee8e1d01db7fe0f6cfe
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-05 00:29:01 +01:00
Allan Sandfeld Jensen
a8351096db Fix ARGB image glyphs on Open GL ES2 or big endian
Change Ie891665ad66e31692b69db02d34be8d303a7d631 accidentially removed
the condition that would ensure ARGB glyphs would get swizzled on OpenGL
ES2.

This patch readds a condition to check that, and also fixes the same on
big endian hosts by reusing the OpenGL ES2 code path.

Change-Id: I55615c498261a43c50e5a6902a7e2e24cddc4f4b
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-04 22:46:13 +01:00
Allan Sandfeld Jensen
03aea653e2 Remove now redundant argb to rgba function
Change-Id: I293d71e12398aef91995b68a9ea22cac984917b0
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-04 22:46:13 +01:00
Marc Mutz
770ab026a8 Revert "QTest: use nth_element to calculate the median"
This reverts commit 48586b2bac.

This causes problems in QtCreator without anyone being able to say why.

Task-number: QTBUG-34397
Change-Id: I9ea5457724d5af8d87e0bc40e6615748daf9c04c
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-11-04 22:46:13 +01:00
Marc Mutz
0884802bb5 Revert "QtConcurrent::Median: add some qMove()"
This reverts commit 12bd604f24.

This causes problems in QtCreator without anyone being able to say why.

Task-number: QTBUG-34397
Change-Id: I7733c3db7d35bba2734e128476aabcb0152a91e4
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-11-04 22:46:13 +01:00
Allan Sandfeld Jensen
1d07c72431 Fix major performance regression in QGLWidget on texture bind
Since Qt 5.1 we have not recognized the GL_EXT_bgra extension on desktop
OpenGL, or the GL_EXT_texture_format_BGRA8888 extension on OpenGL ES.

This patch matches the GL_EXT_bgra extension on both OpenGL and OpenGL ES
and adds discovery of GL_EXT_texture_format_BGRA8888 under OpenGL ES.

The old name for GL_EXT_texture_format_BGRA8888, GL_IMG_texture_format_BGRA8888
is also recognized.

Change-Id: I2035bfe045aee14e86a1f407f5b8556454f8bb90
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-04 20:29:07 +01:00
Marcel Krems
c87b27f308 Silence compiler warning
warning: logical not is only applied to the left hand side of this
 comparison [-Wlogical-not-parentheses]

Change-Id: I15e283023918cd4ebc27e91812eadf95ba156d71
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: David Faure <david.faure@kdab.com>
2013-11-04 19:53:08 +01:00
Oswald Buddenhagen
8a5657b9f7 fix warnings about unused variables & parameters
Change-Id: Ia5816671267ea21dae0d90560b239c4498f9156c
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-11-04 19:50:05 +01:00
Friedemann Kleint
a922b94c2f Windows: Do not detect full-screen state for child windows.
Introduced by a1db174ea9 (Fix window state
handling).

Task-number: QTBUG-34477

Change-Id: I4c92edddef346f9d7c4741f2f9784e9f686e9cda
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-11-04 19:37:57 +01:00
John Layt
8a1bebb297 QPdfEngine - Remove Producer copyright notice
Remove the copyright notice from the PDF Producer field which could be
misunderstood. Comparison to other PDF Producers shows no other company
does this.

Task-number: QTBUG-33853
Change-Id: Ie657a356dc7c4b15f04d961978e0c8514c092a31
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-04 19:28:20 +01:00
Stephen Kelly
d35c8fe521 CMake: Add the qreal typedef type to the Qt5::Core target.
This way, a Qt compiled with qreal=float and one linked
with qreal=double can not be linked by a single downstream. That is
diagnosed at cmake-time.

Change-Id: I9183dbcfef181fadea5321d3154948e8258e4a2a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-11-04 16:25:39 +01:00
Andy Nichols
c982fa3666 iOS: Prevent calling QWindow methods on native NSViews
UIViews can return nil when calling qwindow, so we must check before
trying to use the QWindow handle.

Change-Id: I72e9ddc58ebe10a3e7ea511f2356650402ba23f4
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-04 15:56:24 +01:00
Frank Osterfeld
84a318c74f enable PPS keyboard implementation also for plain QNX
Integrating with /pps/services/input is also the way to go
for QNX.

Change-Id: If2498f2c42ed4e6e0d1cadc787cc62e80940043a
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-11-04 15:55:41 +01:00
Jan Arne Petersen
c8df30682c Handle keyboard focus change
Call QWindowSystemInterface::handleWindowActivated when a
SCREEN_EVENT_PROPERTY event for he SCREEN_PROPERTY_KEYBOARD_FOCUS
property is received.

Change-Id: Ic2b10c5b793dd4451adac68691296f8265a71160
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-11-04 15:55:33 +01:00
Topi Reinio
00b5dec9e6 qdoc: warn if index file for dependency is not found
Output a warning for each doc dependency that qdoc cannot
locate an index file for.

The index files are loaded for both prepare and generate
phases. To avoid duplication, output warnings only when
in generate phase.

Change-Id: I74f9ba78e4b57cb1a62e0d1c2efda01ecc85c06d
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-04 11:42:01 +01:00
Tor Arne Vestbø
a24ec6b273 Ensure QLocale's shared C-locale QLocalePrivate is never deleted
Other static data such as QTextStream might be initialized before the
static C-locale, in which case QLocale would adopt c_private and bump
the ref-count to 2, only to see it reset back to 1 when the c_locale's
static initialization happened.

The result was that at application shutdown the ref-count would fall
down to 0, and we tried deleting the static data.

This issue was observed with clang in a debug build, where the c_private
is initialized at runtime.

Change-Id: If05221a5e87886e1805ad3c1b1520483f425c0fb
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-11-04 11:42:01 +01:00
Andreas Holzammer
7b2ae0db66 Better check for host builds for fails on QT_POINTER_SIZE
Change-Id: I9949565617cb62e34dd4db93acc4162b24c99ff9
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-11-04 11:42:01 +01:00
unknown
9927c1a2bb QPrintDialog - Fix Windows Current Page option selection
In the Windows print dialog default the print range radio button
selection to the QPrinter set value, but only if the option is enabled
in the dialog.

Task-number: QTBUG-32965

Change-Id: Ic64d86d263a2f8e31c8b32608b569499d0f24d63
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-04 11:42:01 +01:00
Tobias Koenig
1f6dfa7749 Add QSQLITE_OPEN_URI database connection flag
This flag enables the URI mode for database names in the SQLite
backend. Without this flag, it's not possible to use URIs like
    'file:somedb?mode=memory&cache=shared'
to create shared, in-memory databases.

Change-Id: I2938184dad1f27c7af454385ca305bd4f6ed1a5e
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-11-04 09:52:36 +01:00
David Faure
3b48a65e99 QBasicAtomicInt: fix wrong comment about non-atomic API
The public documentation for load() and store() says it's atomic,
and it is:
* using _q_value.store(newValue, std::memory_order_relaxed) in the C++11
implementation
* using a simple assignment otherwise, which is atomic (and relaxed, no
memory barriers) on all the existing C++ ABIs.

Change-Id: I40faa47120163225bd11c3a32514ac97ef8bbbd4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-02 09:52:42 +01:00
Eskil Abrahamsen Blomfeldt
59569fd020 Android: Differ between ShowMaximized and ShowFullScreen
The default is now ShowMaximized which behaves as it did before,
i.e. each window will fill the screen but the status bar will be
visible. Calling showFullScreen() explicitly will now hide the
status bar to maximize the amount of screen real estate occupied
by the application.

Task-number: QTBUG-33135
Change-Id: If0d0a2ab72f8026e76818290e2b953dbc0dec156
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-11-01 14:52:47 +01:00
Martin Smith
45b10ee02a qdoc: Don't output docs for internal things
This update to the Generator base class prevents qdoc
from writing an html file for anything that is marked
\internal if the user has not set the showinternal flag.

Task-number: QTBUG-34269
Change-Id: Ia60109d4568447501370bb9d4c1344a48f9b6113
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
0b152831cc qdoc: Update qdoc's QML parser
Because qdoc is part of qtbase/src/tools, it is not allowed to depend
on anything outside of qtbase. But qdoc uses the QML parser from
qtdeclarative, so qdoc has its own copy of the QML parser sources. The
QML parser has been updated to the current version for Qt 5.2.

Task-number: QTBUG-34269
Change-Id: I5ac9c8ff08a3494d5c35a0014a437be88f2dc31d
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
e9fe369321 qdoc: Corrected error in QDocDatabase::findQmlType()
It was still using the QML module version number as
part of the search key. e.g. it tried to find the
type node for QtQuick.Controls::Button using
QtQuick.Controls2.Button, but now it searches without
the 2.

Task-number: QTBUG-34173
Change-Id: Ibc8b6d9ef4ceebb20c1be00ec3bc9190c51bcdf3
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
6893a0d656 qdoc: Part 2 of fix for inheriting abstract QML types
This fix not only gets the property lists correct
but also creates correct links to the property docs.
A side effect is that QML properties, methods, and
signals whose names begin with "__" are automatically
treated as if they are marked \internal. This had been
agreed earlier but had not been implemented. It is also
required to fix this bug so it is included here.

Task-number: QTBUG-33814
Change-Id: I57de1e49774db47cb57c042f181ccc8edec62d13
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
7e6ca1ef0d qdoc: Internal QML Types no longer marked public
When a QML type marked with \internal is read from an index file,
it is given private access instead of public access.

Task-number: QTBUG-34010
Change-Id: If9270372cf4db835dca9731bce8c446a2fa4e140
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
b21c82908c qdoc: Snippets files no longer parsed by qdoc
The files in the doc/snippets subdirectory of each example
subdirectory are no longer parsed by qdoc as source files.
They continue to be used as snippets files.

This fix also ensures that there are no duplicates in the
list of files to be parsed.

Task-number: QTBUG-34003
Change-Id: Icec1a2a539237f24ee6bae89c6401f0dc81826d1
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
9205ae8fa4 qdoc:headers and sources paths are canonicalized
This eliminates the possibility that the same file could
appear in the file list twice causing qdoc to parse it twice.

Task-number: QTBUG-34002
Change-Id: Iab63d778c9f955076515a8ae2f1bd9560099b13d
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
b6a4545b8f qdoc: Include internal types in the index files
Internal types can be inherited. Documentation is not created for
internal types, but if an internal type is abstract, its properties
must be listed on the documentation page of each subtype that inherits
the internal type. This fix includes internal types in the index file.

Task-number: QTBUG-33814
Change-Id: Ib6ef7cbd92804b3c605009802ddb15d35b32692c
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-01 14:52:47 +01:00
Christian Strømme
efc61299bd Android: Check for null pointer before calling ANativeWindow_release()
Calling ANativeWindow_release() with a null pointer will cause
a SIGSEGV.

Task-number: QTBUG-33955
Change-Id: If7d1afa3baea04360507eec5042b4e18a0272527
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-11-01 13:16:31 +01:00
Christian Strømme
159f086a7f Android: Avoid re-creating Random objects.
We where re-creating a Java Random object each time the seed was set,
this causes unnecessary overhead as the old objects becomes  subject
for garbage collection.

Change-Id: I7aa48f5380f86d6c0d57eaeadc71b9b2b146034d
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-01 13:16:21 +01:00
BogDan Vatra
48dcdbe510 Android: implement a simple cache mechanism for assets dirs.
AAssetManager_openDir is a pretty slow operation, so we are caching the most used dir contents.

Task-number: QTBUG-34464

Change-Id: If198f7dae0d6961291c992e6eb46839ba5455819
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-01 13:15:07 +01:00
BogDan Vatra
c95e1567e9 Remove unused field.
Fix crash on Android 4.4

Change-Id: Ibee584c0154b0b116af58477302e7e8385f0290d
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-01 13:15:01 +01:00
BogDan Vatra
b7440536c7 Android: Handle virtual keyboard visibility changes.
emitInputPanelVisibleChanged when virtual keyboard visibility is changed.

Task-number: QTBUG-34347

Change-Id: Iab7374db42ff8ce6f33dcc793b23f84d3c8692d5
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-11-01 09:38:12 +01:00
Morten Johan Sørvig
d1114669e3 Cocoa: Improve cursor setting.
Implement cursor setting in terms of [NSCursor set]
and [NSView cursorUpdate] using the window tracking
area.

Refactor cursor conversion into QCocoaCursor::
convertCursor. Rename QCoocaWindow::m_underMouseWindow
to m_enterLeaveTargetWindow since it's set according
to spesific enter/leave logic. Add m_windowUnderMouse
which tracks mouseEntered/mouseExited state.

Task-number: QTBUG-33961
Change-Id: Id5e12594f5db365e09c9926a4c08d748a9afb935
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-11-01 09:38:12 +01:00
Richard Moe Gustavsen
fecc820c58 iOS: bugfix touch events when not using alien
It seems that 130ee40b broke touch handling for
non-alien QWindows. For those cases, a QWindow that is a
child of another QWindow will get its own UIView to
back it up. The current code did not take this into
account when calculating the global coordinates of
touch events. Instead we need to search for the
top level QWindow it might be inside before we find the
view that acts as the "desktop" for it.

Change-Id: Ie3c19bf86c92fa3f247a0764116830e91b8322d2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-01 07:30:32 +01:00
Richard Moe Gustavsen
eb64c765e3 iOS: clear focus object when resigning first responder status
Instead of deactivating the window when we resign first
responder status, we now leave it focused, and
tell it to clear its focus object instead.
This will work better with the rest of Qt, which expects
a window to have focus when its in front.

Change-Id: I6fcc232467af306b791a834f4843bfd2786b206f
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-01 07:30:06 +01:00
Richard Moe Gustavsen
cfa85c76c7 QWindowPrivate: add virtual function 'clearFocusObject'
On mobile platforms, a line edit should only have keyboard focus
when the virtual keyboard is open. As it stands, the only way to
clear focus when the user hides the keyboard, is to deactivate the
whole window. This is a bit too much, since Qt still expects the
window in front to be active/focused. What we need is a way to
remove focus from the current focus object without disturbing
the state of the window.

QWindow has a virtual function 'focusObject' from before. We now
add a virtual function 'clearFocusObject' to QWindowPrivate
that can be overridden by QWidgetWindowPrivate and
QQuickWindowPrivate. That way we can remove focus from current
focus object when the virtual keyboard is closed from the
platform plugins.

Change-Id: Ica4ec76f8a69cd6107236a8000ff8bd742e988b5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-31 23:37:54 +01:00
Lars Knoll
d8bf317546 make qreal double by default on all platforms
On modern ARM CPUs there is no speed difference between
float and double anymore, so let's rather use double for
qreal to avoid rounding and precision issues. Like this
we also get much better compatibility with our desktop
OSes.

This is not binary compatible on ARM, but the old behavior
can be restored by passing -qreal float to configure.

Change-Id: I2a4b61e19a3dfa6b0bd76734cecf2634c97207fc
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-31 22:01:40 +01:00
Lars Knoll
e696bef863 Fix compilation with QT_COORD_TYPE=double on ARM
Add a missing template specialization in the neon
drawhelper.

Task-number: QTBUG-33781
Change-Id: Iec02a93aee9403dc1275c32436db5527585b1088
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-10-31 22:01:40 +01:00
John Layt
24733dea6c QDateTime - Optimize refreshDateTime()
A small optimization to the private refreshDateTime() function, improves
standard performance tests by 0.3 msecs per iteration for affected
functions, e.g. isValid() and offsetFromUtc() improve from 5.4 to 5.1.

Change-Id: Ie67812649ef244388b484af35848b09d92dee38a
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-31 22:01:40 +01:00
John Layt
1da1259c28 QDateTime - Optimize date() and time() methods
Optimize the performance of date() and time(), resulting in a one-third
improvement, and subsequent improvements in all date/time based
functions.  Tested over 1000 iterations of the standard benchmarks, in
msecs per iteration:
                     Before  After
date()/time()        0.3     0.2
setDate()/setTime()  0.9     0.8
daysTo()             0.6     0.4

Note original performance before msecs storage was 0.06.

Change-Id: Ie838e560ddf7129281531dc965af56ac19cce91d
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-31 22:01:40 +01:00
BogDan Vatra
e7db02e79e Remove android specific qmake variables.
Change-Id: Iba2b929ba70588ffcbcc9395501753521cfe5154
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-10-31 22:01:40 +01:00
Oswald Buddenhagen
43684a20d0 use private linkage where possible
Change-Id: Ie8eaa71bee87654c21218a23efd7e9d65b71f022
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-31 19:49:32 +01:00
Oswald Buddenhagen
e469e667e3 use the right scope
"windows" only worked more or less by accident (it's the opposite of
"console" and just happens to be the default on windows).

Change-Id: Ib60c8ae5aea04f28207c05cc0005183dd6eb6244
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-31 19:49:19 +01:00
Robin Burchell
418e06f78f Don't cache QCoreApplication::appName.
This isn't a hot codepath, there is no gain to doing this. It introduces
unnecessary bloat (see e.g.
https://www.webkit.org/blog/2826/unusual-speed-boost-size-matters/) and
complicates boosting Qt application startup in cases where argv[0] is
overwritten.

Change-Id: I55b2b98b0de6b06fe7a049de262f3e19936b73db
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-31 19:44:16 +01:00
Chengyong Xie
04de24c644 Fix setVisible() of QWidget has no effect in QTreeWidgetItem
Check if the item is hidden before show the item(QWidget)

Task-number: QTBUG-13522
Change-Id: I1c605d5cb8a80f340e9b7601612d3760f51cb4a7
Reviewed-by: Liang Qi <liang.qi@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: David Faure <david.faure@kdab.com>
2013-10-31 19:41:49 +01:00
Paul Olav Tvete
f4d85c6548 Remove compiler warning when QT_NO_PRINTER is defined
This broke the build on Android with warnings-are-errors.

Change-Id: I9edb9539c4a6f7286ff46cbaa53bcfef4cf5280f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-31 14:22:25 +01:00
Allan Sandfeld Jensen
c1e9c0bb0b Assert in QImage conversion from rgba8888pm -> rgba8888
Fix typo in assert.

Change-Id: I7dc056957b31a869eabe2e45feb99ae4fccb2d97
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-31 14:22:25 +01:00
Yoann Lopes
65b12fbdb1 Store the font's scalability in QFontEngine.
This is an enabler to fallback to native font rendering when using a
bitmap font in Qt Quick.

Task-number: QTBUG-32737
Change-Id: I6d841dd5ef54d78a00f7fab9d80e9c95ff7f7b98
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-10-31 12:33:55 +01:00
Shawn Rutledge
e8f2c4d2cd QFileDialog: document the consequences of being "widgetless"
After 37ca2224ec it's an exposed
behavior change that the widgets and related paraphernalia don't exist.

Task-number: QTBUG-34100
Change-Id: Ie0ebcb8c5c5668b6c12c5447f25bfbfd893dec6c
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-31 12:33:55 +01:00
Laszlo Papp
22aea3f42b Include unistd.h in the unix implementation source of QLockFile
This is necessary to avoid hidden dependencies for int gethostname(char *name,
size_t namelen);

This was revelead while backporting the class to Qt 4 for QtSerialPort.

Change-Id: I1c477d295eeae90b3136fc6aae5d45982d5b1d73
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-31 12:33:55 +01:00
Kari P
a316bdadc0 Mac: Modify Qt::SizeAllCursor to look like arrows
On Mac, Qt::SizeAllCursor showed a spreadsheet cell selection cursor.
It has been changed to look like it looks in the Qt Documentation.

Task-number: QTBUG-27577
Change-Id: I2d50ab0d813137366b56cb30b8784ecf70392d4e
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-10-31 07:59:25 +01:00
Friedemann Kleint
e00a961732 Clean up QPlatformPrinterSupport via post routine.
Change-Id: I5aff587f0186f15c9fa65d236e5ebe9a7901dd86
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-10-31 05:53:38 +01:00
Stephen Kelly
fe220f3b5b Don't use NO_DEFAULT_PATH on mac when finding GL headers and libraries.
The paths may be relative to a sysroot or osx SDK. The existing logic
assumed that we always get fully resolved absolute paths from qmake.
However, qmake populates and uses the -isysroot option separately.

Task-number: QTBUG-32308

Change-Id: Ia23600cdc047d0844bfec32dd4feae3a2b5c95c0
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-10-30 23:26:58 +01:00
Ian Dean
fe41442575 iOS: Add standard paths implementation for iOS
A standard paths implementation for iOS. The APIs used on iOS require
that the source file be "Objective-C++" (with a .MM extension), as
there are no APIs available in C++ for this. The implementation
complies with the latest documentation on standard paths.

Change-Id: I349d3c5d4ddb6fb1297a45dc9ae26b56ac528abb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: David Faure <david.faure@kdab.com>
2013-10-30 21:58:36 +01:00
Friedemann Kleint
44e68b9026 Windows: Do not use blend function for GL windows with alpha.
Task-number: QTBUG-34376

Change-Id: I81a5ee6ff14e5472eb1f3846577d86b615be34e0
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-30 20:30:19 +01:00
Tor Arne Vestbø
769abe8d2f iOS: Fix logic for determining whether to exit the root event loop
Instead of trying to hook into various places where we might be in a
situation where the root event loop should exit, and then enabling the
runloop-observer, we always keep the observer active, and then do the
relevant checks whenever the run-loop exits.

The reason for checking if the event loop is running is that iOS will
enter and exit the root runloop as part of normal operation, eg due to
flicking a scroll view and switching the runloop mode, so we need to
ensure that we're actually supposed to exit the root event loop.

Change-Id: I9b84b47ee45e0c9e2b1d2ebb5a432ea92700b324
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-10-30 20:30:19 +01:00
Friedemann Kleint
a3d72efc65 Consider multi-monitor setups in QPlatformWindow::initialGeometry().
Task-number: QTBUG-34204

Change-Id: Id79efe33ece071ad94578b6ac0370b0f040d1c3c
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2013-10-30 14:50:02 +01:00
Caroline Chao
195cd51f7d Fix QSpinBox size calculation problem with empty stylesheets
Task-number: QTBUG-34305

Change-Id: I3e89dc66446e9f5e9e1810be367830b9df98ab0b
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2013-10-30 14:50:02 +01:00
Christian Strømme
b280182053 Android: Don't rely on QIcon::isNull() to validate icon data.
QIcon::isNull() only checks if it has a valid d pointer and not if it
actually contains any image data. The result is that the QImage create
from the icon would be invalid, and later cause an exception to be
thrown. To avoid this we should check the QImage as well.

Task-number: QTBUG-34416
Change-Id: I9dd0a2387d73bfc2c27ceb9df247ddc186dd659f
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-10-30 14:50:02 +01:00
Christian Strømme
fb5036b7f1 Android: Fix problem with leaking local refs.
In some cases we where not releasing the local references and since we
no longer disconnect from the VM on each call, the number of local refs.
would accumulating until it hit the hard-limit of 512.

Change-Id: I6826620e4cb61a37af26d276667489e876080076
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-10-30 14:50:02 +01:00
Jørgen Lind
f1927370cb xcb: Compilefix #ifdef glx code
Change-Id: I4204cab76b2621318dda909d24ceb2abab6e0ba3
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-30 13:09:47 +01:00
Jørgen Lind
105e228d1c xcb: Act on the _NET_ACTIVE_WINDOW event
It happens that we don't get a focus inn event for top level windows
when focus goes from a window mapped. But we do get a _NET_ACTIVE_WINDOW
event.

Task-number: QTBUG-34426
Change-Id: Id1d9eb708a968e0e8934e56dec19abe2dd203bc7
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-30 13:09:47 +01:00
Thierry Bastian
3655d71719 Fix the network proxy code for windows to detect properly services
This patch makes it so even sub processes of services are also
detected to be running in the context of a service. With the previous
code it would only detect that the current process is a service
and not the sub processes.

This fix makes sure we detect properly if the current process
is running in the context of a service. This is important to
detect properly the proxy configuration of the current user.

Change-Id: I110dee62597aec3f8e2f6925166a428f72d14fd0
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-30 11:29:04 +01:00
Kai Koehne
f0625d2b88 Use Q_UNLIKELY in qCDebug, qCTrace
By default debug, trace is disabled, so this can be marked as unlikely.

Change-Id: I221a688c953c1ff1fdfda65d2d99457785d3ff47
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-30 09:44:07 +01:00
Joshua Grauman
f18fd0450c Fix finding cursor position in words with accents
In positionInLigature() we were mixing indexes into the script item with
indexes into the entire string. The getClusterLength() function would expect
an attributes array for the current script item and it thus needs to be
adjusted by si->position. In addition, when looking for the next grapheme
boundary, we were comparing pos (which indexed the string) with end (which
indexed the script item). This has also now been fixed by adjusting for
si->position as well.

Task-number: QTBUG-30123
Change-Id: Id02e2eddcc5b7888eacb34bd1e39cc6911880ca1
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-10-30 09:44:07 +01:00
Jørgen Lind
43002e2572 Silence the _COMPIZ_DECOR_* warnings on Ubuntu
Earliest occurrence is to my knowledge in 12.04.
It is still unclear how to act on those messages

Change-Id: I7da48281c6bec973448a1d4cd800d445a80695a2
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-30 08:11:08 +01:00
Jørgen Lind
ac693bf754 Add QGuiApplication::sync() function
This will allow applications to make sure Qt has the same state as the
window system at any given point. The use of this function is
discouraged but it is very useful for auto tests.

Change-Id: I691bff365fc391e9d7213f2607008983505bb774
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-30 08:11:00 +01:00
Sze Howe Koh
0d7d5ff5d0 Doc: Fix miscellaneous typos
Change-Id: Iaf0dd8974c3ad78beffa995c596a76fb3e4cceab
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
2013-10-30 00:34:34 +01:00
Sze Howe Koh
c3c1faafe6 Issue correct warnings with QObject::startTimer()
These are not specific to QTimer

Change-Id: Idcffab51a3277413889a727afa1cf7ce15171ec9
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-10-30 00:34:34 +01:00
Sze Howe Koh
bec8d2e089 Doc: Remove unofficial Qt Concurrent headers
<QtConcurrentRun>, <QtConcurrentMap>, and <QtConcurrentFilter> are not
official headers. Developers should use <QtConcurrent> instead.

As a side-effect, this patch also stops the function documentation from
being duplicated (one copy in the QtConcurrent namespace page, one copy
in the \headerfile pages)

(For some reason, \brief doesn't work on standalone pages like these)

Change-Id: I9482f014acf52ba734a3fa597cdcc5931fcd7ecf
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-10-30 00:34:34 +01:00
Christoph Schleifenbaum
aceb854bbb Different native Cocoa menu fixes.
- Fix location of NSMenu when no NSView is given.
- Fix shortcut when given in text with tab.

Change-Id: Iec21cf3d12084db1e70c1a8779d5482c78285796
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-10-29 22:51:10 +01:00
Allan Sandfeld Jensen
89ab267105 Keep web fontdata alive as long as CG uses it
With OS X 10.9 font decoding appears to happen lazily, this means we
have
to ensure the data we provide CG is kept alive until it dereferences it
itself.

Task-number: QTBUG-34332
Change-Id: I8fc38fafba746b062c4ad16314b0a410fd0b668d
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-10-29 22:11:26 +01:00
Gunnar Sletta
9087d4ed7b Don't support threaded GL on chromium (virtual box GL)
Change-Id: I84f89450e3fce1cbbafd19dbf4509b1911e06b19
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2013-10-29 19:59:17 +01:00
Rafael Roquetto
cf239f69e1 QNX: Manage foreign mmrenderer windows
Manage and correctly set the z-order of a foreign created mmrenderer window by
QtMultimedia

Task-number: QTBUG-33816
Change-Id: I46273b945bf10991462fa72eb1ec8d00b0648988
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-10-29 19:59:17 +01:00
Joerg Bornemann
721ec98501 remove qt_windows.h include from qwineventnotifier.h
We must not include qt_windows.h in public headers,
otherwise we're cluttering the environment with a colorful
bouquet of Windows API preprocessor macros and typedefs.

Task-number: QTBUG-34058

Change-Id: I415717ea2a47f39e7f4b7ce1c1df9d49afc99278
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-10-29 19:59:17 +01:00
Gabriel de Dietrich
5dfda7a556 Cocoa: Fix mouse event coordinates transform to window space
We pass the mouse screen coordinates that we convert to window
space instead of the other way around. This makes sure the original
mouse coordinates are not bound to any moving window.

Task-number: QTBUG-29583
Task-number: QTBUG-32221
Change-Id: I8f9ada6e8c0d20af8e85e88ee39190d23e58977f
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-10-29 18:30:53 +01:00
Friedemann Kleint
d7f8f7e078 qdbusxml2cpp: Fix warnings about writing to closed devices.
Unearthed by fe1cbe9ca7 while
building QPlatformSupport.

Change-Id: Ife56efe111dda6bcf9f11f9c144a4d1dc1651380
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-29 16:23:00 +01:00
Thiago Macieira
11e93372df Make the localHostName() copy function return QByteArray
This avoids one extra memory allocation when creating the lock file. The
number of memory allocations when checking the file are still the same.

Change-Id: I16a2fdb7a5458bdc66f8ad1c602582b5698a5b5c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-29 16:04:38 +01:00
J-P Nurmi
a199dd133e Fix QCommonStyle::subControlRect(SC_GroupBoxCheckBox)
Make sure the groupbox check indicator doesn't get placed in negative
coordinates when font height is smaller than the indicator height.

Task-number: QTBUG-33610
Change-Id: Ifad0016e9311f1212cccb6d5971343beb68517c4
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2013-10-29 15:38:13 +01:00
Oswald Buddenhagen
08a737def9 generate qfeatures.h at build time
much more elegant than the checked in file. and less chance to get it
wrong, as people often enough do.

Change-Id: I975a62dfd83ce4f15947ce54f3c40931b1badae0
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-29 15:37:58 +01:00
Oswald Buddenhagen
569ec1ab34 give XMLSTREAM a Name
Change-Id: I4759d8d64f90db580cd15cad6edeed77411c0c33
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-29 15:37:48 +01:00
Oswald Buddenhagen
192a6fb82f fix "markup"
Change-Id: I447175adf1c00e4e20b36747ee035e30a74a50f8
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-29 15:37:44 +01:00
Oswald Buddenhagen
6f0c88f6c3 purge references to non-features
due to modularization, svg and activeqt do not belong here any more.

note that concurrent and dbus are staying for the time being, because
being part of qtbase and configure lacking support to switch them off,
this is the only way to disable the modules.

Change-Id: Idbc0d2f7db23f7e797fc301ab1136f69f9049b27
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-29 15:37:39 +01:00
Oswald Buddenhagen
95156cfff7 purge vestiges of dead QT_NO_* defines
Change-Id: I6be54e8ce4c2522b3907a645506b695fab3aebd9
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-29 15:37:35 +01:00
Oswald Buddenhagen
8b61ec5796 remove dead code
this file is not built as part of the xml library for years, so the
condition was never true.

Change-Id: Ifdc044b6a8044c5093a3f7c268505527dd53f134
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-29 15:37:19 +01:00
Paul Olav Tvete
fc98d027c0 Android: handle keyPress event for Key_Back
Added logic so that accepting either the press or the release will
keep the app running. This makes it possible to use the onBackPressed
functionality in QML.

This functionality is only intended for running in a complete Android
environment, so make sure that we don't terminate the application in
the NO_SDK case.

Task-number: QTBUG-30803

Change-Id: I2546eea73bf6a6ee8b196125b7556479b9b10a9c
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-10-29 15:30:48 +01:00
BogDan Vatra
472e448d6a Fix the show/hide logic.
Make sure the back key event is not sent to applicaton as long as the keyboard
is still visible.

Task-number: QTBUG-30803

Change-Id: I8063981a96ddb8e065c1281b1bdc0fb4a2895bc2
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-29 15:30:39 +01:00
BogDan Vatra
d536713e96 Allow the user to specify a theme list.
Cleanup the theme handling.
Set default theme, needed by native dialogs.
Needs Ministro v9.6+.

Change-Id: Ia131edd8712b7737d3118d714c7772adb8f27acd
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-29 15:30:28 +01:00
Eskil Abrahamsen Blomfeldt
4d5bf32c20 Re-enable NonFullScreenWindows on Android
This flag was created because the eglfs plugin did not support
non-fullscreen raster windows. Now that it does, we can remove
it again. Turns out this also fixes several issues with positioning
and sizing of dialogs due to bugs in the implementation of the
flag.

Task-number: QTBUG-33846, QTBUG-33499, QTBUG-32537, QTBUG-32297, QTBUG-31457
Change-Id: I3902ae57d49d77e3c1046ec57b6f6926f70ec6a4
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-10-29 15:25:09 +01:00
Andreas Holzammer
0731dbcd19 Fail when QT_POINTER_SIZE is not set
Some cross compile setups don't have special treatment
and don't have a configure check. To notice this early
in the build fail at this state. One example is to cross
compile from Windows for eg QNX or even linux embedded.

If QT_POINTER_SIZE is not set, later v4 build in
qtdeclarative is failing with a unmeaningful compile
error.

Change-Id: Iff9498d916371241b0b044b9543f9cd2946ecf42
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-10-29 15:12:20 +01:00
Laszlo Agocs
6ea7336e4a eglfs: Make backingstore handle unexpected scenarios gracefully
On platforms other than Android eglfs does not allow having multiple
windows when one of the windows is OpenGL. On Android however this has
to be handled silently, without aborting the application. The
backingstore lacked the necessary checks so QGLWidget-based apps were
crashing. This is now corrected.

Task-number: QTBUG-34412
Change-Id: Ifb469fa9ef391b24aed3942430c0347276809ba5
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-10-29 15:11:02 +01:00
Kai Koehne
00bf148b07 Fix compilation with MinGW gcc 64 bit
Fix compilation of ANGLE with gcc 4.8.0 64 bit: The

  reinterpret_cast<unsigned long>(void*)

was causing

  error: cast from 'const void*' to 'long unsigned int' loses precision

Task-number: QTBUG-34395
Change-Id: Ibde75dd4b5536f3827bdf0ab02a15e93a1a8a4f0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-29 15:09:29 +01:00
BogDan Vatra
684a952edb Android: Don't crash if the screen is not yet initialized.
Change-Id: I4751c2dec5780f42b348a8a8ea628f65d548dcec
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-28 12:05:22 +01:00
BogDan Vatra
8d1ab25ed2 Android: Remove unneeded dependency
Change-Id: Ie4daa618efb6fbc29656cc3d25837478d9d690f4
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-28 12:05:22 +01:00
Sze Howe Koh
3567f4c2fc Doc: Update boost::bind()/std::tr1::bind() to std::bind()
boost::bind() became part of the C++11 standard with minor
modifications. Present the standard version as the main one to use, but
list the others as alternatives.

Change-Id: If419d8d24c0925119d3b9f7ff76be44981351bc0
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-28 12:05:22 +01:00
Kai Koehne
eb921e6edc Remove unused static function systemtimeToMsecs()
See also commit 660aed3516 that removed the reverse method.

Change-Id: Ib20c5be863ba6644485c581e3ece47a390ce467d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-28 12:05:22 +01:00
Marc Mutz
269590516d QWizard: provoke 'enum value not handled in switch' warnings in object_name_for_button
This is strictly speaking a behavior change, since we're no longer returning
something for Stretch and NoButton, but - guessing here - that shouldn't matter.
Yet, better safe than sorry, thus submitted as a separate patch.

Change-Id: I20cb084147f8c9257ce37d1e87ea38febabec28d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-28 12:05:22 +01:00
Marc Mutz
1ea191276e QWizard: give all buttons an objectName
Only Commit, Finish and Cancel didn't have an object name, yet.
Also Extract Method on the switch statement, add a test, and
use QStringBuilder.

Task-number: QTBUG-29924
Reported-by: Leo Arias

Change-Id: I8c29606bc53e9d4caab631da2089e971a9da2d75
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-28 12:05:22 +01:00
Peter Hartmann
338da730e8 network: fix multi-phased NTLM authentication
tested manually with internal NTLM proxy.

Patch-by: Jonathan Lauvernier <Jonathan.Lauvernier@gmail.com>

Change-Id: Ib3ed7aff12cb8d59ffc2b11ecc1c4fdc04acb368
Reviewed-by: Richard J. Moore <rich@kde.org>
2013-10-28 09:36:37 +01:00
Oswald Buddenhagen
942a59d8fb remove some vestiges of QFontEngineQPF
amends d7e424ee66.

Change-Id: I9aaef14f8ecba78685ce5f7e908a0b42e554434f
Reviewed-by: thiago
Reviewed-by: paulot
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-10-28 00:08:58 +01:00
Cristian Tarsoaga
1d03918454 Fix - psql driver must format qdatetime using iso
QDateTime must be formatted as ISO8601 specifies, date/month must pe padded with 0 until width is 2
Task-number:QTBUG-33389

Change-Id: If07bcaa976ea3583369da3fd21ce442ee30e8c1f
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-10-26 01:43:41 +02:00
Laszlo Agocs
076f931de5 eglfs: Perform initialization in initialize() instead of the constructor
Move (almost) everything to initialize(). Doing so allows the QEglFSScreen
constructor, the hooks' platformInit() and others to perform tasks that need
the event dispatcher.

Task-number: QTBUG-34208
Change-Id: If64e3d1691c41752c53968f8d4fb063b45345680
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-10-25 20:50:51 +02:00
Oliver Wolff
a0da5290ff QWindowsKeyMapper: Added some comments about functionality + cleanup
Change-Id: Ieabdea7601ea0eba08eac701b2fdf27b4cd2ff45
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-25 20:50:51 +02:00
Stephen Kelly
054f357b69 CMake: Fix quoting issue with quoted paths in strings.
Create a local CMake variable instead and use that in the search
paths argument and in the message string.

Resolves a warning that can appear with CMake 2.8.12.

Task-number: QTBUG-34115
Change-Id: I04c67668586a9ad6584b7f6e91ee65351c86389c
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-10-25 18:11:51 +02:00
BogDan Vatra
b01ec07a06 Remove sunken state for Android.
Only QLineEdit always sets the sunken state and on some Android devices
(e.g HTC) the line edit is painted as it is pressed.

Task-number: QTBUG-29565
Change-Id: I25031ffaadba85cae6b6ff17c0847cb706e23503
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-25 18:11:51 +02:00
BogDan Vatra
9b9c63c27d Android: Fix the QSlider handler position.
Change-Id: I300f187a94d6c2b6b385c5a129150344f6b805ea
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-25 18:11:51 +02:00
Christian Strømme
746f7a5b28 QJNI: Don't detach from the thread as long as the thread is alive.
Attaching and detaching the current thread to/from the VM on each jni call,
causes a new thread object to be created and triggers GC when detaching
(GC alone takes anything between 10-30 ms to finish on the test device).
Instead of detaching when the environment object goes out of scope, we
now detach when the thread exits.

Task-number: QTBUG-34279
Change-Id: Ia613934e61f914d4be63bfa1be8fdecf849928b0
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-10-25 18:11:51 +02:00
Allan Sandfeld Jensen
e1325cf26e Do not byteswap RGBA8888 formats
The three RGBA8888 formats was introduced to make it possible to have
QImages and QPixmaps in native OpenGL formats, but uploaded textures of
these types are still converted to ARGB first and then swapped back.

This patch detects the formats and ensures the unneeded back-and-forth
conversion does not take place. It also replaces a seemingly unused
private API meant for the same goal.

Change-Id: Id69d6973bb9c13d1052f2a1b0c516183f63421c2
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-25 14:51:30 +02:00
Juan Luis Boya García
c15e8517ef Fix bug in updatePossibleKeyCodes() with dead keys and modifiers
As it was until now, QWindowsKeyMapper::updatePossibleKeyCodes() tested
using ToUnicode for which characters produce a key with every possible
combination of modifiers.

Calling ToUnicode with a dead key is dangerous, because MS Windows keeps
it in the driver buffer, so if you call ToUnicode with acute key and
then you press a, you get an á.

To prevent this, updatePossibleKeyCodes() checked if the key that was
being tested was a dead key. If true, it inserted an space and then
repeated the key in order to reset the system internal buffers to the
same state they were before the call.

The problem with this is if the dead key is really two keys (like ^ or ´
in US International keyboard layout) and you press one of those keys
without the modifier to make it a dead key (i.e. 6 in US International):
Since updatePossibleKeyCodes() only tests for the key that was pressed
it gets 6 is not a dead key, and thus it does not execute the
workaround. Thus, the next time the user presses 'a' they get 'â'
instead because updatePossibleKeyCodes() set the dead key on the
keyboard buffer and did not run the workaround.

This patch makes updatePossibleKeyCodes() run the workaround if any
possible combination of modifiers with the key being examinated makes a
dead key.

Task-number: QTBUG-33591
Change-Id: I8c0b27586f7c62798986258b1b84aa90e4c5d64c
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-25 14:51:30 +02:00
Juan Luis Boya García
fcebbaeba3 Fix virtual key mapping on MS Windows
In order to map MS Windows virtual keys to Qt keys without messing with
dead keys now I use the built-in keyMap structure of QWindowsKeyMapper
and assert every cell in the keymap is properly updated.

In order to guarantee this even when the user changes the keyboard
layout, WndProc now manages the WM_INPUTLANGCHANGE message, which is
handled by QWindowsKeyMapper, resetting the layout structure.

I don't fully understand yet some things about QWindowsKeyMapper, i.e.
how QWindowsKeyMapper::updatePossibleKeyCodes workarounds the dead key
issue with ToAscii; but it seems to work fine in all the tests I've
done. Any further testing is highly appreciated, though.

[ChangeLog][[QtGui][Platform Specific Changes][Windows] Fixed virtual key
mapping on Windows.

Task-number: QTBUG-33409
Task-number: QTBUG-8764
Task-number: QTBUG-10032

Change-Id: I4f7709a90906b03f4504deea1ff5c361e9f94b3f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-25 14:51:30 +02:00
Morten Johan Sorvig
c1815a7b3f Fix compile warnings on 10.6
Apple clang 3.0 complains about missing function
declarations. Add them.

Change-Id: Ib9c3c238c94e8649844cf3e67a659875ad549ecb
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-10-25 14:51:30 +02:00
BogDan Vatra
27f2b97155 Cleanup java files.
Remove unused imports

Change-Id: I9752ff3593cf97153133381736ef3c8c62898bd7
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-25 12:29:43 +02:00
Frederik Gladhorn
9a369a25dd Accessibility: Make it possible to send events with no QObject
Change-Id: Icbb9d15ec52ff5f7718eaf3600cab140971274aa
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-10-25 12:29:43 +02:00
Eskil Abrahamsen Blomfeldt
8fd9fe2099 Android: Fix repaint on rotation
After f89f099c55, we no longer
post a geometry-change and expose event when calling setGeometry,
which the Android plugin depended on. This caused the window to
stay the same size when it was resized by orientation changes.
We put back the events in the code that calls setGeometry()
instead.

Task-number: QTBUG-32878
Change-Id: I449515dda07c839e0991c5a7031a972ca9c74dff
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-10-25 09:52:37 +02:00
Marc Mutz
f609e65a91 QImageWriter: add a forgotten #ifndef QT_NO_IMAGEFORMAT_BPM
The equivalent code in qimagereader.cpp has this, so add here, too.

Change-Id: I0313727f009db5cb00ee9ce0540ba2674da49ccd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-25 02:27:45 +02:00
Friedemann Kleint
dff6d73d6c Introduce Windows version 8.1 and detect by checking the version.
Change-Id: I04012218c34f7a95a87fcf2dc7fc095f0e743e67
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Andrew Knight <andrew.knight@digia.com>
Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
2013-10-24 20:20:59 +02:00
Oswald Buddenhagen
e658f70b85 don't explicitly exclude qconfig.h when building moc
it excludes itself for bootstrapped builds.

Change-Id: I22fa969c47ff69eab8c96bf0917b0859c65b2fd9
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-24 20:20:59 +02:00
Oswald Buddenhagen
75454e84ea remove pointless "SeeAlso: ???" entries
Change-Id: Iaca0a4f81720b3c20291e91a08fbb617b104330e
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
2013-10-24 20:20:59 +02:00
Oswald Buddenhagen
c9ae856417 document format of entries
Change-Id: I94c169b03844a7091ab98a9689a19ef27e665509
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
2013-10-24 20:20:59 +02:00
Friedemann Kleint
b66a217a1c ANGLE: Fix compilation with MSVC2013.
Add missing include for std::min(), std::max().

Change-Id: I740e5db94f9f958ac65de8dd7baab7e203482637
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2013-10-24 20:20:59 +02:00
Friedemann Kleint
9ae94806ad ANGLE: Fix fxc path setting for MSVC 2013.
Change-Id: I7be4dbd948052d069bb1b97d759d6fc5099236f9
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-24 20:20:59 +02:00
Kai Koehne
2e3870fe37 Reserve some space for future use in QLoggingCategory
Currently Qt offers only debug, warning, critical message types for
general use. Most logging frameworks offer more ... let's save
some space for future message types.

Change-Id: Icb4333da5c8f5277fd10d8a01b06d95369662bdc
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-24 10:18:26 +02:00
Sean Harmer
6d3e821349 Remove doc references to non-existing functions in QSurfaceFormat
Change-Id: I5a9de5b719e111e47a1ea7334609695f1db6149a
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-24 00:32:08 +02:00
Jonathan Hoffmann
5cc76dae7e BlackBerry: improve BPS event lifetime management
In QEventDispatcherBlackberry::select(), if an event handler called
through filterEvent() starts a nested event loop by creating a new
QEventLoop, we will recursively enter the select() method again.
However, each time bps_get_event() is called, it destroys the last
event it handed out before returning the next event.  We don't want it
to destroy the event that triggered the nested event loop, since there
may still be more handlers that need to get that event, once the
nested event loop is done and control returns to the outer event loop.

So we move an event to a holding channel, which takes ownership of the
event.  Putting the event on our own channel allows us to manage when
it is destroyed, keeping it alive until we know we are done with it.
Each recursive call of this function needs to have it's own holding
channel, since a channel is a queue, not a stack.

However, a recursive call into the select() method happens very rarely
compared to the many times this method is called.  We don't want to
create a holding channel for each time this method is called, only
when it is called recursively.  Thus we have the instance variable
d->holding_channel to use in the common case.  We keep track of
recursive calls with d->loop_level.  If we are in a recursive call,
then we create a new holding channel for this run.

Change-Id: Ib3584676d2db5a9a3754a1535d5fb6c9e14f5dbb
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-10-23 19:09:54 +02:00
Friedemann Kleint
d8745d249f Windows: Handle WM_SYSCOLORCHANGE as theme change.
Task-number: QTBUG-34170

Change-Id: I6ca11ab67c1e2752300fc167fb8f3c4f0d9ae2b8
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-23 19:09:54 +02:00
Friedemann Kleint
7c1b39705c Fix crash in QXcbDrag.
handleStatus() was called with drag==0 when releasing the mouse over the
desktop.

Task-number: QTBUG-33920
Change-Id: I553647d1e734934b7c6caf4c984683cff88f9162
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-10-23 19:09:54 +02:00
Kai Koehne
17809b41a6 Fix typo in check for MINGW_W64 version
Got introduced in 9b187bcd6a256b53cc2fb85500

Change-Id: I1d713f8309d3d8568ea836cc1d29f9dca685ac01
Reviewed-by: Jonathan Liu <net147@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-23 19:09:54 +02:00
Venu
e55ecc4a55 Doc: Added a link to the Qt Quick Test page
Task-number: QTBUG-33316
Change-Id: Ib8c479837cac4b7cca47b979cbb2dad0aaae6412
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
2013-10-23 19:09:54 +02:00
Shawn Rutledge
7e30d3afd3 QFileDialog can delete files too, not just directories
After Ic12de12ec51c20de52d040514e90be5e783add43 this functionality
was broken.  Added an autotest.

Task-number: QTBUG-34159
Change-Id: I8f41b7073dc57fea855ab87796f09e8a91520d13
Reviewed-by: David Faure <david.faure@kdab.com>
2013-10-23 19:09:54 +02:00
BogDan Vatra
483a9d83f0 Don't crash if the platform plugin is not initialized
Change-Id: I999411816192edbd2bf40c6bda92d6e94fb3d1b0
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-23 14:08:36 +02:00
BogDan Vatra
0096264800 Fix deploy mechanism.
The order of "android:value" and "android:name" attributes can be changed when
saving the XML document. Use placeholders instead.

Change-Id: I9a97bb0df2d2d16c8a9443a21ce7d3290e0ab466
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-10-23 13:23:12 +02:00
BogDan Vatra
744a201853 Move untranslatable stings to AndroidManifest.xml
strings.xml file is used to store strings that can/should be internationalized.

Change-Id: I2fc305b6917752e9f502bd4beb172205ba4f9fba
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-10-23 13:22:57 +02:00
Gunnar Sletta
cbcfbd798f Rely on isLayered() to decide layering
The logic here was a bit broken. Every QWindow has an opacity
which is 1 by default so the expose was hit for every single
window, regardless of it being layered or not.

Change-Id: I04873cd5db1cd147708e7de140f5947d3a01e9e1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-23 13:15:54 +02:00
Jonathan Liu
5d8a882c11 Fix misaligned selection region with text when centered
If the text is centered, the x/y position in the selection QRectF may
be a multiple of 0.5 which is rounded up. This rounding causes
misalignment of the selection region with the text.

The alignment is fixed by using qFloor on the x and y components.

Task-number: QTBUG-34218
Task-number: QTBUG-34234
Change-Id: I4f2fadeb38602f62a93773c6e5faecf03b28069f
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-23 10:54:44 +02:00
Paul Olav Tvete
aa7fa09312 Android/LinuxFb: fix QWidget::showFullScreen()
Previously, showFullScreen() had a race condition: it depended
on QFbScreen::setGeometry() being called after the window state was
set (that would trigger QPlatformScreen::resizeMaximizedWindows(), which
was the only part of the code that reacted to WindowFullScreen).
On Android this caused random behaviour.

Task-number: QTBUG-33294
Change-Id: I228e6af4139af1a47387e7d80757d7b46e859580
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2013-10-23 10:19:10 +02:00
Paul Olav Tvete
bd3f3f31bf Android: Make platform menu more robust
Don't crash and lock up the whole device when people try to
remove menu items that don't exist.

Task-number: QTBUG-34246
Change-Id: I4396d252c5af93e021c9e218dbab7c0e7f190d9d
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-10-23 10:18:45 +02:00
J-P Nurmi
a83983d861 QTextHtmlParser: restore the default link color from app palette
The default link color used to be resolved to the link color of the
application palette, but got lost during the Qt 5 modularization (see
commits 7351a43 and 3f9a7f9).

Task-number: QTBUG-28998
Change-Id: I7f07427f6c03f83c557100938ad9f7a39349d303
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-10-23 00:01:44 +02:00
Kai Koehne
9b187bcd6a Fix compilation with latest MinGW-w64 (release 3)
Now that MinGW-w64 fixed the headers the old hack actually break stuff.

Change-Id: I1f60b9176982f6c07e01f3960bc1d7e70d7f9481
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-22 12:15:57 +02:00
Gunnar Sletta
72a7882cec Better QWindowContainer by not relying on native widgets.
We change the behavior slightly from the initial implementation in
5.1. Forcing the use of native child widgets is causing massive
performance issues so instead, we attach the embedded QWindow directly
to the root window. The only exception is QScrollArea and QMdiArea
which still enforces native windows for the entire parent chain
to make clipping and stacking work.

Task-number: QTBUG-34138
Change-Id: If713637bd4dce630552ace2f8ad6b2e86c063721
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-10-22 10:46:21 +02:00
Marcel Krems
c9ad904af9 Doc: Add missing \since 5.2 to QSizePolicy::retainSizeWhenHidden
Change-Id: I461e8187810e564e06869df86b23cc40aeba72bd
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
2013-10-22 05:49:34 +02:00
Allan Sandfeld Jensen
690cf426f3 Fix Q_ASSERT(!channels[0].isSocketBusy());
Since commit f30641a7 is has been possible to issue more than one host
lookup request per HttpNetworkConnection. If the result was both an
IPv4 and IPv6 address, and we get a second similar DNS reply, we
end up triggering the assert in startNetworkLayerStateLookup().

This patch splits the InProgress state to HostLookupPending and the state
of trying both IPv4 and IPv6. This makes it possible to ignore any new DNS
replies received after the first succesfull one.

Change-Id: I0b8d6b1582fdaed69dde5926019b60bb0cbd580d
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
2013-10-21 17:35:00 +02:00
Sze Howe Koh
a9d5627e6a Doc: Update, and reduce duplication of, QThread-related info
Added/Changed:
- Move content from the Thread Basics overview to the QThread class ref
- Rephrase bits for clarity
- Use more links

Removed:
- (threads-basics.qdoc) Warning against moveToThread(this): This usage
  came about when people tried to add slots to a QThread subclass. This
  patch adds a warning against the root cause.
- (threads-basics.qdoc) Note on sleep() et al.: They were made public in
  Qt 5.0.
- (threads-basics.qdoc) The strategy for managing member variables:
  Sounds error-prone. Pushing results through signals is safer.
- (qthread.cpp) The note about GUI classes: Irrelevant to QThread,
  and it's already mentioned elsewhere.

Change-Id: I6bc53cc22b929523f9976d2b920f94c02bd7273e
Reviewed-by: Geir Vattekar <geir.vattekar@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-10-21 02:12:11 +02:00
Sean Harmer
da7e534df2 Use QByteArrayLiteral throughout in QOpenGLVertexArrayObject
Change-Id: Ia362ead0ffdc077bd0db5d980c80464838c934ea
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-10-20 21:29:16 +02:00
Frederik Gladhorn
19b3e6489d Android: Accessibilty: Handle text better
Try harder to actually return text, before TalkBack would not read the
contents of line edits and other text widgets.

Change-Id: Ibb9bb8ac4a2728674f6f5ccf29eda5ed66a81a34
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-10-20 02:12:15 +02:00
Sergio Martins
24d926cb8f Initialize variable to fix build [-Werror=uninitialized].
The complaining compiler is:
gcc version 4.6.3 (crosstool-NG hg+default-ddc327ebaef2)

Change-Id: Iae488a89d75492e76a39a326b2db36548f8894d0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-19 23:48:44 +02:00
Thiago Macieira
deb925b1b6 Change an addition into a subtraction
This potentially resolves the long-standing warning from GCC:
 assuming signed overflow does not occur when assuming that (X + c) < X
 is always false

GCC prints the warning to warn people that you can't check for overflow
with signed integers by doing that (signed integers don't overflow in
the standard).

If we change this to X < X - c, there's no overflow.

Task-number: QTBUG-33314
Change-Id: I5b166610a39559ec7b03c4c31ee5999efefa0c06
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-10-19 15:31:17 +02:00
Gunnar Sletta
22c2d13406 Make it possible to clear glyph caches from the font engine.
Change-Id: Iea62bc1727269ed3893d8b4dbcefa583f1b85d7f
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-10-18 23:24:39 +02:00
Oswald Buddenhagen
27b10259bc don't bother defining QT_NO_DIRECTWRITE here
the relevant code moved to the windows platform plugin.

Change-Id: I06f2efd1190ee7d1da1f48172ae879e5c06a945f
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-18 20:05:23 +02:00
Andy Shaw
c057e23b02 When creating QVariant(QPolygonF()) this should be a null variant
The handling of the null QPolygonF case was not correct as it would
always be seen as valid. This ensures it is treated in the same way as
QPolygon when it is in fact null.

[ChangeLog][QtGui][QPolygonF] When a QVariant holds a QPolygonF()
then it will be correctly seen as a null QVariant.

Change-Id: Icae34f513c3a8e1dd3f50cb64a3d13ae7c636cc4
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-10-18 20:05:09 +02:00
Kai Koehne
a652bab6a7 Link from QLoggingCategory documentation to QTracer/QTraceGuard
Change-Id: I331966f6137a31f089425a639afe8f9f4088c0b6
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-18 20:04:57 +02:00
Tor Arne Vestbø
7ded7c8f9e Explicitly mark subdirs as host_builds in SUBDIRS template
Allows post-processing code to exclude recursing into host_build subdirs.
The alternative would be to have the SUBDIRS logic pre-parse the subdir
project to check if it's a host_build, but that might have a performance
impact, so it's better to leave the information explicit in the subdir
project file.

Change-Id: I1a6f7d94c49faf5f5106c83ef21f6b85b531c90b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-10-18 18:01:54 +02:00
Martin Klapetek
fcedf4073a Set currently selected printer to QCUPSSupport in PageSetupWidget
Also adds new method to allows setting a printer in QCUPSSupport by
printer name.

Change-Id: Iff7a88d95eab9de2c96872c45b12e708207bda16
Reviewed-by: John Layt <jlayt@kde.org>
2013-10-18 18:01:54 +02:00
Martin Klapetek
229d92dc1e If CUPS has no default printer, set up the first one in list
Otherwise QCUPSSupport is instantiated without any printer being set up,
which leads to bugs and/or crashes in other parts using QCUPSSupport.

Change-Id: I1f4ddde5a28d6448d78aed856104ce8448e213c7
Reviewed-by: John Layt <jlayt@kde.org>
2013-10-18 18:01:54 +02:00
Kai Koehne
befe02aa6e Fix crash in qdoc startup
the order of initialization of static variables is undefined, and we
therefore cannot (safely) initialize the array with static QStrings
declared elsewhere.

This was leading to crashes in MinGW gcc 4.8.0. Work around the issue
by initializing the array at runtime initialization instead.

Task-number: QTBUG-34172
Change-Id: I24f0e6af6685fc280d12c8ef90d40b8ebe994450
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-10-18 18:01:54 +02:00
Friedemann Kleint
4dab27933d Clear qt_tablet_target in ~QWidgetWindow.
Task-number: QTBUG-34007

Change-Id: If67563e5d9c4040256b58521773736e14db6fbaf
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2013-10-18 18:01:54 +02:00
Friedemann Kleint
c4a51166f5 Fix widgets link error on iOS (missing mac gesture recognizers).
Change-Id: Iebea6b6e26e9aca9a64aecc9b125c48fe1cc7e43
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-10-18 18:01:54 +02:00
Gabriel de Dietrich
a25e6528d3 Cocoa: Allow popups to grab mouse and keyboard
According to the QWindow documentation this should happen regardless
of the window type. (It also mimics the current behavior on Linux and
Windows).

Change-Id: I1b0959ad8cf19bce452fd79a13b07d0a3a3c49e9
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-10-18 15:37:37 +02:00
John Layt
93f5e0598a QDateTime - Fix RFC 2822 Date Formatting
The RFC 2822 date format should always use en_US locale for month and
day names instead of whatever the system locale is.  Also remove some
duplicate code.

Change-Id: Ia2f7ee405b4e0e2f04980301783b9488628da73f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-17 23:31:10 +02:00
Samuel Gaist
72544a5142 Rename private viewOptions to viewOptionsV1
Renaming of the private implementation of viewOptions to viewOptionsV1
so that future updates of QStyleOptionViewItem can be easily integrated
in the code with a simple search/replace.

Task-number: QTBUG-1180
Change-Id: I18f876a435417717fa0d759bb302a7c6059daf80
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-10-17 21:06:06 +02:00
Laszlo Agocs
cc3ece1da4 evdevtouch: Make it work with am335x
The driver for the resistive touchscreen of these boards tends to report
ABS limits 0..4095 even tough it never sends coordinates outside a certain
range (e.g. approximately 165..4016 for X). This breaks the mapping of
hardware coordinates to screen space. Apply a workaround to make it
work properly.

Change-Id: I3eb5d76002acba1972061f3add44d797349c8ec8
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-10-17 20:53:09 +02:00
hjk
1d3fce8b50 Add missing \since 5.2 tag to static QFileInfo::exists()
Change-Id: I11e136eaede2a5dffeb10b5fe31023b9aef709cb
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-10-17 15:58:32 +02:00
Friedemann Kleint
39eb7e0b89 Refresh CUPS printer list when QPrinterInfo.availablePrinters() is called.
Introduce freeCupsPrinters() thus fixing a bug in the old deallocation
code which would first set m_cupsPrintersCount = 0 and then
pass it to cupsFreeDests().

Task-number: QTBUG-33666
Change-Id: I94c51cb390761a669a9cbd589c1131cfb51354c3
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-10-17 15:58:32 +02:00
Nick Ratelle
e7cf7c1c65 Blackberry: Cannot create shared egl contexts.
Currently the share context is always set to
EGL_NO_CONTEXT when it should instead query the
share handle from the QOpenGlContext and pass that
to the eglCreateContext call.

Change-Id: Ia7e32574e1427fba0f919003e5367cfc98688d9d
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2013-10-17 15:58:32 +02:00
Samuel Gaist
b329c8ffb9 Move the viewOptions code back to public implementation
The code generating the QStyleOptionViewItem has been moved back to the
public implementation and the private QAbstractItemView::viewOptions
calling it (like the Qt 4 implementation does). This makes the item
views behave properly again e.g. QListView drag & drop in Icon mode
gets the correct options to draw the moving items

Task-number: QTBUG-1180

Change-Id: I068861e1485252f12d73f9acaf12933d0ec84e2c
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-10-17 15:58:32 +02:00
Samuel Gaist
c3bf3bd8b7 Properly paint QListView dragged item in icon mode
Currently, when dragging a QListView item in icon mode, only the
item is moved and once out of the view port, the visual feedback is
lost. This patch updates the QDrag pixmap to have a persistent view of
what is moved.

Task-number: QTBUG-1180

[ChangeLog][QtWidgets][QTBUG-1180] Dragging an item outside the QListView in icon
mode doesn't lose the icon.

Change-Id: I14f864a8f947997f3bdad1a05fabd200de026d66
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-10-17 15:58:32 +02:00
Morten Johan Sørvig
fbfc8ffbf3 Implement native gestures on OS X.
Add QWindowSystemInterface::GestureEvent and
QNativeGestureEvent to QtGui. These events are copies
of Qt4's QNativeGestureEvent, where it was an implementation
detail of QGestureManager.

Add gesture message handlers to QNSView and bring
back the Mac gesture recognizers for QGestureManager.

Task-number: QTBUG-28126
Change-Id: I1304e09e776fa7c44d133d54ca8b895ca2f544c5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-17 15:58:32 +02:00
Friedemann Kleint
73e3d2f6cb Windows: Capture last error right after CreateDirectory() in QFileSystemEngine.
Custom allocators invoked by freeing the QString contents might change
it.

Task-number: QTBUG-34046
Task-number: QTBUG-32314

Change-Id: Ied5305c21fcce228448fe565899163997536ea7a
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-17 15:58:32 +02:00
Friedemann Kleint
27316e097f Clear QGuiApplicationPrivate::tabletPressTarget in ~QWindow.
Task-number: QTBUG-34007

Change-Id: I81b8496746f425f58a21b18ffaf96dfdbbe2a815
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2013-10-17 15:58:32 +02:00