From f4d052169b41350674bdf41c32428b84bcd5563a Mon Sep 17 00:00:00 2001 From: Student Main Date: Fri, 10 Apr 2020 23:26:17 +0800 Subject: [PATCH] toggle menu item Enable by WinINet state --- shadowsocks-csharp/Controller/System/SystemProxy.cs | 7 +------ shadowsocks-csharp/View/MenuViewController.cs | 9 +++++++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/shadowsocks-csharp/Controller/System/SystemProxy.cs b/shadowsocks-csharp/Controller/System/SystemProxy.cs index 025781b7..56137e44 100644 --- a/shadowsocks-csharp/Controller/System/SystemProxy.cs +++ b/shadowsocks-csharp/Controller/System/SystemProxy.cs @@ -10,17 +10,12 @@ namespace Shadowsocks.Controller { private static Logger logger = LogManager.GetCurrentClassLogger(); - private static string GetTimestamp(DateTime value) - { - return value.ToString("yyyyMMddHHmmssfff"); - } - public static void Update(Configuration config, bool forceDisable, PACServer pacSrv, bool noRetry = false) { bool global = config.global; bool enabled = config.enabled; - if (forceDisable) + if (forceDisable || WinINet.operational) { enabled = false; } diff --git a/shadowsocks-csharp/View/MenuViewController.cs b/shadowsocks-csharp/View/MenuViewController.cs index 30199ef0..bf38caf0 100644 --- a/shadowsocks-csharp/View/MenuViewController.cs +++ b/shadowsocks-csharp/View/MenuViewController.cs @@ -3,6 +3,7 @@ using Shadowsocks.Controller; using Shadowsocks.Model; using Shadowsocks.Properties; using Shadowsocks.Util; +using Shadowsocks.Util.SystemProxy; using System; using System.Diagnostics; using System.Drawing; @@ -38,7 +39,7 @@ namespace Shadowsocks.View private ToolStripMenuItem disableItem; private ToolStripMenuItem AutoStartupItem; private ToolStripMenuItem ShareOverLANItem; - private ToolStripSeparator SeperatorItem; + private ToolStripSeparator SeperatorItem; private ToolStripMenuItem ConfigItem; private ToolStripMenuItem ServersItem; private ToolStripMenuItem globalModeItem; @@ -504,7 +505,8 @@ namespace Shadowsocks.View ) { menuItem.Checked = true; - } else + } + else { menuItem.Checked = false; } @@ -668,6 +670,9 @@ namespace Shadowsocks.View globalModeItem.Checked = config.global; PACModeItem.Checked = !config.global; } + + globalModeItem.Enabled = WinINet.operational; + PACModeItem.Enabled = WinINet.operational; } private void GlobalModeItem_Click(object sender, EventArgs e)