OSDN Git Service

TabModel.IsPermanentTabTypeを追加
authorKimura Youichi <kim.upsilon@bucyou.net>
Sat, 14 May 2016 11:56:04 +0000 (20:56 +0900)
committerKimura Youichi <kim.upsilon@bucyou.net>
Fri, 20 May 2016 13:57:15 +0000 (22:57 +0900)
OpenTween/Models/LocalSearchTabModel.cs
OpenTween/Models/RelatedPostsTabModel.cs
OpenTween/Models/TabModel.cs
OpenTween/Tween.cs

index d682ad7..b75900a 100644 (file)
@@ -32,6 +32,8 @@ namespace OpenTween.Models
         public override MyCommon.TabUsageType TabType
             => MyCommon.TabUsageType.SearchResults;
 
+        public override bool IsPermanentTabType => false;
+
         public LocalSearchTabModel(string tabName) : base(tabName)
         {
         }
index 3ded332..086988e 100644 (file)
@@ -38,6 +38,8 @@ namespace OpenTween.Models
         public override MyCommon.TabUsageType TabType
             => MyCommon.TabUsageType.Related;
 
+        public override bool IsPermanentTabType => false;
+
         public PostClass TargetPost { get; }
 
         public RelatedPostsTabModel(string tabName, PostClass targetPost)
index 20f57c9..827539d 100644 (file)
@@ -63,6 +63,11 @@ namespace OpenTween.Models
         public bool IsDistributableTabType => this.TabType.IsDistributable();
         public bool IsInnerStorageTabType => this.TabType.IsInnerStorage();
 
+        /// <summary>
+        /// 次回起動時にも保持されるタブか(SettingTabsに保存されるか)
+        /// </summary>
+        public virtual bool IsPermanentTabType => true;
+
         private IndexedSortedSet<long> _ids = new IndexedSortedSet<long>();
         private ConcurrentQueue<TemporaryId> addQueue = new ConcurrentQueue<TemporaryId>();
         private ConcurrentQueue<long> removeQueue = new ConcurrentQueue<long>();
index 7c9ce0a..2ef7f42 100644 (file)
@@ -7942,7 +7942,7 @@ namespace OpenTween
 
             foreach (var tab in tabs)
             {
-                if (tab.TabType == MyCommon.TabUsageType.Related || tab.TabType == MyCommon.TabUsageType.SearchResults)
+                if (!tab.IsPermanentTabType)
                     continue;
 
                 var tabSetting = new SettingTabs.SettingTabItem