Compare commits

..

4 Commits

Author SHA1 Message Date
huzibaca
97717c648e
fix: windows arm64 vsruntime is not installed 2024-11-16 03:12:11 +08:00
huzibaca
ec6705eaf4
Merge branch 'fix-tray-menu-flash-on-windows' into fix-migrate-tauri2-errors
* fix-tray-menu-flash-on-windows:
  chore: update
2024-11-16 02:54:24 +08:00
Chenx Dust
1e11eff811
feat: support mptcp and smux display (#1995)
Corresponding pull request in mihomo: https://github.com/MetaCubeX/mihomo/pull/1646
2024-11-16 01:35:22 +08:00
huzibaca
13fb8c5d7d
chore: update 2024-11-15 17:19:14 +08:00
6 changed files with 35 additions and 22 deletions

View File

@ -697,33 +697,26 @@ Var VC_REDIST_URL
Var VC_REDIST_EXE
Section CheckAndInstallVSRuntime
; Set default values for x86
StrCpy $VC_REDIST_URL "https://aka.ms/vs/17/release/vc_redist.x86.exe"
StrCpy $VC_REDIST_EXE "vc_redist.x86.exe"
${If} ${RunningX64}
; Update values for x64
${If} ${IsNativeARM64}
StrCpy $VC_REDIST_URL "https://aka.ms/vs/17/release/vc_redist.arm64.exe"
StrCpy $VC_REDIST_EXE "vc_redist.arm64.exe"
IfFileExists "$SYSDIR\msvcp140.dll" Done
${ElseIf} ${RunningX64}
StrCpy $VC_REDIST_URL "https://aka.ms/vs/17/release/vc_redist.x64.exe"
StrCpy $VC_REDIST_EXE "vc_redist.x64.exe"
${EndIf}
${If} ${RunningX64}
IfFileExists "$WINDIR\SysWOW64\msvcp140.dll" Done
${Else}
StrCpy $VC_REDIST_URL "https://aka.ms/vs/17/release/vc_redist.x86.exe"
StrCpy $VC_REDIST_EXE "vc_redist.x86.exe"
IfFileExists "$SYSDIR\msvcp140.dll" Done
${EndIf}
IfFileExists "$SYSDIR\msvcp140.dll" Done
; 如果文件不存在,进行安装
; 下载文件
; 下载并安装VC运行库
nsisdl::download "$VC_REDIST_URL" "$TEMP\$VC_REDIST_EXE"
Pop $0 ; 获取下载结果
StrCmp $0 "success" +2
; 下载失败时,直接跳转到结束
Goto Done
; 安装运行库
nsExec::Exec '"$TEMP\$VC_REDIST_EXE" /quiet /norestart'
Pop $0
${If} $0 == "success"
nsExec::Exec '"$TEMP\$VC_REDIST_EXE" /quiet /norestart'
${EndIf}
Done:
SectionEnd

View File

@ -23,7 +23,8 @@
"app": {
"trayIcon": {
"iconPath": "icons/tray-icon.ico",
"iconAsTemplate": true
"iconAsTemplate": true,
"menuOnLeftClick": false
},
"windows": []
}

View File

@ -160,6 +160,16 @@ export const ProxyItemMini = (props: Props) => {
TFO
</TypeBox>
)}
{proxy.mptcp && (
<TypeBox color="text.secondary" component="span">
MPTCP
</TypeBox>
)}
{proxy.smux && (
<TypeBox color="text.secondary" component="span">
SMUX
</TypeBox>
)}
</Box>
)}
</Box>

View File

@ -127,6 +127,8 @@ export const ProxyItem = (props: Props) => {
{showType && proxy.udp && <TypeBox>UDP</TypeBox>}
{showType && proxy.xudp && <TypeBox>XUDP</TypeBox>}
{showType && proxy.tfo && <TypeBox>TFO</TypeBox>}
{showType && proxy.mptcp && <TypeBox>MPTCP</TypeBox>}
{showType && proxy.smux && <TypeBox>SMUX</TypeBox>}
</>
}
/>

View File

@ -122,6 +122,8 @@ export const getProxies = async () => {
udp: false,
xudp: false,
tfo: false,
mptcp: false,
smux: false,
history: [],
};
};

View File

@ -56,6 +56,8 @@ interface IProxyItem {
udp: boolean;
xudp: boolean;
tfo: boolean;
mptcp: boolean;
smux: boolean;
history: {
time: string;
delay: number;
@ -468,6 +470,7 @@ interface IProxyVlessConfig extends IProxyBaseConfig {
fingerprint?: string;
servername?: string;
"client-fingerprint"?: ClientFingerprint;
smux?: boolean;
}
// vmess
interface IProxyVmessConfig extends IProxyBaseConfig {
@ -496,6 +499,7 @@ interface IProxyVmessConfig extends IProxyBaseConfig {
"global-padding"?: boolean;
"authenticated-length"?: boolean;
"client-fingerprint"?: ClientFingerprint;
smux?: boolean;
}
interface WireGuardPeerOptions {
server?: string;
@ -604,6 +608,7 @@ interface IProxyShadowsocksConfig extends IProxyBaseConfig {
"udp-over-tcp"?: boolean;
"udp-over-tcp-version"?: number;
"client-fingerprint"?: ClientFingerprint;
smux?: boolean;
}
// shadowsocksR
interface IProxyshadowsocksRConfig extends IProxyBaseConfig {