Skip to content

Commit e06d0cb

Browse files
committed
editors: add context menu for browsing Releases Api for this version
1 parent 2bb58c7 commit e06d0cb

File tree

3 files changed

+29
-0
lines changed

3 files changed

+29
-0
lines changed

UnityLauncherPro/MainWindow.xaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -393,6 +393,8 @@
393393
<MenuItem x:Name="menuItemCopyEditorPath" Header="Copy Editor Path" Click="MenuItemCopyPath_Click" />
394394
<MenuItem x:Name="menuItemShowUnityInExplorer" Header="Show in Explorer" Click="MenuItemShowProjectInExplorer_Click" />
395395
<MenuItem x:Name="menuItemSetPreferredUnityVersion" Header="Set as Preferred Version" Click="MenuItemSetPreferredUnityVersion_Click"/>
396+
<Separator></Separator>
397+
<MenuItem x:Name="menuOpenReleasesApi" Header="Open in Releases API" Click="menuOpenReleasesApi_Click"/>
396398
<MenuItem x:Name="menuCheckUnityUpdates" Header="Check Updates" Click="BtnUpdateUnity_Click"/>
397399
<!--<MenuItem x:Name="menuItemEditPackages" Header="Edit Packages" Click="MenuItemEditPackages_Click"/>-->
398400
<Separator></Separator>

UnityLauncherPro/MainWindow.xaml.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4244,6 +4244,13 @@ private void chkFetchOnlineTemplates_Checked(object sender, RoutedEventArgs e)
42444244
Settings.Default.Save();
42454245
}
42464246

4247+
private void menuOpenReleasesApi_Click(object sender, RoutedEventArgs e)
4248+
{
4249+
var editor = GetSelectedUnity();
4250+
if (editor == null || editor.Version == null) return;
4251+
Tools.OpenReleasesApiForVersion(editor.Version);
4252+
}
4253+
42474254
//private void menuProjectProperties_Click(object sender, RoutedEventArgs e)
42484255
//{
42494256
// var proj = GetSelectedProject();

UnityLauncherPro/Tools.cs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3149,7 +3149,27 @@ public static string ParseHashCodeFromURL(string url)
31493149
return url.Substring(hashStart, hashEnd - hashStart);
31503150
}
31513151

3152+
internal static void OpenReleasesApiForVersion(string version)
3153+
{
3154+
string url = $"https://services.api.unity.com/unity/editor/release/v1/releases?limit=1&version={version}";
3155+
LaunchBrowser(url);
3156+
}
31523157

3158+
private static void LaunchBrowser(string url)
3159+
{
3160+
try
3161+
{
3162+
Process.Start(new ProcessStartInfo
3163+
{
3164+
FileName = url,
3165+
UseShellExecute = true
3166+
});
3167+
}
3168+
catch (Exception ex)
3169+
{
3170+
MessageBox.Show("Failed to open URL: " + ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
3171+
}
3172+
}
31533173
} // class
31543174

31553175
} // namespace

0 commit comments

Comments
 (0)