Skip to content

Commit

Permalink
Improved keyboard navigation, high contrast theme and screen reader s…
Browse files Browse the repository at this point in the history
…upport (#84)
  • Loading branch information
veler authored Nov 29, 2021
1 parent 347ee0c commit 80c2f3d
Show file tree
Hide file tree
Showing 108 changed files with 503 additions and 43 deletions.
7 changes: 6 additions & 1 deletion src/dev/impl/DevToys/Api/Tools/IToolProvider.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,12 @@ public interface IToolProvider : INotifyPropertyChanged
/// <summary>
/// Gets the name of the tool. It will be displayed in the list of tools.
/// </summary>
string? DisplayName { get; }
string DisplayName { get; }

/// <summary>
/// Gets the name of the tool that will be told to the user when using screen reader.
/// </summary>
string AccessibleName { get; }

/// <summary>
/// Gets an object type that has a width, height and image data. It can be an icon through a font, an SVG...etc.
Expand Down
7 changes: 4 additions & 3 deletions src/dev/impl/DevToys/DevToys.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
<Compile Include="Core\OOP\AppService.cs" />
<Compile Include="Core\Threading\AsyncLazy.cs" />
<Compile Include="UI\Converters\BooleanToDoubleConverter.cs" />
<Compile Include="UI\Converters\BooleanToIntegerConverter.cs" />
<Compile Include="ViewModels\Tools\HtmlEncoderDecoder\HtmlEncoderDecoderToolProvider.cs" />
<Compile Include="ViewModels\Tools\HtmlEncoderDecoder\HtmlEncoderDecoderToolViewModel.cs" />
<Compile Include="ViewModels\Tools\PngJpgCompressor\ImageCompressionWorkItem.cs" />
Expand Down Expand Up @@ -293,8 +294,8 @@
<Compile Include="Views\Tools\Base64EncoderDecoder\Base64EncoderDecoderToolPage.xaml.cs">
<DependentUpon>Base64EncoderDecoderToolPage.xaml</DependentUpon>
</Compile>
<Compile Include="Views\Tools\GuidGenerator\GuidGeneratoToolPage.xaml.cs">
<DependentUpon>GuidGeneratoToolPage.xaml</DependentUpon>
<Compile Include="Views\Tools\GuidGenerator\GuidGeneratorToolPage.xaml.cs">
<DependentUpon>GuidGeneratorToolPage.xaml</DependentUpon>
</Compile>
<Compile Include="Views\Tools\HashGenerator\HashGeneratorToolPage.xaml.cs">
<DependentUpon>HashGeneratorToolPage.xaml</DependentUpon>
Expand Down Expand Up @@ -390,7 +391,7 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Views\Tools\GuidGenerator\GuidGeneratoToolPage.xaml">
<Page Include="Views\Tools\GuidGenerator\GuidGeneratorToolPage.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
Expand Down
70 changes: 70 additions & 0 deletions src/dev/impl/DevToys/LanguageManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,11 @@ public class Base64EncoderDecoderStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("Base64EncoderDecoder");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource Ascii.
/// </summary>
Expand Down Expand Up @@ -332,6 +337,11 @@ public class GuidGeneratorStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("GuidGenerator");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource Configuration.
/// </summary>
Expand Down Expand Up @@ -367,6 +377,11 @@ public class GuidGeneratorStrings : ObservableObject
/// </summary>
public string MultiplySymbol => _resources.GetString("MultiplySymbol");

/// <summary>
/// Gets the resource NumberOfGuidsToGenerate_AutomationProperties_Name.
/// </summary>
public string NumberOfGuidsToGenerate_AutomationProperties_Name => _resources.GetString("NumberOfGuidsToGenerate_AutomationProperties_Name");

/// <summary>
/// Gets the resource Uppercase.
/// </summary>
Expand All @@ -377,6 +392,11 @@ public class HashGeneratorStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("HashGenerator");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource Configuration.
/// </summary>
Expand Down Expand Up @@ -422,6 +442,11 @@ public class HtmlEncoderDecoderStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("HtmlEncoderDecoder");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource ConfigurationTitle.
/// </summary>
Expand Down Expand Up @@ -477,6 +502,11 @@ public class JsonFormatterStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("JsonFormatter");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource Configuration.
/// </summary>
Expand Down Expand Up @@ -527,6 +557,11 @@ public class JsonYamlStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("JsonYaml");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource Configuration.
/// </summary>
Expand Down Expand Up @@ -592,6 +627,11 @@ public class JwtDecoderEncoderStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("JwtDecoderEncoder");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource Configuration.
/// </summary>
Expand Down Expand Up @@ -743,6 +783,11 @@ public class MarkdownPreviewStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("MarkdownPreview");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource Configuration.
/// </summary>
Expand Down Expand Up @@ -788,6 +833,11 @@ public class PngJpgCompressorStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("PngJpgCompressor");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource Cancel.
/// </summary>
Expand Down Expand Up @@ -868,6 +918,11 @@ public class RegExStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("RegEx");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource Configuration.
/// </summary>
Expand Down Expand Up @@ -1156,6 +1211,11 @@ public class StringUtilitiesStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("StringUtilities");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource AlternatingCase.
/// </summary>
Expand Down Expand Up @@ -1311,6 +1371,11 @@ public class TextDiffStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("TextDiff");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource Configuration.
/// </summary>
Expand Down Expand Up @@ -1346,6 +1411,11 @@ public class UrlEncoderDecoderStrings : ObservableObject
{
private readonly ResourceLoader _resources = ResourceLoader.GetForViewIndependentUse("UrlEncoderDecoder");

/// <summary>
/// Gets the resource AccessibleName.
/// </summary>
public string AccessibleName => _resources.GetString("AccessibleName");

/// <summary>
/// Gets the resource ConfigurationTitle.
/// </summary>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/Base64EncoderDecoder.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>Base 64 Encoder and Decoder tool</value>
</data>
<data name="Ascii" xml:space="preserve">
<value>ASCII</value>
</data>
Expand Down
6 changes: 6 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/GuidGenerator.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>Guid Generator tool</value>
</data>
<data name="Configuration" xml:space="preserve">
<value>Konfigurace</value>
</data>
Expand All @@ -138,6 +141,9 @@
<data name="MultiplySymbol" xml:space="preserve">
<value>x</value>
</data>
<data name="NumberOfGuidsToGenerate_AutomationProperties_Name" xml:space="preserve">
<value>Number of GUID to generate</value>
</data>
<data name="Uppercase" xml:space="preserve">
<value>Velká písmena</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/HashGenerator.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>Hash Generator tool</value>
</data>
<data name="Configuration" xml:space="preserve">
<value>Konfigurace</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/HtmlEncoderDecoder.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>HTML Encoder and Decoder tool</value>
</data>
<data name="ConfigurationTitle" xml:space="preserve">
<value>Konfigurace</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/JsonFormatter.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>JSON Formatter tool</value>
</data>
<data name="Configuration" xml:space="preserve">
<value>Konfigurace</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/JsonYaml.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>JSON to YAML and YAML to JSON converter tool</value>
</data>
<data name="Configuration" xml:space="preserve">
<value>Konfigurace</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/JwtDecoderEncoder.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>JWT Decoder tool</value>
</data>
<data name="Configuration" xml:space="preserve">
<value>Konfigurace</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/MarkdownPreview.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>Markdown preview tool</value>
</data>
<data name="Configuration" xml:space="preserve">
<value>Konfigurace</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/PngJpgCompressor.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>PNG and JPEG compressor tool</value>
</data>
<data name="Cancel" xml:space="preserve">
<value>Cancel</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/RegEx.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>Regular expression tester tool</value>
</data>
<data name="Configuration" xml:space="preserve">
<value>Konfigurace</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/StringUtilities.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>String utilities tool</value>
</data>
<data name="AlternatingCase" xml:space="preserve">
<value>aLtErNaTiNg cAsE</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/TextDiff.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>Text comparer tool</value>
</data>
<data name="Configuration" xml:space="preserve">
<value>Konfigurace</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/cs-CZ/UrlEncoderDecoder.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>URL Encoder and Decoder tool</value>
</data>
<data name="ConfigurationTitle" xml:space="preserve">
<value>Konfigurace</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/en-US/Base64EncoderDecoder.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>Base 64 Encoder and Decoder tool</value>
</data>
<data name="Ascii" xml:space="preserve">
<value>ASCII</value>
</data>
Expand Down
6 changes: 6 additions & 0 deletions src/dev/impl/DevToys/Strings/en-US/GuidGenerator.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>Guid Generator tool</value>
</data>
<data name="Configuration" xml:space="preserve">
<value>Configuration</value>
</data>
Expand All @@ -138,6 +141,9 @@
<data name="MultiplySymbol" xml:space="preserve">
<value>x</value>
</data>
<data name="NumberOfGuidsToGenerate_AutomationProperties_Name" xml:space="preserve">
<value>Number of GUID to generate</value>
</data>
<data name="Uppercase" xml:space="preserve">
<value>Uppercase</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/en-US/HashGenerator.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>Hash Generator tool</value>
</data>
<data name="Configuration" xml:space="preserve">
<value>Configuration</value>
</data>
Expand Down
3 changes: 3 additions & 0 deletions src/dev/impl/DevToys/Strings/en-US/HtmlEncoderDecoder.resw
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="AccessibleName" xml:space="preserve">
<value>HTML Encoder and Decoder tool</value>
</data>
<data name="ConfigurationTitle" xml:space="preserve">
<value>Configuration</value>
</data>
Expand Down
Loading

0 comments on commit 80c2f3d

Please sign in to comment.