[PreviewPane][Monaco]Format json/xml before rendering (#19980)

This commit is contained in:
Davide Giacometti
2022-08-24 13:08:10 +02:00
committed by GitHub
parent e7d3aadec3
commit 16c7a22410
10 changed files with 198 additions and 11 deletions

View File

@@ -99,6 +99,23 @@ namespace Microsoft.PowerToys.Settings.UI.Library
}
}
private bool monacoPreviewTryFormat;
[JsonPropertyName("monaco-previewer-toggle-try-format")]
[JsonConverter(typeof(BoolPropertyJsonConverter))]
public bool MonacoPreviewTryFormat
{
get => monacoPreviewTryFormat;
set
{
if (value != monacoPreviewTryFormat)
{
LogTelemetryEvent(value);
monacoPreviewTryFormat = value;
}
}
}
private bool enablePdfPreview;
[JsonPropertyName("pdf-previewer-toggle-setting")]

View File

@@ -51,6 +51,7 @@ namespace Microsoft.PowerToys.Settings.UI.Library.ViewModels
_mdRenderIsEnabled = Settings.Properties.EnableMdPreview;
_monacoRenderIsEnabled = Settings.Properties.EnableMonacoPreview;
_monacoWrapText = Settings.Properties.EnableMonacoPreviewWordWrap;
_monacoPreviewTryFormat = Settings.Properties.MonacoPreviewTryFormat;
_pdfRenderIsEnabled = Settings.Properties.EnablePdfPreview;
_gcodeRenderIsEnabled = Settings.Properties.EnableGcodePreview;
_pdfThumbnailIsEnabled = Settings.Properties.EnablePdfThumbnail;
@@ -63,6 +64,7 @@ namespace Microsoft.PowerToys.Settings.UI.Library.ViewModels
private bool _mdRenderIsEnabled;
private bool _monacoRenderIsEnabled;
private bool _monacoWrapText;
private bool _monacoPreviewTryFormat;
private bool _pdfRenderIsEnabled;
private bool _gcodeRenderIsEnabled;
private bool _svgThumbnailIsEnabled;
@@ -161,6 +163,24 @@ namespace Microsoft.PowerToys.Settings.UI.Library.ViewModels
}
}
public bool MonacoPreviewTryFormat
{
get
{
return _monacoPreviewTryFormat;
}
set
{
if (_monacoPreviewTryFormat != value)
{
_monacoPreviewTryFormat = value;
Settings.Properties.MonacoPreviewTryFormat = value;
RaisePropertyChanged();
}
}
}
public bool PDFRenderIsEnabled
{
get

View File

@@ -422,21 +422,21 @@
<value>Wait for more input before searching. This reduces interface jumpiness and system load.</value>
</data>
<data name="PowerLauncher_FastSearchInputDelayMs.Header" xml:space="preserve">
<value>Immediate plugins</value>
<value>Immediate plugins</value>
</data>
<data name="PowerLauncher_FastSearchInputDelayMs.Description" xml:space="preserve">
<value>Affects the plugins that make the UI wait for their results by this amount. Recommended: 30-50 ms.</value>
<data name="PowerLauncher_FastSearchInputDelayMs.Description" xml:space="preserve">
<value>Affects the plugins that make the UI wait for their results by this amount. Recommended: 30-50 ms.</value>
</data>
<data name="PowerLauncher_SlowSearchInputDelayMs.Header" xml:space="preserve">
<value>Background execution plugins</value>
<data name="PowerLauncher_SlowSearchInputDelayMs.Header" xml:space="preserve">
<value>Background execution plugins</value>
</data>
<data name="PowerLauncher_SlowSearchInputDelayMs.Description" xml:space="preserve">
<value>Affects the plugins that execute in the background by this amount. Recommended: 100-150 ms.</value>
<data name="PowerLauncher_SlowSearchInputDelayMs.Description" xml:space="preserve">
<value>Affects the plugins that execute in the background by this amount. Recommended: 100-150 ms.</value>
</data>
<data name="PowerLauncher_SearchInputDelayMs.Header" xml:space="preserve">
<data name="PowerLauncher_SearchInputDelayMs.Header" xml:space="preserve">
<value>Fast plugin throttle (ms)</value>
<comment>ms = milliseconds</comment>
</data>
</data>
<data name="KeyboardManager_KeysMappingLayoutRightHeader.Text" xml:space="preserve">
<value>To:</value>
<comment>Keyboard Manager mapping keys view right header</comment>
@@ -2164,6 +2164,12 @@ From there, simply click on one of the supported files in the File Explorer and
<data name="AlwaysOnTop_RoundCorners.Content" xml:space="preserve">
<value>Enable round corners</value>
</data>
<data name="FileExplorerPreview_ToggleSwitch_Monaco_Try_Format.Description" xml:space="preserve">
<value>Applies to json and xml. Files remain unchanged.</value>
</data>
<data name="FileExplorerPreview_ToggleSwitch_Monaco_Try_Format.Header" xml:space="preserve">
<value>Try to format the source for preview</value>
</data>
<data name="Run_ConflictingKeywordInfo.Title" xml:space="preserve">
<value>Some characters and phrases may conflict with global queries of other plugins if you use them as activation command.</value>
</data>

View File

@@ -57,6 +57,11 @@
IsChecked="{x:Bind ViewModel.MonacoWrapText, Mode=TwoWay}"
Margin="{StaticResource ExpanderSettingMargin}"
IsEnabled="{x:Bind ViewModel.MonacoRenderIsEnabled, Mode=OneWay}" />
<Rectangle Style="{StaticResource ExpanderSeparatorStyle}" />
<controls:CheckBoxWithDescriptionControl x:Uid="FileExplorerPreview_ToggleSwitch_Monaco_Try_Format"
IsChecked="{x:Bind ViewModel.MonacoPreviewTryFormat, Mode=TwoWay}"
Margin="{StaticResource ExpanderSettingMargin}"
IsEnabled="{x:Bind ViewModel.MonacoRenderIsEnabled, Mode=OneWay}"/>
</StackPanel>
</controls:SettingExpander.Content>
</controls:SettingExpander>