summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/windows
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-202-0/+4
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.h src/corelib/tools/qstring.cpp src/gui/image/image.pri src/gui/image/qimage.cpp src/plugins/platforms/cocoa/qcocoawindow.h src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/eglfs/qeglfshooks_stub.cpp tests/auto/corelib/io/qstandardpaths/tst_qstandardpaths.cpp Change-Id: I3b9ba029c8f2263b011f204fdf68c3231c6d4ce5
| * Saving physical size changes of screen on WindowsCyril Oblikov2014-01-151-0/+2
| | | | | | | | | | | | | | | | On windows (tested on win7) physicalSizeMM is changed after changing screen resolution. We need to save new size. Change-Id: I1b38d9ba2af9679812a973737a724c9a9c5395da Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * Windows: Use focusWindow() as native dialog parent when 0 is passed.Friedemann Kleint2014-01-141-0/+2
| | | | | | | | | | | | | | | | | | | | A parent is required, otherwise the application gets deactivated when the dialog closes. The same is done in Qt 4. Task-number: QTBUG-36039 Change-Id: I56688b3259f1d207edd1bec499afd1365ae511dc Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | Replace win32-g++ with mingw scopeKai Koehne2014-01-172-3/+3
| | | | | | | | | | | | | | | | Commit 773dd01 introduced a general mingw platform scope, which is cleaner and more flexible than matching the spec name. Change-Id: Ie3a9cb791a83f7c8a51bc4e23069190c452ab521 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Windows: Remove rarely used integration/theming logging categories.Friedemann Kleint2014-01-157-30/+6
| | | | | | | | | | | | | | | | Preparing the introduction of the categorized logging system for the plugin. Change-Id: I2b180d88cf508559f495d39d4e1d36b8f3da7051 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* | Windows: Silence warnings about BitBlt() failing.Friedemann Kleint2014-01-151-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | After showing the lock screen, spurious warnings about BitBlt() failing occur with last error set to ERROR_SUCCESS or ERROR_INVALID_HANDLE. Task-number: QTBUG-35926 Task-number: QTBUG-29716 Change-Id: I3e899cdf1ae60e76d13b81caec43716ad7c9725d Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-101-2/+2
|\| | | | | | | Change-Id: I99af0bef7f1c931533a324ebcfb27c40ee871a5e
| * Windows: Silence warning in QWindowsFileDialogHelper::selectFile().Friedemann Kleint2014-01-091-2/+2
| | | | | | | | | | | | | | | | | | | | The function is invoked from the QFileDialog constructor in save file mode when passing a non-existing file. Task-number: QTBUG-35703 Change-Id: I5c13efb9b6789404b28739f6ce88ed87b594b6e4 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | Shuffle things around in preparation for Direct2D platform pluginLouai Al-Khanji2014-01-1012-369/+724
| | | | | | | | | | | | | | Add a layer of abstraction in some spots where the Direct2D plugin will hook in. Change-Id: Ifca7daf6ad0284af52a81822e970c2317d339234 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devSimon Hausmann2014-01-031-0/+6
|\| | | | | | | Change-Id: Id13badc270db98806048753fd7fb658aa17f1ede
| * Windows platform plugin: Add missing case statementKurt Pattyn2013-12-301-0/+6
| | | | | | | | | | | | Change-Id: I9b9fc6cf000b262277711374e0a2fe119328849e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-12-243-8/+5
|\| | | | | | | Change-Id: I2defae1904154283446b069d151c3ef57302ec7b
| * Fixed another assert in qwindowskeymapperOliver Wolff2013-12-201-2/+5
| | | | | | | | | | | | | | | | | | | | When we get a WM_CHAR message we do not need to add anything to the key map as these messages already contain the character code in question. Task-number: QTBUG-35532 Change-Id: If73993cd873b7c616876b9ba52ceba6b27a6a7b1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * Fix writingSystems determination by code page range bitsKonstantin Ritt2013-12-192-6/+0
| | | | | | | | | | | | | | | | | | | | Do exactly what windows font database does to determine writingSystems in case of non-truetype fonts. Task-number: QTBUG-13585 Change-Id: I4a1a48d74c36e403c31f20847cf80295d89a34bc Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Simon Hausmann2013-12-234-8/+40
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-12-164-8/+40
| |\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/kernel/qplatformtheme.h tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp tests/auto/widgets/widgets/qspinbox/tst_qspinbox.cpp Change-Id: Iecd3343d6a050b8764f78d809c4a1532aeba69e5
| | * Correct debug bit setting with WGLLaszlo Agocs2013-12-131-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | No need to tie the debug bit to OpenGL 3.0+. xcb is correct in this respect, let's correct the windows plugin too. Change-Id: I13ea48de067d3fb61575be8f71b97bb547d8eb02 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
| | * Windows: Show context menu on mouse release.Friedemann Kleint2013-12-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce a hint to QPlatformTheme to control the behavior. Task-number: QTBUG-35231 Change-Id: Ia28e153a8dd3f1931321a222d8906ca87166ed62 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| | * Windows: Fix corner case where frameless windows would cover the taskbar.Sérgio Martins2013-12-091-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 0c936ca83c40b73f30195a619900f2be98b9e968 we fixed the case where the window was maximized programmatically, but if the window gets restored by clicking on the taskbar we don't get to set WithinMaximize flag, since we immediately get the WM_GETMINMAXINFO request from Windows. To reproduce the problem, run tests/manual/windowflags, remove frames, maximize, minimize, and restore by clicking on the taskbar. Task-number: QTBUG-8361 Change-Id: I8a7cf4fccbb2c3dac5f570848501ac1e8d2c2307 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| | * Windows: Don't cover the taskbar when maximizing frameless windowsSérgio Martins2013-12-062-2/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Brings Windows QPA on par with other platforms. [ChangeLog][Windows] Don't cover the taskbar when maximizing frameless windows. Task-number: QTBUG-8361 Change-Id: Iba35132f697cb7379650a4c883b616c5c2023d4c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | | Minor optimizationKonstantin Ritt2013-12-201-1/+2
|/ / | | | | | | | | | | | | | | | | | | Querying the "extra" fallback fonts (which are hard-coded names, actually) for family only makes sense for scripts that cover more than just a single WS; these currently are Common (<-Inherited) and Han. Change-Id: I37682f1ae51a476a21b933607de48b01255cf1c3 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | Respect the WindowDoesNotAcceptFocus flagAndy Shaw2013-12-053-1/+14
| | | | | | | | | | | | | | | | | | | | When the window is requested to be made active then it should check if the window accepts focus or not. If it does not then it should ensure it informs the underlying system that it does not accept the activate event. Change-Id: I3e6533be792d8bdbb2bfcdf3b9c1a93e2c67c75a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-11-292-2/+2
|\| | | | | | | Change-Id: Ibb342cc5fc55ff9a3f4b3ecbd53936b57bc13e63
| * Fix directwrite font engine compileLouai Al-Khanji2013-11-271-1/+1
| | | | | | | | | | | | | | Add missing comma that prevented compilation. Change-Id: If771366adf3a31427c2beefa09c0206653f8ec84 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
| * windows: Set forward compatibility bit properlyLaszlo Agocs2013-11-271-1/+1
| | | | | | | | | | | | | | | | | | | | The bit should be set when QSurfaceFormat::DeprecatedFunctions is _not_ specified. The documentation was correct, the implementation was not. Change-Id: If7202d3a59d5336fff255a290b65fb4bfa7b79c9 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-11-2613-114/+105
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For the conflicts in msvc_nmake.cpp the ifdefs are extended since we need to support windows phone in the target branch while it is not there in the current stable branch (as of Qt 5.2). Conflicts: configure qmake/generators/win32/msvc_nmake.cpp src/3rdparty/angle/src/libEGL/Surface.cpp src/angle/src/common/common.pri src/corelib/global/qglobal.h src/corelib/io/qstandardpaths.cpp src/plugins/platforms/qnx/qqnxintegration.cpp src/plugins/platforms/qnx/qqnxscreeneventhandler.h src/plugins/platforms/xcb/qglxintegration.h src/widgets/kernel/win.pri tests/auto/corelib/thread/qreadwritelock/tst_qreadwritelock.cpp tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp tools/configure/configureapp.cpp Change-Id: I00b579eefebaf61d26ab9b00046d2b5bd5958812
| * Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-11-261-2/+6
| |\ | | | | | | | | | Change-Id: I83ff8f4d7dffd7385013a1bd8a1732a89ee20d56
| | * Fixed assert in Windows key handlingOliver Wolff2013-11-231-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Certain key sequences (like press alt, press left, release left, release alt) can cause an assert in qwindowskeymapper. This behavior was introduced in change I4f7709a90906b03f4504deea1ff5c361e9f94b3f (Fix virtual key mapping on MS Windows). The place that seems to cause the new behavior is changing the bitmask for obtaining the event's scancode. With the changed bitmask releasing the alt key in the given key sequence causes the WM_KEYUP event to trigger a WM_CHAR event which should not happen there. To be honest I don't know how having the extended bit inside the scancode fixes the behavior but it seems to do and I could not find another place which might cause the breakage. Task-number: QTBUG-35005 Change-Id: Ia18c2681ea311196441a5cd15017e220ac095674 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * | Fix the ignored Qt::WA_StaticContents on WindowsChris Colbert2013-11-251-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This restores the ability from the Qt 4.x series to honor the static contents region in the backbuffer when resizing a widget. The fix only applies when running under Windows. Task-number: QTBUG-34799 [ChangeLog][QtWidgets][Windows] Update QWidgetBackingStore and QWindowsBackingStore to support Qt::WA_StaticContents QWidgetBackingStore::staticContents() was updated for windows to *not* unconditionally return false. It now returns true if it has a non-empty static widgets list. QWindowsBackingStore::resize(...) was updated to honor the provided static contents region. It now copies the static region into the new backbuffer in a manner similar to what was done in Qt4. The difference is that this version accounts for the possibility of the new buffer having a smaller region than the old buffer. In Qt4 the ::prepareBuffer method was only called when the buffer was resized larger. Change-Id: I135ff8fb16f52759089f1e7353426303c4504db3 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
| * | Fix OpenType fonts with cmap tables on WindowsJosh Faust2013-11-222-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-31656 Change-Id: I5405d80f3ac1de488c44c9f1ac9ed9942ceab6b8 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | Remove empty QAccessible2 headerFrederik Gladhorn2013-11-203-3/+1
| | | | | | | | | | | | | | | Change-Id: Ia5e9b1adf9280e6b7d7aaf8cb5b5167b694a6070 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
| * | Windows: Fix bug where windows stopped painting after a restore.Sérgio Martins2013-11-181-0/+2
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | This is an improvement over 6800728d where we only fixed it if the window was in "normal" state (Qt::WindowNoState) before minimizing. With this patch, if the window was previously maximized or full-screen it will also get the expose events when being restored. Change-Id: I4a30423145e0999c5d0a5ee2a989730b83f4e3f2 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
| * Windows: Do not set transient parent on popups.Friedemann Kleint2013-11-071-0/+2
| | | | | | | | | | | | | | | | | | Analoguous to Window creation code. Task-number: QTBUG-34503 Change-Id: I3cf7d58999bff5b106ca9d2e2c6f550e35f9db9a Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| * Add a warning message when a WM_DESTROY not triggered by Qt is received.Friedemann Kleint2013-11-072-2/+9
| | | | | | | | | | | | | | Task-number: QTBUG-34503 Change-Id: I7a1e06b34deaf8e595f4986114701480bdcf219c Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| * Clean up QWindowsSessionManager.Friedemann Kleint2013-11-053-45/+10
| | | | | | | | | | | | | | Fix spelling error in method name and inline simple functions. Change-Id: I7f2a67fb1951b58874b09002ee57e15e75561727 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
| * Windows: Do not detect full-screen state for child windows.Friedemann Kleint2013-11-041-1/+1
| | | | | | | | | | | | | | | | | | | | Introduced by a1db174ea98fab8669da498639895bac4c894baf (Fix window state handling). Task-number: QTBUG-34477 Change-Id: I4c92edddef346f9d7c4741f2f9784e9f686e9cda Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| * Windows: Do not use blend function for GL windows with alpha.Friedemann Kleint2013-10-301-5/+7
| | | | | | | | | | | | | | Task-number: QTBUG-34376 Change-Id: I81a5ee6ff14e5472eb1f3846577d86b615be34e0 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| * QWindowsKeyMapper: Added some comments about functionality + cleanupOliver Wolff2013-10-252-26/+14
| | | | | | | | | | Change-Id: Ieabdea7601ea0eba08eac701b2fdf27b4cd2ff45 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * Fix bug in updatePossibleKeyCodes() with dead keys and modifiersJuan Luis Boya García2013-10-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As it was until now, QWindowsKeyMapper::updatePossibleKeyCodes() tested using ToUnicode for which characters produce a key with every possible combination of modifiers. Calling ToUnicode with a dead key is dangerous, because MS Windows keeps it in the driver buffer, so if you call ToUnicode with acute key and then you press a, you get an á. To prevent this, updatePossibleKeyCodes() checked if the key that was being tested was a dead key. If true, it inserted an space and then repeated the key in order to reset the system internal buffers to the same state they were before the call. The problem with this is if the dead key is really two keys (like ^ or ´ in US International keyboard layout) and you press one of those keys without the modifier to make it a dead key (i.e. 6 in US International): Since updatePossibleKeyCodes() only tests for the key that was pressed it gets 6 is not a dead key, and thus it does not execute the workaround. Thus, the next time the user presses 'a' they get 'â' instead because updatePossibleKeyCodes() set the dead key on the keyboard buffer and did not run the workaround. This patch makes updatePossibleKeyCodes() run the workaround if any possible combination of modifiers with the key being examinated makes a dead key. Task-number: QTBUG-33591 Change-Id: I8c0b27586f7c62798986258b1b84aa90e4c5d64c Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * Fix virtual key mapping on MS WindowsJuan Luis Boya García2013-10-253-27/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to map MS Windows virtual keys to Qt keys without messing with dead keys now I use the built-in keyMap structure of QWindowsKeyMapper and assert every cell in the keymap is properly updated. In order to guarantee this even when the user changes the keyboard layout, WndProc now manages the WM_INPUTLANGCHANGE message, which is handled by QWindowsKeyMapper, resetting the layout structure. I don't fully understand yet some things about QWindowsKeyMapper, i.e. how QWindowsKeyMapper::updatePossibleKeyCodes workarounds the dead key issue with ToAscii; but it seems to work fine in all the tests I've done. Any further testing is highly appreciated, though. [ChangeLog][[QtGui][Platform Specific Changes][Windows] Fixed virtual key mapping on Windows. Task-number: QTBUG-33409 Task-number: QTBUG-8764 Task-number: QTBUG-10032 Change-Id: I4f7709a90906b03f4504deea1ff5c361e9f94b3f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Add swapInterval to QSurfaceFormatLaszlo Agocs2013-11-132-10/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement swap interval support for EGL, GLX and WGL. The environment variable QT_QPA_EGLFS_SWAPINTERVAL is renamed to QT_QPA_EGL_SWAPINTERVAL and can be used to override the applications' setting of the swap interval. Task-number: QTBUG-31939 Change-Id: I644325d5d3306b7604bffd7efccda3c00ed37d36 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-10-246-10/+42
|\| | | | | | | Change-Id: Ie56539b2e0be611a363b5f15ae5412a78d6945a2
| * Windows: Handle WM_SYSCOLORCHANGE as theme change.Friedemann Kleint2013-10-231-0/+3
| | | | | | | | | | | | | | Task-number: QTBUG-34170 Change-Id: I6ca11ab67c1e2752300fc167fb8f3c4f0d9ae2b8 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| * Fix typo in check for MINGW_W64 versionKai Koehne2013-10-231-1/+1
| | | | | | | | | | | | | | | | Got introduced in 9b187bcd6a256b53cc2fb85500 Change-Id: I1d713f8309d3d8568ea836cc1d29f9dca685ac01 Reviewed-by: Jonathan Liu <net147@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * Rely on isLayered() to decide layeringGunnar Sletta2013-10-231-2/+3
| | | | | | | | | | | | | | | | | | The logic here was a bit broken. Every QWindow has an opacity which is 1 by default so the expose was hit for every single window, regardless of it being layered or not. Change-Id: I04873cd5db1cd147708e7de140f5947d3a01e9e1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * Fix compilation with latest MinGW-w64 (release 3)Kai Koehne2013-10-221-1/+3
| | | | | | | | | | | | | | Now that MinGW-w64 fixed the headers the old hack actually break stuff. Change-Id: I1f60b9176982f6c07e01f3960bc1d7e70d7f9481 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * QFileDialog: don't create widgets if the platform dialog will be usedShawn Rutledge2013-10-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | This is a performance and memory optimization which also fixes bugs that are related to creating widgets, file system models etc. despite using platform native dialogs. Similar to 785bc64f8e743ac269f15cbe7fecba93d3d507ac for QColorDialog. Task-number: QTBUG-33039 Change-Id: Ia1aa7ec1f43b47006b9ebd377aed15c958538a17 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * Windows: Fix tablet position in relative (mouse) mode.Arthur Krebsbach2013-10-142-4/+30
| | | | | | | | | | | | | | | | | | | | | | When in "mouse" or "relative" mode with the pen position information would not be calculated correctly resulting in a significant offset between the tablet pen location and the mouse cursor location. Logic was added to detect when the two were not in sync and use the mouse location when this happens. Change-Id: Icb7129e8cce186c0099953769e215649d9347c8e Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
| * Fix compilation with older MinGW headersKai Koehne2013-10-121-1/+1
| | | | | | | | | | | | | | | | | | | | Headers from mingw.org (4.7.2) declares _flushall only if __STRICT_ANSI__ is not defined ... Anyhow, we can as well use fflush(), which is in the official standard. Change-Id: Ic2b4d2ac724280f1304221be1fceab067af0c1f8 Reviewed-by: Samuel Gaist <samuel.gaist@edeltech.ch> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-10-112-3/+5
|\| | | | | | | Change-Id: Ib8cfeee7d9ca15e8ad520e428b72c200827a8628