improve user interactivity during long page loads by doing better detection of user-input and interrupting the parser more frequently. Also moved the WIN32 specific logic for determining when the user is moving a top-level window from plevent.c to the widget module. b=165039 r=rods@netscape.com sr=kin@netscape.com

git-svn-id: svn://10.0.0.236/trunk@130871 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
kmcclusk%netscape.com
2002-10-01 03:04:22 +00:00
parent 2379791d20
commit 3db5f70791
10 changed files with 148 additions and 51 deletions

View File

@@ -60,6 +60,7 @@
#include "nsIPresShell.h"
#include "nsIPresContext.h"
#include "nsIViewManager.h"
#include "nsIWidget.h"
#include "nsIContentViewer.h"
#include "nsIMarkupDocumentViewer.h"
#include "nsINodeInfo.h"
@@ -4054,7 +4055,15 @@ HTMLContentSink::DidProcessAToken(void)
shell->GetViewManager(getter_AddRefs(vm));
NS_ENSURE_TRUE(vm, NS_ERROR_FAILURE);
PRUint32 eventTime;
nsresult rv = vm->GetLastUserEventTime(eventTime);
nsCOMPtr<nsIWidget> widget;
nsresult rv = vm->GetWidget(getter_AddRefs(widget));
if (!widget || NS_FAILED(widget->GetLastInputEventTime(eventTime))) {
// If we can't get the last input time from the widget
// then we will get it from the viewmanager.
rv = vm->GetLastUserEventTime(eventTime);
NS_ENSURE_TRUE(NS_SUCCEEDED(rv), NS_ERROR_FAILURE);
}
NS_ENSURE_TRUE(NS_SUCCEEDED(rv), NS_ERROR_FAILURE);
if ((!(mFlags & NS_SINK_FLAG_DYNAMIC_LOWER_VALUE)) &&