| @@ -79,9 +79,9 @@ namespace Shadowsocks.Controller | |||||
| public event EventHandler<PathEventArgs> PACFileReadyToOpen; | public event EventHandler<PathEventArgs> PACFileReadyToOpen; | ||||
| public event EventHandler<PathEventArgs> UserRuleFileReadyToOpen; | public event EventHandler<PathEventArgs> UserRuleFileReadyToOpen; | ||||
| public event EventHandler<GeositeResultEventArgs> UpdatePACFromGFWListCompleted; | |||||
| public event EventHandler<GeositeResultEventArgs> UpdatePACFromGeositeCompleted; | |||||
| public event ErrorEventHandler UpdatePACFromGFWListError; | |||||
| public event ErrorEventHandler UpdatePACFromGeositeError; | |||||
| public event ErrorEventHandler Errored; | public event ErrorEventHandler Errored; | ||||
| @@ -415,7 +415,7 @@ namespace Shadowsocks.Controller | |||||
| return $"ss://{url}{tag}"; | return $"ss://{url}{tag}"; | ||||
| } | } | ||||
| public void UpdatePACFromGFWList() | |||||
| public void UpdatePACFromGeosite() | |||||
| { | { | ||||
| GeositeUpdater.UpdatePACFromGeosite(_config); | GeositeUpdater.UpdatePACFromGeosite(_config); | ||||
| } | } | ||||
| @@ -611,12 +611,12 @@ namespace Shadowsocks.Controller | |||||
| private void PacServer_PACUpdateCompleted(object sender, GeositeResultEventArgs e) | private void PacServer_PACUpdateCompleted(object sender, GeositeResultEventArgs e) | ||||
| { | { | ||||
| UpdatePACFromGFWListCompleted?.Invoke(this, e); | |||||
| UpdatePACFromGeositeCompleted?.Invoke(this, e); | |||||
| } | } | ||||
| private void PacServer_PACUpdateError(object sender, ErrorEventArgs e) | private void PacServer_PACUpdateError(object sender, ErrorEventArgs e) | ||||
| { | { | ||||
| UpdatePACFromGFWListError?.Invoke(this, e); | |||||
| UpdatePACFromGeositeError?.Invoke(this, e); | |||||
| } | } | ||||
| private static readonly IEnumerable<char> IgnoredLineBegins = new[] { '!', '[' }; | private static readonly IEnumerable<char> IgnoredLineBegins = new[] { '!', '[' }; | ||||
| @@ -24,8 +24,8 @@ Allow other Devices to connect,Общий доступ к подключению | |||||
| Local PAC,Локальный PAC,使用本地 PAC,使用本機 PAC,ローカル PAC,로컬 PAC,PAC local | Local PAC,Локальный PAC,使用本地 PAC,使用本機 PAC,ローカル PAC,로컬 PAC,PAC local | ||||
| Online PAC,Удаленный PAC,使用在线 PAC,使用線上 PAC,オンライン PAC,온라인 PAC,PAC en ligne | Online PAC,Удаленный PAC,使用在线 PAC,使用線上 PAC,オンライン PAC,온라인 PAC,PAC en ligne | ||||
| Edit Local PAC File...,Редактировать локальный PAC…,编辑本地 PAC 文件...,編輯本機 PAC 檔案...,ローカル PAC ファイルの編集...,로컬 PAC 파일 수정,Modifier le fichier PAC local ... | Edit Local PAC File...,Редактировать локальный PAC…,编辑本地 PAC 文件...,編輯本機 PAC 檔案...,ローカル PAC ファイルの編集...,로컬 PAC 파일 수정,Modifier le fichier PAC local ... | ||||
| Update Local PAC from GFWList,Обновить локальный PAC из GFWList,从 GFWList 更新本地 PAC,從 GFWList 更新本機 PAC,GFWList からローカル PAC を更新,GFWList에서 로컬 PAC 파일 업데이트,Mettre à jour le PAC local à partir de GFWList | |||||
| Edit User Rule for GFWList...,Редактировать свои правила для GFWList,编辑 GFWList 的用户规则...,編輯 GFWList 的使用者規則...,ユーザールールの編集...,GFWList 사용자 수정,Modifier la règle utilisateur pour GFWList ... | |||||
| Update Local PAC from Geosite,Обновить локальный PAC из Geosite,从 Geosite 更新本地 PAC,從 Geosite 更新本機 PAC,Geosite からローカル PAC を更新,Geosite에서 로컬 PAC 파일 업데이트,Mettre à jour le PAC local à partir de Geosite | |||||
| Edit User Rule for Geosite...,Редактировать свои правила для Geosite,编辑 Geosite 的用户规则...,編輯 Geosite 的使用者規則...,ユーザールールの編集...,Geosite 사용자 수정,Modifier la règle utilisateur pour Geosite ... | |||||
| Secure Local PAC,Безопасный URL локального PAC,保护本地 PAC,安全本機 PAC,ローカル PAC を保護,로컬 PAC 암호화,Sécuriser PAC local | Secure Local PAC,Безопасный URL локального PAC,保护本地 PAC,安全本機 PAC,ローカル PAC を保護,로컬 PAC 암호화,Sécuriser PAC local | ||||
| Copy Local PAC URL,Копировать URL локального PAC,复制本地 PAC 网址,複製本機 PAC 網址,ローカル PAC URL をコピー,로컬 PAC 파일 URL 복사,Copier l'URL du PAC local | Copy Local PAC URL,Копировать URL локального PAC,复制本地 PAC 网址,複製本機 PAC 網址,ローカル PAC URL をコピー,로컬 PAC 파일 URL 복사,Copier l'URL du PAC local | ||||
| Share Server Config...,Поделиться конфигурацией сервера…,分享服务器配置...,分享伺服器設定檔...,サーバーの設定を共有...,서버 설정 공유,Partager la configuration du serveur ... | Share Server Config...,Поделиться конфигурацией сервера…,分享服务器配置...,分享伺服器設定檔...,サーバーの設定を共有...,서버 설정 공유,Partager la configuration du serveur ... | ||||
| @@ -178,7 +178,7 @@ System Proxy Enabled,Системный прокси включен,系统代理 | |||||
| System Proxy Disabled,Системный прокси отключен,系统代理未启用,系統 Proxy 未啟用,システム プロキシが無効です。,시스템 프록시가 비활성화되었습니다.,Proxy système désactivé | System Proxy Disabled,Системный прокси отключен,系统代理未启用,系統 Proxy 未啟用,システム プロキシが無効です。,시스템 프록시가 비활성화되었습니다.,Proxy système désactivé | ||||
| Failed to update PAC file ,Не удалось обновить PAC файл,更新 PAC 文件失败,更新 PAC 檔案失敗,PAC の更新に失敗しました。,PAC 파일을 업데이트하는데 실패했습니다.,Impossible de mettre à jour le fichier PAC | Failed to update PAC file ,Не удалось обновить PAC файл,更新 PAC 文件失败,更新 PAC 檔案失敗,PAC の更新に失敗しました。,PAC 파일을 업데이트하는데 실패했습니다.,Impossible de mettre à jour le fichier PAC | ||||
| PAC updated,PAC файл обновлен,更新 PAC 成功,更新 PAC 成功,PAC を更新しました。,PAC 파일이 업데이트되었습니다.,PAC mis à jour | PAC updated,PAC файл обновлен,更新 PAC 成功,更新 PAC 成功,PAC を更新しました。,PAC 파일이 업데이트되었습니다.,PAC mis à jour | ||||
| No updates found. Please report to GFWList if you have problems with it.,Обновлений не найдено. Сообщите авторам GFWList если у вас возникли проблемы.,未发现更新。如有问题请提交给 GFWList。,未發現更新。如有問題請報告至 GFWList。,お使いのバージョンは最新です。問題がある場合は、GFWList に報告して下さい。,사용 가능한 업데이트를 찾지 못했습니다. 문제가 있다면 GFWList로 전송해주세요.,Aucune mise à jour trouvée. Veuillez signaler à GFWList si vous avez des problèmes concernant. | |||||
| No updates found. Please report to Geosite if you have problems with it.,Обновлений не найдено. Сообщите авторам Geosite если у вас возникли проблемы.,未发现更新。如有问题请提交给 Geosite。,未發現更新。如有問題請報告至 Geosite。,お使いのバージョンは最新です。問題がある場合は、Geosite に報告して下さい。,사용 가능한 업데이트를 찾지 못했습니다. 문제가 있다면 Geosite로 전송해주세요.,Aucune mise à jour trouvée. Veuillez signaler à Geosite si vous avez des problèmes concernant. | |||||
| No QRCode found. Try to zoom in or move it to the center of the screen.,QRCode не обнаружен. Попробуйте увеличить изображение или переместить его в центр экрана.,未发现二维码,尝试把它放大或移动到靠近屏幕中间的位置,未發現 QR 碼,嘗試把它放大或移動到靠近熒幕中間的位置,QR コードが見つかりませんでした。コードを大きくするか、画面の中央に移動して下さい。,QR코드를 찾을 수 없습니다. 가운데로 화면을 이동시키거나 확대해보세요.,Aucun QRCode trouvé. Essayez de zoomer ou de le déplacer vers le centre de l'écran. | No QRCode found. Try to zoom in or move it to the center of the screen.,QRCode не обнаружен. Попробуйте увеличить изображение или переместить его в центр экрана.,未发现二维码,尝试把它放大或移动到靠近屏幕中间的位置,未發現 QR 碼,嘗試把它放大或移動到靠近熒幕中間的位置,QR コードが見つかりませんでした。コードを大きくするか、画面の中央に移動して下さい。,QR코드를 찾을 수 없습니다. 가운데로 화면을 이동시키거나 확대해보세요.,Aucun QRCode trouvé. Essayez de zoomer ou de le déplacer vers le centre de l'écran. | ||||
| Shadowsocks is already running.,Shadowsocks уже запущен.,Shadowsocks 已经在运行。,Shadowsocks 已經在執行。,Shadowsocks 実行中,Shadowsocks가 이미 실행 중입니다.,Shadowsocks est déjà en cours d'exécution. | Shadowsocks is already running.,Shadowsocks уже запущен.,Shadowsocks 已经在运行。,Shadowsocks 已經在執行。,Shadowsocks 実行中,Shadowsocks가 이미 실행 중입니다.,Shadowsocks est déjà en cours d'exécution. | ||||
| Find Shadowsocks icon in your notify tray.,Значок Shadowsocks можно найти в области уведомлений.,请在任务栏里寻找 Shadowsocks 图标。,請在工作列裡尋找 Shadowsocks 圖示。,通知領域には Shadowsocks のアイコンがあります。,트레이에서 Shadowsocks를 찾아주세요.,Trouvez l'icône Shadowsocks dans votre barre de notification. | Find Shadowsocks icon in your notify tray.,Значок Shadowsocks можно найти в области уведомлений.,请在任务栏里寻找 Shadowsocks 图标。,請在工作列裡尋找 Shadowsocks 圖示。,通知領域には Shadowsocks のアイコンがあります。,트레이에서 Shadowsocks를 찾아주세요.,Trouvez l'icône Shadowsocks dans votre barre de notification. | ||||
| @@ -46,7 +46,7 @@ namespace Shadowsocks.View | |||||
| private MenuItem localPACItem; | private MenuItem localPACItem; | ||||
| private MenuItem onlinePACItem; | private MenuItem onlinePACItem; | ||||
| private MenuItem editLocalPACItem; | private MenuItem editLocalPACItem; | ||||
| private MenuItem updateFromGFWListItem; | |||||
| private MenuItem updateFromGeositeItem; | |||||
| private MenuItem editGFWUserRuleItem; | private MenuItem editGFWUserRuleItem; | ||||
| private MenuItem editOnlinePACItem; | private MenuItem editOnlinePACItem; | ||||
| private MenuItem secureLocalPacUrlToggleItem; | private MenuItem secureLocalPacUrlToggleItem; | ||||
| @@ -86,8 +86,8 @@ namespace Shadowsocks.View | |||||
| controller.ShowPluginOutputChanged += controller_ShowPluginOutputChanged; | controller.ShowPluginOutputChanged += controller_ShowPluginOutputChanged; | ||||
| controller.EnableGlobalChanged += controller_EnableGlobalChanged; | controller.EnableGlobalChanged += controller_EnableGlobalChanged; | ||||
| controller.Errored += controller_Errored; | controller.Errored += controller_Errored; | ||||
| controller.UpdatePACFromGFWListCompleted += controller_UpdatePACFromGFWListCompleted; | |||||
| controller.UpdatePACFromGFWListError += controller_UpdatePACFromGFWListError; | |||||
| controller.UpdatePACFromGeositeCompleted += controller_UpdatePACFromGeositeCompleted; | |||||
| controller.UpdatePACFromGeositeError += controller_UpdatePACFromGeositeError; | |||||
| _notifyIcon = new NotifyIcon(); | _notifyIcon = new NotifyIcon(); | ||||
| UpdateTrayIconAndNotifyText(); | UpdateTrayIconAndNotifyText(); | ||||
| @@ -307,8 +307,8 @@ namespace Shadowsocks.View | |||||
| this.onlinePACItem = CreateMenuItem("Online PAC", new EventHandler(this.OnlinePACItem_Click)), | this.onlinePACItem = CreateMenuItem("Online PAC", new EventHandler(this.OnlinePACItem_Click)), | ||||
| new MenuItem("-"), | new MenuItem("-"), | ||||
| this.editLocalPACItem = CreateMenuItem("Edit Local PAC File...", new EventHandler(this.EditPACFileItem_Click)), | this.editLocalPACItem = CreateMenuItem("Edit Local PAC File...", new EventHandler(this.EditPACFileItem_Click)), | ||||
| this.updateFromGFWListItem = CreateMenuItem("Update Local PAC from GFWList", new EventHandler(this.UpdatePACFromGFWListItem_Click)), | |||||
| this.editGFWUserRuleItem = CreateMenuItem("Edit User Rule for GFWList...", new EventHandler(this.EditUserRuleFileForGFWListItem_Click)), | |||||
| this.updateFromGeositeItem = CreateMenuItem("Update Local PAC from Geosite", new EventHandler(this.UpdatePACFromGeositeItem_Click)), | |||||
| this.editGFWUserRuleItem = CreateMenuItem("Edit User Rule for Geosite...", new EventHandler(this.EditUserRuleFileForGeositeItem_Click)), | |||||
| this.secureLocalPacUrlToggleItem = CreateMenuItem("Secure Local PAC", new EventHandler(this.SecureLocalPacUrlToggleItem_Click)), | this.secureLocalPacUrlToggleItem = CreateMenuItem("Secure Local PAC", new EventHandler(this.SecureLocalPacUrlToggleItem_Click)), | ||||
| CreateMenuItem("Copy Local PAC URL", new EventHandler(this.CopyLocalPacUrlItem_Click)), | CreateMenuItem("Copy Local PAC URL", new EventHandler(this.CopyLocalPacUrlItem_Click)), | ||||
| this.editOnlinePACItem = CreateMenuItem("Edit Online PAC URL...", new EventHandler(this.UpdateOnlinePACURLItem_Click)), | this.editOnlinePACItem = CreateMenuItem("Edit Online PAC URL...", new EventHandler(this.UpdateOnlinePACURLItem_Click)), | ||||
| @@ -387,17 +387,17 @@ namespace Shadowsocks.View | |||||
| _notifyIcon.ShowBalloonTip(timeout); | _notifyIcon.ShowBalloonTip(timeout); | ||||
| } | } | ||||
| void controller_UpdatePACFromGFWListError(object sender, System.IO.ErrorEventArgs e) | |||||
| void controller_UpdatePACFromGeositeError(object sender, System.IO.ErrorEventArgs e) | |||||
| { | { | ||||
| ShowBalloonTip(I18N.GetString("Failed to update PAC file"), e.GetException().Message, ToolTipIcon.Error, 5000); | ShowBalloonTip(I18N.GetString("Failed to update PAC file"), e.GetException().Message, ToolTipIcon.Error, 5000); | ||||
| logger.LogUsefulException(e.GetException()); | logger.LogUsefulException(e.GetException()); | ||||
| } | } | ||||
| void controller_UpdatePACFromGFWListCompleted(object sender, GeositeResultEventArgs e) | |||||
| void controller_UpdatePACFromGeositeCompleted(object sender, GeositeResultEventArgs e) | |||||
| { | { | ||||
| string result = e.Success | string result = e.Success | ||||
| ? I18N.GetString("PAC updated") | ? I18N.GetString("PAC updated") | ||||
| : I18N.GetString("No updates found. Please report to GFWList if you have problems with it."); | |||||
| : I18N.GetString("No updates found. Please report to Geosite if you have problems with it."); | |||||
| ShowBalloonTip(I18N.GetString("Shadowsocks"), result, ToolTipIcon.Info, 1000); | ShowBalloonTip(I18N.GetString("Shadowsocks"), result, ToolTipIcon.Info, 1000); | ||||
| } | } | ||||
| @@ -685,12 +685,12 @@ namespace Shadowsocks.View | |||||
| controller.TouchPACFile(); | controller.TouchPACFile(); | ||||
| } | } | ||||
| private void UpdatePACFromGFWListItem_Click(object sender, EventArgs e) | |||||
| private void UpdatePACFromGeositeItem_Click(object sender, EventArgs e) | |||||
| { | { | ||||
| controller.UpdatePACFromGFWList(); | |||||
| controller.UpdatePACFromGeosite(); | |||||
| } | } | ||||
| private void EditUserRuleFileForGFWListItem_Click(object sender, EventArgs e) | |||||
| private void EditUserRuleFileForGeositeItem_Click(object sender, EventArgs e) | |||||
| { | { | ||||
| controller.TouchUserRuleFile(); | controller.TouchUserRuleFile(); | ||||
| } | } | ||||
| @@ -917,14 +917,14 @@ namespace Shadowsocks.View | |||||
| if (this.localPACItem.Checked) | if (this.localPACItem.Checked) | ||||
| { | { | ||||
| this.editLocalPACItem.Enabled = true; | this.editLocalPACItem.Enabled = true; | ||||
| this.updateFromGFWListItem.Enabled = true; | |||||
| this.updateFromGeositeItem.Enabled = true; | |||||
| this.editGFWUserRuleItem.Enabled = true; | this.editGFWUserRuleItem.Enabled = true; | ||||
| this.editOnlinePACItem.Enabled = false; | this.editOnlinePACItem.Enabled = false; | ||||
| } | } | ||||
| else | else | ||||
| { | { | ||||
| this.editLocalPACItem.Enabled = false; | this.editLocalPACItem.Enabled = false; | ||||
| this.updateFromGFWListItem.Enabled = false; | |||||
| this.updateFromGeositeItem.Enabled = false; | |||||
| this.editGFWUserRuleItem.Enabled = false; | this.editGFWUserRuleItem.Enabled = false; | ||||
| this.editOnlinePACItem.Enabled = true; | this.editOnlinePACItem.Enabled = true; | ||||
| } | } | ||||