mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-05 10:46:33 +02:00
Dev/crutkas/fixing warnings (#5161)
* new lines & braces * Tabs /space auto fix Co-authored-by: Clint Rutkas <crutkas@microsoft.com>
This commit is contained in:
@@ -46,12 +46,13 @@ namespace ColorPickerUI
|
||||
return;
|
||||
}
|
||||
|
||||
if(_args.Length > 0)
|
||||
if (_args.Length > 0)
|
||||
{
|
||||
_ = int.TryParse(_args[0], out _powerToysPid);
|
||||
}
|
||||
|
||||
RunnerHelper.WaitForPowerToysRunner(_powerToysPid, () => {
|
||||
RunnerHelper.WaitForPowerToysRunner(_powerToysPid, () =>
|
||||
{
|
||||
Environment.Exit(0);
|
||||
});
|
||||
|
||||
|
||||
@@ -14,7 +14,8 @@ namespace ColorPicker.Behaviors
|
||||
{
|
||||
var sender = ((ResizeBehavior)d).AssociatedObject;
|
||||
var move = new DoubleAnimation(sender.Width, (double)e.NewValue, new Duration(TimeSpan.FromMilliseconds(150)), FillBehavior.Stop);
|
||||
move.Completed += (s, e1) => {
|
||||
move.Completed += (s, e1) =>
|
||||
{
|
||||
sender.BeginAnimation(FrameworkElement.WidthProperty, null); sender.Width = (double)e.NewValue;
|
||||
};
|
||||
move.EasingFunction = new QuadraticEase() { EasingMode = EasingMode.EaseOut };
|
||||
|
||||
@@ -38,7 +38,7 @@ namespace ColorPicker.Mouse
|
||||
{
|
||||
try
|
||||
{
|
||||
if(curFile != null)
|
||||
if (curFile != null)
|
||||
{
|
||||
Registry.SetValue(CursorsRegistryPath, cursorRegistryName, curFile);
|
||||
Win32Apis.SystemParametersInfo(SPI_SETCURSORS, 0, new IntPtr(0), SPIF_SENDCHANGE);
|
||||
|
||||
@@ -25,7 +25,7 @@ namespace ColorPicker.Settings
|
||||
ChangeCursor = new SettingItem<bool>(true);
|
||||
ActivationShortcut = new SettingItem<string>(DefaultActivationShortcut);
|
||||
CopiedColorRepresentation = new SettingItem<ColorRepresentationType>(ColorRepresentationType.HEX);
|
||||
|
||||
|
||||
LoadSettingsFromJson();
|
||||
_watcher = Helper.GetFileWatcher(ColorPickerModuleName, "settings.json", LoadSettingsFromJson);
|
||||
}
|
||||
@@ -76,7 +76,7 @@ namespace ColorPicker.Settings
|
||||
Logger.LogError("Failed to read changed settings", ex);
|
||||
Thread.Sleep(500);
|
||||
}
|
||||
catch(Exception ex)
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logger.LogError("Failed to read changed settings", ex);
|
||||
}
|
||||
|
||||
@@ -25,7 +25,8 @@ namespace FancyZonesEditor
|
||||
|
||||
private void OnStartup(object sender, StartupEventArgs e)
|
||||
{
|
||||
RunnerHelper.WaitForPowerToysRunner(Settings.PowerToysPID, () => {
|
||||
RunnerHelper.WaitForPowerToysRunner(Settings.PowerToysPID, () =>
|
||||
{
|
||||
Environment.Exit(0);
|
||||
});
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ namespace FancyZonesEditor
|
||||
internal static class Native
|
||||
{
|
||||
[DllImport("kernel32", SetLastError = true, CharSet = CharSet.Ansi)]
|
||||
public static extern IntPtr LoadLibrary([MarshalAs(UnmanagedType.LPStr)]string lpFileName);
|
||||
public static extern IntPtr LoadLibrary([MarshalAs(UnmanagedType.LPStr)] string lpFileName);
|
||||
|
||||
[DllImport("kernel32", CharSet = CharSet.Ansi, ExactSpelling = true, SetLastError = true)]
|
||||
public static extern IntPtr GetProcAddress(IntPtr hModule, string procName);
|
||||
|
||||
@@ -44,7 +44,7 @@ namespace Microsoft.Plugin.Calculator
|
||||
var result = MagesEngine.Interpret(query.Search);
|
||||
|
||||
// This could happen for some incorrect queries, like pi(2)
|
||||
if(result == null)
|
||||
if (result == null)
|
||||
{
|
||||
return new List<Result>();
|
||||
}
|
||||
@@ -86,7 +86,7 @@ namespace Microsoft.Plugin.Calculator
|
||||
thread.Join();
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -63,7 +63,7 @@ namespace Microsoft.Plugin.Calculator
|
||||
{
|
||||
return Translate(input, this.sourceCulture, this.targetCulture, this.splitRegexForSource);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Translate from target to source culture.
|
||||
/// </summary>
|
||||
|
||||
@@ -111,7 +111,7 @@ namespace Microsoft.Plugin.Folder
|
||||
{
|
||||
Process.Start("explorer.exe", $" /select,\"{record.FullPath}\"");
|
||||
}
|
||||
catch(Exception e)
|
||||
catch (Exception e)
|
||||
{
|
||||
var message = $"Fail to open file at {record.FullPath}";
|
||||
LogException(message, e);
|
||||
@@ -159,7 +159,7 @@ namespace Microsoft.Plugin.Folder
|
||||
|
||||
private bool CanRunAsDifferentUser(string path)
|
||||
{
|
||||
switch(Path.GetExtension(path))
|
||||
switch (Path.GetExtension(path))
|
||||
{
|
||||
case ".exe":
|
||||
case ".bat":
|
||||
|
||||
@@ -197,7 +197,7 @@ namespace Microsoft.Plugin.Folder
|
||||
{
|
||||
if ((fileSystemInfo.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden) continue;
|
||||
|
||||
if(fileSystemInfo is DirectoryInfo)
|
||||
if (fileSystemInfo is DirectoryInfo)
|
||||
{
|
||||
var folderSubtitleString = fileSystemInfo.FullName;
|
||||
|
||||
@@ -246,7 +246,7 @@ namespace Microsoft.Plugin.Folder
|
||||
|
||||
return true;
|
||||
},
|
||||
ContextData = new SearchResult { Type = ResultType.File, FullPath = filePath}
|
||||
ContextData = new SearchResult { Type = ResultType.File, FullPath = filePath }
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ namespace Microsoft.Plugin.Indexer
|
||||
}
|
||||
|
||||
// Extensions for adding run as admin context menu item for applications
|
||||
private readonly string[] appExtensions = { ".exe", ".bat", ".appref-ms", ".lnk" };
|
||||
private readonly string[] appExtensions = { ".exe", ".bat", ".appref-ms", ".lnk" };
|
||||
|
||||
public ContextMenuLoader(PluginInitContext context)
|
||||
{
|
||||
@@ -44,7 +44,7 @@ namespace Microsoft.Plugin.Indexer
|
||||
}
|
||||
|
||||
// Test to check if File can be Run as admin, if yes, we add a 'run as admin' context menu item
|
||||
if(CanFileBeRunAsAdmin(record.Path))
|
||||
if (CanFileBeRunAsAdmin(record.Path))
|
||||
{
|
||||
contextMenus.Add(CreateRunAsAdminContextMenu(record));
|
||||
}
|
||||
@@ -55,7 +55,7 @@ namespace Microsoft.Plugin.Indexer
|
||||
Title = _context.API.GetTranslation("Microsoft_plugin_indexer_copy_path"),
|
||||
Glyph = "\xE8C8",
|
||||
FontFamily = "Segoe MDL2 Assets",
|
||||
AcceleratorKey = Key.C,
|
||||
AcceleratorKey = Key.C,
|
||||
AcceleratorModifiers = ModifierKeys.Control,
|
||||
|
||||
Action = (context) =>
|
||||
@@ -128,7 +128,7 @@ namespace Microsoft.Plugin.Indexer
|
||||
Task.Run(() => Helper.RunAsAdmin(record.Path));
|
||||
return true;
|
||||
}
|
||||
catch(Exception e)
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.Exception($"|Microsoft.Plugin.Indexer.ContextMenu| Failed to run {record.Path} as admin, {e.Message}", e);
|
||||
return false;
|
||||
@@ -142,9 +142,9 @@ namespace Microsoft.Plugin.Indexer
|
||||
private bool CanFileBeRunAsAdmin(string path)
|
||||
{
|
||||
string fileExtension = Path.GetExtension(path);
|
||||
foreach(string extension in appExtensions)
|
||||
foreach (string extension in appExtensions)
|
||||
{
|
||||
if(extension.Equals(fileExtension, StringComparison.OrdinalIgnoreCase))
|
||||
if (extension.Equals(fileExtension, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
@@ -169,7 +169,7 @@ namespace Microsoft.Plugin.Indexer
|
||||
{
|
||||
Process.Start("explorer.exe", $" /select,\"{record.Path}\"");
|
||||
}
|
||||
catch(Exception e)
|
||||
catch (Exception e)
|
||||
{
|
||||
var message = $"Fail to open file at {record.Path}";
|
||||
LogException(message, e);
|
||||
|
||||
@@ -14,10 +14,10 @@ namespace Microsoft.Plugin.Indexer.DriveDetection
|
||||
{
|
||||
using (RegistryKey regKey = Registry.LocalMachine.OpenSubKey(registryLocation))
|
||||
{
|
||||
if(regKey != null)
|
||||
if (regKey != null)
|
||||
{
|
||||
Object value = regKey.GetValue(valueName);
|
||||
if(value != null)
|
||||
if (value != null)
|
||||
{
|
||||
return (int)value;
|
||||
}
|
||||
|
||||
@@ -69,7 +69,7 @@ namespace Microsoft.Plugin.Indexer.SearchHelper
|
||||
resultDisposed = true;
|
||||
}
|
||||
|
||||
if(conn.State == System.Data.ConnectionState.Closed)
|
||||
if (conn.State == System.Data.ConnectionState.Closed)
|
||||
{
|
||||
connDisposed = true;
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ namespace Microsoft.Plugin.Indexer.SearchHelper
|
||||
List<OleDBResult> oleDBResults = WindowsIndexerSearch.Query(queryHelper.ConnectionString, sqlQuery);
|
||||
|
||||
// Loop over all records from the database
|
||||
foreach(OleDBResult oleDBResult in oleDBResults)
|
||||
foreach (OleDBResult oleDBResult in oleDBResults)
|
||||
{
|
||||
if (oleDBResult.fieldData[0] == DBNull.Value || oleDBResult.fieldData[1] == DBNull.Value || oleDBResult.fieldData[2] == DBNull.Value)
|
||||
{
|
||||
@@ -49,7 +49,7 @@ namespace Microsoft.Plugin.Indexer.SearchHelper
|
||||
Title = (string)oleDBResult.fieldData[1]
|
||||
};
|
||||
_Result.Add(result);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return _Result;
|
||||
@@ -105,7 +105,8 @@ namespace Microsoft.Plugin.Indexer.SearchHelper
|
||||
|
||||
public IEnumerable<SearchResult> Search(string keyword, string pattern = "*", int maxCount = 30)
|
||||
{
|
||||
lock(_lock){
|
||||
lock (_lock)
|
||||
{
|
||||
ISearchQueryHelper queryHelper;
|
||||
InitQueryHelper(out queryHelper, maxCount);
|
||||
ModifyQueryHelper(ref queryHelper, pattern);
|
||||
|
||||
@@ -79,7 +79,7 @@ namespace Microsoft.Plugin.Program.UnitTests.Programs
|
||||
// Arrange
|
||||
PackageWrapper invalidPackagedApp = new PackageWrapper();
|
||||
Main._settings = new Settings();
|
||||
List<IPackage> packages = new List<IPackage>() {invalidPackagedApp };
|
||||
List<IPackage> packages = new List<IPackage>() { invalidPackagedApp };
|
||||
var mock = new Mock<IPackageManager>();
|
||||
mock.Setup(x => x.FindPackagesForCurrentUser()).Returns(packages);
|
||||
UWP.PackageManagerWrapper = mock.Object;
|
||||
|
||||
@@ -56,7 +56,7 @@ namespace Microsoft.Plugin.Program.UnitTests.Programs
|
||||
Name = "Command Prompt",
|
||||
ExecutableName = "cmd.exe",
|
||||
FullPath = "c:\\windows\\system32\\cmd.exe",
|
||||
LnkResolvedPath ="c:\\users\\powertoys\\appdata\\roaming\\microsoft\\windows\\start menu\\programs\\system tools\\command prompt.lnk",
|
||||
LnkResolvedPath = "c:\\users\\powertoys\\appdata\\roaming\\microsoft\\windows\\start menu\\programs\\system tools\\command prompt.lnk",
|
||||
AppType = 2
|
||||
};
|
||||
|
||||
|
||||
@@ -64,8 +64,8 @@ namespace Microsoft.Plugin.Program.UnitTests.Storage
|
||||
{
|
||||
//Arrange
|
||||
ListRepository<string> repository = new ListRepository<string>();
|
||||
var numItems = 1000;
|
||||
for(var i=0; i<numItems;++i)
|
||||
var numItems = 1000;
|
||||
for (var i = 0; i < numItems; ++i)
|
||||
{
|
||||
repository.Add($"OriginalItem_{i}");
|
||||
}
|
||||
@@ -87,16 +87,16 @@ namespace Microsoft.Plugin.Program.UnitTests.Storage
|
||||
});
|
||||
|
||||
//Act - Insert on another thread
|
||||
var addTask = Task.Run(() =>
|
||||
{
|
||||
for (var i = 0; i < numItems; ++i)
|
||||
{
|
||||
repository.Add($"NewItem_{i}");
|
||||
}
|
||||
});
|
||||
var addTask = Task.Run(() =>
|
||||
{
|
||||
for (var i = 0; i < numItems; ++i)
|
||||
{
|
||||
repository.Add($"NewItem_{i}");
|
||||
}
|
||||
});
|
||||
|
||||
//Assert that this does not throw. Collections that aren't syncronized will throw an invalidoperatioexception if the list is modified while enumerating
|
||||
Assert.DoesNotThrowAsync(async () =>
|
||||
Assert.DoesNotThrowAsync(async () =>
|
||||
{
|
||||
await Task.WhenAll(new Task[] { iterationTask, addTask });
|
||||
});
|
||||
|
||||
@@ -42,9 +42,9 @@ namespace Microsoft.Plugin.Program.UnitTests.Storage
|
||||
// Arrange
|
||||
Win32ProgramRepository _win32ProgramRepository = new Win32ProgramRepository(_fileSystemWatchers, new BinaryStorage<IList<Win32>>("Win32"), _settings, _pathsToWatch);
|
||||
|
||||
Win32 item1 = new Win32
|
||||
{
|
||||
Name = name,
|
||||
Win32 item1 = new Win32
|
||||
{
|
||||
Name = name,
|
||||
ExecutableName = exename,
|
||||
FullPath = fullPath,
|
||||
Description = description1
|
||||
@@ -108,7 +108,7 @@ namespace Microsoft.Plugin.Program.UnitTests.Storage
|
||||
{
|
||||
// Arrange
|
||||
Win32ProgramRepository _win32ProgramRepository = new Win32ProgramRepository(_fileSystemWatchers, new BinaryStorage<IList<Win32>>("Win32"), _settings, _pathsToWatch);
|
||||
RenamedEventArgs e = new RenamedEventArgs(WatcherChangeTypes.Renamed, directory , newpath, oldpath);
|
||||
RenamedEventArgs e = new RenamedEventArgs(WatcherChangeTypes.Renamed, directory, newpath, oldpath);
|
||||
|
||||
string oldFullPath = directory + "\\" + oldpath;
|
||||
string newFullPath = directory + "\\" + newpath;
|
||||
@@ -132,12 +132,12 @@ namespace Microsoft.Plugin.Program.UnitTests.Storage
|
||||
// Arrange
|
||||
Win32ProgramRepository _win32ProgramRepository = new Win32ProgramRepository(_fileSystemWatchers, new BinaryStorage<IList<Win32>>("Win32"), _settings, _pathsToWatch);
|
||||
FileSystemEventArgs e = new FileSystemEventArgs(WatcherChangeTypes.Created, "directory", path);
|
||||
|
||||
|
||||
// FileVersionInfo must be mocked for exe applications
|
||||
var mockFileVersionInfo = new Mock<IFileVersionInfoWrapper>();
|
||||
mockFileVersionInfo.Setup(m => m.GetVersionInfo(It.IsAny<string>())).Returns((FileVersionInfo)null);
|
||||
Win32._fileVersionInfoWrapper = mockFileVersionInfo.Object;
|
||||
|
||||
|
||||
// Act
|
||||
_fileSystemMocks[0].Raise(m => m.Created += null, e);
|
||||
|
||||
@@ -377,7 +377,7 @@ namespace Microsoft.Plugin.Program.UnitTests.Storage
|
||||
|
||||
string oldFullPath = directory + "\\" + oldpath;
|
||||
string FullPath = directory + "\\" + path;
|
||||
|
||||
|
||||
// ShellLinkHelper must be mocked for lnk applications
|
||||
var mockShellLink = new Mock<IShellLinkHelper>();
|
||||
mockShellLink.Setup(m => m.RetrieveTargetPath(It.IsAny<string>())).Returns(String.Empty);
|
||||
|
||||
@@ -66,7 +66,7 @@ namespace Microsoft.Plugin.Program
|
||||
Task.WaitAll(a, b);
|
||||
|
||||
_settings.LastIndexTime = DateTime.Today;
|
||||
|
||||
|
||||
}
|
||||
|
||||
public void Save()
|
||||
|
||||
@@ -74,7 +74,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
public interface IAppxManifestProperties
|
||||
{
|
||||
[PreserveSig]
|
||||
int GetBoolValue([MarshalAs(UnmanagedType.LPWStr)]string name, out bool value);
|
||||
int GetBoolValue([MarshalAs(UnmanagedType.LPWStr)] string name, out bool value);
|
||||
[PreserveSig]
|
||||
int GetStringValue([MarshalAs(UnmanagedType.LPWStr)] string name, [MarshalAs(UnmanagedType.LPWStr)] out string value);
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
string path;
|
||||
try
|
||||
{
|
||||
path = package.InstalledLocation.Path;
|
||||
path = package.InstalledLocation.Path;
|
||||
}
|
||||
catch (Exception e) when (e is ArgumentException || e is FileNotFoundException)
|
||||
{
|
||||
@@ -48,11 +48,11 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
package.Id.Name,
|
||||
package.Id.FullName,
|
||||
package.Id.FamilyName,
|
||||
package.IsFramework,
|
||||
package.IsFramework,
|
||||
package.IsDevelopmentMode,
|
||||
path
|
||||
);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -117,7 +117,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
{
|
||||
((IPersistFile)link).Load(path, STGM_READ);
|
||||
}
|
||||
catch(System.IO.FileNotFoundException ex)
|
||||
catch (System.IO.FileNotFoundException ex)
|
||||
{
|
||||
ProgramLogger.LogException($"|Win32| ShellLinkHelper.retrieveTargetPath | {path} | Path could not be retrieved", ex);
|
||||
return String.Empty;
|
||||
|
||||
@@ -41,7 +41,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
public static IPackageManager PackageManagerWrapper { get; set; } = new PackageManagerWrapper();
|
||||
|
||||
public UWP(IPackage package)
|
||||
{
|
||||
{
|
||||
Name = package.Name;
|
||||
FullName = package.FullName;
|
||||
FamilyName = package.FamilyName;
|
||||
@@ -63,10 +63,10 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
|
||||
if (hResult == Hresult.Ok)
|
||||
{
|
||||
var apps = new List<Application>();
|
||||
|
||||
var apps = new List<Application>();
|
||||
|
||||
List<AppxPackageHelper.IAppxManifestApplication> _apps = _helper.getAppsFromManifest(stream);
|
||||
foreach(var _app in _apps)
|
||||
foreach (var _app in _apps)
|
||||
{
|
||||
var app = new Application(_app, this);
|
||||
apps.Add(app);
|
||||
@@ -194,12 +194,12 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ProgramLogger.LogException("UWP" ,"CurrentUserPackages", $"id","An unexpected error occurred and "
|
||||
ProgramLogger.LogException("UWP", "CurrentUserPackages", $"id", "An unexpected error occurred and "
|
||||
+ $"unable to verify if package is valid", e);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
return valid;
|
||||
});
|
||||
|
||||
@@ -242,7 +242,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
public string Name => DisplayName;
|
||||
public string Location => Package.Location;
|
||||
public bool Enabled { get; set; }
|
||||
public bool CanRunElevated {get;set;}
|
||||
public bool CanRunElevated { get; set; }
|
||||
|
||||
public string LogoUri { get; set; }
|
||||
public string LogoPath { get; set; }
|
||||
@@ -253,7 +253,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
{
|
||||
var displayNameMatch = StringMatcher.FuzzySearch(query, DisplayName);
|
||||
var descriptionMatch = StringMatcher.FuzzySearch(query, Description);
|
||||
var score = new[] { displayNameMatch.Score, descriptionMatch.Score/2 }.Max();
|
||||
var score = new[] { displayNameMatch.Score, descriptionMatch.Score / 2 }.Max();
|
||||
return score;
|
||||
}
|
||||
|
||||
@@ -325,23 +325,23 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
contextMenus.Add(
|
||||
new ContextMenuResult
|
||||
{
|
||||
PluginName = Assembly.GetExecutingAssembly().GetName().Name,
|
||||
Title = api.GetTranslation("wox_plugin_program_open_containing_folder"),
|
||||
Glyph = "\xE838",
|
||||
FontFamily = "Segoe MDL2 Assets",
|
||||
AcceleratorKey = Key.E,
|
||||
AcceleratorModifiers = (ModifierKeys.Control | ModifierKeys.Shift),
|
||||
Action = _ =>
|
||||
{
|
||||
Main.StartProcess(Process.Start, new ProcessStartInfo("explorer", Package.Location));
|
||||
|
||||
return true;
|
||||
}
|
||||
});
|
||||
}
|
||||
contextMenus.Add(
|
||||
new ContextMenuResult
|
||||
{
|
||||
PluginName = Assembly.GetExecutingAssembly().GetName().Name,
|
||||
Title = api.GetTranslation("wox_plugin_program_open_containing_folder"),
|
||||
Glyph = "\xE838",
|
||||
FontFamily = "Segoe MDL2 Assets",
|
||||
AcceleratorKey = Key.E,
|
||||
AcceleratorModifiers = (ModifierKeys.Control | ModifierKeys.Shift),
|
||||
Action = _ =>
|
||||
{
|
||||
Main.StartProcess(Process.Start, new ProcessStartInfo("explorer", Package.Location));
|
||||
|
||||
return true;
|
||||
}
|
||||
});
|
||||
|
||||
contextMenus.Add(new ContextMenuResult
|
||||
{
|
||||
@@ -436,7 +436,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
if (File.Exists(manifest))
|
||||
{
|
||||
var file = File.ReadAllText(manifest);
|
||||
if(file.Contains("TrustLevel=\"mediumIL\"", StringComparison.InvariantCultureIgnoreCase))
|
||||
if (file.Contains("TrustLevel=\"mediumIL\"", StringComparison.InvariantCultureIgnoreCase))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
@@ -565,8 +565,8 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
{
|
||||
var end = path.Length - extension.Length;
|
||||
var prefix = path.Substring(0, end);
|
||||
var paths = new List<string> { path };
|
||||
|
||||
var paths = new List<string> { path };
|
||||
|
||||
var scaleFactors = new Dictionary<PackageVersion, List<int>>
|
||||
{
|
||||
// scale factors on win10: https://docs.microsoft.com/en-us/windows/uwp/controls-and-patterns/tiles-and-notifications-app-assets#asset-size-tables,
|
||||
@@ -594,7 +594,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
else
|
||||
{
|
||||
int appIconSize = 36;
|
||||
var targetSizes = new List<int>{16, 24, 30, 36, 44, 60, 72, 96, 128, 180, 256}.AsParallel();
|
||||
var targetSizes = new List<int> { 16, 24, 30, 36, 44, 60, 72, 96, 128, 180, 256 }.AsParallel();
|
||||
Dictionary<string, int> pathFactorPairs = new Dictionary<string, int>();
|
||||
|
||||
foreach (var factor in targetSizes)
|
||||
|
||||
@@ -64,7 +64,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
var nameMatch = StringMatcher.FuzzySearch(query, Name);
|
||||
var descriptionMatch = StringMatcher.FuzzySearch(query, Description);
|
||||
var executableNameMatch = StringMatcher.FuzzySearch(query, ExecutableName);
|
||||
var score = new[] { nameMatch.Score, descriptionMatch.Score/2, executableNameMatch.Score }.Max();
|
||||
var score = new[] { nameMatch.Score, descriptionMatch.Score / 2, executableNameMatch.Score }.Max();
|
||||
return score;
|
||||
}
|
||||
|
||||
@@ -81,7 +81,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
public bool FilterWebApplication(string query)
|
||||
{
|
||||
// If the app is not a web application, then do not filter it
|
||||
if(!IsWebApplication())
|
||||
if (!IsWebApplication())
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -101,7 +101,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
pathContainsQuery = true;
|
||||
}
|
||||
|
||||
if(Name.Contains(subquery, StringComparison.OrdinalIgnoreCase))
|
||||
if (Name.Contains(subquery, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
nameContainsQuery = true;
|
||||
}
|
||||
@@ -112,19 +112,19 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
// Function to set the subtitle based on the Type of application
|
||||
private string SetSubtitle(IPublicAPI api)
|
||||
{
|
||||
if(AppType == (uint)ApplicationTypes.WIN32_APPLICATION)
|
||||
if (AppType == (uint)ApplicationTypes.WIN32_APPLICATION)
|
||||
{
|
||||
return api.GetTranslation("powertoys_run_plugin_program_win32_application");
|
||||
}
|
||||
else if(AppType == (uint)ApplicationTypes.INTERNET_SHORTCUT_APPLICATION)
|
||||
else if (AppType == (uint)ApplicationTypes.INTERNET_SHORTCUT_APPLICATION)
|
||||
{
|
||||
return api.GetTranslation("powertoys_run_plugin_program_internet_shortcut_application");
|
||||
}
|
||||
else if(AppType == (uint)ApplicationTypes.WEB_APPLICATION)
|
||||
else if (AppType == (uint)ApplicationTypes.WEB_APPLICATION)
|
||||
{
|
||||
return api.GetTranslation("powertoys_run_plugin_program_web_application");
|
||||
}
|
||||
else if(AppType == (uint)ApplicationTypes.RUN_COMMAND)
|
||||
else if (AppType == (uint)ApplicationTypes.RUN_COMMAND)
|
||||
{
|
||||
return api.GetTranslation("powertoys_run_plugin_program_run_command");
|
||||
}
|
||||
@@ -153,7 +153,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
return null;
|
||||
}
|
||||
|
||||
if(!hasArguments)
|
||||
if (!hasArguments)
|
||||
{
|
||||
var noArgumentScoreModifier = 5;
|
||||
score += noArgumentScoreModifier;
|
||||
@@ -168,7 +168,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
}
|
||||
|
||||
// NOTE: This is to display run commands only when there is an exact match, like in start menu
|
||||
if(!QueryEqualsNameForRunCommands(query))
|
||||
if (!QueryEqualsNameForRunCommands(query))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
@@ -330,27 +330,27 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
const string urlPrefix = "URL=";
|
||||
const string iconFilePrefix = "IconFile=";
|
||||
|
||||
foreach(string line in lines)
|
||||
foreach (string line in lines)
|
||||
{
|
||||
if(line.StartsWith(urlPrefix))
|
||||
if (line.StartsWith(urlPrefix))
|
||||
{
|
||||
urlPath = line.Substring(urlPrefix.Length);
|
||||
Uri uri = new Uri(urlPath);
|
||||
|
||||
// To filter out only those steam shortcuts which have 'run' or 'rungameid' as the hostname
|
||||
if(InternetShortcutURLPrefixes.Match(urlPath).Success)
|
||||
if (InternetShortcutURLPrefixes.Match(urlPath).Success)
|
||||
{
|
||||
validApp = true;
|
||||
}
|
||||
}
|
||||
|
||||
if(line.StartsWith(iconFilePrefix))
|
||||
if (line.StartsWith(iconFilePrefix))
|
||||
{
|
||||
iconPath = line.Substring(iconFilePrefix.Length);
|
||||
}
|
||||
}
|
||||
|
||||
if(!validApp)
|
||||
if (!validApp)
|
||||
{
|
||||
return new Win32() { Valid = false, Enabled = false };
|
||||
}
|
||||
@@ -386,8 +386,8 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
try
|
||||
{
|
||||
const int MAX_PATH = 260;
|
||||
StringBuilder buffer = new StringBuilder(MAX_PATH);
|
||||
|
||||
StringBuilder buffer = new StringBuilder(MAX_PATH);
|
||||
|
||||
string target = _helper.RetrieveTargetPath(path);
|
||||
|
||||
if (!string.IsNullOrEmpty(target))
|
||||
@@ -473,25 +473,25 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
|
||||
string extension = Path.GetExtension(path);
|
||||
|
||||
if(extension.Equals(exeExtension, StringComparison.OrdinalIgnoreCase))
|
||||
if (extension.Equals(exeExtension, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
app = ExeProgram(path);
|
||||
}
|
||||
else if(extension.Equals(lnkExtension, StringComparison.OrdinalIgnoreCase))
|
||||
else if (extension.Equals(lnkExtension, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
app = LnkProgram(path);
|
||||
}
|
||||
else if(extension.Equals(apprefExtension, StringComparison.OrdinalIgnoreCase))
|
||||
else if (extension.Equals(apprefExtension, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
app = Win32Program(path);
|
||||
}
|
||||
else if(extension.Equals(urlExtenion, StringComparison.OrdinalIgnoreCase))
|
||||
else if (extension.Equals(urlExtenion, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
app = InternetShortcutProgram(path);
|
||||
}
|
||||
|
||||
|
||||
// if the app is valid, only then return the application, else return null
|
||||
if(app?.Valid ?? false)
|
||||
if (app?.Valid ?? false)
|
||||
{
|
||||
return app;
|
||||
}
|
||||
@@ -511,8 +511,8 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
|
||||
var files = new List<string>();
|
||||
var folderQueue = new Queue<string>();
|
||||
folderQueue.Enqueue(directory);
|
||||
|
||||
folderQueue.Enqueue(directory);
|
||||
|
||||
do
|
||||
{
|
||||
var currentDirectory = folderQueue.Dequeue();
|
||||
@@ -540,7 +540,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
try
|
||||
{
|
||||
// If the search is set to be non-recursive, then do not enqueue the child directories.
|
||||
if(!recursiveSearch)
|
||||
if (!recursiveSearch)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
@@ -606,9 +606,9 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
IEnumerable<String> toFilterAllPaths = new List<String>();
|
||||
bool isRecursiveSearch = true;
|
||||
|
||||
foreach(string path in searchPaths)
|
||||
foreach (string path in searchPaths)
|
||||
{
|
||||
if(path.Length > 0)
|
||||
if (path.Length > 0)
|
||||
{
|
||||
// to expand any environment variables present in the path
|
||||
string directory = Environment.ExpandEnvironmentVariables(path);
|
||||
@@ -629,7 +629,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
var allPrograms = programs1.Concat(programs2).Where(p => p.Valid)
|
||||
.Concat(programs3).Where(p => p.Valid)
|
||||
.Concat(programs4).Where(p => p.Valid)
|
||||
.Select( p => { p.AppType = (uint)ApplicationTypes.RUN_COMMAND; return p; });
|
||||
.Select(p => { p.AppType = (uint)ApplicationTypes.RUN_COMMAND; return p; });
|
||||
|
||||
return allPrograms;
|
||||
}
|
||||
@@ -643,8 +643,8 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
{
|
||||
var _paths = ProgramPaths(location, suffixes);
|
||||
toFilter = toFilter.Concat(_paths);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
var paths = toFilter
|
||||
.Where(t1 => !disabledProgramsList.Any(x => x.UniqueIdentifier == t1))
|
||||
.Select(t1 => t1)
|
||||
@@ -665,7 +665,7 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
{
|
||||
var directory1 = Environment.GetFolderPath(Environment.SpecialFolder.Programs);
|
||||
var directory2 = Environment.GetFolderPath(Environment.SpecialFolder.CommonPrograms);
|
||||
List<string> IndexLocation = new List<string>() { directory1, directory2};
|
||||
List<string> IndexLocation = new List<string>() { directory1, directory2 };
|
||||
|
||||
return IndexPath(suffixes, IndexLocation);
|
||||
}
|
||||
@@ -777,8 +777,8 @@ namespace Microsoft.Plugin.Program.Programs
|
||||
{
|
||||
public bool Equals(Win32 app1, Win32 app2)
|
||||
{
|
||||
|
||||
if(!string.IsNullOrEmpty(app1.Name) && !string.IsNullOrEmpty(app2.Name)
|
||||
|
||||
if (!string.IsNullOrEmpty(app1.Name) && !string.IsNullOrEmpty(app2.Name)
|
||||
&& !string.IsNullOrEmpty(app1.ExecutableName) && !string.IsNullOrEmpty(app2.ExecutableName)
|
||||
&& !string.IsNullOrEmpty(app1.FullPath) && !string.IsNullOrEmpty(app2.FullPath))
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ namespace Microsoft.Plugin.Program
|
||||
public DateTime LastIndexTime { get; set; }
|
||||
public List<ProgramSource> ProgramSources { get; set; } = new List<ProgramSource>();
|
||||
public List<DisabledProgramSource> DisabledProgramSources { get; set; } = new List<DisabledProgramSource>();
|
||||
public string[] ProgramSuffixes { get; set; } = {"bat", "appref-ms", "exe", "lnk", "url"};
|
||||
public string[] ProgramSuffixes { get; set; } = { "bat", "appref-ms", "exe", "lnk", "url" };
|
||||
|
||||
public bool EnableStartMenuSource { get; set; } = true;
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ namespace Microsoft.Plugin.Program.Storage
|
||||
try
|
||||
{
|
||||
var packageWrapper = PackageWrapper.GetWrapperFromPackage(args.Package);
|
||||
if(!string.IsNullOrEmpty(packageWrapper.InstalledLocation))
|
||||
if (!string.IsNullOrEmpty(packageWrapper.InstalledLocation))
|
||||
{
|
||||
var uwp = new UWP(packageWrapper);
|
||||
uwp.InitializeAppInfo(packageWrapper.InstalledLocation);
|
||||
|
||||
@@ -52,7 +52,7 @@ namespace Microsoft.Plugin.Program.Storage
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
for(int index = 0; index < _pathsToWatch.Length; index++)
|
||||
for (int index = 0; index < _pathsToWatch.Length; index++)
|
||||
{
|
||||
_fileSystemWatchers[index].Dispose();
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ namespace Microsoft.Plugin.Program.Storage
|
||||
private IList<IFileSystemWatcherWrapper> _fileSystemWatcherHelpers;
|
||||
private string[] _pathsToWatch;
|
||||
private int _numberOfPathsToWatch;
|
||||
private Collection<string> extensionsToWatch = new Collection<string>{ "*.exe", "*.lnk", "*.appref-ms", "*.url" };
|
||||
private Collection<string> extensionsToWatch = new Collection<string> { "*.exe", "*.lnk", "*.appref-ms", "*.url" };
|
||||
private readonly string lnkExtension = ".lnk";
|
||||
private readonly string urlExtension = ".url";
|
||||
|
||||
@@ -33,7 +33,7 @@ namespace Microsoft.Plugin.Program.Storage
|
||||
|
||||
private void InitializeFileSystemWatchers()
|
||||
{
|
||||
for(int index = 0; index < _numberOfPathsToWatch; index++)
|
||||
for (int index = 0; index < _numberOfPathsToWatch; index++)
|
||||
{
|
||||
// To set the paths to monitor
|
||||
_fileSystemWatcherHelpers[index].Path = _pathsToWatch[index];
|
||||
@@ -77,7 +77,7 @@ namespace Microsoft.Plugin.Program.Storage
|
||||
{
|
||||
oldApp = new Win32() { Name = Path.GetFileNameWithoutExtension(e.OldName), ExecutableName = newApp.ExecutableName, FullPath = newApp.FullPath };
|
||||
}
|
||||
else if(extension.Equals(urlExtension, StringComparison.OrdinalIgnoreCase))
|
||||
else if (extension.Equals(urlExtension, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
oldApp = new Win32() { Name = Path.GetFileNameWithoutExtension(e.OldName), ExecutableName = Path.GetFileName(e.OldName), FullPath = newApp.FullPath };
|
||||
}
|
||||
@@ -126,7 +126,7 @@ namespace Microsoft.Plugin.Program.Storage
|
||||
app = Programs.Win32.GetAppFromPath(path);
|
||||
}
|
||||
}
|
||||
catch(Exception ex)
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.Info($"|Win32ProgramRepository|OnAppDeleted-{extension}Program|{path}|Unable to create program from {path}| {ex.Message}");
|
||||
}
|
||||
@@ -154,7 +154,7 @@ namespace Microsoft.Plugin.Program.Storage
|
||||
// Unlike the rename event args, since we do not have a newPath, we iterate through all the programs and find the one with the same LnkResolved path.
|
||||
private Programs.Win32 GetAppWithSameLnkResolvedPath(string lnkResolvedPath)
|
||||
{
|
||||
foreach(Programs.Win32 app in Items)
|
||||
foreach (Programs.Win32 app in Items)
|
||||
{
|
||||
if (lnkResolvedPath.ToLower().Equals(app.LnkResolvedPath))
|
||||
{
|
||||
@@ -167,7 +167,7 @@ namespace Microsoft.Plugin.Program.Storage
|
||||
private void OnAppCreated(object sender, FileSystemEventArgs e)
|
||||
{
|
||||
string path = e.FullPath;
|
||||
if(!Path.GetExtension(path).Equals(urlExtension))
|
||||
if (!Path.GetExtension(path).Equals(urlExtension))
|
||||
{
|
||||
Programs.Win32 app = Programs.Win32.GetAppFromPath(path);
|
||||
if (app != null)
|
||||
|
||||
@@ -58,7 +58,7 @@ namespace Microsoft.Plugin.Program.Views
|
||||
private void btnAddProgramSource_OnClick(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var add = new AddProgramSource(context, _settings);
|
||||
if(add.ShowDialog() ?? false)
|
||||
if (add.ShowDialog() ?? false)
|
||||
{
|
||||
ReIndexing();
|
||||
}
|
||||
@@ -139,14 +139,14 @@ namespace Microsoft.Plugin.Program.Views
|
||||
UniqueIdentifier = directory
|
||||
};
|
||||
|
||||
directoriesToAdd.Add(source);
|
||||
directoriesToAdd.Add(source);
|
||||
}
|
||||
}
|
||||
|
||||
if (directoriesToAdd.Count() > 0)
|
||||
{
|
||||
directoriesToAdd.ForEach(x => _settings.ProgramSources.Add(x));
|
||||
directoriesToAdd.ForEach(x => ProgramSettingDisplayList.Add(x));
|
||||
directoriesToAdd.ForEach(x => ProgramSettingDisplayList.Add(x));
|
||||
|
||||
programSourceView.Items.Refresh();
|
||||
ReIndexing();
|
||||
@@ -212,8 +212,8 @@ namespace Microsoft.Plugin.Program.Views
|
||||
ProgramSettingDisplayList.SetProgramSourcesStatus(selectedItems, true);
|
||||
|
||||
ProgramSettingDisplayList.RemoveDisabledFromSettings();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (selectedItems.IsReindexRequired())
|
||||
ReIndexing();
|
||||
|
||||
@@ -256,7 +256,7 @@ namespace Microsoft.Plugin.Program.Views
|
||||
var sortBy = columnBinding?.Path.Path ?? headerClicked.Column.Header as string;
|
||||
|
||||
Sort(sortBy, direction);
|
||||
|
||||
|
||||
_lastHeaderClicked = headerClicked;
|
||||
_lastDirection = direction;
|
||||
}
|
||||
|
||||
@@ -198,7 +198,7 @@ namespace Microsoft.Plugin.Shell
|
||||
else if (_settings.Shell == Shell.RunCommand)
|
||||
{
|
||||
//Open explorer if the path is a file or directory
|
||||
if(Directory.Exists(command) || File.Exists(command))
|
||||
if (Directory.Exists(command) || File.Exists(command))
|
||||
{
|
||||
info = ShellCommand.SetProcessStartInfo("explorer.exe", arguments: command, verb: runAsAdministratorArg);
|
||||
}
|
||||
@@ -236,11 +236,11 @@ namespace Microsoft.Plugin.Shell
|
||||
return info;
|
||||
}
|
||||
|
||||
private void Execute(Func<ProcessStartInfo, Process> startProcess,ProcessStartInfo info)
|
||||
private void Execute(Func<ProcessStartInfo, Process> startProcess, ProcessStartInfo info)
|
||||
{
|
||||
try
|
||||
{
|
||||
startProcess(info);
|
||||
startProcess(info);
|
||||
}
|
||||
catch (FileNotFoundException e)
|
||||
{
|
||||
@@ -248,7 +248,7 @@ namespace Microsoft.Plugin.Shell
|
||||
var message = $"Command not found: {e.Message}";
|
||||
_context.API.ShowMsg(name, message);
|
||||
}
|
||||
catch(Win32Exception e)
|
||||
catch (Win32Exception e)
|
||||
{
|
||||
var name = "Plugin: Shell";
|
||||
var message = $"Error running the command: {e.Message}";
|
||||
|
||||
@@ -5,7 +5,7 @@ namespace Microsoft.Plugin.Shell
|
||||
public class Settings
|
||||
{
|
||||
public Shell Shell { get; set; } = Shell.RunCommand;
|
||||
|
||||
|
||||
// not overriding Win+R
|
||||
// crutkas we need to earn the right for Win+R override
|
||||
public bool ReplaceWinR { get; set; } = false;
|
||||
|
||||
@@ -49,10 +49,10 @@ namespace Microsoft.Plugin.Shell
|
||||
_settings.ReplaceWinR = false;
|
||||
};
|
||||
|
||||
ShellComboBox.SelectedIndex = (int) _settings.Shell;
|
||||
ShellComboBox.SelectedIndex = (int)_settings.Shell;
|
||||
ShellComboBox.SelectionChanged += (o, e) =>
|
||||
{
|
||||
_settings.Shell = (Shell) ShellComboBox.SelectedIndex;
|
||||
_settings.Shell = (Shell)ShellComboBox.SelectedIndex;
|
||||
LeaveShellOpen.IsEnabled = _settings.Shell != Shell.RunCommand;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -815,7 +815,7 @@ namespace Microsoft.Plugin.WindowWalker.Components
|
||||
public static extern uint GetWindowThreadProcessId(IntPtr hWnd, out uint lpdwProcessId);
|
||||
|
||||
[DllImport("psapi.dll")]
|
||||
public static extern uint GetProcessImageFileName(IntPtr hProcess, [Out] StringBuilder lpImageFileName, [In] [MarshalAs(UnmanagedType.U4)] int nSize);
|
||||
public static extern uint GetProcessImageFileName(IntPtr hProcess, [Out] StringBuilder lpImageFileName, [In][MarshalAs(UnmanagedType.U4)] int nSize);
|
||||
|
||||
[DllImport("user32.dll", SetLastError = true)]
|
||||
public static extern IntPtr GetProp(IntPtr hWnd, string lpString);
|
||||
@@ -824,7 +824,7 @@ namespace Microsoft.Plugin.WindowWalker.Components
|
||||
public static extern IntPtr OpenProcess(ProcessAccessFlags dwDesiredAccess, [MarshalAs(UnmanagedType.Bool)] bool bInheritHandle, int dwProcessId);
|
||||
|
||||
[DllImport("dwmapi.dll", EntryPoint = "#113", CallingConvention = CallingConvention.StdCall)]
|
||||
public static extern int DwmpActivateLivePreview([MarshalAs(UnmanagedType.Bool)]bool fActivate, IntPtr hWndExclude, IntPtr hWndInsertBefore, LivePreviewTrigger lpt, IntPtr prcFinalRect);
|
||||
public static extern int DwmpActivateLivePreview([MarshalAs(UnmanagedType.Bool)] bool fActivate, IntPtr hWndExclude, IntPtr hWndInsertBefore, LivePreviewTrigger lpt, IntPtr prcFinalRect);
|
||||
|
||||
[DllImport("dwmapi.dll", PreserveSig = false)]
|
||||
public static extern int DwmSetWindowAttribute(IntPtr hwnd, int attr, ref int attrValue, int attrSize);
|
||||
|
||||
@@ -91,7 +91,7 @@ namespace Microsoft.Plugin.WindowWalker.Components
|
||||
Window newWindow = new Window(hwnd);
|
||||
|
||||
if (newWindow.IsWindow && newWindow.Visible && newWindow.IsOwner &&
|
||||
(!newWindow.IsToolWindow || newWindow.IsAppWindow ) && !newWindow.TaskListDeleted &&
|
||||
(!newWindow.IsToolWindow || newWindow.IsAppWindow) && !newWindow.TaskListDeleted &&
|
||||
newWindow.ClassName != "Windows.UI.Core.CoreWindow")
|
||||
{
|
||||
windows.Add(newWindow);
|
||||
|
||||
@@ -94,7 +94,7 @@ namespace Microsoft.Plugin.WindowWalker.Components
|
||||
/// Event handler for when the search text has been updated
|
||||
/// </summary>
|
||||
public async Task UpdateSearchText(string searchText)
|
||||
{
|
||||
{
|
||||
this.SearchText = searchText;
|
||||
await SyncOpenWindowsWithModelAsync();
|
||||
}
|
||||
|
||||
@@ -6,13 +6,13 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace Microsoft.Plugin.WindowWalker.Components
|
||||
{
|
||||
class WindowResult:Window
|
||||
class WindowResult : Window
|
||||
{
|
||||
/// <summary>
|
||||
/// Number of letters in between constant for when
|
||||
/// the result hasn't been set yet
|
||||
/// </summary>
|
||||
public const int NoResult = -1;
|
||||
public const int NoResult = -1;
|
||||
|
||||
/// <summary>
|
||||
/// Properties that signify how many characters (including spaces)
|
||||
@@ -27,7 +27,7 @@ namespace Microsoft.Plugin.WindowWalker.Components
|
||||
/// <summary>
|
||||
/// Constructor for WindowResult
|
||||
/// </summary>
|
||||
public WindowResult(Window window):base(window.Hwnd)
|
||||
public WindowResult(Window window) : base(window.Hwnd)
|
||||
{
|
||||
LettersInBetweenScore = WindowResult.NoResult;
|
||||
}
|
||||
|
||||
@@ -58,7 +58,8 @@ namespace PowerLauncher
|
||||
|
||||
private void OnStartup(object sender, StartupEventArgs e)
|
||||
{
|
||||
RunnerHelper.WaitForPowerToysRunner(_powerToysPid, () => {
|
||||
RunnerHelper.WaitForPowerToysRunner(_powerToysPid, () =>
|
||||
{
|
||||
Dispose();
|
||||
Environment.Exit(0);
|
||||
});
|
||||
@@ -104,7 +105,7 @@ namespace PowerLauncher
|
||||
RegisterExitEvents();
|
||||
|
||||
_settingsWatcher = new SettingsWatcher(_settings);
|
||||
|
||||
|
||||
_mainVM.MainWindowVisibility = Visibility.Visible;
|
||||
_mainVM.ColdStartFix();
|
||||
_themeManager.ThemeChanged += OnThemeChanged;
|
||||
|
||||
@@ -10,14 +10,14 @@ namespace PowerLauncher.Helper
|
||||
{
|
||||
private static void Report(Exception e)
|
||||
{
|
||||
if( e != null)
|
||||
if (e != null)
|
||||
{
|
||||
var logger = LogManager.GetLogger("UnHandledException");
|
||||
logger.Fatal(ExceptionFormatter.FormatException(e));
|
||||
|
||||
var reportWindow = new ReportWindow(e);
|
||||
reportWindow.Show();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void UnhandledExceptionHandle(object sender, UnhandledExceptionEventArgs e)
|
||||
|
||||
@@ -27,11 +27,11 @@ namespace PowerLauncher.Helper
|
||||
/// <param name="newItems"></param>
|
||||
public void Update(List<ResultViewModel> newItems)
|
||||
{
|
||||
if(newItems == null)
|
||||
if (newItems == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(newItems));
|
||||
}
|
||||
|
||||
|
||||
int newCount = newItems.Count;
|
||||
int oldCount = Items.Count;
|
||||
int location = newCount > oldCount ? oldCount : newCount;
|
||||
|
||||
@@ -16,7 +16,7 @@ using static PowerLauncher.Helper.WindowsInteropHelper;
|
||||
|
||||
// http://blogs.microsoft.co.il/arik/2010/05/28/wpf-single-instance-application/
|
||||
// modified to allow single instance restart
|
||||
namespace PowerLauncher.Helper
|
||||
namespace PowerLauncher.Helper
|
||||
{
|
||||
internal enum WM
|
||||
{
|
||||
@@ -208,12 +208,12 @@ namespace PowerLauncher.Helper
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public interface ISingleInstanceApp
|
||||
{
|
||||
void OnSecondAppStarted();
|
||||
}
|
||||
public interface ISingleInstanceApp
|
||||
{
|
||||
void OnSecondAppStarted();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// This class checks to make sure that only one instance of
|
||||
@@ -226,9 +226,9 @@ namespace PowerLauncher.Helper
|
||||
/// running as Administrator, can activate it with command line arguments.
|
||||
/// For most apps, this will not be much of an issue.
|
||||
/// </remarks>
|
||||
public static class SingleInstance<TApplication>
|
||||
where TApplication: Application , ISingleInstanceApp
|
||||
|
||||
public static class SingleInstance<TApplication>
|
||||
where TApplication : Application, ISingleInstanceApp
|
||||
|
||||
{
|
||||
#region Private Fields
|
||||
|
||||
@@ -260,7 +260,7 @@ namespace PowerLauncher.Helper
|
||||
/// If not, activates the first instance.
|
||||
/// </summary>
|
||||
/// <returns>True if this is the first instance of the application.</returns>
|
||||
internal static bool InitializeAsFirstInstance( string uniqueName )
|
||||
internal static bool InitializeAsFirstInstance(string uniqueName)
|
||||
{
|
||||
// Build unique application Id and the IPC channel name.
|
||||
string applicationIdentifier = uniqueName + Environment.UserName;
|
||||
@@ -298,7 +298,7 @@ namespace PowerLauncher.Helper
|
||||
/// Gets command line args - for ClickOnce deployed applications, command line args may not be passed directly, they have to be retrieved.
|
||||
/// </summary>
|
||||
/// <returns>List of command line arg strings.</returns>
|
||||
private static IList<string> GetCommandLineArgs( string uniqueApplicationName )
|
||||
private static IList<string> GetCommandLineArgs(string uniqueApplicationName)
|
||||
{
|
||||
string[] args = null;
|
||||
|
||||
@@ -309,7 +309,7 @@ namespace PowerLauncher.Helper
|
||||
}
|
||||
catch (NotSupportedException)
|
||||
{
|
||||
|
||||
|
||||
// The application was clickonce deployed
|
||||
// Clickonce deployed apps cannot receive traditional commandline arguments
|
||||
// As a workaround commandline arguments can be written to a shared location before
|
||||
@@ -353,7 +353,7 @@ namespace PowerLauncher.Helper
|
||||
{
|
||||
using (NamedPipeServerStream pipeServer = new NamedPipeServerStream(channelName, PipeDirection.In))
|
||||
{
|
||||
while(true)
|
||||
while (true)
|
||||
{
|
||||
// Wait for connection to the pipe
|
||||
await pipeServer.WaitForConnectionAsync().ConfigureAwait(false);
|
||||
|
||||
@@ -110,7 +110,7 @@ namespace PowerLauncher
|
||||
|
||||
private void ViewModel_PropertyChanged(object sender, PropertyChangedEventArgs e)
|
||||
{
|
||||
if(e.PropertyName == nameof(MainViewModel.MainWindowVisibility))
|
||||
if (e.PropertyName == nameof(MainViewModel.MainWindowVisibility))
|
||||
{
|
||||
if (Visibility == System.Windows.Visibility.Visible)
|
||||
{
|
||||
@@ -124,7 +124,7 @@ namespace PowerLauncher
|
||||
_viewModel.LastQuerySelected = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (e.PropertyName == nameof(MainViewModel.SystemQueryText))
|
||||
{
|
||||
this._isTextSetProgrammatically = true;
|
||||
@@ -153,19 +153,19 @@ namespace PowerLauncher
|
||||
|
||||
private void OnActivated(object sender, EventArgs e)
|
||||
{
|
||||
if (_settings.ClearInputOnLaunch)
|
||||
{
|
||||
_viewModel.ClearQueryCommand.Execute(null);
|
||||
}
|
||||
if (_settings.ClearInputOnLaunch)
|
||||
{
|
||||
_viewModel.ClearQueryCommand.Execute(null);
|
||||
}
|
||||
}
|
||||
|
||||
private void OnDeactivated(object sender, EventArgs e)
|
||||
{
|
||||
if (_settings.HideWhenDeactivated)
|
||||
if (_settings.HideWhenDeactivated)
|
||||
{
|
||||
//(this.FindResource("OutroStoryboard") as Storyboard).Begin();
|
||||
Hide();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void UpdatePosition()
|
||||
@@ -176,7 +176,7 @@ namespace PowerLauncher
|
||||
Top = _settings.WindowTop;
|
||||
}
|
||||
else
|
||||
{
|
||||
{
|
||||
Top = WindowTop();
|
||||
Left = WindowLeft();
|
||||
}
|
||||
@@ -290,7 +290,7 @@ namespace PowerLauncher
|
||||
private void SuggestionsList_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||
{
|
||||
ListView listview = (ListView)sender;
|
||||
_viewModel.Results.SelectedItem = (ResultViewModel) listview.SelectedItem;
|
||||
_viewModel.Results.SelectedItem = (ResultViewModel)listview.SelectedItem;
|
||||
if (e.AddedItems.Count > 0 && e.AddedItems[0] != null)
|
||||
{
|
||||
listview.ScrollIntoView(e.AddedItems[0]);
|
||||
@@ -304,7 +304,7 @@ namespace PowerLauncher
|
||||
_viewModel.Results.SelectedIndex,
|
||||
_viewModel.Results.SelectedItem?.ToString(),
|
||||
_viewModel.QueryText);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private const int millisecondsToWait = 100;
|
||||
@@ -312,7 +312,7 @@ namespace PowerLauncher
|
||||
private bool disposedValue = false;
|
||||
|
||||
private void QueryTextBox_TextChanged(object sender, TextChangedEventArgs e)
|
||||
{
|
||||
{
|
||||
if (_isTextSetProgrammatically)
|
||||
{
|
||||
var textBox = ((TextBox)sender);
|
||||
@@ -345,7 +345,7 @@ namespace PowerLauncher
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void ListBox_PreviewMouseDown(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
if (e.ChangedButton == MouseButton.Right)
|
||||
|
||||
@@ -78,7 +78,7 @@ namespace Wox
|
||||
}
|
||||
|
||||
public void ShowMsg(string title, string subTitle = "", string iconPath = "", bool useMainWindowAsOwner = true)
|
||||
{
|
||||
{
|
||||
}
|
||||
|
||||
public void InstallPlugin(string path)
|
||||
@@ -115,16 +115,16 @@ namespace Wox
|
||||
{
|
||||
ThemeChanged?.Invoke(oldTheme, newTheme);
|
||||
}
|
||||
|
||||
|
||||
protected virtual void Dispose(bool disposing)
|
||||
{
|
||||
if (!_disposed)
|
||||
{
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
_themeManager.ThemeChanged -= OnThemeChanged;
|
||||
_disposed = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -1,14 +1,17 @@
|
||||
namespace PowerLauncher.Properties {
|
||||
|
||||
|
||||
namespace PowerLauncher.Properties
|
||||
{
|
||||
|
||||
|
||||
// This class allows you to handle specific events on the settings class:
|
||||
// The SettingChanging event is raised before a setting's value is changed.
|
||||
// The PropertyChanged event is raised after a setting's value is changed.
|
||||
// The SettingsLoaded event is raised after the setting values are loaded.
|
||||
// The SettingsSaving event is raised before the setting values are saved.
|
||||
internal sealed partial class Settings {
|
||||
|
||||
public Settings() {
|
||||
internal sealed partial class Settings
|
||||
{
|
||||
|
||||
public Settings()
|
||||
{
|
||||
// // To add event handlers for saving and changing settings, uncomment the lines below:
|
||||
//
|
||||
// this.SettingChanging += this.SettingChangingEventHandler;
|
||||
@@ -16,12 +19,14 @@
|
||||
// this.SettingsSaving += this.SettingsSavingEventHandler;
|
||||
//
|
||||
}
|
||||
|
||||
private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e) {
|
||||
|
||||
private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e)
|
||||
{
|
||||
// Add code to handle the SettingChangingEvent event here.
|
||||
}
|
||||
|
||||
private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e) {
|
||||
|
||||
private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e)
|
||||
{
|
||||
// Add code to handle the SettingsSaving event here.
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ namespace PowerLauncher
|
||||
{
|
||||
_settings = settings;
|
||||
// Set up watcher
|
||||
_watcher = Microsoft.PowerToys.Settings.UI.Lib.Utilities.Helper.GetFileWatcher(PowerLauncherSettings.ModuleName, "settings.json", OverloadSettings);
|
||||
_watcher = Microsoft.PowerToys.Settings.UI.Lib.Utilities.Helper.GetFileWatcher(PowerLauncherSettings.ModuleName, "settings.json", OverloadSettings);
|
||||
|
||||
// Load initial settings file
|
||||
OverloadSettings();
|
||||
@@ -75,7 +75,7 @@ namespace PowerLauncher
|
||||
|
||||
if (_settings.ClearInputOnLaunch != overloadSettings.Properties.clear_input_on_launch)
|
||||
{
|
||||
_settings.ClearInputOnLaunch = overloadSettings.Properties.clear_input_on_launch;
|
||||
_settings.ClearInputOnLaunch = overloadSettings.Properties.clear_input_on_launch;
|
||||
}
|
||||
}
|
||||
// the settings application can hold a lock on the settings.json file which will result in a IOException.
|
||||
|
||||
@@ -15,7 +15,8 @@ namespace PowerLauncher.ViewModel
|
||||
public string Title { get; set; }
|
||||
public string Glyph { get; set; }
|
||||
public string FontFamily { get; set; }
|
||||
public ICommand Command {
|
||||
public ICommand Command
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._command;
|
||||
|
||||
@@ -117,7 +117,7 @@ namespace PowerLauncher.ViewModel
|
||||
|
||||
private void InitializeKeyCommands()
|
||||
{
|
||||
IgnoreCommand = new RelayCommand(_ => {});
|
||||
IgnoreCommand = new RelayCommand(_ => { });
|
||||
|
||||
EscCommand = new RelayCommand(_ =>
|
||||
{
|
||||
@@ -187,7 +187,7 @@ namespace PowerLauncher.ViewModel
|
||||
results.SelectedIndex = int.Parse(index.ToString(), CultureInfo.InvariantCulture);
|
||||
}
|
||||
|
||||
if(results.SelectedItem != null)
|
||||
if (results.SelectedItem != null)
|
||||
{
|
||||
//If there is a context button selected fire the action for that button before the main command.
|
||||
bool didExecuteContextButton = results.SelectedItem.ExecuteSelectedContextButton();
|
||||
@@ -218,7 +218,7 @@ namespace PowerLauncher.ViewModel
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
LoadContextMenuCommand = new RelayCommand(_ =>
|
||||
@@ -248,12 +248,12 @@ namespace PowerLauncher.ViewModel
|
||||
|
||||
ClearQueryCommand = new RelayCommand(_ =>
|
||||
{
|
||||
if(!string.IsNullOrEmpty(QueryText))
|
||||
if (!string.IsNullOrEmpty(QueryText))
|
||||
{
|
||||
ChangeQueryText(string.Empty,true);
|
||||
//Push Event to UI SystemQuery has changed
|
||||
OnPropertyChanged(nameof(SystemQueryText));
|
||||
}
|
||||
ChangeQueryText(string.Empty, true);
|
||||
//Push Event to UI SystemQuery has changed
|
||||
OnPropertyChanged(nameof(SystemQueryText));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -271,7 +271,7 @@ namespace PowerLauncher.ViewModel
|
||||
public string SystemQueryText { get; set; } = String.Empty;
|
||||
|
||||
public string QueryText { get; set; } = String.Empty;
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// we need move cursor to end when we manually changed query
|
||||
@@ -280,11 +280,11 @@ namespace PowerLauncher.ViewModel
|
||||
/// </summary>
|
||||
/// <param name="queryText"></param>
|
||||
/// <param name="requery">Optional Parameter that if true, will automatically execute a query against the updated text</param>
|
||||
public void ChangeQueryText(string queryText, bool requery=false)
|
||||
public void ChangeQueryText(string queryText, bool requery = false)
|
||||
{
|
||||
SystemQueryText = queryText;
|
||||
|
||||
if(requery)
|
||||
|
||||
if (requery)
|
||||
{
|
||||
QueryText = queryText;
|
||||
Query();
|
||||
@@ -332,11 +332,13 @@ namespace PowerLauncher.ViewModel
|
||||
|
||||
private Visibility _visibility;
|
||||
|
||||
public Visibility MainWindowVisibility {
|
||||
public Visibility MainWindowVisibility
|
||||
{
|
||||
get { return _visibility; }
|
||||
set {
|
||||
set
|
||||
{
|
||||
_visibility = value;
|
||||
if(value == Visibility.Visible)
|
||||
if (value == Visibility.Visible)
|
||||
{
|
||||
PowerToysTelemetry.Log.WriteEvent(new LauncherShowEvent());
|
||||
}
|
||||
@@ -344,7 +346,7 @@ namespace PowerLauncher.ViewModel
|
||||
{
|
||||
PowerToysTelemetry.Log.WriteEvent(new LauncherHideEvent());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -503,7 +505,7 @@ namespace PowerLauncher.ViewModel
|
||||
_updateSource?.Cancel();
|
||||
_lastQuery = _emptyQuery;
|
||||
Results.SelectedItem = null;
|
||||
Results.Clear();
|
||||
Results.Clear();
|
||||
Results.Visibility = Visibility.Collapsed;
|
||||
}
|
||||
}
|
||||
@@ -569,7 +571,7 @@ namespace PowerLauncher.ViewModel
|
||||
hotkey.Shift = hotkeyModel.Shift;
|
||||
hotkey.Ctrl = hotkeyModel.Ctrl;
|
||||
hotkey.Win = hotkeyModel.Win;
|
||||
hotkey.Key = (byte) KeyInterop.VirtualKeyFromKey(hotkeyModel.CharKey);
|
||||
hotkey.Key = (byte)KeyInterop.VirtualKeyFromKey(hotkeyModel.CharKey);
|
||||
|
||||
_hotkeyHandle = _hotkeyManager.RegisterHotkey(hotkey, action);
|
||||
}
|
||||
@@ -672,7 +674,7 @@ namespace PowerLauncher.ViewModel
|
||||
/// </summary>
|
||||
public void UpdateResultView(List<Result> list, PluginMetadata metadata, Query originQuery)
|
||||
{
|
||||
if(list == null)
|
||||
if (list == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(list));
|
||||
}
|
||||
@@ -799,8 +801,8 @@ namespace PowerLauncher.ViewModel
|
||||
_hotkeyManager.Dispose();
|
||||
_updateSource.Dispose();
|
||||
_disposed = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
|
||||
@@ -42,10 +42,10 @@ namespace PowerLauncher.ViewModel
|
||||
{
|
||||
Result = result;
|
||||
}
|
||||
|
||||
|
||||
ContextMenuSelectedIndex = NoSelectionIndex;
|
||||
LoadContextMenu();
|
||||
|
||||
|
||||
ActivateContextButtonsHoverCommand = new RelayCommand(ActivateContextButtonsHoverAction);
|
||||
ActivateContextButtonsSelectionCommand = new RelayCommand(ActivateContextButtonsSelectionAction);
|
||||
DeactivateContextButtonsHoverCommand = new RelayCommand(DeactivateContextButtonsHoverAction);
|
||||
|
||||
@@ -165,7 +165,7 @@ namespace PowerLauncher.ViewModel
|
||||
public void SelectNextTabItem()
|
||||
{
|
||||
//Do nothing if there is no selected item or we've selected the next context button
|
||||
if(!SelectedItem?.SelectNextContextButton() ?? true)
|
||||
if (!SelectedItem?.SelectNextContextButton() ?? true)
|
||||
{
|
||||
SelectNextResult();
|
||||
}
|
||||
@@ -320,6 +320,6 @@ namespace PowerLauncher.ViewModel
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -39,7 +39,7 @@ namespace PowerLauncher.ViewModel
|
||||
#region about
|
||||
|
||||
public string ActivatedTimes => string.Format(CultureInfo.InvariantCulture, _translater.GetTranslation("about_activate_times"), Settings.ActivateTimes);
|
||||
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,8 +40,10 @@ namespace Wox.Core.Plugin
|
||||
return Execute(_startInfo);
|
||||
}
|
||||
|
||||
protected override string ExecuteContextMenu(Result selectedResult) {
|
||||
JsonRPCServerRequestModel request = new JsonRPCServerRequestModel {
|
||||
protected override string ExecuteContextMenu(Result selectedResult)
|
||||
{
|
||||
JsonRPCServerRequestModel request = new JsonRPCServerRequestModel
|
||||
{
|
||||
Method = "contextmenu",
|
||||
Parameters = new object[] { selectedResult.ContextData },
|
||||
};
|
||||
|
||||
@@ -71,7 +71,8 @@ namespace Wox.Core.Plugin
|
||||
|
||||
private string GetParameterByType(object parameter)
|
||||
{
|
||||
if (parameter == null) {
|
||||
if (parameter == null)
|
||||
{
|
||||
return "null";
|
||||
}
|
||||
if (parameter is string)
|
||||
|
||||
@@ -53,7 +53,7 @@ namespace Wox.Core.Plugin
|
||||
|
||||
public static void ReloadData()
|
||||
{
|
||||
foreach(var plugin in AllPlugins)
|
||||
foreach (var plugin in AllPlugins)
|
||||
{
|
||||
var reloadablePlugin = plugin.Plugin as IReloadable;
|
||||
reloadablePlugin?.ReloadData();
|
||||
@@ -104,7 +104,7 @@ namespace Wox.Core.Plugin
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.Exception(nameof(PluginManager), $"Fail to Init plugin: {pair.Metadata.Name}", e);
|
||||
pair.Metadata.Disabled = true;
|
||||
pair.Metadata.Disabled = true;
|
||||
failedPlugins.Enqueue(pair);
|
||||
}
|
||||
});
|
||||
@@ -271,10 +271,10 @@ namespace Wox.Core.Plugin
|
||||
{
|
||||
GlobalPlugins.Remove(plugin);
|
||||
}
|
||||
|
||||
if(oldActionkeyword != Query.GlobalPluginWildcardSign)
|
||||
|
||||
if (oldActionkeyword != Query.GlobalPluginWildcardSign)
|
||||
NonGlobalPlugins.Remove(oldActionkeyword);
|
||||
|
||||
|
||||
|
||||
plugin.Metadata.ActionKeywords.Remove(oldActionkeyword);
|
||||
}
|
||||
|
||||
@@ -14,9 +14,10 @@ namespace Wox.Core.Resource
|
||||
|
||||
try
|
||||
{
|
||||
return (FontWeight) fontWeightConverter.ConvertFromInvariantString(value);
|
||||
return (FontWeight)fontWeightConverter.ConvertFromInvariantString(value);
|
||||
}
|
||||
catch {
|
||||
catch
|
||||
{
|
||||
return FontWeights.Normal;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace Wox.Infrastructure
|
||||
private ConcurrentDictionary<string, string[][]> PinyinCache;
|
||||
private BinaryStorage<Dictionary<string, string[][]>> _pinyinStorage;
|
||||
private Settings _settings;
|
||||
|
||||
|
||||
public void Initialize([NotNull] Settings settings)
|
||||
{
|
||||
_settings = settings ?? throw new ArgumentNullException(nameof(settings));
|
||||
@@ -60,10 +60,10 @@ namespace Wox.Infrastructure
|
||||
|
||||
if (!ContainsChinese(source))
|
||||
return source;
|
||||
|
||||
|
||||
var combination = PinyinCombination(source);
|
||||
|
||||
var pinyinArray=combination.Select(x => string.Join("", x));
|
||||
|
||||
var pinyinArray = combination.Select(x => string.Join("", x));
|
||||
var acronymArray = combination.Select(Acronym).Distinct();
|
||||
|
||||
var joinedSingleStringCombination = new StringBuilder();
|
||||
@@ -77,7 +77,7 @@ namespace Wox.Infrastructure
|
||||
{
|
||||
if (!_settings.ShouldUsePinyin)
|
||||
{
|
||||
return;
|
||||
return;
|
||||
}
|
||||
_pinyinStorage.Save(GetPinyinCacheAsDictionary());
|
||||
}
|
||||
|
||||
@@ -90,12 +90,12 @@ namespace Wox.Infrastructure.Exception
|
||||
else if (string.IsNullOrEmpty(ass.Location))
|
||||
{
|
||||
sb.Append("location is null or empty");
|
||||
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.Append(ass.Location);
|
||||
|
||||
sb.Append(ass.Location);
|
||||
|
||||
}
|
||||
sb.AppendLine(")");
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ namespace Wox.Infrastructure.FileSystemHelper
|
||||
public FileVersionInfoWrapper() { }
|
||||
public FileVersionInfo GetVersionInfo(string path)
|
||||
{
|
||||
if(File.Exists(path))
|
||||
if (File.Exists(path))
|
||||
{
|
||||
return FileVersionInfo.GetVersionInfo(path);
|
||||
}
|
||||
|
||||
@@ -92,7 +92,7 @@ namespace Wox.Infrastructure
|
||||
{
|
||||
Process.Start(info);
|
||||
}
|
||||
catch(System.Exception ex)
|
||||
catch (System.Exception ex)
|
||||
{
|
||||
Log.Exception($"Wox.Infrastructure.Helper| Unable to Run {path} as admin : {ex.Message}", ex);
|
||||
}
|
||||
|
||||
@@ -103,7 +103,7 @@ namespace Wox.Infrastructure.Hotkey
|
||||
{
|
||||
try
|
||||
{
|
||||
CharKey = (Key) Enum.Parse(typeof (Key), charKey);
|
||||
CharKey = (Key)Enum.Parse(typeof(Key), charKey);
|
||||
}
|
||||
catch (ArgumentException)
|
||||
{
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace Wox.Infrastructure.Image
|
||||
var i = _data[path];
|
||||
return i;
|
||||
}
|
||||
set
|
||||
set
|
||||
{
|
||||
_data[path] = value;
|
||||
|
||||
|
||||
@@ -207,7 +207,7 @@ namespace Wox.Infrastructure.Image
|
||||
int ImageCacheValue;
|
||||
if (GuidToKey.TryGetValue(hash, out string key))
|
||||
{ // image already exists
|
||||
if(ImageCache.Usage.TryGetValue(path, out ImageCacheValue))
|
||||
if (ImageCache.Usage.TryGetValue(path, out ImageCacheValue))
|
||||
{
|
||||
img = ImageCache[key];
|
||||
}
|
||||
|
||||
@@ -41,8 +41,8 @@ namespace Wox.Infrastructure.Image
|
||||
internal interface IShellItem
|
||||
{
|
||||
void BindToHandler(IntPtr pbc,
|
||||
[MarshalAs(UnmanagedType.LPStruct)]Guid bhid,
|
||||
[MarshalAs(UnmanagedType.LPStruct)]Guid riid,
|
||||
[MarshalAs(UnmanagedType.LPStruct)] Guid bhid,
|
||||
[MarshalAs(UnmanagedType.LPStruct)] Guid riid,
|
||||
out IntPtr ppv);
|
||||
|
||||
void GetParent(out IShellItem ppsi);
|
||||
|
||||
@@ -49,7 +49,7 @@ namespace Wox.Infrastructure.Logger
|
||||
return valid;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
[MethodImpl(MethodImplOptions.Synchronized)]
|
||||
public static void Exception(string className, string message, System.Exception exception, [CallerMemberName] string methodName = "")
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace Wox.Infrastructure.Storage
|
||||
// Depending on the version number of the previously installed PT Run, delete the cache if it is found to be incompatible
|
||||
if (_storageHelper.clearCache)
|
||||
{
|
||||
if(File.Exists(FilePath))
|
||||
if (File.Exists(FilePath))
|
||||
{
|
||||
File.Delete(FilePath);
|
||||
Log.Info($"|BinaryStorage.TryLoad|Deleting cached data| <{FilePath}>");
|
||||
|
||||
@@ -8,14 +8,14 @@ namespace Wox.Infrastructure.Storage
|
||||
{
|
||||
public FileSystemWatcherWrapper() { }
|
||||
|
||||
Collection<string> IFileSystemWatcherWrapper.Filters
|
||||
{
|
||||
Collection<string> IFileSystemWatcherWrapper.Filters
|
||||
{
|
||||
get => this.Filters;
|
||||
set
|
||||
{
|
||||
if(value != null)
|
||||
set
|
||||
{
|
||||
if (value != null)
|
||||
{
|
||||
foreach(string filter in value)
|
||||
foreach (string filter in value)
|
||||
{
|
||||
this.Filters.Add(filter);
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ namespace Wox.Infrastructure.Storage
|
||||
// Depending on the version number of the previously installed PT Run, delete the cache if it is found to be incompatible
|
||||
if (_storageHelper.clearCache)
|
||||
{
|
||||
if(File.Exists(FilePath))
|
||||
if (File.Exists(FilePath))
|
||||
{
|
||||
File.Delete(FilePath);
|
||||
Log.Info($"|JsonStorage.TryLoad|Deleting cached data|<{FilePath}>");
|
||||
|
||||
@@ -25,7 +25,7 @@ namespace Wox.Infrastructure.Storage
|
||||
|
||||
public ListRepository()
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
|
||||
public void Set(IList<T> items)
|
||||
@@ -35,7 +35,7 @@ namespace Wox.Infrastructure.Storage
|
||||
{
|
||||
_items = new ConcurrentDictionary<int, T>(items.ToDictionary(i => i.GetHashCode()));
|
||||
}
|
||||
catch(ArgumentException e)
|
||||
catch (ArgumentException e)
|
||||
{
|
||||
Log.Info($"|LisRepository.Set| Trying to insert a duplicate item", e.Message);
|
||||
}
|
||||
@@ -52,7 +52,7 @@ namespace Wox.Infrastructure.Storage
|
||||
{
|
||||
Log.Error($"|ListRepository.Add| Item Already Exists <{insertedItem}>");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
public void Remove(T removedItem)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace Wox.Infrastructure.Storage
|
||||
{
|
||||
public class PluginJsonStorage<T> :JsonStorage<T> where T : new()
|
||||
public class PluginJsonStorage<T> : JsonStorage<T> where T : new()
|
||||
{
|
||||
public PluginJsonStorage()
|
||||
{
|
||||
|
||||
@@ -11,7 +11,7 @@ namespace Wox.Infrastructure.Storage
|
||||
// This detail is accessed by the storage items and is used to decide if the cache must be deleted or not
|
||||
public bool clearCache = false;
|
||||
|
||||
|
||||
|
||||
private String currentPowerToysVersion = String.Empty;
|
||||
private String FilePath { get; set; } = String.Empty;
|
||||
|
||||
@@ -32,17 +32,17 @@ namespace Wox.Infrastructure.Storage
|
||||
|
||||
// If there is some error in populating/retrieving the version numbers, then the cache must be deleted
|
||||
// This case will not be hit, but is present as a fail safe
|
||||
if(String.IsNullOrEmpty(version1) || String.IsNullOrEmpty(version2))
|
||||
if (String.IsNullOrEmpty(version1) || String.IsNullOrEmpty(version2))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
string[] split1 = version1.Split( new string[] { version, period }, StringSplitOptions.RemoveEmptyEntries);
|
||||
string[] split2 = version2.Split( new string[] { version, period }, StringSplitOptions.RemoveEmptyEntries);
|
||||
string[] split1 = version1.Split(new string[] { version, period }, StringSplitOptions.RemoveEmptyEntries);
|
||||
string[] split2 = version2.Split(new string[] { version, period }, StringSplitOptions.RemoveEmptyEntries);
|
||||
|
||||
for(int i=0; i<versionLength; i++)
|
||||
for (int i = 0; i < versionLength; i++)
|
||||
{
|
||||
if(int.Parse(split1[i]) < int.Parse(split2[i]))
|
||||
if (int.Parse(split1[i]) < int.Parse(split2[i]))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
@@ -70,11 +70,11 @@ namespace Wox.Infrastructure.Storage
|
||||
string cacheSuffix = ".cache";
|
||||
string jsonSuffix = ".json";
|
||||
|
||||
if(type == (uint)StorageType.BINARY_STORAGE)
|
||||
if (type == (uint)StorageType.BINARY_STORAGE)
|
||||
{
|
||||
suffix = cacheSuffix;
|
||||
}
|
||||
else if(type == (uint)StorageType.JSON_STORAGE)
|
||||
else if (type == (uint)StorageType.JSON_STORAGE)
|
||||
{
|
||||
suffix = jsonSuffix;
|
||||
}
|
||||
|
||||
@@ -58,8 +58,8 @@ namespace Wox.Infrastructure
|
||||
/// </summary>
|
||||
public MatchResult FuzzyMatch(string query, string stringToCompare, MatchOption opt)
|
||||
{
|
||||
if (string.IsNullOrEmpty(stringToCompare) || string.IsNullOrEmpty(query)) return new MatchResult (false, UserSettingSearchPrecision);
|
||||
|
||||
if (string.IsNullOrEmpty(stringToCompare) || string.IsNullOrEmpty(query)) return new MatchResult(false, UserSettingSearchPrecision);
|
||||
|
||||
query = query.Trim();
|
||||
|
||||
if (_alphabet != null)
|
||||
@@ -70,8 +70,8 @@ namespace Wox.Infrastructure
|
||||
|
||||
var fullStringToCompareWithoutCase = opt.IgnoreCase ? stringToCompare.ToLower() : stringToCompare;
|
||||
|
||||
var queryWithoutCase = opt.IgnoreCase ? query.ToLower() : query;
|
||||
|
||||
var queryWithoutCase = opt.IgnoreCase ? query.ToLower() : query;
|
||||
|
||||
var querySubstrings = queryWithoutCase.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
int currentQuerySubstringIndex = 0;
|
||||
var currentQuerySubstring = querySubstrings[currentQuerySubstringIndex];
|
||||
@@ -153,9 +153,9 @@ namespace Wox.Infrastructure
|
||||
currentQuerySubstring = querySubstrings[currentQuerySubstringIndex];
|
||||
currentQuerySubstringCharacterIndex = 0;
|
||||
}
|
||||
}
|
||||
|
||||
// proceed to calculate score if every char or substring without whitespaces matched
|
||||
}
|
||||
|
||||
// proceed to calculate score if every char or substring without whitespaces matched
|
||||
if (allQuerySubstringsMatched)
|
||||
{
|
||||
var nearestSpaceIndex = CalculateClosestSpaceIndex(spaceIndices, firstMatchIndex);
|
||||
@@ -164,13 +164,13 @@ namespace Wox.Infrastructure
|
||||
return new MatchResult(true, UserSettingSearchPrecision, indexList, score);
|
||||
}
|
||||
|
||||
return new MatchResult (false, UserSettingSearchPrecision);
|
||||
return new MatchResult(false, UserSettingSearchPrecision);
|
||||
}
|
||||
|
||||
// To get the index of the closest space which preceeds the first matching index
|
||||
private int CalculateClosestSpaceIndex(List<int> spaceIndices, int firstMatchIndex)
|
||||
{
|
||||
if(spaceIndices.Count == 0)
|
||||
if (spaceIndices.Count == 0)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
@@ -182,7 +182,7 @@ namespace Wox.Infrastructure
|
||||
}
|
||||
}
|
||||
|
||||
private static bool AllPreviousCharsMatched(int startIndexToVerify, int currentQuerySubstringCharacterIndex,
|
||||
private static bool AllPreviousCharsMatched(int startIndexToVerify, int currentQuerySubstringCharacterIndex,
|
||||
string fullStringToCompareWithoutCase, string currentQuerySubstring)
|
||||
{
|
||||
var allMatch = true;
|
||||
@@ -196,8 +196,8 @@ namespace Wox.Infrastructure
|
||||
}
|
||||
|
||||
return allMatch;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private static List<int> GetUpdatedIndexList(int startIndexToVerify, int currentQuerySubstringCharacterIndex, int firstMatchIndexInWord, List<int> indexList)
|
||||
{
|
||||
var updatedList = new List<int>();
|
||||
@@ -240,7 +240,7 @@ namespace Wox.Infrastructure
|
||||
{
|
||||
int count = query.Count(c => !char.IsWhiteSpace(c));
|
||||
int threshold = 4;
|
||||
if(count <= threshold)
|
||||
if (count <= threshold)
|
||||
{
|
||||
score += count * 10;
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ namespace Wox.Infrastructure.UserSettings
|
||||
{
|
||||
ID = metadata.ID,
|
||||
Name = metadata.Name,
|
||||
ActionKeywords = metadata.ActionKeywords,
|
||||
ActionKeywords = metadata.ActionKeywords,
|
||||
Disabled = metadata.Disabled
|
||||
};
|
||||
}
|
||||
|
||||
@@ -11,13 +11,14 @@ namespace Wox.Infrastructure.UserSettings
|
||||
{
|
||||
private string _hotkey = "Alt + Space";
|
||||
private string _previousHotkey = "";
|
||||
public string PreviousHotkey {
|
||||
public string PreviousHotkey
|
||||
{
|
||||
get
|
||||
{
|
||||
return _previousHotkey;
|
||||
}
|
||||
}
|
||||
public string Hotkey
|
||||
public string Hotkey
|
||||
{
|
||||
get
|
||||
{
|
||||
@@ -84,7 +85,7 @@ namespace Wox.Infrastructure.UserSettings
|
||||
public double WindowTop { get; set; }
|
||||
|
||||
private int _maxResultsToShow = 4;
|
||||
public int MaxResultsToShow
|
||||
public int MaxResultsToShow
|
||||
{
|
||||
get
|
||||
{
|
||||
|
||||
@@ -17,7 +17,7 @@ namespace Wox.Plugin
|
||||
public string Description { get; set; }
|
||||
public string Website { get; set; }
|
||||
public bool Disabled { get; set; }
|
||||
public string ExecuteFilePath { get; private set;}
|
||||
public string ExecuteFilePath { get; private set; }
|
||||
|
||||
public string ExecuteFileName { get; set; }
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace Wox.Plugin
|
||||
|
||||
public List<string> ActionKeywords { get; set; }
|
||||
|
||||
public string IcoPath { get; set;}
|
||||
public string IcoPath { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
public IPlugin Plugin { get; internal set; }
|
||||
public PluginMetadata Metadata { get; internal set; }
|
||||
|
||||
|
||||
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
|
||||
@@ -14,8 +14,9 @@ namespace Wox.Plugin
|
||||
private ToolTipData _toolTipData;
|
||||
private string _pluginDirectory;
|
||||
private string _icoPath;
|
||||
public string Title {
|
||||
get { return _title; }
|
||||
public string Title
|
||||
{
|
||||
get { return _title; }
|
||||
set
|
||||
{
|
||||
_title = value.Replace("\n", " ");
|
||||
|
||||
@@ -70,11 +70,11 @@ namespace Wox.Plugin
|
||||
{
|
||||
return currentTheme;
|
||||
}
|
||||
|
||||
|
||||
private static Theme GetHighContrastBaseType()
|
||||
{
|
||||
string RegistryKey = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Themes";
|
||||
string theme = (string) Registry.GetValue(RegistryKey, "CurrentTheme", string.Empty);
|
||||
string theme = (string)Registry.GetValue(RegistryKey, "CurrentTheme", string.Empty);
|
||||
theme = theme.Split('\\').Last().Split('.').First().ToString();
|
||||
|
||||
if (theme == "hc1")
|
||||
@@ -153,13 +153,13 @@ namespace Wox.Plugin
|
||||
protected virtual void Dispose(bool disposing)
|
||||
{
|
||||
if (!_disposed)
|
||||
{
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
ControlzEx.Theming.ThemeManager.Current.ThemeChanged -= Current_ThemeChanged;
|
||||
SystemParameters.StaticPropertyChanged -= SystemParameters_StaticPropertyChanged;
|
||||
_disposed = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -175,8 +175,8 @@ namespace Wox.Plugin
|
||||
public enum Theme
|
||||
{
|
||||
None,
|
||||
Light,
|
||||
Dark,
|
||||
Light,
|
||||
Dark,
|
||||
HighContrastOne,
|
||||
HighContrastTwo,
|
||||
HighContrastBlack,
|
||||
|
||||
@@ -9,8 +9,8 @@ namespace Wox.Plugin
|
||||
public string Text { get; private set; }
|
||||
|
||||
public ToolTipData(string title, string text)
|
||||
{
|
||||
if(string.IsNullOrEmpty(title))
|
||||
{
|
||||
if (string.IsNullOrEmpty(title))
|
||||
{
|
||||
throw new ArgumentException("title cannot be null or empty", "title");
|
||||
}
|
||||
|
||||
@@ -150,7 +150,7 @@ namespace Wox.Test
|
||||
[TestCase("chr", "Candy Crush Saga from King", StringMatcher.SearchPrecisionScore.Regular, false)]
|
||||
[TestCase("chr", "Candy Crush Saga from King", StringMatcher.SearchPrecisionScore.None, true)]
|
||||
[TestCase("ccs", "Candy Crush Saga from King", StringMatcher.SearchPrecisionScore.Low, true)]
|
||||
[TestCase("cand", "Candy Crush Saga from King",StringMatcher.SearchPrecisionScore.Regular, true)]
|
||||
[TestCase("cand", "Candy Crush Saga from King", StringMatcher.SearchPrecisionScore.Regular, true)]
|
||||
[TestCase("cand", "Help cure hope raise on mind entity Chrome", StringMatcher.SearchPrecisionScore.Regular, false)]
|
||||
public void WhenGivenDesiredPrecisionThenShouldReturnAllResultsGreaterOrEqual(
|
||||
string queryString,
|
||||
@@ -159,7 +159,7 @@ namespace Wox.Test
|
||||
bool expectedPrecisionResult)
|
||||
{
|
||||
// When
|
||||
var matcher = new StringMatcher {UserSettingSearchPrecision = expectedPrecisionScore};
|
||||
var matcher = new StringMatcher { UserSettingSearchPrecision = expectedPrecisionScore };
|
||||
|
||||
// Given
|
||||
var matchResult = matcher.FuzzyMatch(queryString, compareString);
|
||||
|
||||
@@ -20,7 +20,7 @@ namespace Wox.Test
|
||||
|
||||
// Act
|
||||
string autoCompleteText = MainViewModel.GetAutoCompleteText(index, input, query);
|
||||
|
||||
|
||||
// Assert
|
||||
Assert.AreEqual(autoCompleteText, string.Empty);
|
||||
}
|
||||
|
||||
@@ -303,7 +303,7 @@ namespace Wox.Test.Plugins
|
||||
[TestCase(0, true, ExpectedResult = true)]
|
||||
[TestCase(1, false, ExpectedResult = true)]
|
||||
[TestCase(1, true, ExpectedResult = true)]
|
||||
public bool DriveDetection_MustDisplayResults_WhenEnhancedModeIsOnOrWhenWarningIsDisabled(int enhancedModeStatus, bool disableWarningCheckBoxStatus)
|
||||
public bool DriveDetection_MustDisplayResults_WhenEnhancedModeIsOnOrWhenWarningIsDisabled(int enhancedModeStatus, bool disableWarningCheckBoxStatus)
|
||||
{
|
||||
// Arrange
|
||||
var mockRegistry = new Mock<IRegistryWrapper>();
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace PreviewPaneUnitTests
|
||||
{
|
||||
// Arrange
|
||||
String mdString = "> Blockquotes.";
|
||||
HTMLParsingExtension htmlParsingExtension = new HTMLParsingExtension(()=> { });
|
||||
HTMLParsingExtension htmlParsingExtension = new HTMLParsingExtension(() => { });
|
||||
MarkdownPipeline markdownPipeline = BuidPipeline(htmlParsingExtension);
|
||||
|
||||
// Act
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace PreviewPaneUnitTests
|
||||
public void MarkdownPreviewHandlerControl__AddsBrowserToForm_WhenDoPreviewIsCalled()
|
||||
{
|
||||
// Arrange
|
||||
using (var markdownPreviewHandlerControl = new MarkdownPreviewHandlerControl())
|
||||
using (var markdownPreviewHandlerControl = new MarkdownPreviewHandlerControl())
|
||||
{
|
||||
// Act
|
||||
markdownPreviewHandlerControl.DoPreview<string>("HelperFiles/MarkdownWithExternalImage.txt");
|
||||
@@ -33,7 +33,7 @@ namespace PreviewPaneUnitTests
|
||||
public void MarkdownPreviewHandlerControl__AddsInfoBarToFormIfExternalImageLinkPresent_WhenDoPreviewIsCalled()
|
||||
{
|
||||
// Arrange
|
||||
using (var markdownPreviewHandlerControl = new MarkdownPreviewHandlerControl())
|
||||
using (var markdownPreviewHandlerControl = new MarkdownPreviewHandlerControl())
|
||||
{
|
||||
// Act
|
||||
markdownPreviewHandlerControl.DoPreview<string>("HelperFiles/MarkdownWithExternalImage.txt");
|
||||
@@ -63,7 +63,7 @@ namespace PreviewPaneUnitTests
|
||||
public void MarkdownPreviewHandlerControl__DoesNotAddInfoBarToFormIfExternalImageLinkNotPresent_WhenDoPreviewIsCalled()
|
||||
{
|
||||
// Arrange
|
||||
using (var markdownPreviewHandlerControl = new MarkdownPreviewHandlerControl())
|
||||
using (var markdownPreviewHandlerControl = new MarkdownPreviewHandlerControl())
|
||||
{
|
||||
// Act
|
||||
markdownPreviewHandlerControl.DoPreview<string>("HelperFiles/MarkdownWithScript.txt");
|
||||
@@ -91,7 +91,7 @@ namespace PreviewPaneUnitTests
|
||||
Assert.AreEqual(((WebBrowser)markdownPreviewHandlerControl.Controls[0]).ScriptErrorsSuppressed, true);
|
||||
Assert.AreEqual(((WebBrowser)markdownPreviewHandlerControl.Controls[0]).ScrollBarsEnabled, true);
|
||||
Assert.AreEqual(((WebBrowser)markdownPreviewHandlerControl.Controls[0]).AllowNavigation, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
|
||||
@@ -21,7 +21,7 @@ namespace UnitTests_PreviewHandlerCommon
|
||||
public void FormHandlerControl_ShouldCreateHandle_OnInitialization()
|
||||
{
|
||||
// Arrange and act
|
||||
using (var testFormHandlerControl = new TestFormControl())
|
||||
using (var testFormHandlerControl = new TestFormControl())
|
||||
{
|
||||
// Assert
|
||||
Assert.IsTrue(testFormHandlerControl.IsHandleCreated);
|
||||
@@ -111,7 +111,7 @@ namespace UnitTests_PreviewHandlerCommon
|
||||
Assert.AreEqual(bounds, testFormHandlerControl.Bounds);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
[TestMethod]
|
||||
public void FormHandlerControl_ShouldSetTextColor_WhenSetTextColorCalled()
|
||||
{
|
||||
|
||||
@@ -19,7 +19,7 @@ namespace UnitTests_PreviewHandlerCommon
|
||||
public class StreamWrapperTests
|
||||
{
|
||||
[TestMethod]
|
||||
public void StreamWrapper_ShouldThrow_IfInitializeWithNullStream()
|
||||
public void StreamWrapper_ShouldThrow_IfInitializeWithNullStream()
|
||||
{
|
||||
// Arrange
|
||||
IStream stream = null;
|
||||
@@ -30,7 +30,7 @@ namespace UnitTests_PreviewHandlerCommon
|
||||
{
|
||||
var streamWrapper = new StreamWrapper(stream);
|
||||
}
|
||||
catch (ArgumentNullException ex)
|
||||
catch (ArgumentNullException ex)
|
||||
{
|
||||
exception = ex;
|
||||
}
|
||||
@@ -151,7 +151,7 @@ namespace UnitTests_PreviewHandlerCommon
|
||||
{
|
||||
// Arrange
|
||||
int expectedDwOrigin = 0;
|
||||
switch (origin)
|
||||
switch (origin)
|
||||
{
|
||||
case SeekOrigin.Begin:
|
||||
expectedDwOrigin = 0;
|
||||
@@ -218,7 +218,7 @@ namespace UnitTests_PreviewHandlerCommon
|
||||
{
|
||||
streamWrapper.Read(buffer, offSet, bytesToRead);
|
||||
}
|
||||
catch (ArgumentOutOfRangeException ex)
|
||||
catch (ArgumentOutOfRangeException ex)
|
||||
{
|
||||
exception = ex;
|
||||
}
|
||||
@@ -236,7 +236,7 @@ namespace UnitTests_PreviewHandlerCommon
|
||||
// Arrange
|
||||
var inputBuffer = new byte[1024];
|
||||
var streamBytes = new byte[count];
|
||||
for (int i = 0; i < count; i++)
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
streamBytes[i] = (byte)i;
|
||||
}
|
||||
@@ -244,12 +244,12 @@ namespace UnitTests_PreviewHandlerCommon
|
||||
var stremMock = new Mock<IStream>();
|
||||
|
||||
stremMock
|
||||
.Setup(x => x.Read(It.IsAny<byte []>(), It.IsAny<int>(), It.IsAny<IntPtr>()))
|
||||
.Callback<byte [], int, IntPtr>((buffer, countToRead , bytesReadPtr) =>
|
||||
{
|
||||
Array.Copy(streamBytes, 0, buffer, 0, streamBytes.Length);
|
||||
Marshal.WriteInt32(bytesReadPtr, count);
|
||||
});
|
||||
.Setup(x => x.Read(It.IsAny<byte[]>(), It.IsAny<int>(), It.IsAny<IntPtr>()))
|
||||
.Callback<byte[], int, IntPtr>((buffer, countToRead, bytesReadPtr) =>
|
||||
{
|
||||
Array.Copy(streamBytes, 0, buffer, 0, streamBytes.Length);
|
||||
Marshal.WriteInt32(bytesReadPtr, count);
|
||||
});
|
||||
|
||||
var streamWrapper = new StreamWrapper(stremMock.Object);
|
||||
|
||||
@@ -274,7 +274,7 @@ namespace UnitTests_PreviewHandlerCommon
|
||||
{
|
||||
streamWrapper.Flush();
|
||||
}
|
||||
catch (NotImplementedException ex)
|
||||
catch (NotImplementedException ex)
|
||||
{
|
||||
exception = ex;
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace UnitTests_SvgPreviewHandler
|
||||
public void SvgPreviewControl_ShouldAddExtendedBrowserControl_WhenDoPreviewCalled()
|
||||
{
|
||||
// Arrange
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
{
|
||||
// Act
|
||||
svgPreviewControl.DoPreview(GetMockStream("<svg></svg>"));
|
||||
@@ -38,7 +38,7 @@ namespace UnitTests_SvgPreviewHandler
|
||||
public void SvgPreviewControl_ShouldSetDocumentStream_WhenDoPreviewCalled()
|
||||
{
|
||||
// Arrange
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
{
|
||||
// Act
|
||||
svgPreviewControl.DoPreview(GetMockStream("<svg></svg>"));
|
||||
@@ -66,7 +66,7 @@ namespace UnitTests_SvgPreviewHandler
|
||||
public void SvgPreviewControl_ShouldFillDockForWebBrowser_WhenDoPreviewCalled()
|
||||
{
|
||||
// Arrange
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
{
|
||||
// Act
|
||||
svgPreviewControl.DoPreview(GetMockStream("<svg></svg>"));
|
||||
@@ -80,7 +80,7 @@ namespace UnitTests_SvgPreviewHandler
|
||||
public void SvgPreviewControl_ShouldSetScriptErrorsSuppressedProperty_WhenDoPreviewCalled()
|
||||
{
|
||||
// Arrange
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
{
|
||||
// Act
|
||||
svgPreviewControl.DoPreview(GetMockStream("<svg></svg>"));
|
||||
@@ -94,7 +94,7 @@ namespace UnitTests_SvgPreviewHandler
|
||||
public void SvgPreviewControl_ShouldSetScrollBarsEnabledProperty_WhenDoPreviewCalled()
|
||||
{
|
||||
// Arrange
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
{
|
||||
// Act
|
||||
svgPreviewControl.DoPreview(GetMockStream("<svg></svg>"));
|
||||
@@ -175,7 +175,7 @@ namespace UnitTests_SvgPreviewHandler
|
||||
public void SvgPreviewControl_ShouldAddTextBox_IfBlockedElementsArePresent()
|
||||
{
|
||||
// Arrange
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
{
|
||||
var svgBuilder = new StringBuilder();
|
||||
svgBuilder.AppendLine("<svg width =\"200\" height=\"200\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">");
|
||||
@@ -196,7 +196,7 @@ namespace UnitTests_SvgPreviewHandler
|
||||
public void SvgPreviewControl_ShouldNotAddTextBox_IfNoBlockedElementsArePresent()
|
||||
{
|
||||
// Arrange
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
using (var svgPreviewControl = new SvgPreviewControl())
|
||||
{
|
||||
var svgBuilder = new StringBuilder();
|
||||
svgBuilder.AppendLine("<svg viewBox=\"0 0 100 100\" xmlns=\"http://www.w3.org/2000/svg\">");
|
||||
|
||||
Reference in New Issue
Block a user