platform/upstream/qtdeclarative.git
11 years agoV8Debugging: Set Isolate when sending debug messages to v8
Aurindam Jana [Tue, 23 Apr 2013 11:44:41 +0000 (13:44 +0200)]
V8Debugging: Set Isolate when sending debug messages to v8

Pass the Isolate used for setting the DebugMessageDispatchHandler
to SendDebugMessage. This is to ensure that the proper dispatch
handler is called since the Debugger is per Isolate.

Change-Id: I4497155b90d4b678a5c4116859269892441ce70e
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoClear the pendingUpdate flag every frame.
Gunnar Sletta [Mon, 22 Apr 2013 11:41:53 +0000 (13:41 +0200)]
Clear the pendingUpdate flag every frame.

Change-Id: Icd9bf8ec63e46341f5a43dbb85fe6a3a885f6afb
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoDoc: Refactored and focused the Qt QML documentation.
Jerome Pasion [Wed, 17 Apr 2013 15:19:35 +0000 (17:19 +0200)]
Doc: Refactored and focused the Qt QML documentation.

Before it wasn't clear to what the module provided, especially
with the coupling of Qt QML and Qt Quick.

The doc is centered around these documentation:
-QML refernce: the language syntax and the application constructs
-JavaScript environment: the environment provided by the module
-Integration with C++: more about the engine and the C++ API
-QML Types and Classes reference (created by \qmlmodule and \module)

The distinction are made in the directory and the section titles in
the Qt QML landing page.

Change-Id: I033bfcbf8368b94ffa5ee4b1225bee74347f53eb
Reviewed-by: Martin Smith <martin.smith@digia.com>
11 years agoUse the actual size of the image for the iteration.
Gunnar Sletta [Tue, 23 Apr 2013 10:32:01 +0000 (12:32 +0200)]
Use the actual size of the image for the iteration.

If the rectangle dimension was a floating-point value, we could
sample outside the image, causing tons of warnings.

Change-Id: I10abece9a6b0cf769551f554fb5999d5d90e4c9d
Reviewed-by: aavit <eirik.aavitsland@digia.com>
11 years agoUse the platform theme's password mask character for text input fields.
Mitch Curtis [Wed, 13 Mar 2013 13:34:51 +0000 (14:34 +0100)]
Use the platform theme's password mask character for text input fields.

Task-number: QTBUG-29871

Change-Id: I3b15dfab5ca6455df465c502c93aac7b85a64531
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
11 years agoAdding emitComponentCompleteSignalForAttachedProperty()
Thomas Hartmann [Tue, 23 Apr 2013 07:25:29 +0000 (09:25 +0200)]
Adding emitComponentCompleteSignalForAttachedProperty()

Each item that is created by a component gets the
attached property "Component".
This property has the signal onCompleted.

This function allows the designer to manually emit this
signal once the item is setup.

I had to export QQmlComponentAttached for this.

Change-Id: I45b4e72af4f12cdcda29f165cc9bc4d9dee8faf7
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
11 years agoExpose nextItemInFocusChain in QQuickItem
Liang Qi [Fri, 12 Apr 2013 09:52:48 +0000 (11:52 +0200)]
Expose nextItemInFocusChain in QQuickItem

Convenient for other use cases related with tab focus chain.
Autotest is included.

Change-Id: I1ba6317e20edacc2b672bc5b78e3fcd29ac80bdc
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
11 years agoTextInput: Fix cursor navigation with mask
Frederik Gladhorn [Tue, 23 Apr 2013 08:04:28 +0000 (10:04 +0200)]
TextInput: Fix cursor navigation with mask

text().length() was used to check if a cursor movement
to the right was valid. The problem is that with a mask and
not text set yet (inputMask: "#0:00;*") pressing the right
arrow would not move the cursor.
The input and other functions use the actual d->m_text
since that includes the mask length.

Task-number: QTBUG-30740

Change-Id: Ic225778e5a49d80b754b63d0eb4a438eaa9818e2
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
11 years agoFixed crash in QQuickCanvasItem.
Samuel Rødal [Tue, 23 Apr 2013 07:38:19 +0000 (09:38 +0200)]
Fixed crash in QQuickCanvasItem.

The d->contextInitialized variable is useless as it gets out of sync
with d->context when the latter is set to 0. Simply checking that
d->context is non-null fixes some crashes.

Task-number: QTBUG-30810

Change-Id: I474a807a402396b170ba45ae7546781eea92b481
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoFix lupdate-warning "Cannot invoke tr() like this".
Friedemann Kleint [Mon, 22 Apr 2013 14:39:34 +0000 (16:39 +0200)]
Fix lupdate-warning "Cannot invoke tr() like this".

Change-Id: I3ded3d9ab9fa202a3133c53fd6e17a8354481d0c
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoPrevent segfault on trying to access null cacheItem object.
Mitch Curtis [Thu, 18 Apr 2013 09:20:57 +0000 (11:20 +0200)]
Prevent segfault on trying to access null cacheItem object.

In the situation mentioned in the bug report, a segfault occurs in
QQmlDelegateModelPrivate::incubatorStatusChanged. This
happens because cacheItem's object member is null but is still accessed
several times. This patch adds a check for null before operating on the
pointer.

Task-number: QTBUG-29727

