Skip to content

Commit

Permalink
v1.4.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
nobody committed Jun 12, 2020
2 parents c31f208 + a98a3c5 commit a721a33
Show file tree
Hide file tree
Showing 87 changed files with 1,977 additions and 1,507 deletions.
10 changes: 5 additions & 5 deletions Plugins/Luna/Luna.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
<HintPath>..\..\packages\AutoCompleteMenu-ScintillaNET.1.6.1\lib\net40\AutocompleteMenu-ScintillaNET.dll</HintPath>
</Reference>
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
<HintPath>..\..\packages\Castle.Core.4.4.0\lib\net45\Castle.Core.dll</HintPath>
<HintPath>..\..\packages\Castle.Core.4.4.1\lib\net45\Castle.Core.dll</HintPath>
</Reference>
<Reference Include="KeraLua, Version=1.0.26.0, Culture=neutral, PublicKeyToken=6a194c04b9c89217, processorArchitecture=MSIL">
<HintPath>..\..\packages\KeraLua.1.0.26\lib\net45\KeraLua.dll</HintPath>
Expand All @@ -61,11 +61,11 @@
<Reference Include="System.Configuration" />
<Reference Include="System.Core" />
<Reference Include="System.Drawing" />
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\..\packages\System.Runtime.CompilerServices.Unsafe.4.5.0\lib\netstandard1.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.6.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\..\packages\System.Runtime.CompilerServices.Unsafe.4.7.1\lib\netstandard1.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\..\packages\System.Threading.Tasks.Extensions.4.5.1\lib\portable-net45+win8+wp8+wpa81\System.Threading.Tasks.Extensions.dll</HintPath>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\portable-net45+win8+wp8+wpa81\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml.Linq" />
Expand Down
11 changes: 3 additions & 8 deletions Plugins/Luna/Models/Apis/Components/Server.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
using System.Collections.Generic;
using System.Linq;
using System.Threading;

