Make player launch error dialog less annoying

additionally added clarification about the "don't exit to desktop app" option breaking the ability to accept player invites
This commit is contained in:
pizzaboxer 2024-10-25 21:06:16 +01:00
parent 4bb623c64e
commit a121e14f94
No known key found for this signature in database
GPG Key ID: 59D4A1DBAD0F2BA8
7 changed files with 21 additions and 11 deletions

View File

@ -218,7 +218,6 @@ namespace Bloxstrap
else else
{ {
// check if user profile folder has been renamed // check if user profile folder has been renamed
// honestly, i'll be expecting bugs from this
var match = Regex.Match(value, @"^[a-zA-Z]:\\Users\\([^\\]+)", RegexOptions.IgnoreCase); var match = Regex.Match(value, @"^[a-zA-Z]:\\Users\\([^\\]+)", RegexOptions.IgnoreCase);
if (match.Success) if (match.Success)

View File

@ -1031,7 +1031,9 @@ namespace Bloxstrap.Resources {
} }
/// <summary> /// <summary>
/// Looks up a localized string similar to Please read the following help information, which will open in your web browser when you close this dialog.. /// Looks up a localized string similar to For information about why this could be happening and how this can be resolved, please read [this help article]({0}).
///
///Check if Roblox works with [the original launcher]({1}). If it doesn&apos;t, then this isn&apos;t a Bloxstrap issue. If it does, then refer to the help article..
/// </summary> /// </summary>
public static string Dialog_PlayerError_HelpInformation { public static string Dialog_PlayerError_HelpInformation {
get { get {
@ -2745,7 +2747,7 @@ namespace Bloxstrap.Resources {
} }
/// <summary> /// <summary>
/// Looks up a localized string similar to Roblox will fully close when you leave a game instead of dropping you back into the app.. /// Looks up a localized string similar to Roblox will fully close when you leave a game instead of going back to the app. [Will break some things!]({0}).
/// </summary> /// </summary>
public static string Menu_Integrations_DesktopApp_Description { public static string Menu_Integrations_DesktopApp_Description {
get { get {
@ -2898,7 +2900,7 @@ namespace Bloxstrap.Resources {
} }
/// <summary> /// <summary>
/// Looks up a localized string similar to Font size can be adjusted in the Fast Flags tab.. /// Looks up a localized string similar to Font size can be adjusted in the Engine Settings tab..
/// </summary> /// </summary>
public static string Menu_Mods_Misc_CustomFont_Description { public static string Menu_Mods_Misc_CustomFont_Description {
get { get {

View File

@ -717,7 +717,7 @@ Selecting 'No' will ignore this warning and continue installation.</value>
<value>Configure additional functionality to go alongside Roblox.</value> <value>Configure additional functionality to go alongside Roblox.</value>
</data> </data>
<data name="Menu.Integrations.DesktopApp.Description" xml:space="preserve"> <data name="Menu.Integrations.DesktopApp.Description" xml:space="preserve">
<value>Roblox will fully close when you leave a game instead of dropping you back into the app.</value> <value>Roblox will fully close when you leave a game instead of going back to the app. [Will break some things!]({0})</value>
</data> </data>
<data name="Menu.Integrations.DesktopApp.Title" xml:space="preserve"> <data name="Menu.Integrations.DesktopApp.Title" xml:space="preserve">
<value>Don't exit to desktop app</value> <value>Don't exit to desktop app</value>
@ -1104,7 +1104,9 @@ Are you sure you want to continue?</value>
<value>Roblox has crashed.</value> <value>Roblox has crashed.</value>
</data> </data>
<data name="Dialog.PlayerError.HelpInformation" xml:space="preserve"> <data name="Dialog.PlayerError.HelpInformation" xml:space="preserve">
<value>Please read the following help information, which will open in your web browser when you close this dialog.</value> <value>For information about why this could be happening and how this can be resolved, please read [this help article]({0}).
Check if Roblox works with [the original launcher]({1}). If it doesn't, then this isn't a Bloxstrap issue. If it does, then refer to the help article.</value>
</data> </data>
<data name="Common.NetworkError" xml:space="preserve"> <data name="Common.NetworkError" xml:space="preserve">
<value>Could not load data because of a network error.</value> <value>Could not load data because of a network error.</value>

View File

@ -6,6 +6,7 @@
xmlns:ui="http://schemas.lepo.co/wpfui/2022/xaml" xmlns:ui="http://schemas.lepo.co/wpfui/2022/xaml"
xmlns:local="clr-namespace:Bloxstrap.UI.Elements.Dialogs" xmlns:local="clr-namespace:Bloxstrap.UI.Elements.Dialogs"
xmlns:base="clr-namespace:Bloxstrap.UI.Elements.Base" xmlns:base="clr-namespace:Bloxstrap.UI.Elements.Base"
xmlns:controls="clr-namespace:Bloxstrap.UI.Elements.Controls"
mc:Ignorable="d" mc:Ignorable="d"
Title="Bloxstrap" Title="Bloxstrap"
d:DesignWidth="480" d:DesignWidth="480"
@ -33,7 +34,7 @@
<ColumnDefinition Width="*" /> <ColumnDefinition Width="*" />
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Image x:Name="IconImage" Grid.Column="0" RenderOptions.BitmapScalingMode="HighQuality" Width="32" Height="32" Margin="0,0,15,0" VerticalAlignment="Top" /> <Image x:Name="IconImage" Grid.Column="0" RenderOptions.BitmapScalingMode="HighQuality" Width="32" Height="32" Margin="0,0,15,0" VerticalAlignment="Top" />
<TextBlock x:Name="MessageTextBlock" Grid.Column="1" VerticalAlignment="Center" TextWrapping="Wrap" Foreground="{DynamicResource TextFillColorPrimaryBrush}" /> <controls:MarkdownTextBlock x:Name="MessageTextBlock" Grid.Column="1" VerticalAlignment="Center" TextWrapping="Wrap" Foreground="{DynamicResource TextFillColorPrimaryBrush}" />
</Grid> </Grid>
<Border Grid.Row="2" Margin="0,10,0,0" Padding="15" Background="{ui:ThemeResource SolidBackgroundFillColorSecondaryBrush}"> <Border Grid.Row="2" Margin="0,10,0,0" Padding="15" Background="{ui:ThemeResource SolidBackgroundFillColorSecondaryBrush}">

View File

@ -60,6 +60,7 @@ namespace Bloxstrap.UI.Elements.Dialogs
Title = App.ProjectName; Title = App.ProjectName;
MessageTextBlock.Text = message; MessageTextBlock.Text = message;
MessageTextBlock.MarkdownText = message;
ButtonOne.Visibility = Visibility.Collapsed; ButtonOne.Visibility = Visibility.Collapsed;
ButtonTwo.Visibility = Visibility.Collapsed; ButtonTwo.Visibility = Visibility.Collapsed;
ButtonThree.Visibility = Visibility.Collapsed; ButtonThree.Visibility = Visibility.Collapsed;

View File

@ -35,7 +35,8 @@
<controls:OptionControl <controls:OptionControl
Header="{x:Static resources:Strings.Menu_Integrations_DesktopApp_Title}" Header="{x:Static resources:Strings.Menu_Integrations_DesktopApp_Title}"
Description="{x:Static resources:Strings.Menu_Integrations_DesktopApp_Description}" Description="{Binding Source={x:Static resources:Strings.Menu_Integrations_DesktopApp_Description}, Converter={StaticResource StringFormatConverter}, ConverterParameter='https://github.com/bloxstraplabs/bloxstrap/wiki/What-is-activity-tracking%3F#dont-exit-to-desktop-app'}"
HelpLink="https://github.com/bloxstraplabs/bloxstrap/wiki/What-is-activity-tracking%3F#dont-exit-to-desktop-app"
IsEnabled="{Binding InnerContent.IsChecked, ElementName=ActivityTrackingOption, Mode=OneWay}"> IsEnabled="{Binding InnerContent.IsChecked, ElementName=ActivityTrackingOption, Mode=OneWay}">
<ui:ToggleSwitch IsChecked="{Binding DisableAppPatchEnabled, Mode=TwoWay}" /> <ui:ToggleSwitch IsChecked="{Binding DisableAppPatchEnabled, Mode=TwoWay}" />
</controls:OptionControl> </controls:OptionControl>

View File

@ -27,9 +27,13 @@ namespace Bloxstrap.UI
if (crash) if (crash)
topLine = Strings.Dialog_PlayerError_Crash; topLine = Strings.Dialog_PlayerError_Crash;
ShowMessageBox($"{topLine}\n\n{Strings.Dialog_PlayerError_HelpInformation}", MessageBoxImage.Error); string info = String.Format(
Strings.Dialog_PlayerError_HelpInformation,
$"https://github.com/{App.ProjectRepository}/wiki/Roblox-crashes-or-does-not-launch",
$"https://github.com/{App.ProjectRepository}/wiki/Switching-between-Roblox-and-Bloxstrap"
);
Utilities.ShellExecute($"https://github.com/{App.ProjectRepository}/wiki/Roblox-crashes-or-does-not-launch"); ShowMessageBox($"{topLine}\n\n{info}", MessageBoxImage.Error);
} }
public static void ShowExceptionDialog(Exception exception) public static void ShowExceptionDialog(Exception exception)