OSDN Git Service

スレッド描画部の更新とかのタイミングの調整
authorh677 <h677>
Sun, 23 May 2004 17:25:46 +0000 (17:25 +0000)
committerh677 <h677>
Sun, 23 May 2004 17:25:46 +0000 (17:25 +0000)
Giko.pas

index 1b78ba8..2ddbe71 100644 (file)
--- a/Giko.pas
+++ b/Giko.pas
@@ -1210,6 +1210,7 @@ begin
        FSearchDialog := nil;
        BrowserNullTab := TBrowserRecord.Create;
        BrowserNullTab.Browser := Browser;
+    BrowserNullTab.Browser.Navigate(BLANK_HTML);
        FBrowsers := TList.Create;
        for i := 0 to 4 do begin
                newBrowser := TWebBrowser.Create(nil);
@@ -3336,7 +3337,7 @@ begin
                (Assigned(FActiveContent.Browser.Document)) then begin
                try
                try
-                       Sleep(1);
+                       //Sleep(1);
                        //Application.ProcessMessages;
                        FActiveContent.Thread.ScrollTop := OleVariant(IHTMLDocument2(FActiveContent.Browser.Document).Body).ScrollTop;
                        //if FActiveContent.Browser <> BrowserNullTab.Browser then
@@ -3350,7 +3351,17 @@ begin
        end;
        if inThread = nil then
                Exit
-       else if inThread.Browser = nil then begin
+       else if inThread.Thread = nil then begin
+               inThread.Browser.Navigate(BLANK_HTML);
+               BrowserBoardNameLabel.Caption := '';
+               ItemBoardImage.Picture := nil;
+               BrowserNameLabel.Caption := '';
+               ItemImage.Picture := nil;
+               BrowserNullTab.Thread := nil;
+               TOleControl(BrowserNullTab.Browser).Visible := true;
+               FActiveContent := nil;
+               Exit;
+       end     else if inThread.Browser = nil then begin
                if FActiveContent.Browser = TWebBrowser(FBrowsers[4]) then
                        FBrowsers.Move(4, 0);
                for i := BrowserTab.Tabs.Count - 1 downto 0 do begin
@@ -3367,24 +3378,6 @@ begin
                FBrowsers.Move(4, 0);
        end;
 
-       if inThread.Browser <> BrowserNullTab.Browser then
-               while (inThread.Browser.ReadyState <> READYSTATE_COMPLETE) and
-                                       (inThread.Browser.ReadyState <> READYSTATE_INTERACTIVE) do begin
-                       Application.ProcessMessages;
-               end;
-
-       if inThread.Thread = nil then begin
-               inThread.Browser.Navigate(BLANK_HTML);
-               BrowserBoardNameLabel.Caption := '';
-               ItemBoardImage.Picture := nil;
-               BrowserNameLabel.Caption := '';
-               ItemImage.Picture := nil;
-               BrowserNullTab.Thread := nil;
-               TOleControl(BrowserNullTab.Browser).Visible := true;
-               FActiveContent := nil;
-               Exit;
-       end;
-
 
        BBSID := inThread.FThread.ParentBoard.BBSID;
        FileName := inThread.FThread.FileName;
@@ -3405,6 +3398,12 @@ begin
                if not TOleControl(inThread.FBrowser).Visible then
                        TOleControl(inThread.FBrowser).Visible := true;         //\82±\82±\82Å\95\\8e¦\82µ\82Ä\82¨\82©\82È\82¢\82Æ\95`\89æ\82Å\8e~\82Ü\82é
                LockWindowUpdate(0);
+               if inThread.Browser <> BrowserNullTab.Browser then begin
+                       while (inThread.Browser.ReadyState <> READYSTATE_COMPLETE) and
+                                       (inThread.Browser.ReadyState <> READYSTATE_INTERACTIVE) do begin
+                               Application.ProcessMessages;
+                       end;
+               end;
                if (not Assigned(inThread.Browser.Document)) then begin
                        inThread.Browser.Navigate('about:blank');
                end;