OSDN Git Service

挿入文字列だけ変更して適用できない不具合の修正
[gikonavigoeson/gikonavi.git] / Giko.pas
index fd4ce15..7af88cd 100644 (file)
--- a/Giko.pas
+++ b/Giko.pas
@@ -1431,6 +1431,8 @@ begin
 end;
 //
 procedure TGikoForm.FormShow(Sender: TObject);
+var
+       item        : TThreadItem;
 begin
        if FStartUp then begin
                ShowWindow(Application.Handle, SW_HIDE);
@@ -1464,6 +1466,13 @@ begin
             GikoDM.TabsOpenAction.Tag := 1;
                        GikoDM.TabsOpenAction.Execute;
             GikoDM.TabsOpenAction.Tag := 0;
+            if (GikoSys.Setting.LastCloseTabURL <> '') then begin
+                item := BBSsFindThreadFromURL( GikoSys.Setting.LastCloseTabURL );
+                if (item <> nil) and (item.IsLogFile) then begin
+                    OpenThreadItem(item, item.URL);
+                end;
+                GikoSys.Setting.LastCloseTabURL := '';
+            end;
                end;
 
         //ActionList\82ÌGroupIndex\82ð\8c³\82É\96ß\82·
@@ -1484,8 +1493,13 @@ begin
                        Exit;
        end;
 
+    GikoSys.Setting.LastCloseTabURL := '';
        if GikoSys.Setting.TabAutoLoadSave then begin
                GikoDM.TabsSaveAction.Execute;
+        if (GetActiveContent <> nil) and
+            (GetActiveContent.IsLogFile) then begin
+            GikoSys.Setting.LastCloseTabURL := GetActiveContent.URL;
+        end;
        end;
 
        if (SearchDialog <> nil) then begin
@@ -2726,7 +2740,8 @@ var
 begin
        Thread := inThread;
        idx := BrowserTab.TabIndex;
-       if (FActiveContent <> nil) and
+       if  (not FStartUp) and
+        (FActiveContent <> nil) and
                (FActiveContent.Thread <> Thread.Thread) and
                (FActiveContent.Browser <> nil) and
                (Assigned(FActiveContent.Browser.Document)) then begin
@@ -3571,6 +3586,8 @@ begin
     end;
     BrowserTab.Tabs.BeginUpdate;
     try
+        GikoSys.Setting.LastCloseTabURL :=
+            TBrowserRecord(BrowserTab.Tabs.Objects[index]).Thread.URL;
         TBrowserRecord(BrowserTab.Tabs.Objects[index]).Free;
         if ( BrowserTab.Tabs.Count - 1 = index ) and
             ( BrowserTab.TabRect(index).Left