Commit Graph

11150 Commits (d8f7a2ddf4e098786a5dec27e11786f5ff4e0433)

Author SHA1 Message Date
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