Change-Id: Ia4c0699442c6d0f50e090b401a58ed06c69b351a
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
11 years agoAllow disabling of component complete signal for the designer
Thomas Hartmann [Thu, 18 Apr 2013 14:09:08 +0000 (16:09 +0200)]
Allow disabling of component complete signal for the designer

We emit the signal later in the designer.

Change-Id: I5da4a2234467444446f168888a3ad3682f4ccc22
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoDoc: Qt QML: Fix module name format
Sze Howe Koh [Wed, 17 Apr 2013 15:03:16 +0000 (23:03 +0800)]
Doc: Qt QML: Fix module name format

Follow the conventions at
http://qt-project.org/wiki/Spelling_Module_Names_in_Qt_Documentation

QtQml -> Qt QML

Change-Id: I45ca4496a02214feab48707b026c6bec085df138
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
11 years agodocs: Fix snippets paths for QML Tutorial
Sergio Ahumada [Fri, 19 Apr 2013 10:19:53 +0000 (12:19 +0200)]
docs: Fix snippets paths for QML Tutorial

This seems to be a leftover from 1a23fbc59a1389677b3f232379f441ed5b4cdf90

Task-number: QTBUG-28898
Change-Id: I7adcb6a3f05a4fed08ff73b522a042b1ad9cee1e
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
11 years agoFix crash in repeater when model gets deleted
Frederik Gladhorn [Wed, 17 Apr 2013 11:44:40 +0000 (13:44 +0200)]
Fix crash in repeater when model gets deleted

Task-number: QTBUG-200461

Change-Id: Ia8e48668960ac005cf773bf6f53da40f1c753b9b
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agodocs: Remove warning that is no longer applicable.
Frederik Gladhorn [Wed, 17 Apr 2013 09:14:12 +0000 (11:14 +0200)]
docs: Remove warning that is no longer applicable.

Change-Id: I1d7359b48ab4bb6001171901ab55d4c5030fb1f9
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
11 years agoDumping plugins.qmltypes for Window with -notrelocatable
Thomas Hartmann [Thu, 18 Apr 2013 08:16:13 +0000 (10:16 +0200)]
Dumping plugins.qmltypes for Window with -notrelocatable

The code model needs this option.

Change-Id: I5daaa222c467444446f168888a3ad3682f42cc20
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
11 years agoFix crash on empty child list in QAccessibleQuickWindow::rootItem().
Friedemann Kleint [Wed, 17 Apr 2013 11:54:49 +0000 (13:54 +0200)]
Fix crash on empty child list in QAccessibleQuickWindow::rootItem().

Change-Id: I07f1482216c3147bf851046e61a56ec74f074dea
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
11 years agoRestore checkbox toggling on pressAction.
Morten Johan Sørvig [Wed, 17 Apr 2013 06:43:17 +0000 (08:43 +0200)]
Restore checkbox toggling on pressAction.

Looks like this was accidentally removed by the
check/uncheck->toggle replacement (4ac33a52).

Change-Id: I7f8742bd4c53fba52ab3460348221570dc17aeb7
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
11 years agoDoc: Reassigned types and pages to their correct modules.
Jerome Pasion [Tue, 9 Apr 2013 10:08:44 +0000 (12:08 +0200)]
Doc: Reassigned types and pages to their correct modules.

1)Moved classes and basic types to \module QtQml 2.
-QQml* classes are in QtQml 2 for 5.1

2)Removed \inqmlmodule commands in overviews and tutorials.
-Only QML API should have \inqmlmodule commands because they are added
to the auto generated list of types.

Change-Id: I9aa3ca8062fa9fed76734885829879122841b119
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoSilence a warning for unused variable in QQuickTextNode.
Pierre Rossi [Thu, 11 Apr 2013 13:00:48 +0000 (15:00 +0200)]
Silence a warning for unused variable in QQuickTextNode.

While refactoring it seems the position was forgotten.
As it is exposed in addTextLayout, we should try to pass
it along when initializing the selection engine.

Task-number: QTBUG-30338

Change-Id: Id8d9221efe0027315ba1d48c47c9ea2ecd8d7561
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
11 years agoDoc: Fixed whitespace in qqmlcomponent.cpp
Jerome Pasion [Wed, 17 Apr 2013 12:40:11 +0000 (14:40 +0200)]
Doc: Fixed whitespace in qqmlcomponent.cpp

-Done by the split-ws tool.

Change-Id: I9d1af670fadcbfdaa2f40c33c11e48fee96f0b0a
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
11 years agoDon't use bitfields, reading/wrting them is not atomic
Gunnar Sletta [Tue, 16 Apr 2013 10:29:52 +0000 (12:29 +0200)]
Don't use bitfields, reading/wrting them is not atomic

Task-number: QTBUG-30663

Change-Id: I952bb4cd9c254f085304ceeddced14b66e0f12b6
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoRemove dead code.
Gunnar Sletta [Tue, 16 Apr 2013 08:51:31 +0000 (10:51 +0200)]
Remove dead code.

The renderWithoutShowing was a piece of functionality that we
experimented on long ago and it never quite worked and has
it currently only adds bloat.

It would be sensible to be able to render a window without showing
it on screen, such as for testing purposes, but then it should
be done through proper public API and thouroughly supported
cross platform.

