OSDN Git Service

静的フィールドに対する設定値の適用をSettingManagerに移動
authorKimura Youichi <kim.upsilon@bucyou.net>
Mon, 4 Apr 2022 00:51:04 +0000 (09:51 +0900)
committerKimura Youichi <kim.upsilon@bucyou.net>
Fri, 15 Apr 2022 20:04:45 +0000 (05:04 +0900)
OpenTween/ApplicationEvents.cs
OpenTween/Setting/SettingManager.cs
OpenTween/Tween.cs

index c5837e6..2c7f134 100644 (file)
@@ -30,6 +30,7 @@
 using System;
 using System.IO;
 using System.Windows.Forms;
+using OpenTween.Connection;
 using OpenTween.Setting;
 
 namespace OpenTween
@@ -71,6 +72,9 @@ namespace OpenTween
 
             container.CultureService.Initialize();
 
+            Networking.Initialize();
+            settings.ApplySettings();
+
             // 同じ設定ファイルを使用する OpenTween プロセスの二重起動を防止する
             using var mutex = new ApplicationInstanceMutex(ApplicationSettings.AssemblyName, MyCommon.SettingPath);
 
index 0ae80f7..30c97dd 100644 (file)
@@ -26,6 +26,8 @@ using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
+using OpenTween.Connection;
+using OpenTween.Thumbnail;
 
 namespace OpenTween.Setting
 {
@@ -101,5 +103,26 @@ namespace OpenTween.Setting
 
         public void SaveAtIdList()
             => this.AtIdList.Save();
+
+        public void ApplySettings()
+        {
+            // 静的フィールドにセットする必要のある設定値を更新
+            Networking.DefaultTimeout = TimeSpan.FromSeconds(this.Common.DefaultTimeOut);
+            Networking.UploadImageTimeout = TimeSpan.FromSeconds(this.Common.UploadImageTimeout);
+            Networking.ForceIPv4 = this.Common.ForceIPv4;
+            Networking.SetWebProxy(
+                this.Local.ProxyType,
+                this.Local.ProxyAddress,
+                this.Local.ProxyPort,
+                this.Local.ProxyUser,
+                this.Local.ProxyPassword);
+
+            TwitterApiConnection.RestApiHost = this.Common.TwitterApiHost;
+
+            ShortUrl.Instance.DisableExpanding = !this.Common.TinyUrlResolve;
+            ShortUrl.Instance.BitlyAccessToken = this.Common.BitlyAccessToken;
+            ShortUrl.Instance.BitlyId = this.Common.BilyUser;
+            ShortUrl.Instance.BitlyKey = this.Common.BitlyPwd;
+        }
     }
 }
index 86a11ea..71567d4 100644 (file)
@@ -808,15 +808,11 @@ namespace OpenTween
                 this.Font = fontUIGlobal;
             }
 
-            TwitterApiConnection.RestApiHost = this.settings.Common.TwitterApiHost;
-
             // 認証関連
             this.tw.Initialize(this.settings.Common.Token, this.settings.Common.TokenSecret, this.settings.Common.UserName, this.settings.Common.UserId);
 
             this.initial = true;
 
-            Networking.Initialize();
-
             var saveRequired = false;
             var firstRun = false;
 
@@ -834,24 +830,8 @@ namespace OpenTween
                 }
             }
 
-            // Twitter用通信クラス初期化
-            Networking.DefaultTimeout = TimeSpan.FromSeconds(this.settings.Common.DefaultTimeOut);
-            Networking.UploadImageTimeout = TimeSpan.FromSeconds(this.settings.Common.UploadImageTimeout);
-            Networking.SetWebProxy(
-                this.settings.Local.ProxyType,
-                this.settings.Local.ProxyAddress,
-                this.settings.Local.ProxyPort,
-                this.settings.Local.ProxyUser,
-                this.settings.Local.ProxyPassword);
-            Networking.ForceIPv4 = this.settings.Common.ForceIPv4;
-
-            TwitterApiConnection.RestApiHost = this.settings.Common.TwitterApiHost;
             this.tw.RestrictFavCheck = this.settings.Common.RestrictFavCheck;
             this.tw.ReadOwnPost = this.settings.Common.ReadOwnPost;
-            ShortUrl.Instance.DisableExpanding = !this.settings.Common.TinyUrlResolve;
-            ShortUrl.Instance.BitlyAccessToken = this.settings.Common.BitlyAccessToken;
-            ShortUrl.Instance.BitlyId = this.settings.Common.BilyUser;
-            ShortUrl.Instance.BitlyKey = this.settings.Common.BitlyPwd;
 
             // アクセストークンが有効であるか確認する
             // ここが Twitter API への最初のアクセスになるようにすること
@@ -3391,23 +3371,9 @@ namespace OpenTween
             {
                 lock (this.syncObject)
                 {
+                    this.settings.ApplySettings();
                     this.tw.RestrictFavCheck = this.settings.Common.RestrictFavCheck;
                     this.tw.ReadOwnPost = this.settings.Common.ReadOwnPost;
-                    ShortUrl.Instance.DisableExpanding = !this.settings.Common.TinyUrlResolve;
-                    ShortUrl.Instance.BitlyAccessToken = this.settings.Common.BitlyAccessToken;
-                    ShortUrl.Instance.BitlyId = this.settings.Common.BilyUser;
-                    ShortUrl.Instance.BitlyKey = this.settings.Common.BitlyPwd;
-                    TwitterApiConnection.RestApiHost = this.settings.Common.TwitterApiHost;
-
-                    Networking.DefaultTimeout = TimeSpan.FromSeconds(this.settings.Common.DefaultTimeOut);
-                    Networking.UploadImageTimeout = TimeSpan.FromSeconds(this.settings.Common.UploadImageTimeout);
-                    Networking.SetWebProxy(
-                        this.settings.Local.ProxyType,
-                        this.settings.Local.ProxyAddress,
-                        this.settings.Local.ProxyPort,
-                        this.settings.Local.ProxyUser,
-                        this.settings.Local.ProxyPassword);
-                    Networking.ForceIPv4 = this.settings.Common.ForceIPv4;
 
                     this.ImageSelector.Reset(this.tw, this.tw.Configuration);