namespace Luna.Models.Apis.Components
{
Expand All @@ -19,7 +18,7 @@ public Server(
}

public void UpdateAllSummary() =>
vgcServers.UpdateAllServersSummarySync();
vgcServers.UpdateAllServersSummary();

public void ResetIndexes() =>
vgcServers.ResetIndexQuiet();
Expand All @@ -46,12 +45,8 @@ public void SortSelectedServersBySummary() =>
public void SortSelectedServersBySpeedTest() =>
vgcServers.SortSelectedBySpeedTest();

public void StopAllServers()
{
var evDone = new AutoResetEvent(false);
vgcServers.StopAllServersThen(() => evDone.Set());
evDone.WaitOne();
}
public void StopAllServers() =>
vgcServers.StopAllServers();

public bool RunSpeedTestOnSelectedServers() =>
vgcServers.RunSpeedTestOnSelectedServers();
Expand Down
3 changes: 0 additions & 3 deletions Plugins/Luna/Models/Apis/Components/Web.cs
Original file line number Diff line number Diff line change
Expand Up @@ -116,9 +116,6 @@ public string Search(string keywords, int first, int proxyPort) =>
public string PatchHref(string url, string href) =>
vgcWeb.PatchHref(url, href);

public List<string> FindAllHrefs(string text) =>
vgcWeb.FindAllHrefs(text);



#endregion
Expand Down
8 changes: 8 additions & 0 deletions Plugins/Luna/app.config
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,14 @@
<assemblyIdentity name="KeraLua" publicKeyToken="6a194c04b9c89217" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.0.26.0" newVersion="1.0.26.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /></startup></configuration>
6 changes: 3 additions & 3 deletions Plugins/Luna/packages.config
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="AutoCompleteMenu-ScintillaNET" version="1.6.1" targetFramework="net45" />
<package id="Castle.Core" version="4.4.0" targetFramework="net45" />
<package id="Castle.Core" version="4.4.1" targetFramework="net45" />
<package id="jacobslusser.ScintillaNET" version="3.6.3" targetFramework="net45" />
<package id="KeraLua" version="1.0.26" targetFramework="net45" />
<package id="Moq" version="4.14.1" targetFramework="net45" />
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net45" />
<package id="NLua" version="1.4.27" targetFramework="net45" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.0" targetFramework="net45" />
<package id="System.Threading.Tasks.Extensions" version="4.5.1" targetFramework="net45" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.7.1" targetFramework="net45" />
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net45" />
</packages>
12 changes: 6 additions & 6 deletions Plugins/ProxySetterTests/ProxySetterTests.csproj
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\packages\MSTest.TestAdapter.2.1.0\build\net45\MSTest.TestAdapter.props" Condition="Exists('..\..\packages\MSTest.TestAdapter.2.1.0\build\net45\MSTest.TestAdapter.props')" />
<Import Project="..\..\packages\MSTest.TestAdapter.2.1.2\build\net45\MSTest.TestAdapter.props" Condition="Exists('..\..\packages\MSTest.TestAdapter.2.1.2\build\net45\MSTest.TestAdapter.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
Expand Down Expand Up @@ -44,10 +44,10 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.VisualStudio.TestPlatform.TestFramework, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\..\packages\MSTest.TestFramework.2.1.0\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.dll</HintPath>
<HintPath>..\..\packages\MSTest.TestFramework.2.1.2\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.dll</HintPath>
</Reference>
<Reference Include="Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\..\packages\MSTest.TestFramework.2.1.0\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll</HintPath>
<HintPath>..\..\packages\MSTest.TestFramework.2.1.2\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
Expand Down Expand Up @@ -79,8 +79,8 @@
<PropertyGroup>
<ErrorText>这台计算机上缺少此项目引用的 NuGet 程序包。使用“NuGet 程序包还原”可下载这些程序包。有关更多信息,请参见 http://go.microsoft.com/fwlink/?LinkID=322105。缺少的文件是 {0}。</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\..\packages\MSTest.TestAdapter.2.1.0\build\net45\MSTest.TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MSTest.TestAdapter.2.1.0\build\net45\MSTest.TestAdapter.props'))" />
<Error Condition="!Exists('..\..\packages\MSTest.TestAdapter.2.1.0\build\net45\MSTest.TestAdapter.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MSTest.TestAdapter.2.1.0\build\net45\MSTest.TestAdapter.targets'))" />
<Error Condition="!Exists('..\..\packages\MSTest.TestAdapter.2.1.2\build\net45\MSTest.TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MSTest.TestAdapter.2.1.2\build\net45\MSTest.TestAdapter.props'))" />
<Error Condition="!Exists('..\..\packages\MSTest.TestAdapter.2.1.2\build\net45\MSTest.TestAdapter.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MSTest.TestAdapter.2.1.2\build\net45\MSTest.TestAdapter.targets'))" />
</Target>
<Import Project="..\..\packages\MSTest.TestAdapter.2.1.0\build\net45\MSTest.TestAdapter.targets" Condition="Exists('..\..\packages\MSTest.TestAdapter.2.1.0\build\net45\MSTest.TestAdapter.targets')" />
<Import Project="..\..\packages\MSTest.TestAdapter.2.1.2\build\net45\MSTest.TestAdapter.targets" Condition="Exists('..\..\packages\MSTest.TestAdapter.2.1.2\build\net45\MSTest.TestAdapter.targets')" />
</Project>
8 changes: 4 additions & 4 deletions Plugins/ProxySetterTests/app.config
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="KeraLua" publicKeyToken="6a194c04b9c89217" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-1.0.26.0" newVersion="1.0.26.0"/>
<assemblyIdentity name="KeraLua" publicKeyToken="6a194c04b9c89217" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.0.26.0" newVersion="1.0.26.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/></startup></configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /></startup></configuration>
4 changes: 2 additions & 2 deletions Plugins/ProxySetterTests/packages.config
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="MSTest.TestAdapter" version="2.1.0" targetFramework="net45" />
<package id="MSTest.TestFramework" version="2.1.0" targetFramework="net45" />
<package id="MSTest.TestAdapter" version="2.1.2" targetFramework="net45" />
<package id="MSTest.TestFramework" version="2.1.2" targetFramework="net45" />
</packages>
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ Require .net framework 4.5+.
[diegonehab/luasocket](https://github.com/diegonehab/luasocket.git) Lua socket
[FourierTransformer/lua-complete](https://github.com/FourierTransformer/lua-complete.git) lua模块补全
[haf/DotNetZip.Semverd](https://github.com/haf/DotNetZip.Semverd) .net 4.0解压zip文件
[HtmlAgilityPack](https://html-agility-pack.net/) HTML解释器
[jacobslusser/ScintillaNET](https://github.com/jacobslusser/ScintillaNET) 编辑器
[JamesNK/Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) 处理json
[micjahn/ZXing.Net](https://github.com/micjahn/ZXing.Net/) 处理二维码
Expand All @@ -41,4 +40,5 @@ Require .net framework 4.5+.
[rxi/json.lua](https://github.com/rxi/json.lua) Luna插件中的json解释器
[shadowsocksr-backup/shadowsocksr-csharp](https://github.com/shadowsocksr-backup/shadowsocksr-csharp) 屏幕扫码实现代码
[txthinking/blackwhite](https://github.com/txthinking/blackwhite) ProxySetter插件中的默认PAC
[v2ray/v2ray-core](https://github.com/v2ray/v2ray-core) v2ray-core服务端
[v2ray/v2ray-core](https://github.com/v2ray/v2ray-core) v2ray-core服务端
[wilhelmy/lua-bencode](https://bitbucket.org/wilhelmy/lua-bencode) bencode(torrent)解释器
122 changes: 61 additions & 61 deletions V2RayGCon/Controllers/ConfigerComponent/MenuUpdater.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,96 +12,99 @@ class MenuUpdater : ConfigerComponentController
Views.WinForms.FormConfiger formConfiger;
ToolStripMenuItem miReplaceServer, miLoadServer;

VgcApis.Libs.Tasks.LazyGuy lazyServerMenuItemsUpdater;

public MenuUpdater(
Views.WinForms.FormConfiger formConfiger,
ToolStripMenuItem miReplaceServer,
ToolStripMenuItem miLoadServer)
{
servers = Services.Servers.Instance;

this.formConfiger = formConfiger;
this.miReplaceServer = miReplaceServer;
this.miLoadServer = miLoadServer;

lazyServerMenuItemsUpdater = new VgcApis.Libs.Tasks.LazyGuy(
ServerMenuItemsUpdateWorker,
VgcApis.Models.Consts.Intervals.FormConfigerMenuUpdateDelay,
1500)
VgcApis.Misc.Utils.RunInBackground(() =>
{
Name = "Vgc.Configer.MenuUpdater",
};
VgcApis.Misc.Utils.Sleep(2000);
ServerMenuItemsUpdateWorker();
});

}

#region properties
#endregion

#region private method
void ServerMenuItemsUpdateWorker()
List<string[]> CollectServNameAndConfig()
{
var loadServMiList = new List<ToolStripMenuItem>();
var replaceServMiList = new List<ToolStripMenuItem>();

try
var serverList = servers.GetAllServersOrderByIndex();
var servInfos = new List<string[]>();
for (int i = 0; i < serverList.Count; i++)
{
var serverList = servers.GetAllServersOrderByIndex();

var coreServ = serverList[i];
var coreState = coreServ.GetCoreStates();

var name = string.Format(
"{0}.{1}",
coreState.GetIndex(),
coreState.GetLongName());

for (int i = 0; i < serverList.Count; i++)
{
var coreServ = serverList[i];
var coreState = coreServ.GetCoreStates();

var name = string.Format(
"{0}.{1}",
coreState.GetIndex(),
coreState.GetLongName());


var org = coreServ.GetConfiger().GetConfig();
loadServMiList.Add(GenMenuItemLoad(name, org));
replaceServMiList.Add(GenMenuItemReplace(name, org));
}
}
catch
{
return;
var org = coreServ.GetConfiger().GetConfig();
servInfos.Add(new string[] { name, org });
}

VgcApis.Misc.UI.Invoke(
() => ReplaceOldMenus(loadServMiList, replaceServMiList));
return servInfos;
}

private void ReplaceOldMenus(
List<ToolStripMenuItem> loadServMiList,
List<ToolStripMenuItem> replaceServMiList)
void ServerMenuItemsUpdateWorker()
{
var miRootReplace = miReplaceServer.DropDownItems;
var miRootLoad = miLoadServer.DropDownItems;
// step 1 bg
var servInfos = CollectServNameAndConfig();

miRootReplace.Clear();
miRootLoad.Clear();
// step 2 ui
VgcApis.Misc.UI.Invoke(() =>
{
var miRootReplace = miReplaceServer.DropDownItems;
var miRootLoad = miLoadServer.DropDownItems;
miRootReplace.Clear();
miRootLoad.Clear();
});

if (loadServMiList.Count <= 0)
if (servInfos.Count <= 0)
{
miReplaceServer.Enabled = false;
miLoadServer.Enabled = false;
VgcApis.Misc.UI.Invoke(() =>
{
miReplaceServer.Enabled = false;
miLoadServer.Enabled = false;
});
return;
}

var groupSize = VgcApis.Models.Consts.Config.MenuItemGroupSize;
var groupedMiLoad = VgcApis.Misc.UI.AutoGroupMenuItems(
loadServMiList, groupSize);
var groupedMiReplace = VgcApis.Misc.UI.AutoGroupMenuItems(
replaceServMiList, groupSize);
// step 3 ui
var loadServMiList = new List<ToolStripMenuItem>();
var replaceServMiList = new List<ToolStripMenuItem>();
VgcApis.Misc.UI.Invoke(() =>
{
foreach (var si in servInfos)
{
loadServMiList.Add(GenMenuItemLoad(si[0], si[1]));
replaceServMiList.Add(GenMenuItemReplace(si[0], si[1]));
}
});

miRootLoad.AddRange(groupedMiLoad.ToArray());
miRootReplace.AddRange(groupedMiReplace.ToArray());
// step 4 bg
var groupSize = VgcApis.Models.Consts.Config.MenuItemGroupSize;
var groupedMiLoad = VgcApis.Misc.UI.AutoGroupMenuItems(loadServMiList, groupSize);
var groupedMiReplace = VgcApis.Misc.UI.AutoGroupMenuItems(replaceServMiList, groupSize);

miLoadServer.Enabled = true;
miReplaceServer.Enabled = true;
// step 5 ui
VgcApis.Misc.UI.Invoke(() =>
{
var miRootReplace = miReplaceServer.DropDownItems;
var miRootLoad = miLoadServer.DropDownItems;
miRootLoad.AddRange(groupedMiLoad.ToArray());
miRootReplace.AddRange(groupedMiReplace.ToArray());
miLoadServer.Enabled = true;
miReplaceServer.Enabled = true;
});
}

private ToolStripMenuItem GenMenuItemLoad(string name, string orgConfig)
Expand Down Expand Up @@ -142,11 +145,8 @@ private ToolStripMenuItem GenMenuItemReplace(string name, string orgConfig)
#region public method
public void Cleanup()
{
lazyServerMenuItemsUpdater?.Dispose();
}

public void UpdateMenusLater() =>
lazyServerMenuItemsUpdater?.Deadline();
}

public override void Update(JObject config) { }
#endregion
Expand Down
2 changes: 1 addition & 1 deletion V2RayGCon/Controllers/ConfigerComponent/Quick.cs
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ void InsertMTProto(ref JObject config)
var user = Misc.Utils.GetKey(mtproto, $"{inbTag}.0.settings.users.0");
if (user != null && user is JObject)
{
user["secret"] = Misc.Utils.RandomHex(32);
user["secret"] = VgcApis.Misc.Utils.RandomHex(32);
}

Misc.Utils.CombineConfigWithRoutingInFront(ref mtproto, config);
Expand Down
Loading

0 comments on commit a721a33

Please sign in to comment.