Change-Id: I6bea7335f769c038a8167bad77c2dba171359be9
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoFixed alpha blending for native text.
Yoann Lopes [Tue, 16 Apr 2013 14:29:21 +0000 (16:29 +0200)]
Fixed alpha blending for native text.

Change-Id: I3effd31849b21a9497fadfb22c959562bff7951b
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
11 years agoFix for Positioner attached property
Filip Piechocki [Tue, 2 Apr 2013 10:48:22 +0000 (12:48 +0200)]
Fix for Positioner attached property

Modified Positioner attached properties update - original code was trying to update visible and not visible items
by looking only at the positionedItems array, which was wrong as that array contains only visible items. Hidden
ones are stored in unpositionedItems array so second loop was added to affect these items also.

Task-number: QTBUG-30477

Change-Id: If03abb76f4da708884a7e2cf6ade83c09eca45bf
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoQmlDebugging: Auto tests use port range
Aurindam Jana [Mon, 15 Apr 2013 15:27:24 +0000 (17:27 +0200)]
QmlDebugging: Auto tests use port range

Change-Id: I715f50a696283d2a2af0f54409de02289637bf78
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agofix typo in warning
Gunnar Sletta [Tue, 16 Apr 2013 08:36:05 +0000 (10:36 +0200)]
fix typo in warning

Change-Id: I5f70ad30b9b1ba6551c9c8c76b87c2f3f2ea8aa9
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
11 years agoTextInput: Fix cursor height
Gabriel de Dietrich [Tue, 9 Apr 2013 12:46:04 +0000 (14:46 +0200)]
TextInput: Fix cursor height

On many platforms, the current cursor looks too tall. The logic used
in this patch is inspired by what we have in QTextLayout::drawCursor().
It still looks too tall on Mac, but so it does in Qt Widgets.

QQuickTextInput::positionToRectangle() has also been updated for consistency.

Change-Id: I69b8ad246238d54db370db639a319a3edba6d78a
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
11 years agoDoc: Add required include statement for qmlRegisterSingletonType docs
Topi Reinio [Tue, 16 Apr 2013 10:15:30 +0000 (12:15 +0200)]
Doc: Add required include statement for qmlRegisterSingletonType docs

Adds a missing include for QtQml into QQmlEngine class reference code
snippets.

Task-number: QTBUG-30642
Change-Id: I2ec10de5b31b4854d5aaea08987b9d75926d2ef4
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
11 years agoFixed WindowsCE build
Bjoern Breitmeyer [Thu, 11 Apr 2013 15:07:39 +0000 (17:07 +0200)]
Fixed WindowsCE build

A windows header is included before the include
of the v8 debug header and it has a define for
DebugBreak which breaks linking of declarative on
WinCE

Change-Id: I9178cfcb960c0acbc850f2ff80c6d73b761c04f0
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
11 years agoUse triangle strips for particles on Mac OS X, ATI cards.
Gunnar Sletta [Thu, 11 Apr 2013 12:20:57 +0000 (14:20 +0200)]
Use triangle strips for particles on Mac OS X, ATI cards.

Change-Id: Ie831fc6f8f8cdd891c15dc028383b191662416fc
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoRemove slow and buggy sub-image code
Paul Olav Tvete [Fri, 12 Apr 2013 14:24:47 +0000 (16:24 +0200)]
Remove slow and buggy sub-image code

The code was probably sub-optimal in most cases, and it broke on
GLES 2 when using the BGRA texture extension.

Done with Gunnar.

Task-number: QTBUG-30656
Change-Id: I92f74cd39f408f145629bc0eb6f3ff43d2f4f000
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
11 years agoQmlDebugServer: Remove unimplemented function
Aurindam Jana [Mon, 15 Apr 2013 08:52:25 +0000 (10:52 +0200)]
QmlDebugServer: Remove unimplemented function

Change-Id: I926d876fe841ce3f3a000c865c74169861f17221
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoQmlDebugServer: Ensure plugin is set
Aurindam Jana [Mon, 15 Apr 2013 08:53:10 +0000 (10:53 +0200)]
QmlDebugServer: Ensure plugin is set

Change-Id: Ibc0e5ed626edc076e96c4848994ba0cafba0f5c6
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoRevert "QmlDebugging: Remove 'insignificant_test'"
Aurindam Jana [Mon, 15 Apr 2013 15:56:54 +0000 (17:56 +0200)]
Revert "QmlDebugging: Remove 'insignificant_test'"

This reverts commit c4b4b01d8ea708f7a1c4cb5adaed8f4abdc623a3.
The testcase is still flaky on OSX.

Change-Id: I6970b681c3172f7074c00b38c3362d5f212392ab
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoDon't relayout if item is removed from scene
Alan Alpert [Thu, 11 Apr 2013 20:35:24 +0000 (13:35 -0700)]
Don't relayout if item is removed from scene

Task-number: QTBUG-28160
Change-Id: I208f213e2de6b530dd0965b301d046aee0182d9a
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
11 years agoqmlplugindump: always output exportMetaObjectRevisions
Fawzi Mohamed [Wed, 10 Apr 2013 09:26:16 +0000 (11:26 +0200)]
qmlplugindump: always output exportMetaObjectRevisions

Some people were confused about exportMetaObjectRevisions, and
the "all 0" as default was not expected.
Make it explicit so we might change the default in the future.

