mirror of
https://github.com/MaaAssistantArknights/MaaAssistantArknights.git
synced 2026-07-15 17:30:27 +08:00
3
.github/ISSUE_TEMPLATE/cn-bug-report.yaml
vendored
3
.github/ISSUE_TEMPLATE/cn-bug-report.yaml
vendored
@@ -34,6 +34,9 @@ body:
|
||||
Resource Version:
|
||||
UI Version:
|
||||
Core Version:
|
||||
或
|
||||
Resource Version:
|
||||
MAA Version:
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
|
||||
4
.github/ISSUE_TEMPLATE/cn-mumu-report.yaml
vendored
4
.github/ISSUE_TEMPLATE/cn-mumu-report.yaml
vendored
@@ -38,6 +38,10 @@ body:
|
||||
UI Version:
|
||||
Core Version:
|
||||
MuMu 版本号:
|
||||
或
|
||||
Resource Version:
|
||||
MAA Version:
|
||||
MuMu 版本号:
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
|
||||
3
.github/ISSUE_TEMPLATE/en-bug-report.yaml
vendored
3
.github/ISSUE_TEMPLATE/en-bug-report.yaml
vendored
@@ -48,6 +48,9 @@ body:
|
||||
Resource Version:
|
||||
UI Version:
|
||||
Core Version:
|
||||
OR
|
||||
Resource Version:
|
||||
MAA Version:
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
|
||||
@@ -52,6 +52,7 @@
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=Ehem/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=esource/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=Favourite/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=filetime/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=findstr/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=FLASHW/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=FLASHWINFO/@EntryIndexedValue">True</s:Boolean>
|
||||
|
||||
@@ -52,6 +52,7 @@ namespace MaaWpfGui.Constants
|
||||
public const string Cheers = "GUI.Cheers";
|
||||
public const string Hangover = "GUI.Hangover";
|
||||
public const string LastBuyWineTime = "GUI.LastBuyWineTime";
|
||||
public const string CustomCulture = "GUI.CustomCulture";
|
||||
|
||||
public const string AddressHistory = "Connect.AddressHistory";
|
||||
public const string AutoDetect = "Connect.AutoDetect";
|
||||
|
||||
@@ -11,9 +11,11 @@
|
||||
// but WITHOUT ANY WARRANTY
|
||||
// </copyright>
|
||||
|
||||
#nullable enable
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using MaaWpfGui.Constants;
|
||||
using MaaWpfGui.Helper;
|
||||
|
||||
@@ -25,7 +27,7 @@ namespace MaaWpfGui.Extensions
|
||||
|
||||
private static string ClientType => ConfigurationHelper.GetValue(ConfigurationKeys.ClientType, string.Empty);
|
||||
|
||||
private static readonly Dictionary<string, int> _clientTypeTimezone = new Dictionary<string, int>
|
||||
private static readonly Dictionary<string, int> _clientTypeTimezone = new()
|
||||
{
|
||||
{ string.Empty, 8 },
|
||||
{ "Official", 8 },
|
||||
@@ -56,6 +58,15 @@ namespace MaaWpfGui.Extensions
|
||||
return dt is { Month: 4, Day: 1 };
|
||||
}
|
||||
|
||||
public static CultureInfo CustomCultureInfo => LocalizationHelper.CustomCultureInfo;
|
||||
|
||||
public static string ToLocalTimeString(this DateTime dt, string? format = null)
|
||||
{
|
||||
return string.IsNullOrEmpty(format)
|
||||
? dt.ToLocalTime().ToString($"{CustomCultureInfo.DateTimeFormat.ShortDatePattern} HH:mm:ss", CustomCultureInfo)
|
||||
: dt.ToLocalTime().ToString(format, CustomCultureInfo);
|
||||
}
|
||||
|
||||
public static DateTime ToDateTime(this System.Runtime.InteropServices.ComTypes.FILETIME filetime)
|
||||
{
|
||||
return DateTime.FromFileTime(((long)filetime.dwHighDateTime << 32) | (uint)filetime.dwLowDateTime);
|
||||
|
||||
@@ -70,6 +70,24 @@ namespace MaaWpfGui.Helper
|
||||
|
||||
private static readonly string _culture = ConfigurationHelper.GetValue(ConfigurationKeys.Localization, DefaultLanguage);
|
||||
|
||||
private static readonly string _customCulture = ConfigurationHelper.GetGlobalValue(ConfigurationKeys.CustomCulture, string.Empty);
|
||||
|
||||
public static CultureInfo CustomCultureInfo
|
||||
{
|
||||
get
|
||||
{
|
||||
if (string.IsNullOrEmpty(_customCulture))
|
||||
{
|
||||
return CultureInfo.CurrentCulture;
|
||||
}
|
||||
|
||||
return CultureInfo.GetCultures(CultureTypes.AllCultures)
|
||||
.Any(c => c.Name.Equals(_customCulture, StringComparison.OrdinalIgnoreCase))
|
||||
? new CultureInfo(_customCulture)
|
||||
: CultureInfo.CurrentCulture;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Loads localizations.
|
||||
/// </summary>
|
||||
@@ -114,7 +132,9 @@ namespace MaaWpfGui.Helper
|
||||
|
||||
try
|
||||
{
|
||||
Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo(_culture);
|
||||
Thread.CurrentThread.CurrentCulture = !string.IsNullOrEmpty(_customCulture)
|
||||
? CustomCultureInfo
|
||||
: CultureInfo.GetCultureInfo(_culture);
|
||||
FrameworkElement.LanguageProperty.OverrideMetadata(typeof(FrameworkElement), new FrameworkPropertyMetadata(XmlLanguage.GetLanguage(Thread.CurrentThread.CurrentCulture.Name)));
|
||||
}
|
||||
catch
|
||||
|
||||
@@ -42,6 +42,12 @@
|
||||
<InformationalVersion>0.0.1</InformationalVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<AssemblyAttribute Include="MaaWpfGui.Properties.BuildDateTime">
|
||||
<_Parameter1>$([System.DateTime]::UtcNow.ToString("yyyy-MM-ddTHH:mm:ss"))</_Parameter1>
|
||||
</AssemblyAttribute>
|
||||
</ItemGroup>
|
||||
|
||||
<!-- Info -->
|
||||
<PropertyGroup>
|
||||
<ApplicationIcon>newlogo.ico</ApplicationIcon>
|
||||
|
||||
25
src/MaaWpfGui/Properties/BuildDateTimeAttribute.cs
Normal file
25
src/MaaWpfGui/Properties/BuildDateTimeAttribute.cs
Normal file
@@ -0,0 +1,25 @@
|
||||
// <copyright file="BuildDateTimeAttribute.cs" company="MaaAssistantArknights">
|
||||
// MaaWpfGui - A part of the MaaCoreArknights project
|
||||
// Copyright (C) 2021 MistEO and Contributors
|
||||
//
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Affero General Public License v3.0 only as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// any later version.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY
|
||||
// </copyright>
|
||||
|
||||
using System;
|
||||
|
||||
namespace MaaWpfGui.Properties
|
||||
{
|
||||
[AttributeUsage(AttributeTargets.Assembly)]
|
||||
public class BuildDateTimeAttribute(string date) : Attribute
|
||||
{
|
||||
private const string DateFormat = "yyyy-MM-ddTHH:mm:ss";
|
||||
|
||||
public DateTime BuildDateTime { get; } = DateTime.ParseExact(date, DateFormat, null);
|
||||
}
|
||||
}
|
||||
@@ -18,9 +18,12 @@
|
||||
<system:String x:Key="HotKeySettings">HotKeys</system:String>
|
||||
<system:String x:Key="UpdateSettings">Update</system:String>
|
||||
<system:String x:Key="AboutUs">About us</system:String>
|
||||
<system:String x:Key="MaaVersion">MAA Version</system:String>
|
||||
<system:String x:Key="BuildDateTime">Build Date</system:String>
|
||||
<system:String x:Key="CoreVersion">Core Version</system:String>
|
||||
<system:String x:Key="UiVersion">UI Version</system:String>
|
||||
<system:String x:Key="ResourceVersion">Resource Version</system:String>
|
||||
<system:String x:Key="ResourceDateTime">Resource Date</system:String>
|
||||
<system:String x:Key="Off">Off</system:String>
|
||||
<system:String x:Key="ExternalNotificationTips">Please note: The external notification feature currently only sends 「All tasks completed」 notifications.</system:String>
|
||||
<system:String x:Key="ExternalNotificationSettings">External notifications</system:String>
|
||||
|
||||
@@ -18,9 +18,12 @@
|
||||
<system:String x:Key="HotKeySettings">ホットキー設定</system:String>
|
||||
<system:String x:Key="UpdateSettings">アップデート設定</system:String>
|
||||
<system:String x:Key="AboutUs">About us</system:String>
|
||||
<system:String x:Key="MaaVersion">MAA バージョン</system:String>
|
||||
<system:String x:Key="BuildDateTime">ビルド日付</system:String>
|
||||
<system:String x:Key="CoreVersion">Core バージョン</system:String>
|
||||
<system:String x:Key="UiVersion">UI バージョン</system:String>
|
||||
<system:String x:Key="ResourceVersion">リソースバーション</system:String>
|
||||
<system:String x:Key="ResourceDateTime">リソース日付</system:String>
|
||||
<system:String x:Key="Off">シャットダウン</system:String>
|
||||
<system:String x:Key="ExternalNotificationTips">注:外部通知機能は現在、「すべてのタスクが完了しました」という通知のみを送信します。</system:String>
|
||||
<system:String x:Key="ExternalNotificationSettings">外部通知</system:String>
|
||||
@@ -219,7 +222,7 @@
|
||||
4. 内部テスト版の更新方法を非開発ユーザーに共有しないでください。不要な混乱とリスクを避けるためです。
|
||||
|
||||
設定 - About us - フィードバックのリンクをクリックして、このポップアップをキャンセルできます。ご理解とご協力をお願いいたします!</system:String>
|
||||
<system:String x:Key="UpdateCheck">Update version</system:String>
|
||||
<system:String x:Key="UpdateCheck">更新バージョン</system:String>
|
||||
<system:String x:Key="DownloadWithAria2">aria2を使う</system:String>
|
||||
<system:String x:Key="UpdateCheckNow">アップデートを確認する</system:String>
|
||||
<system:String x:Key="ShowChangelog">変更履歴</system:String>
|
||||
|
||||
@@ -18,9 +18,12 @@
|
||||
<system:String x:Key="HotKeySettings">단축키 설정</system:String>
|
||||
<system:String x:Key="UpdateSettings">업데이트</system:String>
|
||||
<system:String x:Key="AboutUs">정보</system:String>
|
||||
<system:String x:Key="MaaVersion">MAA 버전</system:String>
|
||||
<system:String x:Key="BuildDateTime">빌드 날짜</system:String>
|
||||
<system:String x:Key="CoreVersion">Core 버전</system:String>
|
||||
<system:String x:Key="UiVersion">UI 버전</system:String>
|
||||
<system:String x:Key="ResourceVersion">Resource 버전</system:String>
|
||||
<system:String x:Key="ResourceDateTime">자원 날짜</system:String>
|
||||
<system:String x:Key="Off">끄기</system:String>
|
||||
<system:String x:Key="ExternalNotificationTips">팁: 외부 알림 기능은 현재 「모든 작업 완료」 알림만 보냅니다.</system:String>
|
||||
<system:String x:Key="ExternalNotificationSettings">외부 알림</system:String>
|
||||
|
||||
@@ -18,9 +18,12 @@
|
||||
<system:String x:Key="HotKeySettings">热键设置</system:String>
|
||||
<system:String x:Key="UpdateSettings">软件更新</system:String>
|
||||
<system:String x:Key="AboutUs">关于我们</system:String>
|
||||
<system:String x:Key="MaaVersion">MAA 版本</system:String>
|
||||
<system:String x:Key="BuildDateTime">构建日期</system:String>
|
||||
<system:String x:Key="CoreVersion">核心版本</system:String>
|
||||
<system:String x:Key="UiVersion">界面版本</system:String>
|
||||
<system:String x:Key="ResourceVersion">资源版本</system:String>
|
||||
<system:String x:Key="ResourceDateTime">资源日期</system:String>
|
||||
<system:String x:Key="Off">关闭</system:String>
|
||||
<system:String x:Key="ExternalNotificationTips">请注意:外部通知功能目前仅会发送“所有任务完成”的通知。</system:String>
|
||||
<system:String x:Key="ExternalNotificationSettings">外部通知</system:String>
|
||||
|
||||
@@ -18,9 +18,12 @@
|
||||
<system:String x:Key="HotKeySettings">熱鍵設定</system:String>
|
||||
<system:String x:Key="UpdateSettings">軟體更新</system:String>
|
||||
<system:String x:Key="AboutUs">關於我們</system:String>
|
||||
<system:String x:Key="CoreVersion">Core 版本號</system:String>
|
||||
<system:String x:Key="UiVersion">UI 版本號</system:String>
|
||||
<system:String x:Key="ResourceVersion">資源版本號</system:String>
|
||||
<system:String x:Key="MaaVersion">MAA 版本</system:String>
|
||||
<system:String x:Key="BuildDateTime">構建日期</system:String>
|
||||
<system:String x:Key="CoreVersion">Core 版本</system:String>
|
||||
<system:String x:Key="UiVersion">UI 版本</system:String>
|
||||
<system:String x:Key="ResourceVersion">資源版本</system:String>
|
||||
<system:String x:Key="ResourceDateTime">資源日期</system:String>
|
||||
<system:String x:Key="Off">關閉</system:String>
|
||||
<system:String x:Key="ExternalNotificationTips">請注意:外部通知功能目前僅會發送「所有任務完成」 的通知。</system:String>
|
||||
<system:String x:Key="ExternalNotificationSettings">外部通知</system:String>
|
||||
|
||||
@@ -619,10 +619,6 @@ namespace MaaWpfGui.Services.RemoteControl
|
||||
/*await Task.Run(() => Instances.SettingsViewModel.RunScript("StartsWithScript"));*/
|
||||
|
||||
Instances.TaskQueueViewModel.AddLog(LocalizationHelper.GetString("ConnectingToEmulator"));
|
||||
if (!Instances.SettingsViewModel.AdbReplaced && !Instances.SettingsViewModel.IsAdbTouchMode())
|
||||
{
|
||||
Instances.TaskQueueViewModel.AddLog(LocalizationHelper.GetString("AdbReplacementTips"), UiLogColor.Info);
|
||||
}
|
||||
|
||||
// 一般是点了“停止”按钮了
|
||||
if (Instances.TaskQueueViewModel.Stopping)
|
||||
|
||||
@@ -1027,10 +1027,6 @@ namespace MaaWpfGui.ViewModels.UI
|
||||
}
|
||||
|
||||
AddLog(LocalizationHelper.GetString("ConnectingToEmulator"));
|
||||
if (!Instances.SettingsViewModel.AdbReplaced && !Instances.SettingsViewModel.IsAdbTouchMode())
|
||||
{
|
||||
AddLog(LocalizationHelper.GetString("AdbReplacementTips"), UiLogColor.Info);
|
||||
}
|
||||
|
||||
string errMsg = string.Empty;
|
||||
_caught = await Task.Run(() => Instances.AsstProxy.AsstConnect(ref errMsg));
|
||||
|
||||
@@ -33,13 +33,13 @@ using System.Windows.Controls;
|
||||
using System.Windows.Media.Imaging;
|
||||
using HandyControl.Controls;
|
||||
using HandyControl.Data;
|
||||
using HandyControl.Tools.Extension;
|
||||
using MaaWpfGui.Configuration;
|
||||
using MaaWpfGui.Constants;
|
||||
using MaaWpfGui.Extensions;
|
||||
using MaaWpfGui.Helper;
|
||||
using MaaWpfGui.Main;
|
||||
using MaaWpfGui.Models;
|
||||
using MaaWpfGui.Properties;
|
||||
using MaaWpfGui.Services;
|
||||
using MaaWpfGui.Services.HotKeys;
|
||||
using MaaWpfGui.Services.Notification;
|
||||
@@ -1484,7 +1484,9 @@ namespace MaaWpfGui.ViewModels.UI
|
||||
{
|
||||
SetAndNotify(ref _clientType, value);
|
||||
ConfigurationHelper.SetValue(ConfigurationKeys.ClientType, value);
|
||||
ResourceVersion = GetResourceVersionByClientType(_clientType);
|
||||
_resourceInfo = GetResourceVersionByClientType(_clientType);
|
||||
ResourceVersion = _resourceInfo.VersionName;
|
||||
ResourceDateTime = _resourceInfo.DateTime;
|
||||
UpdateWindowTitle(); // 每次修改客户端时更新WindowTitle
|
||||
Instances.TaskQueueViewModel.UpdateStageList(true);
|
||||
Instances.TaskQueueViewModel.UpdateDatePrompt();
|
||||
@@ -3627,6 +3629,8 @@ namespace MaaWpfGui.ViewModels.UI
|
||||
/// </summary>
|
||||
public static string CoreVersion { get; } = Marshal.PtrToStringAnsi(MaaService.AsstGetVersion()) ?? "0.0.1";
|
||||
|
||||
public static string CoreVersionDisplay => string.Join("\u200B", CoreVersion.ToCharArray());
|
||||
|
||||
private static readonly string _uiVersion = Assembly.GetExecutingAssembly().GetCustomAttribute<AssemblyInformationalVersionAttribute>()?.InformationalVersion.Split('+')[0] ?? "0.0.1";
|
||||
|
||||
/// <summary>
|
||||
@@ -3634,7 +3638,15 @@ namespace MaaWpfGui.ViewModels.UI
|
||||
/// </summary>
|
||||
public static string UiVersion { get; } = _uiVersion == "0.0.1" ? "DEBUG VERSION" : _uiVersion;
|
||||
|
||||
private static string _resourceVersion = GetResourceVersionByClientType(ConfigurationHelper.GetValue(ConfigurationKeys.ClientType, string.Empty));
|
||||
public static string UiVersionDisplay => string.Join("\u200B", UiVersion.ToCharArray());
|
||||
|
||||
public static DateTime BuildDateTime { get; } = Assembly.GetExecutingAssembly().GetCustomAttribute<BuildDateTimeAttribute>()?.BuildDateTime ?? DateTime.MinValue;
|
||||
|
||||
public static string BuildDateTimeCurrentCultureString => BuildDateTime.ToLocalTimeString();
|
||||
|
||||
private static (DateTime DateTime, string VersionName) _resourceInfo = GetResourceVersionByClientType(ConfigurationHelper.GetValue(ConfigurationKeys.ClientType, string.Empty));
|
||||
|
||||
private static string _resourceVersion = _resourceInfo.VersionName;
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the resource version.
|
||||
@@ -3645,7 +3657,17 @@ namespace MaaWpfGui.ViewModels.UI
|
||||
set => SetAndNotify(ref _resourceVersion, value);
|
||||
}
|
||||
|
||||
private static string GetResourceVersionByClientType(string clientType)
|
||||
private static DateTime _resourceDateTime = _resourceInfo.DateTime;
|
||||
|
||||
public DateTime ResourceDateTime
|
||||
{
|
||||
get => _resourceDateTime;
|
||||
set => SetAndNotify(ref _resourceDateTime, value);
|
||||
}
|
||||
|
||||
public string ResourceDateTimeCurrentCultureString => ResourceDateTime.ToLocalTimeString();
|
||||
|
||||
private static (DateTime DateTime, string VersionName) GetResourceVersionByClientType(string clientType)
|
||||
{
|
||||
const string OfficialClientType = "Official";
|
||||
const string BilibiliClientType = "Bilibili";
|
||||
@@ -3655,10 +3677,10 @@ namespace MaaWpfGui.ViewModels.UI
|
||||
jsonPath = $"resource/global/{clientType}/resource/version.json";
|
||||
}
|
||||
|
||||
string versionName = string.Empty;
|
||||
string versionName;
|
||||
if (!File.Exists(jsonPath))
|
||||
{
|
||||
return versionName;
|
||||
return (DateTime.MinValue, string.Empty);
|
||||
}
|
||||
|
||||
var versionJson = (JObject?)JsonConvert.DeserializeObject(File.ReadAllText(jsonPath));
|
||||
@@ -3666,11 +3688,9 @@ namespace MaaWpfGui.ViewModels.UI
|
||||
var poolTime = (ulong?)versionJson?["gacha"]?["time"]; // 卡池的开始时间
|
||||
var activityTime = (ulong?)versionJson?["activity"]?["time"]; // 活动的开始时间
|
||||
var lastUpdated = (string?)versionJson?["last_updated"]; // 最后更新时间
|
||||
string dateOnly = string.Empty;
|
||||
if (DateTime.TryParse(lastUpdated, out DateTime parsedDateTime))
|
||||
{
|
||||
dateOnly = parsedDateTime.ToString("yy.MM.dd");
|
||||
}
|
||||
var dateTime = lastUpdated == null
|
||||
? DateTime.MinValue
|
||||
: DateTime.ParseExact(lastUpdated, "yyyy-MM-dd HH:mm:ss.fff", null);
|
||||
|
||||
if ((currentTime < poolTime) && (currentTime < activityTime))
|
||||
{
|
||||
@@ -3693,7 +3713,7 @@ namespace MaaWpfGui.ViewModels.UI
|
||||
versionName = versionJson?["activity"]?["name"]?.ToString() ?? string.Empty;
|
||||
}
|
||||
|
||||
return versionName + dateOnly;
|
||||
return (dateTime, versionName);
|
||||
}
|
||||
|
||||
private UpdateVersionType _versionType = (UpdateVersionType)Enum.Parse(
|
||||
@@ -4611,7 +4631,14 @@ namespace MaaWpfGui.ViewModels.UI
|
||||
}
|
||||
}
|
||||
|
||||
string resourceVersion = !string.IsNullOrEmpty(ResourceVersion) ? $" - {ResourceVersion}" : string.Empty;
|
||||
string resourceVersion = !string.IsNullOrEmpty(ResourceVersion)
|
||||
? LocalizationHelper.CustomCultureInfo.Name.ToLowerInvariant() switch
|
||||
{
|
||||
"zh-cn" => $" - {ResourceVersion}{ResourceDateTime:#MMdd}",
|
||||
"zh-tw" => $" - {ResourceVersion}{ResourceDateTime:#MMdd}",
|
||||
_ => $" - {ResourceDateTime.ToString(LocalizationHelper.CustomCultureInfo.DateTimeFormat.ShortDatePattern.Replace("yyyy", string.Empty).Trim('/', '.'))} {ResourceVersion}",
|
||||
}
|
||||
: string.Empty;
|
||||
rvm.WindowTitle = $"{prefix}MAA{currentConfiguration} - {CoreVersion}{resourceVersion}{connectConfigName}{connectAddress}{clientName}";
|
||||
}
|
||||
|
||||
|
||||
@@ -1051,22 +1051,31 @@ namespace MaaWpfGui.ViewModels.UI
|
||||
|
||||
ClearLog();
|
||||
|
||||
var buildDateTimeLong = SettingsViewModel.BuildDateTimeCurrentCultureString;
|
||||
var resourceDateTimeLong = Instances.SettingsViewModel.ResourceDateTimeCurrentCultureString;
|
||||
AddLog($"Build Time:\n{buildDateTimeLong}\nResource Time:\n{resourceDateTimeLong}");
|
||||
|
||||
var uiVersion = SettingsViewModel.UiVersion;
|
||||
var coreVersion = SettingsViewModel.CoreVersion;
|
||||
if (uiVersion != coreVersion &&
|
||||
Instances.VersionUpdateViewModel.IsStdVersion(uiVersion) &&
|
||||
Instances.VersionUpdateViewModel.IsStdVersion(coreVersion))
|
||||
{
|
||||
AddLog(string.Format(LocalizationHelper.GetString("VersionMismatch"), uiVersion, coreVersion), UiLogColor.Warning);
|
||||
AddLog(string.Format(LocalizationHelper.GetString("VersionMismatch"), uiVersion, coreVersion), UiLogColor.Error);
|
||||
return;
|
||||
}
|
||||
|
||||
await Task.Run(() => Instances.SettingsViewModel.RunScript("StartsWithScript"));
|
||||
|
||||
AddLog(LocalizationHelper.GetString("ConnectingToEmulator"));
|
||||
|
||||
/*
|
||||
// 现在的主流模拟器都已经更新过自带的 adb 了,不再需要替换
|
||||
if (!Instances.SettingsViewModel.AdbReplaced && !Instances.SettingsViewModel.IsAdbTouchMode())
|
||||
{
|
||||
AddLog(LocalizationHelper.GetString("AdbReplacementTips"), UiLogColor.Info);
|
||||
}
|
||||
*/
|
||||
|
||||
// 一般是点了“停止”按钮了
|
||||
if (Stopping)
|
||||
@@ -1277,10 +1286,14 @@ namespace MaaWpfGui.ViewModels.UI
|
||||
await Task.Run(() => Instances.SettingsViewModel.RunScript("StartsWithScript"));
|
||||
|
||||
AddLog(LocalizationHelper.GetString("ConnectingToEmulator"));
|
||||
|
||||
/*
|
||||
// 现在的主流模拟器都已经更新过自带的 adb 了,不再需要替换
|
||||
if (!Instances.SettingsViewModel.AdbReplaced && !Instances.SettingsViewModel.IsAdbTouchMode())
|
||||
{
|
||||
AddLog(LocalizationHelper.GetString("AdbReplacementTips"), UiLogColor.Info);
|
||||
}
|
||||
*/
|
||||
|
||||
// 一般是点了“停止”按钮了
|
||||
if (Stopping)
|
||||
|
||||
174
src/MaaWpfGui/Views/UserControl/VersionUpdateSettingsUserControl.xaml
Executable file → Normal file
174
src/MaaWpfGui/Views/UserControl/VersionUpdateSettingsUserControl.xaml
Executable file → Normal file
@@ -14,7 +14,6 @@
|
||||
xmlns:viewModels="clr-namespace:MaaWpfGui.ViewModels"
|
||||
xmlns:vm="clr-namespace:MaaWpfGui"
|
||||
d:DataContext="{d:DesignInstance {x:Type ui:SettingsViewModel}}"
|
||||
d:DesignHeight="300"
|
||||
d:DesignWidth="550"
|
||||
mc:Ignorable="d">
|
||||
<StackPanel>
|
||||
@@ -26,7 +25,7 @@
|
||||
TextAlignment="Center" />
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition />
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
@@ -60,19 +59,16 @@
|
||||
VerticalAlignment="Center"
|
||||
Content="{DynamicResource AutoInstallUpdatePackage}"
|
||||
IsChecked="{Binding AutoInstallUpdatePackage}" />
|
||||
<StackPanel VerticalAlignment="Center" Orientation="Horizontal">
|
||||
<controls:TextBlock
|
||||
Margin="10,10,0,10"
|
||||
Block.TextAlignment="Center"
|
||||
Text="{DynamicResource UpdateCheck}" />
|
||||
<ComboBox
|
||||
Width="120"
|
||||
Margin="10"
|
||||
DisplayMemberPath="Display"
|
||||
ItemsSource="{Binding VersionTypeList}"
|
||||
SelectedValue="{Binding VersionType}"
|
||||
SelectedValuePath="Value" />
|
||||
</StackPanel>
|
||||
<hc:ComboBox
|
||||
Width="150"
|
||||
Margin="10"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Center"
|
||||
hc:TitleElement.Title="{DynamicResource UpdateCheck}"
|
||||
DisplayMemberPath="Display"
|
||||
ItemsSource="{Binding VersionTypeList}"
|
||||
SelectedValue="{Binding VersionType}"
|
||||
SelectedValuePath="Value" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
<StackPanel
|
||||
@@ -118,25 +114,64 @@
|
||||
<TextBlock
|
||||
MaxWidth="150"
|
||||
Margin="0,3,0,3"
|
||||
d:MinWidth="50"
|
||||
Foreground="White"
|
||||
Text="{Binding ResourceVersion, Mode=OneWay}"
|
||||
TextWrapping="Wrap" />
|
||||
</hc:Shield>
|
||||
<Grid HorizontalAlignment="Center">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition />
|
||||
<ColumnDefinition />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<Border
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Margin="0,5,0,5"
|
||||
Background="#555555"
|
||||
CornerRadius="3,0,0,3">
|
||||
CornerRadius="3,0,0,3"
|
||||
Visibility="{c:Binding 'UiVersion == CoreVersion'}">
|
||||
<TextBlock
|
||||
Padding="5,3,5,3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
hc:FloatingBlock.Content="{Binding UiVersion}"
|
||||
Foreground="White"
|
||||
PreviewMouseDown="MaaVersionClick"
|
||||
Text="{DynamicResource MaaVersion}"
|
||||
TextWrapping="Wrap" />
|
||||
</Border>
|
||||
<Border
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Margin="0,5,0,5"
|
||||
Background="#6969AA"
|
||||
CornerRadius="0,3,3,0"
|
||||
Visibility="{c:Binding 'UiVersion == CoreVersion'}">
|
||||
<TextBlock
|
||||
MinWidth="50"
|
||||
MaxWidth="400"
|
||||
Padding="5,3,5,3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
hc:FloatingBlock.Content="{Binding UiVersion}"
|
||||
Foreground="White"
|
||||
PreviewMouseDown="MaaVersionClick"
|
||||
Text="{Binding UiVersionDisplay, Mode=OneWay}"
|
||||
TextWrapping="Wrap" />
|
||||
</Border>
|
||||
<Border
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Margin="0,5,0,5"
|
||||
Background="#555555"
|
||||
CornerRadius="3,0,0,3"
|
||||
Visibility="{c:Binding 'UiVersion != CoreVersion'}">
|
||||
<TextBlock
|
||||
Padding="5,3,5,3"
|
||||
HorizontalAlignment="Center"
|
||||
@@ -147,6 +182,87 @@
|
||||
Text="{DynamicResource UiVersion}"
|
||||
TextWrapping="Wrap" />
|
||||
</Border>
|
||||
<Border
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Margin="0,5,0,5"
|
||||
Background="#6969AA"
|
||||
CornerRadius="0,3,3,0"
|
||||
Visibility="{c:Binding 'UiVersion != CoreVersion'}">
|
||||
<TextBlock
|
||||
MinWidth="50"
|
||||
Padding="5,3,5,3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
hc:FloatingBlock.Content="{Binding UiVersion}"
|
||||
Foreground="White"
|
||||
PreviewMouseDown="UiVersionClick"
|
||||
Text="{Binding UiVersionDisplay, Mode=OneWay}"
|
||||
TextWrapping="Wrap" />
|
||||
</Border>
|
||||
<Border
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Margin="0,5,0,5"
|
||||
Background="#555555"
|
||||
CornerRadius="3,0,0,3"
|
||||
Visibility="{c:Binding 'UiVersion != CoreVersion'}">
|
||||
<TextBlock
|
||||
Padding="5,3,5,3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
hc:FloatingBlock.Content="{Binding CoreVersion}"
|
||||
Foreground="White"
|
||||
PreviewMouseDown="CoreVersionClick"
|
||||
Text="{DynamicResource CoreVersion}"
|
||||
TextWrapping="Wrap" />
|
||||
</Border>
|
||||
<Border
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Margin="0,5,0,5"
|
||||
Background="#6969AA"
|
||||
CornerRadius="0,3,3,0"
|
||||
Visibility="{c:Binding 'UiVersion != CoreVersion'}">
|
||||
<TextBlock
|
||||
MinWidth="50"
|
||||
Padding="5,3,5,3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
hc:FloatingBlock.Content="{Binding CoreVersion}"
|
||||
Foreground="White"
|
||||
PreviewMouseDown="CoreVersionClick"
|
||||
Text="{Binding CoreVersionDisplay, Mode=OneWay}"
|
||||
TextWrapping="Wrap" />
|
||||
</Border>
|
||||
</Grid>
|
||||
|
||||
<Grid HorizontalAlignment="Center">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Border
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Margin="0,5,0,5"
|
||||
Background="#555555"
|
||||
CornerRadius="3,0,0,3">
|
||||
<TextBlock
|
||||
Padding="5,3,5,3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
hc:FloatingBlock.Content="{Binding ResourceDateTimeCurrentCultureString}"
|
||||
Foreground="White"
|
||||
PreviewMouseDown="ResourceVersionClick"
|
||||
Text="{DynamicResource ResourceDateTime}"
|
||||
TextWrapping="Wrap" />
|
||||
</Border>
|
||||
<Border
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
@@ -156,12 +272,12 @@
|
||||
<TextBlock
|
||||
MinWidth="50"
|
||||
Padding="5,3,5,3"
|
||||
HorizontalAlignment="Left"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
hc:FloatingBlock.Content="{Binding UiVersion}"
|
||||
hc:FloatingBlock.Content="{Binding ResourceDateTimeCurrentCultureString}"
|
||||
Foreground="White"
|
||||
PreviewMouseDown="UiVersionClick"
|
||||
Text="{Binding UiVersion, Mode=OneWay}"
|
||||
PreviewMouseDown="ResourceVersionClick"
|
||||
Text="{Binding ResourceDateTimeCurrentCultureString, Mode=OneWay}"
|
||||
TextWrapping="Wrap" />
|
||||
</Border>
|
||||
<Border
|
||||
@@ -174,10 +290,10 @@
|
||||
Padding="5,3,5,3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
hc:FloatingBlock.Content="{Binding CoreVersion}"
|
||||
hc:FloatingBlock.Content="{Binding BuildDateTimeCurrentCultureString}"
|
||||
Foreground="White"
|
||||
PreviewMouseDown="CoreVersionClick"
|
||||
Text="{DynamicResource CoreVersion}"
|
||||
PreviewMouseDown="MaaVersionClick"
|
||||
Text="{DynamicResource BuildDateTime}"
|
||||
TextWrapping="Wrap" />
|
||||
</Border>
|
||||
<Border
|
||||
@@ -189,12 +305,12 @@
|
||||
<TextBlock
|
||||
MinWidth="50"
|
||||
Padding="5,3,5,3"
|
||||
HorizontalAlignment="Left"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
hc:FloatingBlock.Content="{Binding CoreVersion}"
|
||||
hc:FloatingBlock.Content="{Binding BuildDateTimeCurrentCultureString}"
|
||||
Foreground="White"
|
||||
PreviewMouseDown="CoreVersionClick"
|
||||
Text="{Binding CoreVersion, Mode=OneWay}"
|
||||
PreviewMouseDown="MaaVersionClick"
|
||||
Text="{Binding BuildDateTimeCurrentCultureString, Mode=OneWay}"
|
||||
TextWrapping="Wrap" />
|
||||
</Border>
|
||||
</Grid>
|
||||
|
||||
@@ -49,6 +49,11 @@ namespace MaaWpfGui.Views.UserControl
|
||||
Interval = new TimeSpan(0, 0, 6),
|
||||
};
|
||||
|
||||
private void MaaVersionClick(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
CopyToClipboardAsync($"UI Version: {SettingsViewModel.UiVersion}\nCore Version: {SettingsViewModel.CoreVersion}\nBuild Time: {SettingsViewModel.BuildDateTimeCurrentCultureString}");
|
||||
}
|
||||
|
||||
private void CoreVersionClick(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
CopyToClipboardAsync("Core Version: " + SettingsViewModel.CoreVersion);
|
||||
@@ -62,7 +67,7 @@ namespace MaaWpfGui.Views.UserControl
|
||||
|
||||
private void ResourceVersionClick(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
CopyToClipboardAsync("Resource Version: " + Instances.SettingsViewModel.ResourceVersion);
|
||||
CopyToClipboardAsync($"Resource Version: {Instances.SettingsViewModel.ResourceVersion}\nResource Time: {Instances.SettingsViewModel.ResourceDateTimeCurrentCultureString}");
|
||||
}
|
||||
|
||||
private static void CopyToClipboardAsync(string text)
|
||||
|
||||
Reference in New Issue
Block a user