summaryrefslogtreecommitdiffstats
path: root/src/corelib
Commit message (Collapse)AuthorAgeFilesLines
* qglobal: Remove symbian specific featuresOlivier Goffart2012-01-162-496/+15
| | | | | Change-Id: Ie0480b0c80b68a86e77bf3552546f494cdaf66c1 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Improve the documentation of QStringLiteralOlivier Goffart2012-01-161-3/+27
| | | | | | Change-Id: I4bbe18ecc342f034fbc8e9fd14b700ee5272076f Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Document Q_DECL_CONSTEXPROlivier Goffart2012-01-141-0/+11
| | | | | Change-Id: I61f4017186e8c7b943855723d7c677a01f7a7bf7 Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
* Fix qsystemerror for WinCEJanne Anttila2012-01-141-25/+33
| | | | | | | | | | | | | Windows CE does not have strerror(_r), so lets use string formatting provided by windowsErrorString function. In order to use windowsErrorString it was moved before standardLibraryErrorString function. Task-number: QTBUG-22498 Change-Id: Ifa20c4ac314ac8a26de6b0c5b67ced96b262c2b4 Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Shane Kearns <ext-shane.2.kearns@nokia.com>
* remove symbian support vestiges from text codecsMark Brand2012-01-145-739/+6
| | | | | | | Change-Id: I7b577d360cb9c7225da108ee56fd927a91a04dee Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Fixed QFile::link behaviour for WinCE devices.Janne Anttila2012-01-131-0/+1
| | | | | | | | | | In WEC7 both arguments given for ScCreateShortcut needs to be given in Windows format. Apparently older WinCE devices has accepted also Unix format but this is not anymore true for WEC7. The Windows format works for older WinCE versions as well. Change-Id: Ic1f394e20bae8ad42acb46929d3ff4af92daf310 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Build fix for WINCE to qlocale_tools.cppJanne Anttila2012-01-131-0/+4
| | | | | | | Task-number: QTBUG-22500 Change-Id: If530799cf8ef971f5caf78d0c6dbeeda719d148f Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Windows: Fix qt_ntfs_permission_lookupMiikka Heikkinen2012-01-131-11/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | Specifying qt_ntfs_permission_lookup++ in application code didn't make qfilesystemengine_win.cpp respect Windows ACL as it was supposed to. This was because GetTokenInformation for TokenUser failed always in resolveLibs() function, because the TOKEN_USER struct that was given to it wasn't large enough to contain both TOKEN_USER and SID structs that GetTokenInformation wants to return in this case. Fixed by calling GetTokenInformation twice, first to determine the required size, and then another time to get the actual token info. Additionally, the SID returned as part of the token info needs to be stored for the lifetime of the application, as the TRUSTEE_W struct has a pointer to it (currentUserTrusteeW). The worldTrusteeW initialization also required a change to properly store the SID. Note: The dynamic resolution of FreeSid and other SID manipulating functions doesn't appear to be necessary, as they are found on the same ifdef level (in winbase.h) as the GetTokenInformation, which already isn't dynamically resolved. Task-number: QTBUG-247 Change-Id: I0294c85ea903c86d03c2fcd3d801502b378dc0e5 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Build fix for WINCE to qfsfileengine_win.cppJanne Anttila2012-01-131-1/+1
| | | | | | | | | | | | | | | QFileSystemEngine::currentPath() returns QFileSystemEntry, but this method expects QString return value. -> Code does not compile for WinCE Switched code to use "QFileSystemEngine::currentPath().filePath()" correspondigly as Windows desktop does if filename does not contain drive letter. This is ok, since WinCE does not support drive letters. Task-number: QTBUG-22499 Change-Id: Ic4935357c40cda30efcd2e1c7d69bf2ef7b31dd0 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com> Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
* Added application flags to translate between touch and mouse events.Samuel Rødal2012-01-133-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current way we do it of having the platform or touch plugin send both mouse and touch events is not ideal. There's no good way to write an application that works sanely both on a touch-only device and on a desktop except by restricting yourself to only handling mouse events. If you try to handle touch events you don't get any events at all on desktop, and if you try to handle both, you end up getting duplicate events on touch devices. Instead, we should get rid of the code in the plugins that automatically sends mouse events translated from touch events. This change enables that by making the behaviour fully configurable in QtGui. Two new application attributes are added to explicitly say whether unhandled touch events should be sent as synthesized mouse events and vice versa, and no duplicates are automatically sent as the current situation. Synthesized mouse events are enabled by default. We also get rid of the QTouchEvent::TouchPoint::Primary flag, which was only used to signal that the windowing system automatically generated mouse events for that touch point. Now we only generate mouse events from the first touch point in the list. Change-Id: I8e20f3480407ca8c31b42de0a4d2b319e1346b65 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@nokia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
* QEventDispatcherWin32's internal Window should be a Message-Only WindowDebao Zhang2012-01-131-1/+6
| | | | | | | | | | | | A message-only window enables you to send and receive messages. It is not visible, has no z-order, cannot be enumerated, and does not receive broadcast messages. The window simply dispatches messages. Task-number: QTBUG-17144 Change-Id: Ibaf18f9ef5165166bf0b88e2f4952faba96d5eef Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Remove the Q_NO_DATA_RELOCATION hackOlivier Goffart2012-01-134-54/+1
| | | | | | | | | | | | | | This hack was there because symbian used to have a problem with relocations in the data section, between libraries. Hence, this was needed so the metaobject could have a pointer to the base metaobject, despite being in another library. Anyway, I was told that symbian was fixed eventually. but the hack had to stay there because of compatibility. But now that we don't even support symbian, we can get rid of this hack totally. Change-Id: I7249971ece35d952efa92bf8b04bf3aa3667624c Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Fix compilation of public headers with -Werror=shadowDavid Faure2012-01-122-3/+3
| | | | | Change-Id: Id47623002abca1e03fdfb9e9bd9cbc1b5542a2db Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove QAccessibleEventFrederik Gladhorn2012-01-121-3/+0
| | | | | | | It was unused and I don't quite understand its purpose any more. Change-Id: I5c946a1644fd64508cb4aad78320ae96fd935d31 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Make QFtp private.Jonas M. Gastal2012-01-122-7/+3
| | | | | | | | | All references to QFtp in documentation have been removed, QFtp's documentaiton was marked internal. The QFtp example was removed. Task-number: QTBUG-23199 Change-Id: Ifff83cac069fb350e8ebeae63e605850e65c0c30 Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
* Add Q_COMPILER_* defines for C++11 features supported by clangBradley T. Hughes2012-01-121-1/+40
| | | | | Change-Id: I9487720c33e6ac628f7e13f80057524a950c4c5d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Make QFileSystemWatcherEngines children of QFileSystemWatcherBradley T. Hughes2012-01-129-36/+33
| | | | | | | | | | To support moving QFileSystemWatcher to another thread, the engines need to follow when the watcher is moved. The easiest way to do this is by parenting the engines to the watcher. Change-Id: Ie2bb701c0c148da9cc2302d4de23286b8ef42c4d Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Do not call moveToThread(this) in QWindowsFileSystemWatcherEngineThreadBradley T. Hughes2012-01-121-1/+0
| | | | | | | | | This is considered bad practice, and gives no benefit as the threads do not use an eventloop. Change-Id: I0de9eca97948571cf5091e2f1b19bb1faab3e2ac Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* QFileSystemWatcher/Windows: Output paths if FindNext fails.Friedemann Kleint2012-01-121-3/+15
| | | | | Change-Id: I72bd28868c84d37e3dd4ea8ab892fa092d853d4a Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Abstract QUnifiedTimer.Michael Brasser2012-01-122-130/+414
| | | | | | | | | | | | | QUnifiedTimer now controls QAbstractAnimationTimers, which in turn can be used to drive specific animation systems. The purpose of this change is to allow the QML animation system to be rewritten so that it does not depend on QAbstractAnimation. Change-Id: If06475002e41ba85b1b86b5dd4788de6d27d035d Reviewed-by: Martin Jones <martin.jones@nokia.com> Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
* Remove unnecessary QMutexes in QFileSystemWatcher implementationsBradley T. Hughes2012-01-127-90/+69
| | | | | | | | | | | | | The polling, inotify, and kqueue implementations are no longer threaded, and as such, do not need mutexes to protect their internal data (since QFileSystemWatcher itself is not documented as a thread-safe API). The Windows implementation is unchanged as it uses multiple threads explicitly. Change-Id: Ia82510397e576bf704ce3aed3d776b58b39f7ff3 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
* Avoid races when destroying QFileSystemWatcherBradley T. Hughes2012-01-122-0/+2
| | | | | | | | | | | | | | | On Mac OS X, socket notifiers need to be disabled/destroyed before closing their associated file descriptor, otherwise we cause races inside the CFSocket system. The documentation for CFSocketInvalidate() says that we close the file descriptor after calling this function when the kCFSocketCloseOnInvalidate flag is explicitly cleared (QCocoaEventDispatcher clears this flag). Do the same on the Linux inotify watcher as well, for symmetry. Change-Id: I5592cc4bb5be4b752e48d895a685d3c92826acc7 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
* Docs: Forward-ported typo and link fixes from Qt 4.8Janne Anttila2012-01-111-1/+1
| | | | | | | | | | | | | This commit brings already accepted doc fixes to Qt5. Task-number: QTBUG-9224 Task-number: QTBUG-13442 Task-number: QTBUG-19858 Task-number: QTBUG-21447 Change-Id: I2ebc7c3e74427545367bdcec51e9e710a4925747 Merge-request: 1402 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* QStyleHelper: Base DPI-calculation on QScreen.Friedemann Kleint2012-01-111-2/+1
| | | | | | | | | | | | | | | - Use qt_defaultDpiX() to obtain the resolution, which obtains it from QScreen. This implies that for X11, which previously used a hardcoded default of 96 DPI, the real resolution will be used (typically 75). - Since many tests (layouts, graphicsview) contain test data for 96 DPI, add an attribute to QCoreApplication making it possible to set the resolution to 96 DPI for testing. Change-Id: I77c8233a96b0d75de07406f58d48886a89c3de06 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Remove unused QT_NO_TEXTSTREAM.David Faure2012-01-115-29/+1
| | | | | | | | It was checked in a few places, but it didn't actually remove QTextStream, so it was pretty useless. Change-Id: I8eaf28893cd6c7acbe1c0b69d58de90742aee755 Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
* Add QModelIndex as a built-in metatype.Stephen Kelly2012-01-114-1/+23
| | | | | Change-Id: Ib87cfff8b4baee78189f3df5e20d2e1a00d690e1 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
* Fix Q_ASSERT_X to handle QT_FORCE_ASSERTSHarald Fernengel2012-01-111-3/+3
| | | | | | | This change aligns the behavior of Q_ASSERT and Q_ASSERT_X Change-Id: Iac9f399da6462fcf70826d3ce1177522bed9f897 Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
* Remove redundant parameter from qVariantToHelper.Jędrzej Nowacki2012-01-111-26/+27
| | | | | Change-Id: I3664a74eb8602651547c0c80dc4f628f909d97b4 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Remove thread from QFileSystemWatcherEngine implementations.Robin Burchell2012-01-1010-184/+71
| | | | | | | | | | | | | | | | | | | | | | These threads are actually counterproductive, as generally speaking, processing watches is not that expensive an operation, so instead, they process at full speed and can (in the case of slow processing in the thread processing the events) stack up and consume resources for no good reason. Threads also have an additional resource consumption per engine (some ~8mb of thread stack on Linux), so doing away with them is nice. A side effect of this change is that events are now effectively rate-limited by the eventloop speed of the thread they run in, so if your thread runs too slow, and you recieve a lot of events, on some platforms, events may be dropped now where in the past, they would be read by the monitor thread and turned into Qt signals (thus not visibly showing as a problem, apart from invisibly bloating memory usage). Task-number: QTBUG-20028 Change-Id: I345a56a8c709f6f778ca9a0b55b57c05229ba477 Reviewed-by: João Abecasis <joao.abecasis@nokia.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Add defines for explicit virtual overrides.Stephen Kelly2012-01-101-0/+17
| | | | | | Change-Id: Ia9a610e81eeaaa0a08ca6ef4945b002bdb13fe8a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Make the supportedDragActions a virtual accessor.Stephen Kelly2012-01-102-8/+18
| | | | | | | Change-Id: I4001fcabc67e5b46465b3c9111c33247c52e5788 Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: David Faure <david.faure@kdab.com>
* Document timer accuracy behavior on UNIX.Bradley T. Hughes2012-01-101-1/+9
| | | | | Change-Id: I5e8b383cc4d8ce0d249be164c5ef596328bdc50c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove win*Message() exported functionsBradley T. Hughes2012-01-101-20/+0
| | | | | | | | They are nothing more than wrappers around the Win32 API, and marked for removable in Qt 5. Change-Id: Iaf34d463488feb7840185c7b46f65a031232e34a Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
* Use Qt::TimerType on Windows when starting timersBradley T. Hughes2012-01-102-10/+19
| | | | | | | | | | | | | | | | | | Make all Qt::PreciseTimers and timers with intervals < 20ms use Multimedia timers for maximum accuracy. Qt::CoarseTimers and Qt::VeryCoarseTimers use normal Windows timers, with Qt::VeryCoarseTimers having their interval rounded to the nearest full second. Note that the Windows timer implementation does not attempt to align timers and reduce CPU wakeups like the UNIX implementation does. This might be done in the future, though. However, this change does the best we can do now, keeping most timers working as-is, while allowing explicit use of Multimedia timers via Qt::PreciseTimer. Change-Id: I1898272b101c572a2a9b9454fef27a651eb178f5 Reviewed-by: João Abecasis <joao.abecasis@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Make the roleNames a virtual accessor.Stephen Kelly2012-01-102-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | This is consistent with the rest of the API of QAbstractItemModel (which is virtual) and removes the need for code like this in the constructor (where it doesn't belong): QHash<int, QByteArray> myRoleNames = roleNames(); myRoleNames.insert(Qt::UserRole + 1, "myCustomRole"); setRoleNames(myRoleNames); in favor of MyModel::roleNames() const { QHash<int, QByteArray> myRoleNames = QAbstractItemModel::roleNames(); myRoleNames.insert(Qt::UserRole + 1, "myCustomRole"); return myRoleNames; } which is consistent with all other QAIM API (eg, flags()). This is a source compatible change. Change-Id: I7e1ce17f8dab2292c4c7b6dbd3c09ec71b5c793b Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Marius Bugge Monsen <marius@cutehacks.com>
* Reimplement QVariant to QDebug streaming.Jędrzej Nowacki2012-01-103-100/+57
| | | | | | | New implementation fixes some commented code marked as FIXME. Change-Id: If8f5bebedd65bcf8f839d804c2022ca79ef82ddf Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update year in Nokia copyright headers.Jason McDonald2012-01-106-6/+6
| | | | | | | | The previous change missed some headers from years prior to 2011, and a few new files were merged after the previous change. Change-Id: Ib7d1a2b7062228c2a5373da64242b2ee1f0981e1 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Add V3(md5) and V5(sha1) version for DCE in QUuidLiang Qi2012-01-102-4/+83
| | | | | | | | | | Add the above versions based on RFC4122 standard. Done-with: Hagen Rother Task-number: QTBUG-23071 Change-Id: Ieb90925374d1e3c85011b899b8dd3bb1a608c561 Reviewed-by: João Abecasis <joao.abecasis@nokia.com> Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
* Remove symbian debug macro definition.Stephen Kelly2012-01-101-9/+0
| | | | | Change-Id: I3c4cc5cfd8e157587dbda1589501bb829a5a18db Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* C++11 delete some contructors which are not wanted.Stephen Kelly2012-01-101-2/+2
| | | | | | | Change-Id: I844a0872e81f1824928814edb8d21c0b6384283d Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Remove wrong assert from QMetaType.Jędrzej Nowacki2012-01-101-6/+0
| | | | | | | | | | | | | | | We can't assert that QMetaType helper arrays are initialized. In rare situations it may happen that QMetaType compiled without support for an external type (without compiled Gui or Widgets libraries) will be asked for additional information for the type. For example (assuming Qt is compiled with --no-gui): // typeId it may be received over network (QMetaType::QImage) void *ptr = QMetaType::create(typeId); Change-Id: I018a59b23def35c7574e7c921019b5db4f06e800 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Small QMetaType optimization.Jędrzej Nowacki2012-01-101-6/+6
| | | | | | | Prefer compile time check over a runtime. Change-Id: Ib78563083c765d1fd72217c5aa529d0cbb951130 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Implement QDebug stream operators for builtin classesJędrzej Nowacki2012-01-108-0/+63
| | | | | | | | | | | QDebug stream operator was added for: QPixmap, QImage, QUuid, QBitArray, QLocale, QRegExp, QCursor, QPalette, QTextFormat, QTextLength, QIcon and QSizePolicy Change-Id: Ibcf5c9b599ba322d53cb106d8e5e157427ebe757 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
* Add define for C++11 explict delete methodsStephen Kelly2012-01-091-8/+8
| | | | | Change-Id: Ief4b8949acb528dcfc0be725b562ae71bd1640cd Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Rename handler/handlerManager.Stephen Kelly2012-01-091-4/+4
| | | | | Change-Id: Idbac004120ea686d403421ea4f2fb4db87f55149 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
* Export QTimerInfoListBradley T. Hughes2012-01-091-1/+1
| | | | | | | | | ... so that QCocoaEventDispatcher can use it to implement timer handling and benefit from the Qt::TimerType support in QTimerInfoList. Change-Id: I34b81502465963e2c9d528df463fa2eccd275ad6 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Clean-up the interface for QDate.Xizhi Zhu2012-01-092-94/+4
| | | | | | | | | | | | | | | | Four overload functions removed while keeping source compatibility: - shortMonthName() - shortDayName() - longMonthName() - longDayName() Two functions removed since they have confusing names: - gregorianToJulian() - julianToGregorian() Change-Id: Iaaea066a3fb77b1ee3499d3049fcec5563054cdf Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: John Layt <jlayt@kde.org>
* Remove the Q_TYPENAME define.Stephen Kelly2012-01-083-9/+3
| | | | | | | | | | | | | It is mostly not used (most places in Qt use typename directly), so is already not very useful. For example typename is used in: QDataStream& operator<<(QDataStream& s, const QVector<T>& v) Change-Id: I85337ad7d8d4ebbb424bfa2ab9a356456ff3e90f Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* QProcess/Win: direct forwarding of stdout and stderrJoerg Bornemann2012-01-082-26/+22
| | | | | | | | | | | | | We are now directly passing the standard out/err handles to CreateProcess instead of reading the output and writing it. The downside is, that we cannot automatically forward the process output of GUI applications anymore. This behaviour is intended by the CreateProcess API. Change-Id: Ic6e35c8c338dbea1a9f345567a37d938da1f34a2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Move keyboard locale and input direction to QInputPanelPekka Vuorela2012-01-071-2/+2
| | | | | | | | | | Deprecated QGuiApplication::keyboardInputLocale() and keyboardInputDirection(), introduced QInputPanel::locale() and inputDirection(). Change-Id: Ic48c77f10821a949751c73c73f22bd78e2192b9c Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>