Change-Id: I1f208ba54e2b9aa1a5d46fb9971572467b69ab56
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoImprove focus documentation
Frederik Gladhorn [Fri, 12 Apr 2013 14:34:31 +0000 (16:34 +0200)]
Improve focus documentation

Change-Id: I4e9fc98fcc0cc5adabb673903d0058eb9ac9a1e6
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
11 years agoTestlib: Fix qml objects not deleted in TestCase
Caroline Chao [Wed, 10 Apr 2013 09:32:10 +0000 (11:32 +0200)]
Testlib: Fix qml objects not deleted in TestCase

After destroy() been called in the test function.

wait(0) is used to call processEvents().

Task-number: QTBUG-30523

Change-Id: I208f213e2de6b530dd0965b301d046aee0182d9b
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
11 years agoDoc: Add a link to the Qt Quick Controls page
Caroline Chao [Fri, 22 Mar 2013 10:03:46 +0000 (11:03 +0100)]
Doc: Add a link to the Qt Quick Controls page

From the Qt Quick main page.

Change-Id: Iaea46afe0f6a795cb33ec53a7b767461ce42d3df
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
11 years agoDesignerSupport: Adding separate flag for component completion
Thomas Hartmann [Tue, 9 Apr 2013 10:54:09 +0000 (12:54 +0200)]
DesignerSupport: Adding separate flag for component completion

The designer should only disable completion of components
if the component is created directly by the designer.

Change-Id: Id86d2b2f2e61355240bdbbb7875db3e97fb0da17
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
11 years agoStabilize Test
Alan Alpert [Wed, 10 Apr 2013 21:18:46 +0000 (14:18 -0700)]
Stabilize Test

Use QProcess::waitForFinished over a signal spy. Has a
chance of stabilizing the test, but also cleans up the code.

Change-Id: I888c3b9da6d44d11516227c085bcc12a5ccb5e8a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
11 years agoa nested Window automatically becomes transient for its parent
Shawn Rutledge [Wed, 27 Mar 2013 08:57:59 +0000 (09:57 +0100)]
a nested Window automatically becomes transient for its parent

If you declare Window { Window {}} or Window { Item { Window {}}}
the inner window will automatically become transient for the
outer one.  The transient relationship must be set before the
inner window becomes visible though, so declaring visible: true
doesn't always work, depending on initialization order.  It's OK
if you assign visible (or call show()) later on when the user needs
to see the transient window for the first time.

Also added documentation.

Change-Id: I888c3b9da6d44d11516227c085bcc12a5ccb5e81
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
11 years agoAdded more tests for activeFocusOnTab
Liang Qi [Tue, 9 Apr 2013 10:09:24 +0000 (12:09 +0200)]
Added more tests for activeFocusOnTab

The ignored key events will go to parent.

Change-Id: I5e002ee9df44d1c7865c1c50a1631e8e206c68af
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
11 years agoFix new warnings in qtdeclarative (found by GCC 4.8)
Thiago Macieira [Sat, 6 Apr 2013 18:35:00 +0000 (11:35 -0700)]
Fix new warnings in qtdeclarative (found by GCC 4.8)

qqmlproperty.cpp:1561:35: warning: typedef ‘VMEMO’ locally defined but not used [-Wunused-local-typedefs]
qquickglobal.cpp:1017:13: warning: ‘initialized’ defined but not used [-Wunused-variable]
qquicktextnode.cpp:245:6: warning: unused parameter ‘position’ [-Wunused-parameter]

Change-Id: I48c5486953278dc960249f68e0e122d108f56e07
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoVersion new property and signal
Liang Qi [Fri, 5 Apr 2013 13:39:59 +0000 (15:39 +0200)]
Version new property and signal

activeFocusOnTab and activeFocusOnTabChanged in QQuickItem.

Task-number: QTBUG-30446
Change-Id: I973df95d690b8e533b5cc108d8e083a2fed8528a
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoAdd change log file for Qt 5.1.0
Sergio Ahumada [Mon, 8 Apr 2013 09:21:25 +0000 (11:21 +0200)]
Add change log file for Qt 5.1.0

Change-Id: I9bd3fe3cb3897c18b08a3f9d4792f69a29d9d5f9
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
11 years agoQmlDebugging: Remove 'insignificant_test'
Aurindam Jana [Tue, 19 Mar 2013 12:41:34 +0000 (13:41 +0100)]
QmlDebugging: Remove 'insignificant_test'

The test cases used to depend on a specific port being free for
client-server communication. Since, the test cases now use a port
range, they should be more stable now. The timeout has also been
increased from 5s to 10s to ensure that the application output
is read.

Task-number: QTBUG-28263

Change-Id: I7f0670713b8a901e4da3c3d62bbb9fc18e38bd25
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoFixed distance field text when using non-opaque colors.
Yoann Lopes [Thu, 21 Mar 2013 15:34:38 +0000 (16:34 +0100)]
Fixed distance field text when using non-opaque colors.

The alpha has to be premultiplied before passing the color to the
shader.

Change-Id: If22f0e0892eb4330d5f7398bea2710fce18c4dcb
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoTestLib: Add more mouseMove in mouseDrag implementation
Caroline Chao [Tue, 2 Apr 2013 16:24:46 +0000 (18:24 +0200)]
TestLib: Add more mouseMove in mouseDrag implementation

