Skip to content

Commit 7efd15c

Browse files
committed
Refactor UI elements across multiple pages for improved accessibility and consistency
- Updated AboutPage.xaml to enhance accessibility with AutomationProperties and Uid attributes for key elements. - Modified EqualizadorEfeitosPage.xaml to include Uid attributes for better identification and accessibility of controls. - Improved HomePage.xaml by adding Uid attributes to various controls, enhancing accessibility features. - Enhanced SettingsPage.xaml with Uid attributes for better accessibility and organization of settings options.
1 parent 80e4d5e commit 7efd15c

File tree

10 files changed

+1656
-220
lines changed

10 files changed

+1656
-220
lines changed

Fulcrum/App.xaml.cs

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
using System;
1111
using System.IO;
1212
using System.Text;
13+
using System.Collections.Generic;
1314

1415
namespace Fulcrum;
1516

@@ -182,13 +183,44 @@ private void AplicarConfiguracoesFonte()
182183
}
183184
}
184185

186+
/// <summary>
187+
/// Configura o idioma do aplicativo com base nas preferências do sistema ou configurações do usuário
188+
/// </summary>
189+
private void ConfigureLanguage()
190+
{
191+
try
192+
{
193+
// Obtém as preferências de idioma do usuário
194+
var userLanguage = Windows.Globalization.ApplicationLanguages.Languages[0];
195+
196+
// Define o idioma do aplicativo
197+
Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = userLanguage;
198+
199+
// Configura o idioma para recursos
200+
var resourceContext = new Windows.ApplicationModel.Resources.Core.ResourceContext();
201+
resourceContext.Languages = new List<string> { userLanguage };
202+
203+
System.Diagnostics.Debug.WriteLine($"[APP] Idioma configurado: {userLanguage}");
204+
}
205+
catch (Exception ex)
206+
{
207+
System.Diagnostics.Debug.WriteLine($"[APP] Erro ao configurar idioma: {ex.Message}");
208+
}
209+
}
210+
185211
/// <summary>
186212
/// Chamado quando o aplicativo é iniciado normalmente pelo usuário
187213
/// </summary>
188214
protected override void OnLaunched(Microsoft.UI.Xaml.LaunchActivatedEventArgs args)
189215
{
216+
// Inicializa os recursos com a cultura correta
217+
Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = Windows.System.UserProfile.GlobalizationPreferences.Languages[0];
218+
190219
try
191220
{
221+
// Configura o idioma do aplicativo
222+
ConfigureLanguage();
223+
192224
Window = new MainWindow();
193225

194226
// Inicializa o serviço de notificações

Fulcrum/MainWindow.xaml.cs

Lines changed: 55 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,13 @@ public sealed partial class MainWindow : Window
6262
/// </summary>
6363
public MainWindow()
6464
{
65-
this.InitializeComponent();
65+
InitializeComponent();
66+
67+
// Aplica o idioma preferido do sistema
68+
ApplySystemLanguage();
69+
70+
// Inicializa o AudioManager
71+
InitializeAudioManager();
6672

6773
// Configuração da janela
6874
ExtendsContentIntoTitleBar = true;
@@ -150,6 +156,23 @@ private void InitializeAudioPlayers()
150156
}
151157
}
152158

159+
/// <summary>
160+
/// Inicializa o gerenciador de áudio central do aplicativo
161+
/// </summary>
162+
private void InitializeAudioManager()
163+
{
164+
try
165+
{
166+
// Obtém a instância do AudioManager (Singleton)
167+
var audioManager = AudioManager.Instance;
168+
System.Diagnostics.Debug.WriteLine("AudioManager inicializado com sucesso");
169+
}
170+
catch (Exception ex)
171+
{
172+
System.Diagnostics.Debug.WriteLine($"Erro ao inicializar AudioManager: {ex.Message}");
173+
}
174+
}
175+
153176
/// <summary>
154177
/// Procedimento de janela customizado para capturar mensagens do Windows
155178
/// </summary>
@@ -579,4 +602,35 @@ private void ConfigurarAcessibilidadeSettingsPage(SettingsPage page)
579602
System.Diagnostics.Debug.WriteLine($"Erro ao configurar acessibilidade da SettingsPage: {ex.Message}");
580603
}
581604
}
605+
606+
/// <summary>
607+
/// Aplica o idioma do sistema ao aplicativo
608+
/// </summary>
609+
private void ApplySystemLanguage()
610+
{
611+
try
612+
{
613+
// Obtém o idioma preferido do usuário
614+
string currentLanguage = Windows.System.UserProfile.GlobalizationPreferences.Languages[0];
615+
616+
// Se não for português ou inglês, usa o inglês como padrão
617+
if (!currentLanguage.StartsWith("pt") && !currentLanguage.StartsWith("en"))
618+
{
619+
currentLanguage = "en-US";
620+
}
621+
else if (currentLanguage.StartsWith("pt"))
622+
{
623+
currentLanguage = "pt-BR";
624+
}
625+
626+
// Define o idioma para a aplicação
627+
Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = currentLanguage;
628+
629+
System.Diagnostics.Debug.WriteLine($"[IDIOMA] Aplicando idioma: {currentLanguage}");
630+
}
631+
catch (Exception ex)
632+
{
633+
System.Diagnostics.Debug.WriteLine($"[IDIOMA] Erro ao aplicar idioma: {ex.Message}");
634+
}
635+
}
582636
}

Fulcrum/Package.appxmanifest

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424

2525
<Resources>
2626
<Resource Language="x-generate"/>
27+
<Resource Language="en-US"/>
28+
<Resource Language="pt-BR"/>
2729
</Resources>
2830

2931
<Applications>

Fulcrum/Properties/launchSettings.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
{
22
"profiles": {
33
"Fulcrum (Package)": {
4-
"commandName": "MsixPackage"
4+
"commandName": "MsixPackage",
5+
"commandLineArgs": "/lang:en-US"
56
},
67
"Fulcrum (Unpackaged)": {
78
"commandName": "Project"

0 commit comments

Comments
 (0)