editor/base/nsEditorEventListeners.cpp
editor/base/nsEditorEventListeners.h

  - Added code to scroll the selection into view
    after processing key events.
  - Commented out the hack that redraws the entire
    view when the focus is gained and lost. Replaced
    the hack code with calls to RepaintSelection().

layout/base/public/nsIFrameSelection.h
layout/base/public/nsIPresShell.h
layout/html/base/src/nsPresShell.cpp
   - Added ScrollSelectionIntoView() and RepaintSelection() methods.

layout/base/src/nsRangeList.cpp
   - Added implementation for ScrollSelectionIntoView() and
     RepaintSelection().
   - Check for NULL primary frame in GetFocusNodeRect()
     to fix bug #12793.
This commit is contained in:
kin@netscape.com
1999-08-30 21:54:40 +00:00
parent d7eda9db5a
commit 2206ab56b9
11 changed files with 260 additions and 17 deletions

View File

@@ -134,6 +134,8 @@ public:
NS_IMETHOD SelectAlternateStyleSheet(const nsString& aSheetTitle);
NS_IMETHOD ListAlternateStyleSheets(nsStringArray& aTitleList);
NS_IMETHOD GetSelection(SelectionType aType, nsIDOMSelection** aSelection);
NS_IMETHOD ScrollSelectionIntoView(SelectionType aType, SelectionRegion aRegion);
NS_IMETHOD RepaintSelection(SelectionType aType);
NS_IMETHOD GetFrameSelection(nsIFrameSelection** aSelection);
NS_IMETHOD EnterReflowLock();
@@ -716,6 +718,24 @@ PresShell::GetSelection(SelectionType aType, nsIDOMSelection **aSelection)
return mSelection->GetSelection(aType, aSelection);
}
NS_IMETHODIMP
PresShell::ScrollSelectionIntoView(SelectionType aType, SelectionRegion aRegion)
{
if (!mSelection)
return NS_ERROR_NULL_POINTER;
return mSelection->ScrollSelectionIntoView(aType, aRegion);
}
NS_IMETHODIMP
PresShell::RepaintSelection(SelectionType aType)
{
if (!mSelection)
return NS_ERROR_NULL_POINTER;
return mSelection->RepaintSelection(aType);
}
NS_IMETHODIMP
PresShell::GetFrameSelection(nsIFrameSelection** aSelection)
{