So the cursor has intermediate states while dragging instead of
jumping to the final position.

This is for example useful for testing the behavior of a control
during the drag.

Add autotest.

Change-Id: I061dd18ef7ac389aa4da4a5b60f9e128ee8c08d0
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoUse correct alpha range for the distance field outlined text.
Yoann Lopes [Thu, 21 Mar 2013 17:22:09 +0000 (18:22 +0100)]
Use correct alpha range for the distance field outlined text.

The alpha treshold values used in the outline shader were hard-coded. It
should use the same logic as in the normal text shader, using the
ThresholdFunc and the AntialiasingSpreadFunc for calculating these
values.

Change-Id: I0e6f38644692cc7a8a4cee1e8e60622fe289d615
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoMerge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging...
Frederik Gladhorn [Fri, 5 Apr 2013 14:01:51 +0000 (16:01 +0200)]
Merge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging/stable

11 years agoImplemented text styles for QSGDefaultGlyphNode.
Yoann Lopes [Tue, 12 Mar 2013 17:43:21 +0000 (18:43 +0100)]
Implemented text styles for QSGDefaultGlyphNode.

Used when Text has renderType: Text.NativeRendering.

Task-number: QTBUG-27867
Change-Id: Id1262ef49e26229c86ebd2533b9f6de638bc75cb
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoMake keyClick/Press/Release work with a char
Albert Astals Cid [Wed, 3 Apr 2013 09:07:18 +0000 (11:07 +0200)]
Make keyClick/Press/Release work with a char

Change-Id: Id821bddd993d4da4458464713a69edfea4aaecaa
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoAndroid: Support implicit import paths for assets:/ urls
Eskil Abrahamsen Blomfeldt [Thu, 4 Apr 2013 14:17:35 +0000 (16:17 +0200)]
Android: Support implicit import paths for assets:/ urls

The assets: scheme is not handled by QNetworkAccessManager, so it needs
to be special cased along side the qrc: scheme. We make QML recognize
it as a synchronously loaded, local file, and we make the type loader
get the correct path and check existence of the directory correctly.
This makes it possible to implicitly import the containing directory
of QML files that are bundled in the assets directory.

Task-number: QTBUG-30510

Change-Id: I048292757e509066a4af342081ec8428e2bd8af3
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
11 years agoRemove unused declaration of accessibility text functions.
Frederik Gladhorn [Thu, 4 Apr 2013 12:33:04 +0000 (14:33 +0200)]
Remove unused declaration of accessibility text functions.

Change-Id: I5cf9849f5c1ea39954050292d29db9cb1bd78c0c
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
11 years agoTestLib: add mouse release at the end of a mouseDrag
Caroline Chao [Wed, 27 Mar 2013 12:13:30 +0000 (13:13 +0100)]
TestLib: add mouse release at the end of a mouseDrag

Change-Id: I901f23a2bc7089784ed644a53a3712669b21f417
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoFix autotest-exported class from QtQuick.
Thiago Macieira [Tue, 2 Apr 2013 05:45:28 +0000 (22:45 -0700)]
Fix autotest-exported class from QtQuick.

Each class with a virtual table should have at least one non-inline
member. Especially if it's exported (there's no point in exporting it
otherwise).

Change-Id: I6b2821faa9662c6e8b65ce9ced53332e1a18e8d9
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoRemove the APPLE_texture_format path
Gunnar Sletta [Mon, 18 Mar 2013 12:22:54 +0000 (13:22 +0100)]
Remove the APPLE_texture_format path

It is untested and is causing problems elsewhere.

Change-Id: I412f820d14c1632e3d1000b627231d8f78e792b5
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoRemove resize hook from QSGRenderLoop, exposureChanged is enough.
Gunnar Sletta [Thu, 21 Feb 2013 10:16:58 +0000 (11:16 +0100)]
Remove resize hook from QSGRenderLoop, exposureChanged is enough.

After much back and forth, I think we have settled on the right approach
in QtGui, which is that resizeEvent is pretty much useless as the
action happens on the following exposeEvent().

Change-Id: I5e87bda89853907d041f56acf9a2895e540c41f0
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoOur debug env vars are a mess. Standardize on QSG_RENDER_TIMING
Gunnar Sletta [Thu, 4 Apr 2013 07:39:03 +0000 (09:39 +0200)]
Our debug env vars are a mess. Standardize on QSG_RENDER_TIMING

Change-Id: I4e88b479a8a9a5126312a05800e8170511b1f7ac
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoQQuickTextEdit: render inline images after change 48798
Pierre Rossi [Thu, 21 Mar 2013 12:15:01 +0000 (13:15 +0100)]
QQuickTextEdit: render inline images after change 48798

The refactoring in QQuickTextEdit from this change:
https://codereview.qt-project.org/#change,48798
accidentally broke rendering of inline images.
Revive the ProtectedLayoutAccessor trick to get the proper
format and properly extract the image from it.

Change-Id: I445914efcea1012daa79d594aa1e828b1039b988
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
11 years agoMark tst_dialogs insignificant to stop geting CI failures
Shawn Rutledge [Thu, 4 Apr 2013 13:02:58 +0000 (15:02 +0200)]
Mark tst_dialogs insignificant to stop geting CI failures

