mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-07 03:36:44 +02:00
Merge branch 'master' into spelling
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.IO.Abstractions;
|
||||
using System.Reflection;
|
||||
|
||||
namespace Wox.Plugin
|
||||
@@ -26,6 +26,10 @@ namespace Wox.Plugin
|
||||
}
|
||||
}
|
||||
|
||||
private static readonly IFileSystem FileSystem = new FileSystem();
|
||||
private static readonly IPath Path = FileSystem.Path;
|
||||
private static readonly IDirectory Directory = FileSystem.Directory;
|
||||
|
||||
public const string ExeFileName = "PowerLauncher";
|
||||
public const string ModuleLocation = "Microsoft\\PowerToys\\PowerToys Run";
|
||||
public const string Plugins = "Plugins";
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
// Copyright (c) Microsoft Corporation
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System.Collections.Generic;
|
||||
using ControlzEx.Theming;
|
||||
|
||||
namespace Wox.Plugin
|
||||
{
|
||||
public class CustomLibraryThemeProvider : LibraryThemeProvider
|
||||
{
|
||||
public static readonly CustomLibraryThemeProvider DefaultInstance = new CustomLibraryThemeProvider();
|
||||
|
||||
public CustomLibraryThemeProvider()
|
||||
: base(true)
|
||||
{
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public override void FillColorSchemeValues(Dictionary<string, string> values, RuntimeThemeColorValues colorValues)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,111 @@
|
||||
{
|
||||
"DefaultValues": {
|
||||
"Theme.IsHighContrast": "false"
|
||||
},
|
||||
"BaseColorSchemes": [
|
||||
{
|
||||
"Name": "Dark",
|
||||
"Values": {
|
||||
"PrimaryAccentColor": "Black",
|
||||
"SystemBaseMediumLowColor": "#FF818181",
|
||||
"SystemChromeLow": "#FF171717",
|
||||
"TextControlPlaceholderForeground": "#FF818181",
|
||||
"TextBox.Static.Border": "Transparent",
|
||||
"TextBox.MouseOver.Border": "Transparent",
|
||||
"TextBox.Focus.Border": "Transparent",
|
||||
"ButtonBackgroundPointerOver": "#30FFFFFF",
|
||||
"ButtonBorderPointerOver": "#61FFFFFF",
|
||||
"ButtonBackgroundPressed": "#30FFFFFF",
|
||||
"ButtonBorderPressed": "#61FFFFFF",
|
||||
"ListViewItemBackgroundPointerOver": "#FF363636",
|
||||
"ControlTextBrushKey": "White",
|
||||
"SecondaryTextForeground": "#FFa1a1a1",
|
||||
"InactiveSelectionHighlightBrushKey": "White",
|
||||
"DialogBorderBrush": "#FF373737",
|
||||
"ScrollBarThumbBackground": "#FF7a7a7a",
|
||||
"ScrollBarThumbPointerOver": "#FF767676",
|
||||
"ScrollBarThumbPointerPressed": "#FFa4a4a4",
|
||||
"ScrollBarBackgroundPointerOver": "#FF1b1b1b",
|
||||
"ScrollBarLineButtonForeground": "#FFcdcdcd",
|
||||
"ScrollBarLineButtonForegroundPointerOver": "#FFcdcdcd",
|
||||
"ScrollBarLineButtonForegroundPointerPressed": "#FF171717",
|
||||
"ScrollBarLineButtonBackground": "Transparent",
|
||||
"ScrollBarLineButtonBackgroundPointerOver": "#FF313131",
|
||||
"ScrollBarLineButtonBackgroundPointerPressed": "#FFa4a4a4",
|
||||
"ToolTipBorderBrushKey": "#5B000000",
|
||||
"ToolTipForegroundBrushKey": "#FFFFFFFF",
|
||||
"ToolTipBackgroundBrushKey": "#FF2B2B2B"
|
||||
}
|
||||
},
|
||||
{
|
||||
"Name": "Light",
|
||||
"Values": {
|
||||
"PrimaryAccentColor": "White",
|
||||
"SystemBaseMediumLowColor": "#66000000",
|
||||
"SystemChromeLow": "#FFF2F2F2",
|
||||
"TextControlPlaceholderForeground": "#FF5b5b5b",
|
||||
"TextBox.Static.Border": "Transparent",
|
||||
"TextBox.MouseOver.Border": "Transparent",
|
||||
"TextBox.Focus.Border": "Transparent",
|
||||
"ButtonBackgroundPointerOver": "#2E000000",
|
||||
"ButtonBorderPointerOver": "#61000000",
|
||||
"ButtonBackgroundPressed": "#30000000",
|
||||
"ButtonBorderPressed": "#61000000",
|
||||
"ListViewItemBackgroundPointerOver": "#FFd2d2d2",
|
||||
"ControlTextBrushKey": "Black",
|
||||
"SecondaryTextForeground": "#FF434343",
|
||||
"InactiveSelectionHighlightBrushKey": "Black",
|
||||
"DialogBorderBrush": "#FFf7f7f7",
|
||||
"ScrollBarThumbBackground": "#FF7a7a7a",
|
||||
"ScrollBarThumbPointerOver": "#FFa0a0a0",
|
||||
"ScrollBarThumbPointerPressed": "#FF747474",
|
||||
"ScrollBarBackgroundPointerOver": "#FFf0f0f0",
|
||||
"ScrollBarLineButtonForeground": "#FF1d1d1d",
|
||||
"ScrollBarLineButtonForegroundPointerOver": "#FF1d1d1d",
|
||||
"ScrollBarLineButtonForegroundPointerPressed": "#FFf3f3f3",
|
||||
"ScrollBarLineButtonBackground": "Transparent",
|
||||
"ScrollBarLineButtonBackgroundPointerOver": "#FFd2d2d2",
|
||||
"ScrollBarLineButtonBackgroundPointerPressed": "#FF5d5d5d",
|
||||
"ToolTipBorderBrushKey": "#FFD0D0D0",
|
||||
"ToolTipForegroundBrushKey": "#FF000000",
|
||||
"ToolTipBackgroundBrushKey": "#FFFBFBFB"
|
||||
}
|
||||
},
|
||||
{
|
||||
"Name": "HighContrast",
|
||||
"Values": {
|
||||
"Theme.IsHighContrast": "true",
|
||||
"PrimaryAccentColor": "White",
|
||||
"SystemBaseMediumLowColor": "#ffff00",
|
||||
"SystemChromeLow": "Black",
|
||||
"TextControlPlaceholderForeground": "#FF008000",
|
||||
"TextBox.Static.Border": "Transparent",
|
||||
"TextBox.MouseOver.Border": "Transparent",
|
||||
"TextBox.Focus.Border": "Transparent",
|
||||
"ButtonBackgroundPointerOver": "Black",
|
||||
"ButtonBorderPointerOver": "White",
|
||||
"ButtonBackgroundPressed": "White",
|
||||
"ButtonBorderPressed": "White",
|
||||
"ListViewItemBackgroundPointerOver": "#FF003300",
|
||||
"ControlTextBrushKey": "#FFffff00",
|
||||
"SecondaryTextForeground": "#FF008000",
|
||||
"InactiveSelectionHighlightBrushKey": "#FFFFFFFF",
|
||||
"DialogBorderBrush": "#FF373737",
|
||||
"ScrollBarThumbBackground": "White",
|
||||
"ScrollBarThumbPointerOver": "#FF008000",
|
||||
"ScrollBarThumbPointerPressed": "#FF008000",
|
||||
"ScrollBarBackgroundPointerOver": "#FF000000",
|
||||
"ScrollBarLineButtonForeground": "#FFFFFFFF",
|
||||
"ScrollBarLineButtonForegroundPointerOver": "#FFFFFFFF",
|
||||
"ScrollBarLineButtonForegroundPointerPressed": "#FFFFFFFF",
|
||||
"ScrollBarLineButtonBackground": "Black",
|
||||
"ScrollBarLineButtonBackgroundPointerOver": "#FF000000",
|
||||
"ScrollBarLineButtonBackgroundPointerPressed": "#FF000000",
|
||||
"ToolTipBorderBrushKey": "#5B000000",
|
||||
"ToolTipForegroundBrushKey": "#FFFFFFFF",
|
||||
"ToolTipBackgroundBrushKey": "#FF2B2B2B"
|
||||
}
|
||||
}
|
||||
],
|
||||
"ColorSchemes": []
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:options="http://schemas.microsoft.com/winfx/2006/xaml/presentation/options"
|
||||
xmlns:system="clr-namespace:System;assembly=System.Runtime"
|
||||
mc:Ignorable="options">
|
||||
|
||||
<!-- Metadata -->
|
||||
<system:String x:Key="Theme.Name">{{ThemeName}}</system:String>
|
||||
<system:String x:Key="Theme.Origin">PowerToysRun</system:String>
|
||||
<system:String x:Key="Theme.DisplayName">{{ThemeDisplayName}}</system:String>
|
||||
<system:String x:Key="Theme.BaseColorScheme">{{BaseColorScheme}}</system:String>
|
||||
<system:String x:Key="Theme.ColorScheme">{{ColorScheme}}</system:String>
|
||||
<Color x:Key="Theme.PrimaryAccentColor">{{PrimaryAccentColor}}</Color>
|
||||
<system:Boolean x:Key="Theme.IsHighContrast">{{IsHighContrast}}</system:Boolean>
|
||||
|
||||
<Color x:Key="SystemBaseMediumLowColor">{{SystemBaseMediumLowColor}}</Color>
|
||||
<SolidColorBrush x:Key="SystemChromeLow" Color="{{SystemChromeLow}}" options:Freeze="True" />
|
||||
<SolidColorBrush x:Key="TextControlPlaceholderForeground" Color="{{TextControlPlaceholderForeground}}" />
|
||||
<SolidColorBrush x:Key="TextBox.Static.Border" Color="{{TextBox.Static.Border}}"/>
|
||||
<SolidColorBrush x:Key="TextBox.MouseOver.Border" Color="{{TextBox.MouseOver.Border}}"/>
|
||||
<SolidColorBrush x:Key="TextBox.Focus.Border" Color="{{TextBox.Focus.Border}}"/>
|
||||
<SolidColorBrush x:Key="ButtonBackgroundPointerOver" Color="{{ButtonBackgroundPointerOver}}" />
|
||||
<SolidColorBrush x:Key="ButtonBorderPointerOver" Color="{{ButtonBorderPointerOver}}" />
|
||||
<SolidColorBrush x:Key="ButtonBackgroundPressed" Color="{{ButtonBackgroundPressed}}" />
|
||||
<SolidColorBrush x:Key="ButtonBorderPressed" Color="{{ButtonBorderPressed}}" />
|
||||
<SolidColorBrush x:Key="ListViewItemBackgroundPointerOver" Color="{{ListViewItemBackgroundPointerOver}}" />
|
||||
<SolidColorBrush x:Key="ControlTextBrushKey" Color="{{ControlTextBrushKey}}" />
|
||||
<SolidColorBrush x:Key="SecondaryTextForeground" Color="{{SecondaryTextForeground}}" />
|
||||
<SolidColorBrush x:Key="InactiveSelectionHighlightBrushKey" Color="{{InactiveSelectionHighlightBrushKey}}" />
|
||||
<SolidColorBrush x:Key="DialogBorderBrush" Color="{{DialogBorderBrush}}" />
|
||||
|
||||
<SolidColorBrush x:Key="ScrollBarThumbBackground" Color="{{ScrollBarThumbBackground}}" />
|
||||
<Color x:Key="ScrollBarThumbPointerOver">{{ScrollBarThumbPointerOver}}</Color>
|
||||
<Color x:Key="ScrollBarThumbPointerPressed">{{ScrollBarThumbPointerPressed}}</Color>
|
||||
|
||||
<Color x:Key="ScrollBarBackgroundPointerOver">{{ScrollBarBackgroundPointerOver}}</Color>
|
||||
|
||||
<SolidColorBrush x:Key="ScrollBarLineButtonForeground" Color="{{ScrollBarLineButtonForeground}}" />
|
||||
<Color x:Key="ScrollBarLineButtonForegroundPointerOver">{{ScrollBarLineButtonForegroundPointerOver}}</Color>
|
||||
<Color x:Key="ScrollBarLineButtonForegroundPointerPressed">{{ScrollBarLineButtonForegroundPointerPressed}}</Color>
|
||||
|
||||
<SolidColorBrush x:Key="ScrollBarLineButtonBackground" Color="{{ScrollBarLineButtonBackground}}"/>
|
||||
<Color x:Key="ScrollBarLineButtonBackgroundPointerOver">{{ScrollBarLineButtonBackgroundPointerOver}}</Color>
|
||||
<Color x:Key="ScrollBarLineButtonBackgroundPointerPressed">{{ScrollBarLineButtonBackgroundPointerPressed}}</Color>
|
||||
|
||||
<SolidColorBrush x:Key="ToolTipBorderBrushKey" Color="{{ToolTipBorderBrushKey}}" />
|
||||
<SolidColorBrush x:Key="ToolTipForegroundBrushKey" Color="{{ToolTipForegroundBrushKey}}" />
|
||||
<SolidColorBrush x:Key="ToolTipBackgroundBrushKey" Color="{{ToolTipBackgroundBrushKey}}" />
|
||||
</ResourceDictionary>
|
||||
@@ -3,7 +3,7 @@
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.IO.Abstractions;
|
||||
using System.Runtime.CompilerServices;
|
||||
using NLog;
|
||||
using NLog.Config;
|
||||
@@ -13,6 +13,10 @@ namespace Wox.Plugin.Logger
|
||||
{
|
||||
public static class Log
|
||||
{
|
||||
private static readonly IFileSystem FileSystem = new FileSystem();
|
||||
private static readonly IPath Path = FileSystem.Path;
|
||||
private static readonly IDirectory Directory = FileSystem.Directory;
|
||||
|
||||
public const string DirectoryName = "Logs";
|
||||
|
||||
public static string CurrentLogDirectory { get; }
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.IO.Abstractions;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Wox.Plugin
|
||||
@@ -12,6 +12,9 @@ namespace Wox.Plugin
|
||||
[JsonObject(MemberSerialization.OptOut)]
|
||||
public class PluginMetadata : BaseModel
|
||||
{
|
||||
private static readonly IFileSystem FileSystem = new FileSystem();
|
||||
private static readonly IPath Path = FileSystem.Path;
|
||||
|
||||
private string _pluginDirectory;
|
||||
|
||||
private List<string> _actionKeywords;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.IO.Abstractions;
|
||||
using System.Windows;
|
||||
using System.Windows.Media;
|
||||
|
||||
@@ -13,6 +13,9 @@ namespace Wox.Plugin
|
||||
{
|
||||
public class Result
|
||||
{
|
||||
private static readonly IFileSystem FileSystem = new FileSystem();
|
||||
private static readonly IPath Path = FileSystem.Path;
|
||||
|
||||
private string _title;
|
||||
private ToolTipData _toolTipData;
|
||||
private string _pluginDirectory;
|
||||
|
||||
@@ -1,131 +0,0 @@
|
||||
// Copyright (c) Microsoft Corporation
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
using Wox.Plugin.Logger;
|
||||
using Wox.Plugin.Properties;
|
||||
|
||||
namespace Wox.Plugin.SharedCommands
|
||||
{
|
||||
public static class FilesFolders
|
||||
{
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "Suppressing this to enable FxCop. We are logging the exception, and going forward general exceptions should not be caught")]
|
||||
public static void Copy(this string sourcePath, string targetPath)
|
||||
{
|
||||
// Get the subdirectories for the specified directory.
|
||||
DirectoryInfo dir = new DirectoryInfo(sourcePath);
|
||||
|
||||
if (!dir.Exists)
|
||||
{
|
||||
throw new DirectoryNotFoundException(
|
||||
"Source directory does not exist or could not be found: "
|
||||
+ sourcePath);
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
DirectoryInfo[] dirs = dir.GetDirectories();
|
||||
|
||||
// If the destination directory doesn't exist, create it.
|
||||
if (!Directory.Exists(targetPath))
|
||||
{
|
||||
Directory.CreateDirectory(targetPath);
|
||||
}
|
||||
|
||||
// Get the files in the directory and copy them to the new location.
|
||||
FileInfo[] files = dir.GetFiles();
|
||||
foreach (FileInfo file in files)
|
||||
{
|
||||
string temppath = Path.Combine(targetPath, file.Name);
|
||||
file.CopyTo(temppath, false);
|
||||
}
|
||||
|
||||
// Recursively copy subdirectories by calling itself on each subdirectory until there are no more to copy
|
||||
foreach (DirectoryInfo subdir in dirs)
|
||||
{
|
||||
string temppath = Path.Combine(targetPath, subdir.Name);
|
||||
Copy(subdir.FullName, temppath);
|
||||
}
|
||||
}
|
||||
#pragma warning disable CS0168 // Variable is declared but never used. Due to #if debug vs release statement
|
||||
catch (Exception e)
|
||||
#pragma warning restore CS0168 // Variable is declared but never used
|
||||
{
|
||||
string error = $"Copying path {targetPath} has failed";
|
||||
Log.Exception(error, e, MethodBase.GetCurrentMethod().DeclaringType);
|
||||
#if DEBUG
|
||||
throw;
|
||||
#else
|
||||
// Using CurrentCulture since this is user facing
|
||||
System.Windows.MessageBox.Show(string.Format(CultureInfo.CurrentCulture, Resources.filesfolder_copy_failed, targetPath));
|
||||
RemoveFolder(targetPath);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "Suppressing this to enable FxCop. We are logging the exception, and going forward general exceptions should not be caught")]
|
||||
public static bool VerifyBothFolderFilesEqual(this string fromPath, string toPath)
|
||||
{
|
||||
try
|
||||
{
|
||||
var fromDir = new DirectoryInfo(fromPath);
|
||||
var toDir = new DirectoryInfo(toPath);
|
||||
|
||||
if (fromDir.GetFiles("*", SearchOption.AllDirectories).Length != toDir.GetFiles("*", SearchOption.AllDirectories).Length)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
if (fromDir.GetDirectories("*", SearchOption.AllDirectories).Length != toDir.GetDirectories("*", SearchOption.AllDirectories).Length)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
#pragma warning disable CS0168 // Variable is declared but never used. Due to #if debug vs release statement
|
||||
catch (Exception e)
|
||||
#pragma warning restore CS0168 // Variable is declared but never used
|
||||
{
|
||||
string error = $"Unable to verify folders and files between {fromPath} and {toPath}";
|
||||
Log.Exception(error, e, MethodBase.GetCurrentMethod().DeclaringType);
|
||||
#if DEBUG
|
||||
throw;
|
||||
#else
|
||||
// Using CurrentCulture since this is user facing
|
||||
System.Windows.MessageBox.Show(string.Format(CultureInfo.CurrentCulture, Resources.filesfolder_verifybothfolderfilesequal_failed, fromPath, toPath));
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "Suppressing this to enable FxCop. We are logging the exception, and going forward general exceptions should not be caught")]
|
||||
public static void RemoveFolder(this string path)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (Directory.Exists(path))
|
||||
{
|
||||
Directory.Delete(path, true);
|
||||
}
|
||||
}
|
||||
#pragma warning disable CS0168 // Variable is declared but never used. Due to #if debug vs release statement
|
||||
catch (Exception e)
|
||||
#pragma warning restore CS0168 // Variable is declared but never used
|
||||
{
|
||||
string error = $"Not able to delete folder {path}";
|
||||
Log.Exception(error, e, MethodBase.GetCurrentMethod().DeclaringType);
|
||||
#if DEBUG
|
||||
throw;
|
||||
#else
|
||||
// Using CurrentCulture since this is user facing
|
||||
System.Windows.MessageBox.Show(string.Format(CultureInfo.CurrentCulture, Resources.filesfolder_removefolder_failed, path));
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,78 +0,0 @@
|
||||
// Copyright (c) Microsoft Corporation
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
|
||||
namespace Wox.Plugin.SharedCommands
|
||||
{
|
||||
public static class SearchWeb
|
||||
{
|
||||
/// <summary>
|
||||
/// Opens search in a new browser. If no browser path is passed in then Chrome is used.
|
||||
/// Leave browser path blank to use Chrome.
|
||||
/// </summary>
|
||||
public static void NewBrowserWindow(this Uri url, string browserPath)
|
||||
{
|
||||
if (url == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(url));
|
||||
}
|
||||
|
||||
var browserExecutableName = browserPath?
|
||||
.Split(new[] { Path.DirectorySeparatorChar }, StringSplitOptions.None)
|
||||
.Last();
|
||||
|
||||
var browser = string.IsNullOrEmpty(browserExecutableName) ? "chrome" : browserPath;
|
||||
|
||||
// Internet Explorer will open url in new browser window, and does not take the --new-window parameter
|
||||
var browserArguments = browserExecutableName == "iexplore.exe" ? url.AbsoluteUri : "--new-window " + url.AbsoluteUri;
|
||||
|
||||
try
|
||||
{
|
||||
Process.Start(browser, browserArguments);
|
||||
}
|
||||
catch (System.ComponentModel.Win32Exception)
|
||||
{
|
||||
var psi = new ProcessStartInfo
|
||||
{
|
||||
FileName = url.AbsoluteUri,
|
||||
UseShellExecute = true,
|
||||
};
|
||||
Process.Start(psi);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Opens search as a tab in the default browser chosen in Windows settings.
|
||||
/// </summary>
|
||||
public static void NewTabInBrowser(this Uri url, string browserPath)
|
||||
{
|
||||
if (url == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(url));
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
if (!string.IsNullOrEmpty(browserPath))
|
||||
{
|
||||
Process.Start(browserPath, url.AbsoluteUri);
|
||||
}
|
||||
else
|
||||
{
|
||||
Process.Start(url.AbsoluteUri);
|
||||
}
|
||||
}
|
||||
|
||||
// This error may be thrown for Process.Start(browserPath, url)
|
||||
catch (System.ComponentModel.Win32Exception)
|
||||
{
|
||||
Process.Start(url.AbsoluteUri);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,11 +1,10 @@
|
||||
// Copyright (c) Microsoft Corporation
|
||||
// Copyright (c) Microsoft Corporation
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Windows;
|
||||
using MahApps.Metro.Theming;
|
||||
using ManagedCommon;
|
||||
using Microsoft.Win32;
|
||||
|
||||
@@ -40,31 +39,35 @@ namespace Wox.Plugin
|
||||
ControlzEx.Theming.ThemeManager.Current.AddLibraryTheme(
|
||||
new ControlzEx.Theming.LibraryTheme(
|
||||
highContrastOneThemeUri,
|
||||
MahAppsLibraryThemeProvider.DefaultInstance));
|
||||
CustomLibraryThemeProvider.DefaultInstance));
|
||||
ControlzEx.Theming.ThemeManager.Current.AddLibraryTheme(
|
||||
new ControlzEx.Theming.LibraryTheme(
|
||||
highContrastTwoThemeUri,
|
||||
MahAppsLibraryThemeProvider.DefaultInstance));
|
||||
CustomLibraryThemeProvider.DefaultInstance));
|
||||
ControlzEx.Theming.ThemeManager.Current.AddLibraryTheme(
|
||||
new ControlzEx.Theming.LibraryTheme(
|
||||
highContrastBlackThemeUri,
|
||||
MahAppsLibraryThemeProvider.DefaultInstance));
|
||||
CustomLibraryThemeProvider.DefaultInstance));
|
||||
ControlzEx.Theming.ThemeManager.Current.AddLibraryTheme(
|
||||
new ControlzEx.Theming.LibraryTheme(
|
||||
highContrastWhiteThemeUri,
|
||||
MahAppsLibraryThemeProvider.DefaultInstance));
|
||||
CustomLibraryThemeProvider.DefaultInstance));
|
||||
ControlzEx.Theming.ThemeManager.Current.AddLibraryTheme(
|
||||
new ControlzEx.Theming.LibraryTheme(
|
||||
lightThemeUri,
|
||||
MahAppsLibraryThemeProvider.DefaultInstance));
|
||||
CustomLibraryThemeProvider.DefaultInstance));
|
||||
ControlzEx.Theming.ThemeManager.Current.AddLibraryTheme(
|
||||
new ControlzEx.Theming.LibraryTheme(
|
||||
darkThemeUri,
|
||||
MahAppsLibraryThemeProvider.DefaultInstance));
|
||||
CustomLibraryThemeProvider.DefaultInstance));
|
||||
|
||||
ResetTheme();
|
||||
ControlzEx.Theming.ThemeManager.Current.ThemeSyncMode = ControlzEx.Theming.ThemeSyncMode.SyncAll;
|
||||
ControlzEx.Theming.ThemeManager.Current.ThemeChanged += Current_ThemeChanged;
|
||||
|
||||
// Currently there is an issue in ControlzEx, so we must use SyncAll to sync also HighContrast themes.
|
||||
// We can change this after using next release.
|
||||
ControlzEx.Theming.ThemeManager.Current.ThemeSyncMode = ControlzEx.Theming.ThemeSyncMode.SyncAll;
|
||||
|
||||
ControlzEx.Theming.ThemeManager.Current.SyncTheme();
|
||||
}
|
||||
|
||||
public Theme GetCurrentTheme()
|
||||
@@ -119,22 +122,22 @@ namespace Wox.Plugin
|
||||
else if (theme == Theme.HighContrastOne)
|
||||
{
|
||||
currentTheme = Theme.HighContrastOne;
|
||||
ControlzEx.Theming.ThemeManager.Current.ChangeTheme(_app, HighContrastOneTheme);
|
||||
ControlzEx.Theming.ThemeManager.Current.ChangeTheme(_app, HighContrastOneTheme, true);
|
||||
}
|
||||
else if (theme == Theme.HighContrastTwo)
|
||||
{
|
||||
currentTheme = Theme.HighContrastTwo;
|
||||
ControlzEx.Theming.ThemeManager.Current.ChangeTheme(_app, HighContrastTwoTheme);
|
||||
ControlzEx.Theming.ThemeManager.Current.ChangeTheme(_app, HighContrastTwoTheme, true);
|
||||
}
|
||||
else if (theme == Theme.HighContrastWhite)
|
||||
{
|
||||
currentTheme = Theme.HighContrastWhite;
|
||||
ControlzEx.Theming.ThemeManager.Current.ChangeTheme(_app, HighContrastWhiteTheme);
|
||||
ControlzEx.Theming.ThemeManager.Current.ChangeTheme(_app, HighContrastWhiteTheme, true);
|
||||
}
|
||||
else if (theme == Theme.HighContrastBlack)
|
||||
{
|
||||
currentTheme = Theme.HighContrastBlack;
|
||||
ControlzEx.Theming.ThemeManager.Current.ChangeTheme(_app, HighContrastBlackTheme);
|
||||
ControlzEx.Theming.ThemeManager.Current.ChangeTheme(_app, HighContrastBlackTheme, true);
|
||||
}
|
||||
else if (theme == Theme.Light)
|
||||
{
|
||||
@@ -157,7 +160,15 @@ namespace Wox.Plugin
|
||||
|
||||
private void Current_ThemeChanged(object sender, ControlzEx.Theming.ThemeChangedEventArgs e)
|
||||
{
|
||||
ResetTheme();
|
||||
ControlzEx.Theming.ThemeManager.Current.ThemeChanged -= Current_ThemeChanged;
|
||||
try
|
||||
{
|
||||
ResetTheme();
|
||||
}
|
||||
finally
|
||||
{
|
||||
ControlzEx.Theming.ThemeManager.Current.ThemeChanged += Current_ThemeChanged;
|
||||
}
|
||||
}
|
||||
|
||||
protected virtual void Dispose(bool disposing)
|
||||
|
||||
@@ -49,6 +49,15 @@
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<DefaultItemExcludes>$(DefaultItemExcludes);**/*.Template.xaml</DefaultItemExcludes>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="**/*.Template.xaml" />
|
||||
<EmbeddedResource Include="**/GeneratorParameters.json" />
|
||||
<UpToDateCheckInput Include="**/*.xaml" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Include="README.md" />
|
||||
</ItemGroup>
|
||||
@@ -67,7 +76,6 @@
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="JetBrains.Annotations" Version="2020.1.0" />
|
||||
<PackageReference Include="MahApps.Metro" Version="2.3.0" />
|
||||
<PackageReference Include="ControlzEx" Version="4.3.2" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="3.3.0">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
|
||||
@@ -13,29 +13,29 @@
|
||||
<Item ItemId=";filesfolder_copy_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Copying path {0} has failed, it will now be deleted for consistency]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Nepovedlo se zkopírovat cestu {0}. Aby se zachovala konzistence, cesta se odstraní.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: targetPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_removefolder_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Not able to delete folder {0}, please go to the location and manually delete it]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Nepovedlo se odstranit složku {0}. Přejděte prosím na příslušné umístění a odstraňte ji ručně.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: path]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_verifybothfolderfilesequal_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Unable to verify folders and files between {0} and {1}]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Nepovedlo se ověřit složky a soubory mezi {0} a {1}.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[paramaters: fromPath, toPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
</Item>
|
||||
</Item>
|
||||
|
||||
@@ -13,29 +13,29 @@
|
||||
<Item ItemId=";filesfolder_copy_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Copying path {0} has failed, it will now be deleted for consistency]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Fehler beim Kopieren des Pfads "{0}". Er wird nun aus Konsistenzgründen gelöscht.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: targetPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_removefolder_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Not able to delete folder {0}, please go to the location and manually delete it]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Der Ordner "{0}" kann nicht gelöscht werden. Wechseln Sie zum Speicherort, und löschen Sie ihn manuell.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: path]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_verifybothfolderfilesequal_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Unable to verify folders and files between {0} and {1}]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Die Ordner und Dateien zwischen "{0}" und "{1}" können nicht verifiziert werden.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[paramaters: fromPath, toPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
</Item>
|
||||
</Item>
|
||||
|
||||
@@ -13,29 +13,29 @@
|
||||
<Item ItemId=";filesfolder_copy_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Copying path {0} has failed, it will now be deleted for consistency]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Error al copiar la ruta de acceso {0}. Ahora se eliminará por coherencia.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: targetPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_removefolder_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Not able to delete folder {0}, please go to the location and manually delete it]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[No se puede eliminar la carpeta {0}. Vaya a la ubicación y elimínela manualmente.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: path]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_verifybothfolderfilesequal_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Unable to verify folders and files between {0} and {1}]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[No se pueden comprobar las carpetas y los archivos entre {0} y {1}.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[paramaters: fromPath, toPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
</Item>
|
||||
</Item>
|
||||
|
||||
@@ -13,29 +13,29 @@
|
||||
<Item ItemId=";filesfolder_copy_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Copying path {0} has failed, it will now be deleted for consistency]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[La copie du chemin {0} a échoué, il est maintenant supprimé pour assurer la cohérence]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: targetPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_removefolder_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Not able to delete folder {0}, please go to the location and manually delete it]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Impossible de supprimer le dossier {0}, accédez à l'emplacement et supprimez-le manuellement]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: path]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_verifybothfolderfilesequal_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Unable to verify folders and files between {0} and {1}]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Impossible de vérifier les dossiers et les fichiers entre {0} et {1}]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[paramaters: fromPath, toPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
</Item>
|
||||
</Item>
|
||||
|
||||
@@ -13,29 +13,29 @@
|
||||
<Item ItemId=";filesfolder_copy_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Copying path {0} has failed, it will now be deleted for consistency]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[A(z) {0} elérési út másolása sikertelen volt, a konzisztencia érdekében törlődik]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: targetPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_removefolder_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Not able to delete folder {0}, please go to the location and manually delete it]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Nem sikerült törölni a(z) {0} mappát, lépjen a helyhez, és törölje manuálisan]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: path]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_verifybothfolderfilesequal_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Unable to verify folders and files between {0} and {1}]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Nem sikerült ellenőrizni a mappákat és a fájlokat a(z) {0} és {1} között]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[paramaters: fromPath, toPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
</Item>
|
||||
</Item>
|
||||
|
||||
@@ -13,29 +13,29 @@
|
||||
<Item ItemId=";filesfolder_copy_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Copying path {0} has failed, it will now be deleted for consistency]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[パス {0} をコピーできませんでした。これは、整合性のために削除されます]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: targetPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_removefolder_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Not able to delete folder {0}, please go to the location and manually delete it]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[フォルダー {0} を削除できません。その場所に移動して、手動で削除してください]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: path]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_verifybothfolderfilesequal_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Unable to verify folders and files between {0} and {1}]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[{0} と {1} の間のフォルダーとファイルを確認できません]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[paramaters: fromPath, toPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
</Item>
|
||||
</Item>
|
||||
|
||||
@@ -13,29 +13,29 @@
|
||||
<Item ItemId=";filesfolder_copy_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Copying path {0} has failed, it will now be deleted for consistency]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Kan het pad {0} niet kopiëren. Het pad wordt nu verwijderd voor consistentie]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: targetPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_removefolder_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Not able to delete folder {0}, please go to the location and manually delete it]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Kan de map {0} niet verwijderen. Ga naar de locatie en om de map handmatig te verwijderen]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: path]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_verifybothfolderfilesequal_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Unable to verify folders and files between {0} and {1}]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Kan geen mappen en bestanden controleren tussen {0} en {1}]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[paramaters: fromPath, toPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
</Item>
|
||||
</Item>
|
||||
|
||||
@@ -13,29 +13,29 @@
|
||||
<Item ItemId=";filesfolder_copy_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Copying path {0} has failed, it will now be deleted for consistency]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Falha ao copiar o caminho {0}, ele será excluído para consistência]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: targetPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_removefolder_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Not able to delete folder {0}, please go to the location and manually delete it]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Não é possível excluir a pasta {0}, vá até o local e exclua-a manualmente]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: path]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_verifybothfolderfilesequal_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Unable to verify folders and files between {0} and {1}]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Não é possível verificar pastas e arquivos entre {0} e {1}]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[paramaters: fromPath, toPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
</Item>
|
||||
</Item>
|
||||
|
||||
@@ -13,29 +13,29 @@
|
||||
<Item ItemId=";filesfolder_copy_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Copying path {0} has failed, it will now be deleted for consistency]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Не удалось скопировать путь {0}, он будет удален для обеспечения согласованности.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: targetPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_removefolder_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Not able to delete folder {0}, please go to the location and manually delete it]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Не удается удалить папку {0}, перейдите в ее расположение и удалите ее вручную.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: path]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_verifybothfolderfilesequal_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Unable to verify folders and files between {0} and {1}]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[Не удается проверить папки и файлы между {0} и {1}.]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[paramaters: fromPath, toPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
</Item>
|
||||
</Item>
|
||||
|
||||
@@ -13,29 +13,29 @@
|
||||
<Item ItemId=";filesfolder_copy_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Copying path {0} has failed, it will now be deleted for consistency]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[{0} yolu kopyalanamadığından şimdi tutarlılık için silinecek]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: targetPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_removefolder_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Not able to delete folder {0}, please go to the location and manually delete it]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[{0} klasörü silinemiyor, lütfen konuma gidin ve kendiniz silin]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: path]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_verifybothfolderfilesequal_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Unable to verify folders and files between {0} and {1}]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[{0} ile {1} arasındaki klasör ve dosyalar doğrulanamıyor]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[paramaters: fromPath, toPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
</Item>
|
||||
</Item>
|
||||
|
||||
@@ -13,29 +13,29 @@
|
||||
<Item ItemId=";filesfolder_copy_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Copying path {0} has failed, it will now be deleted for consistency]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[无法复制路径 {0}。为了保持一致性,现在它将被删除]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: targetPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_removefolder_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Not able to delete folder {0}, please go to the location and manually delete it]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[无法删除文件夹 {0}。请转到相应位置,然后手动删除它]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[parameter: path]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
<Item ItemId=";filesfolder_verifybothfolderfilesequal_failed" ItemType="0;.resx" PsrId="211" InstFlg="true" Leaf="true">
|
||||
<Str Cat="Text">
|
||||
<Val><![CDATA[Unable to verify folders and files between {0} and {1}]]></Val>
|
||||
<Tgt Cat="Text" Stat="Loc" Orig="New">
|
||||
<Val><![CDATA[无法验证 {0} 和 {1} 之间的文件夹和文件]]></Val>
|
||||
</Tgt>
|
||||
</Str>
|
||||
<Disp Icon="Str" />
|
||||
<Cmts>
|
||||
<Cmt Name="Dev"><![CDATA[paramaters: fromPath, toPath]]></Cmt>
|
||||
</Cmts>
|
||||
</Item>
|
||||
</Item>
|
||||
</Item>
|
||||
|
||||
Reference in New Issue
Block a user