From fb9dd8322532cd71d897b3b5690a3d2268bb1603 Mon Sep 17 00:00:00 2001 From: Qiu Shumin Date: Fri, 26 Feb 2016 14:52:18 +0800 Subject: ShellPkg: Fix unexpected behavior of mouse cursor in Editor. USB mouse cursor cannot move unless the left button is down. The patch refresh the FileBuffer of Editor every time when the 'MainEditorRefresh' is called to fix this bug. Cc: Jaben Carsey Cc: Ruiyu Ni Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin --- ShellPkg/Library/UefiShellDebug1CommandsLib/Edit/MainTextEditor.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/Edit/MainTextEditor.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/Edit/MainTextEditor.c index f972c37839..4eb7d9eee3 100644 --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/Edit/MainTextEditor.c +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/Edit/MainTextEditor.c @@ -1,7 +1,7 @@ /** @file Implements editor interface functions. - Copyright (c) 2005 - 2014, Intel Corporation. All rights reserved.
+ Copyright (c) 2005 - 2016, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at @@ -1617,8 +1617,8 @@ MainEditorRefresh ( MainTitleBarRefresh (MainEditor.FileBuffer->FileName, MainEditor.FileBuffer->FileType, MainEditor.FileBuffer->ReadOnly, MainEditor.FileBuffer->FileModified, MainEditor.ScreenSize.Column, MainEditor.ScreenSize.Row, 0, 0); FileBufferRestorePosition (); - FileBufferRefresh (); } + if (EditorFirst || FileBufferBackupVar.FilePosition.Row != FileBuffer.FilePosition.Row || FileBufferBackupVar.FilePosition.Column != FileBuffer.FilePosition.Column @@ -1627,13 +1627,14 @@ MainEditorRefresh ( StatusBarRefresh (EditorFirst, MainEditor.ScreenSize.Row, MainEditor.ScreenSize.Column, MainEditor.FileBuffer->FilePosition.Row, MainEditor.FileBuffer->FilePosition.Column, MainEditor.FileBuffer->ModeInsert); FileBufferRestorePosition (); - FileBufferRefresh (); } if (EditorFirst) { FileBufferRestorePosition (); } + FileBufferRefresh (); + // // EditorFirst is now set to FALSE // -- cgit v1.2.3