Task-number: QTBUG-30513
Change-Id: I625ff99e2e2e31b58fd219cf9736f262098d2664
Reviewed-by: David Faure (KDE) <faure@kde.org>
11 years agoMerge remote-tracking branch 'origin/release' into stable
Frederik Gladhorn [Wed, 3 Apr 2013 14:16:08 +0000 (16:16 +0200)]
Merge remote-tracking branch 'origin/release' into stable

Conflicts:
examples/qml/xmlhttprequest/doc/src/xmlhttprequest.qdoc
examples/quick/accessibility/doc/src/accessibility.qdoc
examples/quick/animation/doc/src/animation.qdoc
examples/quick/canvas/doc/src/canvas.qdoc
examples/quick/draganddrop/doc/src/draganddrop.qdoc
examples/quick/imageelements/doc/src/imageelements.qdoc
examples/quick/keyinteraction/doc/src/keyinteraction.qdoc
examples/quick/localstorage/doc/src/localstorage.qdoc
examples/quick/mousearea/doc/src/mousearea.qdoc
examples/quick/particles/affectors/doc/src/affectors.qdoc
examples/quick/particles/customparticle/doc/src/customparticle.qdoc
examples/quick/particles/emitters/doc/src/emitters.qdoc
examples/quick/particles/imageparticle/doc/src/imageparticle.qdoc
examples/quick/particles/system/doc/src/system.qdoc
examples/quick/positioners/doc/src/positioners.qdoc
examples/quick/righttoleft/doc/src/righttoleft.qdoc
examples/quick/scenegraph/customgeometry/doc/src/customgeometry.qdoc
examples/quick/scenegraph/openglunderqml/doc/src/openglunderqml.qdoc
examples/quick/scenegraph/simplematerial/doc/src/simplematerial.qdoc
examples/quick/threading/doc/src/threading.qdoc
examples/quick/touchinteraction/doc/src/touchinteraction.qdoc
examples/quick/views/doc/src/views.qdoc

Change-Id: Idf7bb76c82acacf86b19a9f4633c3cbf4ae1a9a0

11 years agoFix export macros for the QML parser export.
Thiago Macieira [Tue, 2 Apr 2013 05:44:32 +0000 (22:44 -0700)]
Fix export macros for the QML parser export.

