summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| | * Android: [REG] Fix QScreen::physicalSize()Eskil Abrahamsen Blomfeldt2014-07-081-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The physical size should be set based on the screen size, not the available geometry. This used to work in Qt 5.3.0 because the screenSize and size of the available geometry was identical on startup, but in Qt 5.3.1 the available geometry is 0x0 until there the metrics are actually available to avoid flickering on startup, so this caused a regression. [ChangeLog][Android] Fixed regression where QScreen::physicalSize() would return 0x0. Change-Id: I6c2ee11205427a88764e129b05ece6d3fbbf4c99 Task-number: QTBUG-39978 Reviewed-by: Christian Stromme <christian.stromme@digia.com> Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Document QApplication::cursorFlashTime() can return -1İsmail Dönmez2014-07-071-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | On Windows QApplication::cursorFlashTime() can return -1 if keyboard blinking is disabled. Add documentation for that case. Change-Id: I1e5d683573e55b045e2d9bd9804daf4be579fd02 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| | * Fix for code snippet in commandlineparser documentationNiels Weber2014-07-071-1/+2
| | | | | | | | | | | | | | | | | | | | | One line in the code snippet wasn't translated whlie the others were. Change-Id: Ie77a317833f800087b485609cd001dd26060a40f Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
| | * Doc: removed trolltech.com from namespace in manual qdocconf fileNico Vertriest2014-07-071-1/+1
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-23270 Change-Id: Id65ded1adbbb4f15ef5634f9a984c6cfad5c18d5 Reviewed-by: Martin Smith <martin.smith@digia.com>
| | * Android: Refactor exception checking in qjni.Christian Strømme2014-07-071-19/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | In places where we call java/jni functions that can throw exceptions, we check and clear the exception, if necessary. This change moves the "checking" code into a single (private) function. Change-Id: Ic3de2be51305972b096e1ed0a477e341eb5d9404 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
| | * Fix typo in QGraphicsView documentation.Mitch Curtis2014-07-071-1/+1
| | | | | | | | | | | | | | | Change-Id: Ib750a78e86b8af87d091705a1107ca1eccf32389 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
| | * Fix QTimer with negative interval in QWidgetLineControl::setCursorBlinkPeriodİsmail Dönmez2014-07-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | When keyboard blink is disabled, msec will be negative (-2 in my case). In that case if (msec) will evaluate to true and create a QTimer with a negative interval. Fix is to check for msec > 0. Change-Id: I5c8d82c3cdaf26a961c986f4164805aacfe3ae37 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
| | * Attempt to work with Visual Studio in -Za (strict ANSI) modeThiago Macieira2014-07-051-6/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Visual Studio always treats enum values as signed int, even when the value doesn't fit in a signed int (like 0x80000000 or larger than 32- the tags themselves are still signed. That causes ambiguity in creating a QFlag from an enum value. Visual C++ defines __STDC__ in C mode, but we have no macro in C++ mode. Also note that the Windows SDK headers don't compile in -Za mode. Task-number: QTBUG-39700 Change-Id: Ia943cef37ac1f539bd461c3c18200b0c365c72b3 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| | * Improve QListWidget documentation.Mitch Curtis2014-07-041-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | Mention that removeItemWidget() isn't sufficient to remove a row. List related functions so that it's easy to see the relation between them. Change-Id: Ia1d467390f00976e2276d50df35dd555f7992a9a Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
| | * Fix debug output of QTouchEvent.Friedemann Kleint2014-07-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Return dbg.space(). Task-number: QTBUG-29946 Change-Id: Ia79b297ee3801ccba9f7b1c22ac7a8761cbe8b2e Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| | * Doc: fix a link in QAbstractOpenGLFunctions documentationLiang Qi2014-07-031-1/+1
| | | | | | | | | | | | | | | Change-Id: Icc0109de22de756f7e4b3e888b0ee28a9b9c04d5 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| | * Accessibility Linux: Fix crashes when accessing invalid functionsFrederik Gladhorn2014-07-031-6/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no way to prevent ATs from calling random functions on DBus. While these functions shouldn't exist when we don't advertise the interface, they should just fail gracefully. Task-number: QTBUG-40044 Change-Id: Ia29b49b16feabc0beb80007456e53497f230c7d4 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
| | * QPdf::addImage(): avoid a QImage detach when it's in an acceptable FormatMartin Pley2014-07-031-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Don't detach QImage, when it's in Format_Mono or Format_ARG32. Use QImage::constScanLine() instead of QImage::scanLine(). Change-Id: I30fcafb576aea3189637a40fd75f77c70017ba46 Reviewed-by: John Layt <jlayt@kde.org> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
| | * Make QDom/QXmlSimpleReader reentrant.David Faure2014-07-034-22/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I moved the evil static bool to QXmlSimpleReaderPrivate, and used it from QDom, when the reader instance is a QXmlSimpleReader (if it's not, nothing happens, like before). Task-number: QTBUG-40015 Change-Id: I54ba89db334d7b086379c4a6840cf0de23f77027 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Move QXmlReaderPrivate to private header.David Faure2014-07-032-241/+307
| | | | | | | | | | | | | | | | | | | | | | | | First step for making QXmlSimpleReader reentrant. Task-number: QTBUG-40015 Change-Id: I1666672b1759adb745b86ce58488142f3c66d3f5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| | * Add opt-out environment variable for @2x imagesMorten Johan Sørvig2014-07-032-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are cases where @2x images are in use but where you don't want the associated behavior: - You are implementing an image editor - You are inheriting a resource set which has @2x images, but don't want that behavior with Qt. Add support for disabling @2x behavior with QT_HIGHDPI_DISABLE_2X_IMAGE_LOADING. Change-Id: I206e050b6241f8935b4404c7a28b024a9e00d46c Task-id: QTBUG-38485 Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* | | Add QDebug::noquote() stream modifierKai Koehne2014-07-104-12/+148
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow the user to disable the quoting of QString, QByteArray, QStringLiteral by passing a "noquote()" stream modifier. This requires another flag to be added to QDebug::Stream. To keep BC we're using the QMessageLogContext::version field to differentiate between QDebug streams created by earlier versions. Task-number: QTBUG-37146 Change-Id: I9b215eabfcfd754af16ea87f3ef928d698e37d77 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | MSVC: Fix the compilation of benchmark tests with strict string literals.Friedemann Kleint2014-07-101-1/+1
| | | | | | | | | | | | | | | | | | | | | Introduced by 9f0e5d00ab51cc7c0dc87c8d72f48c4e6edaf120 . Change-Id: I704501bd7e543d971f9b8c9e75746b5749126c5f Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* | | Added autoHide property to QTabBarIvan Komissarov2014-07-106-1/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | This property is used to automatically hide tab bar if it has only one tab. Originally-by: Denis Kovalskiy <denimnumber1@gmail.com> Change-Id: I6967f760010fa55bad6a5986c29abe7ccf625cf8 Reviewed-by: David Faure <david.faure@kdab.com>
* | | Check for boost header in sysrootRainer Keller2014-07-101-1/+1
|/ / | | | | | | | | | | | | | | The check has to detect if boost header is present in the system we are building for. Change-Id: I700a11df208c8852ba094d8bff387ad21fa309b2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Reduce repetitive invocations of QFINDTESTDATA.Friedemann Kleint2014-07-109-129/+150
| | | | | | | | | | | | | | | | | | Store the file names in variables instead. Task-number: QTBUG-38890 Change-Id: I65f28bb62674f14aa099e935a9d7a4e9e6e90ba9 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | QFileDialog: compile with QT_NO_URL_CAST_FROM_STRING.David Faure2014-07-092-1/+3
| | | | | | | | | | | | | | This is useful to detect confusions between local paths and URLs. Change-Id: I1aa72ae10186984812691c8a1a4e843db3c85246 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | qfiledialog: clean up dead code.David Faure2014-07-091-51/+0
| | | | | | | | | | | | | | | | | | Q_WS_WIN is never defined, and the qt_win_get_* functions don't exist anymore. The QPA plugin takes care of doing the Windows-specific handling for the file dialog. Change-Id: Icdf9aed7da3db8ed2bd71d60f821869340ec1041 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Add missing doc file for cocoa native contextLaszlo Agocs2014-07-091-0/+58
| | | | | | | | | | Change-Id: I11938311f648ba63bd9bee2e518c7525871cd0a3 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* | Avoid calling glGetString on OpenGL 3.0+Laszlo Agocs2014-07-091-5/+6
| | | | | | | | | | | | | | | | | | To prevent profiling and debugging tools from generating misleading "errors", call glGetString only for ES and GL < 3.0. Task-number: QTBUG-35173 Change-Id: I4fe3b048fff4cda948152e2ceeb1347f2b0e4ca5 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Use RGBA8888 always in the eglfs backingstoreLaszlo Agocs2014-07-091-8/+1
| | | | | | | | | | | | | | | | | | | | | | Do not try to be clever, this format works always. Using RGBX8888 for windows without alpha buffer was a bad idea because it broke renderToTexture widgets (QQuickWidget, QOpenGLWidget) which failed to properly draw the transparent rect with this format. Change-Id: I295d2f8c17490b59cc5e6b9d81035360da28ab3d Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* | Fix internalFormat in QOpenGLTexture for ES2Laszlo Agocs2014-07-091-1/+10
| | | | | | | | | | | | Task-number: QTBUG-39856 Change-Id: I005f05c26efb4c81dd017cd4b0f16f6dac3f679e Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* | Port qdoc to QCommandLineParserDavid Faure2014-07-091-139/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will simplify future maintenance of qdoc, adding options being much easier with QCommandLineParser. As always, this revealed a number of undocumented options: -log-progress, debug, -autolink-errors. Compared generated docs with and without the patch, looked fine, except that order differs (the qt_qhash_seed thing doesn't work) Based on initial patch by Laszlo Papp. Change-Id: I3c851135f2fd573d622d2ed456a11cee34e06054 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Martin Smith <martin.smith@digia.com>
* | Mention Qt::ToolButtonFollowStyle in QToolBar/QMainWindow documentationDavid Faure2014-07-093-2/+11
| | | | | | | | | | | | | | | | | | | | Improve the existing docu for Qt::ToolButtonFollowStyle in QToolButton and show the same text in all other widgets that have toolButtonStyle property (QToolBar and QMainWindow). Change-Id: I26ff0ed332f8bd10b542a4111c6ae48a963d5667 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | Make QExplicitlySharedDataPointer<T> copy-ctor from QESDP<X> more safeKevin Funk2014-07-092-5/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With "QExplicitlySharedDataPointer::QExplicitlySharedDataPointer( const QExplicitlySharedDataPointer<X> & other)" implicitly doing an static_cast<T *>(...) on other.data(), this could lead to dangerous use of this copy constructor. Example code: QExplicitlySharedDataPointer<Base> base(new Base); QExplicitlySharedDataPointer<Derived> derived(base); // that works! This patchs disables the use of the static_cast, and adds a new define called QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST to re-enable that code path. Note, that the other way-around (assigning 'derived' to 'base') still works as intended. Other side note: QtXmlPatterns is relying heavily on the hidden static_cast "feature". The other default Qt modules compile fine with the static_cast removed. [ChangeLog][Important Behavior Changes] QExplicitelySharedDataPointer's copy constructor which performs a static_cast from "X *" to "T *" (when constructing a QExplicitlySharedDataPointer<T> from a QExplicitlySharedDataPointer<X>) doesn't perform a static_cast from "X *" to "T *" any more. Instead, an implicit cast is now performed. This change will break compilation of code that relied on the downcast (i.e. cast towards a more derived type) of the templated type when copy costructing a QExplicitelySharedDataPointer object. Please refer to the class documentation for more information about this issue and a workaround to keep old code compiling. Change-Id: Id32aba6cda4e6d44728d7bc3a5c0c7a20f19adc6 Reviewed-by: Kevin Funk <kevin.funk@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Update platformheaders docs about bc.Laszlo Agocs2014-07-085-3/+11
| | | | | | | | | | | | | | | | Remove the "As of Qt 5.4" to avoid misunderstandings. Also add the note for the classes that miss it. Change-Id: Id7f437954bb3ec12c0fc944c18e58e6e977863f1 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* | Improve debug output of QPalette.Friedemann Kleint2014-07-081-3/+27
| | | | | | | | | | | | Task-number: QTBUG-39997 Change-Id: I25b8ce8791c25c7ef7b97270ec50dad45fbdfecd Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | Remove QHashDummyNode and avoid undifined behaviorOlivier Goffart2014-07-082-26/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | A lot of code in QHash is doing casting to QHashNode while the pointer may be of type QHashDummyNode. This is a lot of undefined behavior. Remove QHashDummyNode and specialize QHashNode for QHashDummyValue instead. QHashDummyValue is the only type for which QTypeInfo::isDummy is true. Q_DUMMY and QTypeInfo::isDummy are internal API, so is QHashDummyNode, so we can remove them. Task-number: QTBUG-40029 Change-Id: I60c2ff0933075b9202bde89a9992746052f75133 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | syncqt: Fix regexp capturing class names of partial specialisationOlivier Goffart2014-07-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Example with this code: "template <class Key> struct QHashNode<Key, QHashDummyValue> {" The previous regexp would take "QHashNode<Key," as some keyword, and "QHashDummyValue>" as the class name. By forbidding '<' in the keyword, we avoid such mistake Change-Id: I5d5077b9e5e764e91899bcaef137d99214ea5d63 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Fix compilation of the manual dialog test with Qt 4.Friedemann Kleint2014-07-081-5/+7
| | | | | | | | | | | | Task-number: QTBUG-27186 Change-Id: I959c060930ad8a3fa6606be6df0562a96a18eac7 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | Refactor custom/standard color selectors in QColorDialog.Friedemann Kleint2014-07-081-25/+33
| | | | | | | | | | | | | | | | Introduce an enumeration for the rows/columns and use std::find() to find the matching colors. Change-Id: If8b7f76d48beab470f6cac0bfdeaf56058237e94 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | QWidget: Set screen on top-level windows only.Friedemann Kleint2014-07-081-1/+2
| | | | | | | | | | Change-Id: Iea7fbe253ff3144d9988fd14790296e211075d3b Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | Decrease code duplication by reusing QTextEngine::findItem()Konstantin Ritt2014-07-082-54/+6
| | | | | | | | | | | | | | | | | | Use the findItem()'s optimized binary search impl instead of a generic one. Also drop the "already shaped item" case since setBoundary() is only called from itemize(), where the items are not shaped yet. Change-Id: Ifbecdc41b2e3cb7791a7896fbb0cbea439ca0706 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | Use QDropEvent::acceptProposedAction() in drop handlers of QAbstractItemView.Friedemann Kleint2014-07-081-10/+13
| | | | | | | | | | | | | | | | | | Fix updating of the drop cursor when the user presses/releases the shift key while dragging. Task-number: QTBUG-39822 Change-Id: I1d9d3a80d349f7e405db24f8f7dc372428c34f52 Reviewed-by: David Faure <david.faure@kdab.com>
* | Rename QSysInfo::cpuArchitecture and fullCpuArchitectureThiago Macieira2014-07-072-35/+35
| | | | | | | | | | | | | | | | To buildCpuArchitecture and buildAbi, respectively. Change-Id: If84852eb4ef48a6e1fb4351f7a1a4434b4dc3f72 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | remove dead code relating MakeItemOswald Buddenhagen2014-07-072-38/+0
| | | | | | | | | | Change-Id: I413f038391dba02a22242eafef4a946f81babfca Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | make qmake failure fail configureOswald Buddenhagen2014-07-071-1/+1
| | | | | | | | | | | | | | the windows version is already sane in this regard Change-Id: Ib9c6fa35ede0e5e98b38b7b97086b9245c79d48f Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | nuke -process/-fully-process/-dont-process optionsOswald Buddenhagen2014-07-072-46/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][configure] The -process/-fully-process/-dont-process options have been removed due to being unnecessary and counterproductive. -fully-process has always been broken to a degree under unix (and since 5.0 under windows) - rcc isn't built before running qmake -r, so the dependencies are unreliable (and there are many warning messages from qmake). also, it is a lot slower nowadays, as qmake -r is not parallelized. -dont-process doesn't make any sense any more - even if you don't need the Makefile for some obscure reason, the time spent on creating it is not relevant without the recursion. this leaves -process as the only option. Task-number: QTBUG-36955 Change-Id: Ifd3949d9ff773780646c6f65db1629e1c19e53d2 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | remove configure's ability to create vcproj filesOswald Buddenhagen2014-07-071-53/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | the generated projects aren't optimal for building qt anyway (as rcc is not built yet, dependencies are missing), and the added value isn't all that great to start with (Qt devs typically use Qt Creator nowadays). the -no-qmake-deps option was also removed, as it affected only -vcproj. [ChangeLog][configure] The -vcproj option was removed. Use "qmake -r -tp vc" _after_ building Qt in case you want to use VS to work on Qt. Change-Id: I0207d1a89a83b70991a63a7d121a9de4cb685ca5 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | Add convenience function for checking screen changes to QPlatformWindow.Friedemann Kleint2014-07-074-33/+31
| | | | | | | | | | | | | | | | | | | | | | | | Add function returning the screen for a new geometry for geometry change events. This ensures that the checking is done in platform screen coordinates (which might differ from QScreen coordinates due to high-DPI changes) and also that no screen changes are emitted for child windows. Change-Id: I406750f59f006f834c386d09c0c85a804014924a Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* | Add support for querying "glxconfig" from native interfaceAndras Becsi2014-07-074-0/+25
| | | | | | | | | | | | | | | | | | This makes it possible to retrieve the GLXFBConfig used by Qt to create the GLXContext. QtWebEngine on desktop needs this so that Chromium can use the same config as Qt to eliminate BadMatch errors. Change-Id: If18c0937b5af3e457ddbfda035e5d652230211c6 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* | Expose internally QAuthenticator::setRealmJocelyn Turcotte2014-07-072-0/+10
| | | | | | | | | | | | | | | | This allows QtWebEngine to use the class API on top of the Chromium network stack. Change-Id: If595e30cfa6ecdc62cba8453d8f57ddccc1793d9 Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
* | Make QAccessibleEditableTextInterface docs publicFrederik Gladhorn2014-07-071-1/+0
| | | | | | | | | | | | Task-number: QTBUG-40103 Change-Id: I22c678e38e395fa50fc26b456e9fcc2adcae14e6 Reviewed-by: Caroline Chao <caroline.chao@digia.com>
* | Compile fix for configuration without SSL supportMaurice Kalinowski2014-07-071-0/+2
| | | | | | | | | | Change-Id: Ic0f7e2bfd1b5535d4a460a88a9152a5319ed00f6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Accessibility: Improve handling current valueFrederik Gladhorn2014-07-073-11/+3
| | | | | | | | | | | | | | | | | | Value interfaces on OS X and iOS can be strings, so can the value property of MSAA. Before we'd always only send doubles, instead change it to use strings as well. Change-Id: I1b4410c68238ba7a69a5507d87c251f2ac61c568 Reviewed-by: Caroline Chao <caroline.chao@digia.com>