These classes are in the QtQml library. They shouldn't be defined to
export (even if it's autotest export) when compiling other libraries,
notably QtQuick.

Change-Id: Id76d2b2f2c60355240edabb7875db3e97fb0da17
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoStabilize Code
Alan Alpert [Mon, 1 Apr 2013 18:14:48 +0000 (11:14 -0700)]
Stabilize Code

Apparently it is no longer necessary to rely on undefined compiler
behavior.

Change-Id: I8e93dc0de663713c714d7894f4c66acb0aec30b4
Reviewed-by: Matthew Vogt <matthew.vogt@qinetic.com.au>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoVersion new signals
Alan Alpert [Fri, 29 Mar 2013 22:14:50 +0000 (15:14 -0700)]
Version new signals

New signals added as a workaround need to be versioned as new. However,
because they're used just to override the property's signals and are
forwarded to the old signal you can still use the old signal names from
QML. Consequently, this revision shouldn't need to be exposed to QML.

Change-Id: I80407852f0a5063866c5f4334cfd0285f00d5578
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
11 years agoProvide workaround to slow glyph cache updates.
Michael Brasser [Tue, 26 Mar 2013 14:15:10 +0000 (09:15 -0500)]
Provide workaround to slow glyph cache updates.

The environmental variable QML_USE_GLYPHCACHE_WORKAROUND can be
specified to use the workaround path, which performs better on some
hardware.

Task-number: QTBUG-29264
Change-Id: I16d35ceabc12c990e4f791693ec4694f4e7f55f7
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoUse distance fields for text on retina displays
Gunnar Sletta [Wed, 20 Mar 2013 14:41:44 +0000 (15:41 +0100)]
Use distance fields for text on retina displays

Change-Id: I6d3f3e7e4813155f2abb3edc51b145fb709c485b
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
11 years agoFix incorrect merge in textureprovider example.
Michael Brasser [Tue, 26 Mar 2013 19:53:38 +0000 (14:53 -0500)]
Fix incorrect merge in textureprovider example.

Change-Id: I5a76ab1ef77c43aecd2a03cc7d614a198290f427
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoQmlProfiling: Test case uses port range
Aurindam Jana [Tue, 19 Mar 2013 12:38:57 +0000 (13:38 +0100)]
QmlProfiling: Test case uses port range

Change-Id: I45fcb8b7d496d480ad7fa72064b13c00a4bd6fa6
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoDebugger: Accepts port range as arguments
Aurindam Jana [Mon, 18 Mar 2013 16:17:52 +0000 (17:17 +0100)]
Debugger: Accepts port range as arguments

Allow a port range to pass on command line, and try to listen on any of the
ports in the range. (Re)using the ',' separator allows for backwards compatibility,
that is, also Qt 4 will accept a -qmljsdebugger=port:1000,1010 argument, but
will only try to listen on port 1000.

Change-Id: Ic03fe20e4aee9ecdea86651f46f1df5cb19bd75c
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoUpdate EtcProvider example to support configurable base url.
Michael Brasser [Wed, 27 Mar 2013 01:29:10 +0000 (20:29 -0500)]
Update EtcProvider example to support configurable base url.

Change-Id: Idb047bc7bf2c9f1c62c4749cb416bdf267e66e17
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoFix distance field antialiasing for retina displays.
Gunnar Sletta [Wed, 20 Mar 2013 14:40:49 +0000 (15:40 +0100)]
Fix distance field antialiasing for retina displays.

Change-Id: I01d7d41a4e70822555bae453978dbe92fbb5c98d
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
11 years agoShow fullscreen button in qmlscene on Mac
Gunnar Sletta [Thu, 21 Mar 2013 08:56:37 +0000 (09:56 +0100)]
Show fullscreen button in qmlscene on Mac

Change-Id: I3202e8e7461f457eeb73a82b7a8da40a11e4f76d
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
11 years agoDoc: Fix some titles and links
Sze Howe Koh [Thu, 28 Mar 2013 12:39:13 +0000 (20:39 +0800)]
Doc: Fix some titles and links

Make page titles follow the conventions at
http://qt-project.org/wiki/Spelling_Module_Names_in_Qt_Documentation.

Make class/type list titles follow the "<Qt Module> C++ Classes" and
"<Qt Module> QML Types" formats.

Links are updated accordingly, along with broken links found during this
sweep. Some inline links also have their surrounding text modified, to
improve flow.

Change-Id: I0ed7788caa250085d7ea0080a77d8a2655debf39
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoDoc: Update module "Qt Declarative" -> "Qt Quick"
Sze Howe Koh [Wed, 27 Mar 2013 14:28:24 +0000 (22:28 +0800)]
Doc: Update module "Qt Declarative" -> "Qt Quick"

Also update examples/README to show the relationship between Qt Quick
and Qt QML.

Change-Id: I4e50d9f0ddb1ac25ccdfed09f579f76a375b14fe
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
11 years agoDelay loading implicit import
Alan Alpert [Sat, 8 Dec 2012 21:57:12 +0000 (13:57 -0800)]
Delay loading implicit import

As a performance improvement to avoid extra filesystem access, only
import "." if it is needed for type resolution.

Change-Id: If9be25deb3205f8c81f9f418404d9fb41bebb84f
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
11 years agoFix warning QQuickImplicitSizeItem redefines signals
Caroline Chao [Mon, 25 Mar 2013 13:12:19 +0000 (14:12 +0100)]
Fix warning QQuickImplicitSizeItem redefines signals

Task-number: QTBUG-30258

Change-Id: I3ab2a3ffbe22f583ac422f876be3037c07e8255d
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
11 years agoDoc: Fixed some uses of terminolgies in qdoc files.
Jerome Pasion [Mon, 25 Mar 2013 11:37:22 +0000 (12:37 +0100)]
Doc: Fixed some uses of terminolgies in qdoc files.

-"element" -> "type" or "object" (not in all cases where this change applies)
-some instances of QtQuick. It should be "Qt Quick".
-only in qdoc files. Examples and source code changes will be done later.

Task-number: QTBUG-30180
Change-Id: Ie587461a138e97606f761ad1e90909c91b479303
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
11 years agoBump MODULE_VERSION to 5.1.0
Sergio Ahumada [Mon, 25 Mar 2013 10:09:43 +0000 (11:09 +0100)]
Bump MODULE_VERSION to 5.1.0

Change-Id: I3d794f16eb81634b9fe69d4fc9559be19cf3a998
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
11 years agoAttempt to stabilize tst_qquickanimatedsprite
Frederik Gladhorn [Tue, 26 Mar 2013 14:24:31 +0000 (15:24 +0100)]
Attempt to stabilize tst_qquickanimatedsprite

Change-Id: I557f985ca5e68eb75d0b032b1dfa28cc33d56b6a
Reviewed-by: David Faure (KDE) <faure@kde.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
11 years agoDoc: Spelling fix.
Jerome Pasion [Tue, 26 Mar 2013 09:57:28 +0000 (10:57 +0100)]
Doc: Spelling fix.

"sufficent" -> "sufficient"

Change-Id: Id46e15c3fb0a2514e8a391108065a52a18da6936
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
11 years agoAdd changes-5.0.2 file
Sergio Ahumada [Mon, 25 Mar 2013 09:38:04 +0000 (10:38 +0100)]
Add changes-5.0.2 file

Change-Id: Ifb952f46be13cd1009a82131d1eb7c17962c7118
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
11 years agoEnable accessibility again.
Frederik Gladhorn [Tue, 12 Mar 2013 12:38:48 +0000 (13:38 +0100)]
Enable accessibility again.

Revert "Disable accessibility temporarily."

This reverts commit 361015dc73b887026e1937da09c11df89acf5c85.

Change-Id: Ie1d053fe64ee79fbd9e57bf2d0d2764bb638db72
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
11 years agoMerge "Merge remote-tracking branch 'origin/dev' into stable" into refs/staging/stable
J-P Nurmi [Fri, 22 Mar 2013 15:31:39 +0000 (16:31 +0100)]
Merge "Merge remote-tracking branch 'origin/dev' into stable" into refs/staging/stable

11 years agoMerge remote-tracking branch 'origin/dev' into stable
Frederik Gladhorn [Fri, 22 Mar 2013 15:27:17 +0000 (16:27 +0100)]
Merge remote-tracking branch 'origin/dev' into stable

These two patches should have targeted 5.1 and went in just
at the wrong time.

Change-Id: Idd0a7a812fb11e2aea2c187d5e82aa31494c576c

11 years agoSkip flaky FileDialog modality test
Shawn Rutledge [Thu, 21 Mar 2013 07:27:43 +0000 (08:27 +0100)]
Skip flaky FileDialog modality test

It's been failing in CI, not just on MacOS

Change-Id: Iba3ff400c0b8b6b0cc9a7c6bddd710d3f0e78964
Reviewed-by: David Faure (KDE) <faure@kde.org>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
11 years agoMerge "Merge branch 'dev' into stable" into refs/staging/stable
Sergio Ahumada [Fri, 22 Mar 2013 12:16:59 +0000 (13:16 +0100)]
Merge "Merge branch 'dev' into stable" into refs/staging/stable

11 years agoTry to stabilize tst_QQuickPathView
Sergio Ahumada [Tue, 19 Mar 2013 12:11:27 +0000 (13:11 +0100)]
Try to stabilize tst_QQuickPathView

Change-Id: I673604d4f0bc90352efe115422762c7c4ec210ad
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoTry to stabilize qquickimage and rendernode tests.
Gunnar Sletta [Wed, 20 Mar 2013 09:19:38 +0000 (10:19 +0100)]
Try to stabilize qquickimage and rendernode tests.

Some of Our CI machines are running on tiny screens and recent
changes in Qt have caused us to limit windows to the screen
geometry (which is sensible).

Change-Id: I29eb3b5c73a7ea650ac26494c25d204fb254dee3
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
11 years agoFix duplicate examples for qml/quick modules
Kai Koehne [Mon, 18 Mar 2013 16:00:14 +0000 (17:00 +0100)]
Fix duplicate examples for qml/quick modules

Task-number: QTBUG-30233
Change-Id: Ic0a6d9112dbf8903d68f571e0ac853d89ff31ebe
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
11 years agoTry to stabilize qquickimage and rendernode tests.
Gunnar Sletta [Wed, 20 Mar 2013 09:19:38 +0000 (10:19 +0100)]
Try to stabilize qquickimage and rendernode tests.

Some of Our CI machines are running on tiny screens and recent
changes in Qt have caused us to limit windows to the screen
geometry (which is sensible).

Change-Id: I29eb3b5c73a7ea650ac26494c25d204fb254dee3
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
11 years agoAdd Instantiator type to QtQml
Alan Alpert [Mon, 24 Dec 2012 06:57:10 +0000 (22:57 -0800)]
Add Instantiator type to QtQml

Provides a dynamic instantiation type which is not tied to visual items.

Change-Id: I42f7332b29b752dcc94979b6e0ec191fc76b96ef
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agoMerge branch 'dev' into stable
Sergio Ahumada [Wed, 20 Mar 2013 08:13:42 +0000 (09:13 +0100)]
Merge branch 'dev' into stable

This starts Qt 5.1 release cycle

Change-Id: I6178a580b4c99aded1a69032a02169cff502b71d

11 years agoOptimize QQuickTextEdit for larger documents.
Pierre Rossi [Mon, 18 Mar 2013 15:25:59 +0000 (16:25 +0100)]
Optimize QQuickTextEdit for larger documents.

The rationale is to not end up re-processing the whole document on each update
Since we know where the editing takes place, we can break down the text edit's
contents in several text nodes and only re-create the affected text nodes upon
editing.

This requires ripping out the SelectionEngine helper class from QQuickTextNode
so that QQuickTextEdit can tap into its functionality directly.

A positive side-effect of this exercise is that it should be much harder to
to come across GlyphNodes packing more than 16300 glyphs or so.

Task-number: QTBUG-29596
Change-Id: Id29b0709baa43f5b29c44ab02398ba996be3e28a
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
11 years agoAdd QQmlApplicationEngine
Alan Alpert [Fri, 21 Dec 2012 21:37:30 +0000 (13:37 -0800)]
Add QQmlApplicationEngine

This helper class exposes QML application functionality that QML-only
applications want to have, but QML-using applications may not.

Change-Id: If91c3f55ffa2a4aecdd9d6cc62f6ad09fd35b0dd
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
11 years agoFix multi-line string content.
Erik Verbruggen [Tue, 19 Mar 2013 12:04:54 +0000 (13:04 +0100)]
Fix multi-line string content.

ECMA5.1, paragraph 7.8.4, item 9 under semantics: The SV of
   LineContinuation :: \ LineTerminatorSequence
is the empty character sequence.

So, do not add any line-terminator inside a multi-line string. Escaped
characters like \r and \n are added of course.

Change-Id: I8c58b7971b1d1bc90adc795ea278541758246e01
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
11 years agoMake sure that TextInteractionFlags get set.
Frederik Gladhorn [Tue, 19 Mar 2013 14:04:44 +0000 (15:04 +0100)]
Make sure that TextInteractionFlags get set.

The first time the function is called,
it could fail to set the flags.

Calling setSelectByKeyboard(true) would not actually
set the text interaction flags (was == on).

The test didn't detect it because it called setReadOnly
before setSelectByKeyboard.

Change-Id: Ia54cc782b6ad5a74f1d7029c92fa230116d034b0
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>