Merge branch 'dev' into feat_appveyor
BIN
Doc/app.ico
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 1.1 KiB |
BIN
Doc/app.png
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 5.3 KiB |
BIN
Doc/app.psd
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 1.1 KiB |
|
|
@ -1,4 +1,4 @@
|
|||
using System;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
|
|
@ -8,6 +8,7 @@ using System.Windows.Controls;
|
|||
using System.Windows.Interop;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Effects;
|
||||
using Flow.Launcher.Infrastructure;
|
||||
using Flow.Launcher.Infrastructure.Logger;
|
||||
using Flow.Launcher.Infrastructure.UserSettings;
|
||||
|
|
@ -34,6 +35,9 @@ namespace Flow.Launcher.Core.Resource
|
|||
var dicts = Application.Current.Resources.MergedDictionaries;
|
||||
_oldResource = dicts.First(d =>
|
||||
{
|
||||
if (d.Source == null)
|
||||
return false;
|
||||
|
||||
var p = d.Source.AbsolutePath;
|
||||
var dir = Path.GetDirectoryName(p).NonNull();
|
||||
var info = new DirectoryInfo(dir);
|
||||
|
|
@ -65,7 +69,7 @@ namespace Flow.Launcher.Core.Resource
|
|||
|
||||
public bool ChangeTheme(string theme)
|
||||
{
|
||||
const string defaultTheme = "Dark";
|
||||
const string defaultTheme = Constant.DefaultTheme;
|
||||
|
||||
string path = GetThemePath(theme);
|
||||
try
|
||||
|
|
@ -75,16 +79,15 @@ namespace Flow.Launcher.Core.Resource
|
|||
|
||||
Settings.Theme = theme;
|
||||
|
||||
var dicts = Application.Current.Resources.MergedDictionaries;
|
||||
//always allow re-loading default theme, in case of failure of switching to a new theme from default theme
|
||||
if (_oldTheme != theme || theme == defaultTheme)
|
||||
{
|
||||
dicts.Remove(_oldResource);
|
||||
var newResource = GetResourceDictionary();
|
||||
dicts.Add(newResource);
|
||||
_oldResource = newResource;
|
||||
UpdateResourceDictionary(GetResourceDictionary());
|
||||
_oldTheme = Path.GetFileNameWithoutExtension(_oldResource.Source.AbsolutePath);
|
||||
}
|
||||
|
||||
if (Settings.UseDropShadowEffect)
|
||||
AddDropShadowEffectToCurrentTheme();
|
||||
}
|
||||
catch (DirectoryNotFoundException e)
|
||||
{
|
||||
|
|
@ -109,7 +112,16 @@ namespace Flow.Launcher.Core.Resource
|
|||
return true;
|
||||
}
|
||||
|
||||
public ResourceDictionary GetResourceDictionary()
|
||||
private void UpdateResourceDictionary(ResourceDictionary dictionaryToUpdate)
|
||||
{
|
||||
var dicts = Application.Current.Resources.MergedDictionaries;
|
||||
|
||||
dicts.Remove(_oldResource);
|
||||
dicts.Add(dictionaryToUpdate);
|
||||
_oldResource = dictionaryToUpdate;
|
||||
}
|
||||
|
||||
private ResourceDictionary CurrentThemeResourceDictionary()
|
||||
{
|
||||
var uri = GetThemePath(Settings.Theme);
|
||||
var dict = new ResourceDictionary
|
||||
|
|
@ -117,6 +129,13 @@ namespace Flow.Launcher.Core.Resource
|
|||
Source = new Uri(uri, UriKind.Absolute)
|
||||
};
|
||||
|
||||
return dict;
|
||||
}
|
||||
|
||||
public ResourceDictionary GetResourceDictionary()
|
||||
{
|
||||
var dict = CurrentThemeResourceDictionary();
|
||||
|
||||
Style queryBoxStyle = dict["QueryBoxStyle"] as Style;
|
||||
if (queryBoxStyle != null)
|
||||
{
|
||||
|
|
@ -146,6 +165,7 @@ namespace Flow.Launcher.Core.Resource
|
|||
Setter[] setters = { fontFamily, fontStyle, fontWeight, fontStretch };
|
||||
Array.ForEach(new[] { resultItemStyle, resultSubItemStyle, resultItemSelectedStyle, resultSubItemSelectedStyle }, o => Array.ForEach(setters, p => o.Setters.Add(p)));
|
||||
}
|
||||
|
||||
return dict;
|
||||
}
|
||||
|
||||
|
|
@ -176,6 +196,36 @@ namespace Flow.Launcher.Core.Resource
|
|||
return string.Empty;
|
||||
}
|
||||
|
||||
public void AddDropShadowEffectToCurrentTheme()
|
||||
{
|
||||
var dict = CurrentThemeResourceDictionary();
|
||||
|
||||
var windowBorderStyle = dict["WindowBorderStyle"] as Style;
|
||||
|
||||
var effectSetter = new Setter();
|
||||
effectSetter.Property = Border.EffectProperty;
|
||||
effectSetter.Value = new DropShadowEffect
|
||||
{
|
||||
Opacity = 0.9,
|
||||
ShadowDepth = 2,
|
||||
BlurRadius = 15
|
||||
};
|
||||
|
||||
windowBorderStyle.Setters.Add(effectSetter);
|
||||
|
||||
UpdateResourceDictionary(dict);
|
||||
}
|
||||
|
||||
public void RemoveDropShadowEffectToCurrentTheme()
|
||||
{
|
||||
var dict = CurrentThemeResourceDictionary();
|
||||
var windowBorderStyle = dict["WindowBorderStyle"] as Style;
|
||||
|
||||
dict.Remove(Border.EffectProperty);
|
||||
|
||||
UpdateResourceDictionary(dict);
|
||||
}
|
||||
|
||||
#region Blur Handling
|
||||
/*
|
||||
Found on https://github.com/riverar/sample-win10-aeroglass
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 1.1 KiB |
|
|
@ -27,5 +27,9 @@ namespace Flow.Launcher.Infrastructure
|
|||
|
||||
public static string PythonPath;
|
||||
public static string EverythingSDKPath;
|
||||
|
||||
public static readonly string QueryTextBoxIconImagePath = $"{ProgramDirectory}\\Images\\mainsearch.png";
|
||||
|
||||
public const string DefaultTheme = "Darker";
|
||||
}
|
||||
}
|
||||
|
|
|
|||
9
Flow.Launcher.Infrastructure/KeyConstant.cs
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
namespace Flow.Launcher.Infrastructure
|
||||
{
|
||||
public static class KeyConstant
|
||||
{
|
||||
public const string Ctrl = nameof(Ctrl);
|
||||
public const string Alt = nameof(Alt);
|
||||
public const string Space = nameof(Space);
|
||||
}
|
||||
}
|
||||
|
|
@ -9,9 +9,12 @@ namespace Flow.Launcher.Infrastructure.UserSettings
|
|||
{
|
||||
public class Settings : BaseModel
|
||||
{
|
||||
public string Hotkey { get; set; } = "Alt + Space";
|
||||
public string Hotkey { get; set; } = $"{KeyConstant.Alt} + {KeyConstant.Space}";
|
||||
public string OpenResultModifiers { get; set; } = KeyConstant.Alt;
|
||||
public bool ShowOpenResultHotkey { get; set; } = true;
|
||||
public string Language { get; set; } = "en";
|
||||
public string Theme { get; set; } = "Dark";
|
||||
public string Theme { get; set; } = Constant.DefaultTheme;
|
||||
public bool UseDropShadowEffect { get; set; } = false;
|
||||
public string QueryBoxFont { get; set; } = FontFamily.GenericSansSerif.Name;
|
||||
public string QueryBoxFontStyle { get; set; }
|
||||
public string QueryBoxFontWeight { get; set; }
|
||||
|
|
@ -59,7 +62,7 @@ namespace Flow.Launcher.Infrastructure.UserSettings
|
|||
|
||||
public double WindowLeft { get; set; }
|
||||
public double WindowTop { get; set; }
|
||||
public int MaxResultsToShow { get; set; } = 6;
|
||||
public int MaxResultsToShow { get; set; } = 5;
|
||||
public int ActivateTimes { get; set; }
|
||||
|
||||
// Order defaults to 0 or -1, so 1 will let this property appear last
|
||||
|
|
|
|||
|
|
@ -1,12 +1,15 @@
|
|||
<Application x:Class="Flow.Launcher.App"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:ui="http://schemas.modernwpf.com/2019"
|
||||
ShutdownMode="OnMainWindowClose"
|
||||
Startup="OnStartup">
|
||||
<Application.Resources>
|
||||
<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="pack://application:,,,/Themes/Dark.xaml" />
|
||||
<ui:ThemeResources RequestedTheme="Light" />
|
||||
<ui:XamlControlsResources />
|
||||
<ResourceDictionary Source="pack://application:,,,/Themes/Darker.xaml" />
|
||||
<ResourceDictionary Source="pack://application:,,,/Languages/en.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
</ResourceDictionary>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,31 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Text;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
|
||||
namespace Flow.Launcher.Converters
|
||||
{
|
||||
[ValueConversion(typeof(bool), typeof(Visibility))]
|
||||
public class OpenResultHotkeyVisibilityConverter : IValueConverter
|
||||
{
|
||||
private const int MaxVisibleHotkeys = 9;
|
||||
|
||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
var hotkeyNumber = int.MaxValue;
|
||||
|
||||
if (value is ListBoxItem listBoxItem)
|
||||
{
|
||||
ListBox listBox = ItemsControl.ItemsControlFromItemContainer(listBoxItem) as ListBox;
|
||||
hotkeyNumber = listBox.ItemContainerGenerator.IndexFromContainer(listBoxItem) + 1;
|
||||
}
|
||||
|
||||
return hotkeyNumber <= MaxVisibleHotkeys ? Visibility.Visible : Visibility.Collapsed;
|
||||
}
|
||||
|
||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) => throw new System.InvalidOperationException();
|
||||
}
|
||||
}
|
||||
22
Flow.Launcher/Converters/OrdinalConverter.cs
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
using System.Globalization;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
|
||||
namespace Flow.Launcher.Converters
|
||||
{
|
||||
public class OrdinalConverter : IValueConverter
|
||||
{
|
||||
public object Convert(object value, System.Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
if (value is ListBoxItem listBoxItem)
|
||||
{
|
||||
ListBox listBox = ItemsControl.ItemsControlFromItemContainer(listBoxItem) as ListBox;
|
||||
return listBox.ItemContainerGenerator.IndexFromContainer(listBoxItem) + 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
public object ConvertBack(object value, System.Type targetType, object parameter, CultureInfo culture) => throw new System.InvalidOperationException();
|
||||
}
|
||||
}
|
||||
|
|
@ -19,7 +19,7 @@ namespace Flow.Launcher.Converters
|
|||
var queryText = (string)values[0];
|
||||
|
||||
if (string.IsNullOrEmpty(queryText))
|
||||
return "Type here to search";
|
||||
return string.Empty;
|
||||
|
||||
// second prop is the current selected item result
|
||||
var val = values[1];
|
||||
|
|
|
|||
|
|
@ -54,10 +54,19 @@
|
|||
<Compile Include="..\SolutionAssemblyInfo.cs" Link="Properties\SolutionAssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Content Include="Languages\*.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="InputSimulator" Version="1.0.4" />
|
||||
<PackageReference Include="JetBrains.Annotations" Version="2019.1.3" />
|
||||
<PackageReference Include="Mages" Version="1.6.0" />
|
||||
<PackageReference Include="ModernWpfUI" Version="0.8.3" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
|
||||
<PackageReference Include="NHotkey.Wpf" Version="1.2.1" />
|
||||
<PackageReference Include="NLog.Web.AspNetCore" Version="4.9.0" />
|
||||
|
|
@ -135,6 +144,9 @@
|
|||
<None Update="Images\logoff.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Update="Images\mainsearch.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Update="Images\New Message.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 1.1 KiB |
BIN
Flow.Launcher/Images/mainsearch.png
Normal file
|
After Width: | Height: | Size: 62 KiB |
|
|
@ -42,7 +42,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Tema</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Søg efter flere temaer</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Hej Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Søgefelt skrifttype</system:String>
|
||||
<system:String x:Key="resultItemFont">Resultat skrifttype</system:String>
|
||||
<system:String x:Key="windowMode">Vindue mode</system:String>
|
||||
|
|
@ -51,7 +50,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Genvejstast</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Flow Launcher genvejstast</system:String>
|
||||
<system:String x:Key="openResultModifiers">Åbn resultatmodifikatorer</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Tilpasset søgegenvejstast</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Vis hotkey</system:String>
|
||||
<system:String x:Key="delete">Slet</system:String>
|
||||
<system:String x:Key="edit">Rediger</system:String>
|
||||
<system:String x:Key="add">Tilføj</system:String>
|
||||
|
|
|
|||
|
|
@ -42,7 +42,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Theme</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Suche nach weiteren Themes</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Hallo Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Abfragebox Schriftart</system:String>
|
||||
<system:String x:Key="resultItemFont">Ergebnis Schriftart</system:String>
|
||||
<system:String x:Key="windowMode">Fenstermodus</system:String>
|
||||
|
|
@ -51,7 +50,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Tastenkombination</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Flow Launcher Tastenkombination</system:String>
|
||||
<system:String x:Key="openResultModifiers">Öffnen Sie die Ergebnismodifikatoren</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Benutzerdefinierte Abfrage Tastenkombination</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Hotkey anzeigen</system:String>
|
||||
<system:String x:Key="delete">Löschen</system:String>
|
||||
<system:String x:Key="edit">Bearbeiten</system:String>
|
||||
<system:String x:Key="add">Hinzufügen</system:String>
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Theme</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Browse for more themes</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Hello Flow Launcher</system:String>
|
||||
<system:String x:Key="hiThere">Hi There</system:String>
|
||||
<system:String x:Key="queryBoxFont">Query Box Font</system:String>
|
||||
<system:String x:Key="resultItemFont">Result Item Font</system:String>
|
||||
<system:String x:Key="windowMode">Window Mode</system:String>
|
||||
|
|
@ -60,12 +60,17 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Hotkey</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Flow Launcher Hotkey</system:String>
|
||||
<system:String x:Key="openResultModifiers">Open Result Modifiers</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Show Hotkey</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Custom Query Hotkey</system:String>
|
||||
<system:String x:Key="delete">Delete</system:String>
|
||||
<system:String x:Key="edit">Edit</system:String>
|
||||
<system:String x:Key="add">Add</system:String>
|
||||
<system:String x:Key="pleaseSelectAnItem">Please select an item</system:String>
|
||||
<system:String x:Key="deleteCustomHotkeyWarning">Are you sure you want to delete {0} plugin hotkey?</system:String>
|
||||
<system:String x:Key="queryWindowShadowEffect">Query window shadow effect</system:String>
|
||||
<system:String x:Key="shadowEffectCPUUsage">Shadow effect has a substantial usage of GPU.</system:String>
|
||||
<system:String x:Key="shadowEffectPerformance">Not recommended if you computer performance is limited.</system:String>
|
||||
|
||||
<!--Setting Proxy-->
|
||||
<system:String x:Key="proxy">HTTP Proxy</system:String>
|
||||
|
|
@ -95,7 +100,7 @@
|
|||
Download updates failed, please check your connection and proxy settings to github-cloud.s3.amazonaws.com,
|
||||
or go to https://github.com/Flow-Launcher/Flow.Launcher/releases to download updates manually.
|
||||
</system:String>
|
||||
<system:String x:Key="releaseNotes">Release Notes:</system:String>
|
||||
<system:String x:Key="releaseNotes">Release Notes</system:String>
|
||||
|
||||
<!--Action Keyword Setting Dialog-->
|
||||
<system:String x:Key="oldActionKeywords">Old Action Keyword</system:String>
|
||||
|
|
|
|||
|
|
@ -46,7 +46,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Thèmes</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Trouver plus de thèmes</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Hello Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Police (barre de recherche)</system:String>
|
||||
<system:String x:Key="resultItemFont">Police (liste des résultats) </system:String>
|
||||
<system:String x:Key="windowMode">Mode fenêtré</system:String>
|
||||
|
|
@ -55,7 +54,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Raccourcis</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Ouvrir Flow Launcher</system:String>
|
||||
<system:String x:Key="openResultModifiers">Modificateurs de résultats ouverts</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Requêtes personnalisées</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Afficher le raccourci clavier</system:String>
|
||||
<system:String x:Key="delete">Supprimer</system:String>
|
||||
<system:String x:Key="edit">Modifier</system:String>
|
||||
<system:String x:Key="add">Ajouter</system:String>
|
||||
|
|
|
|||
|
|
@ -46,7 +46,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Tema</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Sfoglia per altri temi</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Hello Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Font campo di ricerca</system:String>
|
||||
<system:String x:Key="resultItemFont">Font campo risultati</system:String>
|
||||
<system:String x:Key="windowMode">Modalità finestra</system:String>
|
||||
|
|
@ -55,7 +54,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Tasti scelta rapida</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Tasto scelta rapida Flow Launcher</system:String>
|
||||
<system:String x:Key="openResultModifiers">Apri modificatori di risultato</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Tasti scelta rapida per ricerche personalizzate</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Mostra tasto di scelta rapida</system:String>
|
||||
<system:String x:Key="delete">Cancella</system:String>
|
||||
<system:String x:Key="edit">Modifica</system:String>
|
||||
<system:String x:Key="add">Aggiungi</system:String>
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">テーマ</system:String>
|
||||
<system:String x:Key="browserMoreThemes">テーマを探す</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">こんにちは Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">検索ボックスのフォント</system:String>
|
||||
<system:String x:Key="resultItemFont">検索結果一覧のフォント</system:String>
|
||||
<system:String x:Key="windowMode">ウィンドウモード</system:String>
|
||||
|
|
@ -58,7 +57,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">ホットキー</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Flow Launcher ホットキー</system:String>
|
||||
<system:String x:Key="openResultModifiers">結果修飾子を開く</system:String>
|
||||
<system:String x:Key="customQueryHotkey">カスタムクエリ ホットキー</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">ホットキーを表示</system:String>
|
||||
<system:String x:Key="delete">削除</system:String>
|
||||
<system:String x:Key="edit">編集</system:String>
|
||||
<system:String x:Key="add">追加</system:String>
|
||||
|
|
|
|||
|
|
@ -46,7 +46,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">테마</system:String>
|
||||
<system:String x:Key="browserMoreThemes">테마 더 찾아보기</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Hello Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">쿼리 상자 글꼴</system:String>
|
||||
<system:String x:Key="resultItemFont">결과 항목 글꼴</system:String>
|
||||
<system:String x:Key="windowMode">윈도우 모드</system:String>
|
||||
|
|
@ -55,7 +54,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">핫키</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Flow Launcher 핫키</system:String>
|
||||
<system:String x:Key="openResultModifiers">결과 수정 자 열기</system:String>
|
||||
<system:String x:Key="customQueryHotkey">사용자지정 쿼리 핫키</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">단축키 표시</system:String>
|
||||
<system:String x:Key="delete">삭제</system:String>
|
||||
<system:String x:Key="edit">편집</system:String>
|
||||
<system:String x:Key="add">추가</system:String>
|
||||
|
|
|
|||
|
|
@ -46,7 +46,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Tema</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Finn flere temaer</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Hallo Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Font for spørringsboks</system:String>
|
||||
<system:String x:Key="resultItemFont">Font for resultat</system:String>
|
||||
<system:String x:Key="windowMode">Vindusmodus</system:String>
|
||||
|
|
@ -55,7 +54,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Hurtigtast</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Flow Launcher-hurtigtast</system:String>
|
||||
<system:String x:Key="openResultModifiers">Åpne resultatmodifiserere</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Egendefinerd spørringshurtigtast</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Vis hurtigtast</system:String>
|
||||
<system:String x:Key="delete">Slett</system:String>
|
||||
<system:String x:Key="edit">Rediger</system:String>
|
||||
<system:String x:Key="add">Legg til</system:String>
|
||||
|
|
|
|||
|
|
@ -42,7 +42,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Thema</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Zoek meer thema´s</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Hallo Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Query Box lettertype</system:String>
|
||||
<system:String x:Key="resultItemFont">Resultaat Item lettertype</system:String>
|
||||
<system:String x:Key="windowMode">Window Mode</system:String>
|
||||
|
|
@ -51,7 +50,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Sneltoets</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Flow Launcher Sneltoets</system:String>
|
||||
<system:String x:Key="openResultModifiers">Open resultaatmodificatoren</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Custom Query Sneltoets</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Sneltoets weergeven</system:String>
|
||||
<system:String x:Key="delete">Verwijder</system:String>
|
||||
<system:String x:Key="edit">Bewerken</system:String>
|
||||
<system:String x:Key="add">Toevoegen</system:String>
|
||||
|
|
|
|||
|
|
@ -42,7 +42,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Skórka</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Znajdź więcej skórek</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Witaj Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Czcionka okna zapytania</system:String>
|
||||
<system:String x:Key="resultItemFont">Czcionka okna wyników</system:String>
|
||||
<system:String x:Key="windowMode">Tryb w oknie</system:String>
|
||||
|
|
@ -51,7 +50,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Skrót klawiszowy</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Skrót klawiszowy Flow Launcher</system:String>
|
||||
<system:String x:Key="openResultModifiers">Modyfikatory klawiszów otwierających wyniki</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Skrót klawiszowy niestandardowych zapytań</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Pokaż skrót klawiszowy</system:String>
|
||||
<system:String x:Key="delete">Usuń</system:String>
|
||||
<system:String x:Key="edit">Edytuj</system:String>
|
||||
<system:String x:Key="add">Dodaj</system:String>
|
||||
|
|
|
|||
|
|
@ -46,7 +46,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Tema</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Ver mais temas</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Olá Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Fonte da caixa de Consulta</system:String>
|
||||
<system:String x:Key="resultItemFont">Fonte do Resultado</system:String>
|
||||
<system:String x:Key="windowMode">Modo Janela</system:String>
|
||||
|
|
@ -55,7 +54,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Atalho</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Atalho do Flow Launcher</system:String>
|
||||
<system:String x:Key="openResultModifiers">Modificadores de resultado aberto</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Atalho de Consulta Personalizada</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Mostrar tecla de atalho</system:String>
|
||||
<system:String x:Key="delete">Apagar</system:String>
|
||||
<system:String x:Key="edit">Editar</system:String>
|
||||
<system:String x:Key="add">Adicionar</system:String>
|
||||
|
|
|
|||
|
|
@ -42,7 +42,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Темы</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Найти больше тем</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Привет Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Шрифт запросов</system:String>
|
||||
<system:String x:Key="resultItemFont">Шрифт результатов</system:String>
|
||||
<system:String x:Key="windowMode">Оконный режим</system:String>
|
||||
|
|
@ -51,7 +50,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Горячие клавиши</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Горячая клавиша Flow Launcher</system:String>
|
||||
<system:String x:Key="openResultModifiers">Модификаторы открытого результата</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Задаваемые горячие клавиши для запросов</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Показать Hotkey</system:String>
|
||||
<system:String x:Key="delete">Удалить</system:String>
|
||||
<system:String x:Key="edit">Изменить</system:String>
|
||||
<system:String x:Key="add">Добавить</system:String>
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Motív</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Prehliadať viac motívov</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Ahoj Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Písmo poľa pre dopyt</system:String>
|
||||
<system:String x:Key="resultItemFont">Písmo výsledkov</system:String>
|
||||
<system:String x:Key="windowMode">Režim okno</system:String>
|
||||
|
|
@ -56,7 +55,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Klávesová skratka</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Klávesová skratka pre Flow Launcher</system:String>
|
||||
<system:String x:Key="openResultModifiers">Otvorte modifikátory výsledkov</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Vlastná klávesová skratka pre dopyt</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Zobraziť klávesovú skratku</system:String>
|
||||
<system:String x:Key="delete">Odstrániť</system:String>
|
||||
<system:String x:Key="edit">Upraviť</system:String>
|
||||
<system:String x:Key="add">Pridať</system:String>
|
||||
|
|
|
|||
|
|
@ -46,7 +46,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Tema</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Pretražite još tema</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Zdravo Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Font upita</system:String>
|
||||
<system:String x:Key="resultItemFont">Font rezultata</system:String>
|
||||
<system:String x:Key="windowMode">Režim prozora</system:String>
|
||||
|
|
@ -55,6 +54,8 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Prečica</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Flow Launcher prečica</system:String>
|
||||
<system:String x:Key="openResultModifiers">Отворите модификаторе резултата</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">покажи хоткеи</system:String>
|
||||
<system:String x:Key="customQueryHotkey">prečica za ručno dodat upit</system:String>
|
||||
<system:String x:Key="delete">Obriši</system:String>
|
||||
<system:String x:Key="edit">Izmeni</system:String>
|
||||
|
|
|
|||
|
|
@ -48,7 +48,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Temalar</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Daha fazla tema bul</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Merhaba Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Pencere Yazı Tipi</system:String>
|
||||
<system:String x:Key="resultItemFont">Sonuç Yazı Tipi</system:String>
|
||||
<system:String x:Key="windowMode">Pencere Modu</system:String>
|
||||
|
|
@ -59,7 +58,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Kısayol Tuşu</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Flow Launcher Kısayolu</system:String>
|
||||
<system:String x:Key="openResultModifiers">Açık Sonuç Değiştiricileri</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Özel Sorgu Kısayolları</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Kısayol Tuşunu Göster</system:String>
|
||||
<system:String x:Key="delete">Sil</system:String>
|
||||
<system:String x:Key="edit">Düzenle</system:String>
|
||||
<system:String x:Key="add">Ekle</system:String>
|
||||
|
|
|
|||
|
|
@ -42,7 +42,6 @@
|
|||
<!--Setting Theme-->
|
||||
<system:String x:Key="theme">Теми</system:String>
|
||||
<system:String x:Key="browserMoreThemes">Знайти більше тем</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">Привіт Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">Шрифт запитів</system:String>
|
||||
<system:String x:Key="resultItemFont">Шрифт результатів</system:String>
|
||||
<system:String x:Key="windowMode">Віконний режим</system:String>
|
||||
|
|
@ -51,7 +50,9 @@
|
|||
<!--Setting Hotkey-->
|
||||
<system:String x:Key="hotkey">Гарячі клавіші</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Гаряча клавіша Flow Launcher</system:String>
|
||||
<system:String x:Key="openResultModifiers">Відкриті модифікатори результатів</system:String>
|
||||
<system:String x:Key="customQueryHotkey">Задані гарячі клавіші для запитів</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">Показати клавішу швидкого доступу</system:String>
|
||||
<system:String x:Key="delete">Видалити</system:String>
|
||||
<system:String x:Key="edit">Змінити</system:String>
|
||||
<system:String x:Key="add">Додати</system:String>
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@
|
|||
<!--设置,主题-->
|
||||
<system:String x:Key="theme">主题</system:String>
|
||||
<system:String x:Key="browserMoreThemes">浏览更多主题</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">你好,Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">查询框字体</system:String>
|
||||
<system:String x:Key="resultItemFont">结果项字体</system:String>
|
||||
<system:String x:Key="windowMode">窗口模式</system:String>
|
||||
|
|
@ -58,6 +57,8 @@
|
|||
<!--设置,热键-->
|
||||
<system:String x:Key="hotkey">热键</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Flow Launcher激活热键</system:String>
|
||||
<system:String x:Key="openResultModifiers">开放结果修饰符</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">显示热键</system:String>
|
||||
<system:String x:Key="customQueryHotkey">自定义查询热键</system:String>
|
||||
<system:String x:Key="delete">删除</system:String>
|
||||
<system:String x:Key="edit">编辑</system:String>
|
||||
|
|
|
|||
|
|
@ -42,7 +42,6 @@
|
|||
<!--設定,主題-->
|
||||
<system:String x:Key="theme">主題</system:String>
|
||||
<system:String x:Key="browserMoreThemes">瀏覽更多主題</system:String>
|
||||
<system:String x:Key="helloFlowLauncher">你好,Flow Launcher</system:String>
|
||||
<system:String x:Key="queryBoxFont">查詢框字體</system:String>
|
||||
<system:String x:Key="resultItemFont">結果項字體</system:String>
|
||||
<system:String x:Key="windowMode">視窗模式</system:String>
|
||||
|
|
@ -51,7 +50,9 @@
|
|||
<!--設置,熱鍵-->
|
||||
<system:String x:Key="hotkey">熱鍵</system:String>
|
||||
<system:String x:Key="flowlauncherHotkey">Flow Launcher 執行熱鍵</system:String>
|
||||
<system:String x:Key="openResultModifiers">開放結果修飾符</system:String>
|
||||
<system:String x:Key="customQueryHotkey">自定義熱鍵查詢</system:String>
|
||||
<system:String x:Key="showOpenResultHotkey">顯示熱鍵</system:String>
|
||||
<system:String x:Key="delete">刪除</system:String>
|
||||
<system:String x:Key="edit">編輯</system:String>
|
||||
<system:String x:Key="add">新增</system:String>
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@
|
|||
Style="{DynamicResource WindowStyle}"
|
||||
Icon="Images/app.png"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
Loaded="OnLoaded"
|
||||
Initialized="OnInitialized"
|
||||
Closing="OnClosing"
|
||||
|
|
@ -48,62 +49,67 @@
|
|||
<KeyBinding Key="Enter" Command="{Binding OpenResultCommand}"></KeyBinding>
|
||||
<KeyBinding Key="Enter" Modifiers="Ctrl" Command="{Binding OpenResultCommand}"></KeyBinding>
|
||||
<KeyBinding Key="Enter" Modifiers="Alt" Command="{Binding OpenResultCommand}"></KeyBinding>
|
||||
<KeyBinding Key="D1" Modifiers="Alt" Command="{Binding OpenResultCommand}" CommandParameter="0"></KeyBinding>
|
||||
<KeyBinding Key="D2" Modifiers="Alt" Command="{Binding OpenResultCommand}" CommandParameter="1"></KeyBinding>
|
||||
<KeyBinding Key="D3" Modifiers="Alt" Command="{Binding OpenResultCommand}" CommandParameter="2"></KeyBinding>
|
||||
<KeyBinding Key="D4" Modifiers="Alt" Command="{Binding OpenResultCommand}" CommandParameter="3"></KeyBinding>
|
||||
<KeyBinding Key="D5" Modifiers="Alt" Command="{Binding OpenResultCommand}" CommandParameter="4"></KeyBinding>
|
||||
<KeyBinding Key="D6" Modifiers="Alt" Command="{Binding OpenResultCommand}" CommandParameter="5"></KeyBinding>
|
||||
<KeyBinding Key="D7" Modifiers="Alt" Command="{Binding OpenResultCommand}" CommandParameter="6"></KeyBinding>
|
||||
<KeyBinding Key="D8" Modifiers="Alt" Command="{Binding OpenResultCommand}" CommandParameter="7"></KeyBinding>
|
||||
<KeyBinding Key="D9" Modifiers="Alt" Command="{Binding OpenResultCommand}" CommandParameter="8"></KeyBinding>
|
||||
<KeyBinding Key="D1" Modifiers="{Binding OpenResultCommandModifiers}" Command="{Binding OpenResultCommand}" CommandParameter="0"></KeyBinding>
|
||||
<KeyBinding Key="D2" Modifiers="{Binding OpenResultCommandModifiers}" Command="{Binding OpenResultCommand}" CommandParameter="1"></KeyBinding>
|
||||
<KeyBinding Key="D3" Modifiers="{Binding OpenResultCommandModifiers}" Command="{Binding OpenResultCommand}" CommandParameter="2"></KeyBinding>
|
||||
<KeyBinding Key="D4" Modifiers="{Binding OpenResultCommandModifiers}" Command="{Binding OpenResultCommand}" CommandParameter="3"></KeyBinding>
|
||||
<KeyBinding Key="D5" Modifiers="{Binding OpenResultCommandModifiers}" Command="{Binding OpenResultCommand}" CommandParameter="4"></KeyBinding>
|
||||
<KeyBinding Key="D6" Modifiers="{Binding OpenResultCommandModifiers}" Command="{Binding OpenResultCommand}" CommandParameter="5"></KeyBinding>
|
||||
<KeyBinding Key="D7" Modifiers="{Binding OpenResultCommandModifiers}" Command="{Binding OpenResultCommand}" CommandParameter="6"></KeyBinding>
|
||||
<KeyBinding Key="D8" Modifiers="{Binding OpenResultCommandModifiers}" Command="{Binding OpenResultCommand}" CommandParameter="7"></KeyBinding>
|
||||
<KeyBinding Key="D9" Modifiers="{Binding OpenResultCommandModifiers}" Command="{Binding OpenResultCommand}" CommandParameter="8"></KeyBinding>
|
||||
</Window.InputBindings>
|
||||
<Border Style="{DynamicResource WindowBorderStyle}" MouseDown="OnMouseDown" >
|
||||
<StackPanel Orientation="Vertical">
|
||||
<Grid>
|
||||
<TextBox x:Name="QueryTextSuggestionBox"
|
||||
<Grid Width="750">
|
||||
<Border Style="{DynamicResource WindowBorderStyle}" MouseDown="OnMouseDown" CornerRadius="5" >
|
||||
<StackPanel Orientation="Vertical">
|
||||
<Grid>
|
||||
<TextBox x:Name="QueryTextSuggestionBox"
|
||||
Style="{DynamicResource QueryBoxStyle}"
|
||||
Foreground="DarkGray"
|
||||
IsEnabled="False">
|
||||
<TextBox.Text>
|
||||
<MultiBinding Converter="{StaticResource QuerySuggestionBoxConverter}">
|
||||
<Binding ElementName="QueryTextBox" Path="Text"/>
|
||||
<Binding ElementName="ResultListBox" Path="SelectedItem"/>
|
||||
</MultiBinding>
|
||||
</TextBox.Text>
|
||||
</TextBox>
|
||||
<TextBox x:Name="QueryTextBox"
|
||||
IsEnabled="False"
|
||||
Margin="18,0,56,0">
|
||||
<TextBox.Text>
|
||||
<MultiBinding Converter="{StaticResource QuerySuggestionBoxConverter}">
|
||||
<Binding ElementName="QueryTextBox" Path="Text"/>
|
||||
<Binding ElementName="ResultListBox" Path="SelectedItem"/>
|
||||
</MultiBinding>
|
||||
</TextBox.Text>
|
||||
</TextBox>
|
||||
<TextBox x:Name="QueryTextBox"
|
||||
Style="{DynamicResource QueryBoxStyle}"
|
||||
Text="{Binding QueryText, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
PreviewDragOver="OnPreviewDragOver"
|
||||
TextChanged="OnTextChanged"
|
||||
AllowDrop="True"
|
||||
Visibility="Visible"
|
||||
Background="Transparent">
|
||||
<TextBox.ContextMenu>
|
||||
<ContextMenu>
|
||||
<MenuItem Command="ApplicationCommands.Cut"/>
|
||||
<MenuItem Command="ApplicationCommands.Copy"/>
|
||||
<MenuItem Command="ApplicationCommands.Paste"/>
|
||||
<Separator />
|
||||
<MenuItem Header="Settings" Click="OnContextMenusForSettingsClick" />
|
||||
</ContextMenu>
|
||||
</TextBox.ContextMenu>
|
||||
</TextBox>
|
||||
</Grid>
|
||||
<Line x:Name="ProgressBar" HorizontalAlignment="Right"
|
||||
Background="Transparent"
|
||||
Margin="18,0,56,0">
|
||||
<TextBox.ContextMenu>
|
||||
<ContextMenu>
|
||||
<MenuItem Command="ApplicationCommands.Cut"/>
|
||||
<MenuItem Command="ApplicationCommands.Copy"/>
|
||||
<MenuItem Command="ApplicationCommands.Paste"/>
|
||||
<Separator />
|
||||
<MenuItem Header="Settings" Click="OnContextMenusForSettingsClick" />
|
||||
</ContextMenu>
|
||||
</TextBox.ContextMenu>
|
||||
</TextBox>
|
||||
<Image Source="{Binding Image, IsAsync=True}" Width="48" HorizontalAlignment="Right" />
|
||||
</Grid>
|
||||
<Line x:Name="ProgressBar" HorizontalAlignment="Right"
|
||||
Style="{DynamicResource PendingLineStyle}" Visibility="{Binding ProgressBarVisibility, Mode=TwoWay}"
|
||||
Y1="0" Y2="0" X2="100" Height="2" Width="752" StrokeThickness="1">
|
||||
</Line>
|
||||
<ContentControl>
|
||||
<flowlauncher:ResultListBox x:Name="ResultListBox" DataContext="{Binding Results}" PreviewMouseDown="OnPreviewMouseButtonDown" />
|
||||
</ContentControl>
|
||||
<ContentControl>
|
||||
<flowlauncher:ResultListBox DataContext="{Binding ContextMenu}" PreviewMouseDown="OnPreviewMouseButtonDown" />
|
||||
</ContentControl>
|
||||
<ContentControl>
|
||||
<flowlauncher:ResultListBox DataContext="{Binding History}" PreviewMouseDown="OnPreviewMouseButtonDown" />
|
||||
</ContentControl>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</Line>
|
||||
<ContentControl>
|
||||
<flowlauncher:ResultListBox x:Name="ResultListBox" DataContext="{Binding Results}" PreviewMouseDown="OnPreviewMouseButtonDown" />
|
||||
</ContentControl>
|
||||
<ContentControl>
|
||||
<flowlauncher:ResultListBox DataContext="{Binding ContextMenu}" PreviewMouseDown="OnPreviewMouseButtonDown" />
|
||||
</ContentControl>
|
||||
<ContentControl>
|
||||
<flowlauncher:ResultListBox DataContext="{Binding History}" PreviewMouseDown="OnPreviewMouseButtonDown" />
|
||||
</ContentControl>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</Grid>
|
||||
</Window>
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 1.1 KiB |
|
|
@ -33,19 +33,34 @@
|
|||
Cursor="Hand" UseLayoutRounding="False">
|
||||
<Grid.Resources>
|
||||
<converter:HighlightTextConverter x:Key="HighlightTextConverter"/>
|
||||
<converter:OrdinalConverter x:Key="OrdinalConverter" />
|
||||
<converter:OpenResultHotkeyVisibilityConverter x:Key="OpenResultHotkeyVisibilityConverter" />
|
||||
</Grid.Resources>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="32" />
|
||||
<ColumnDefinition />
|
||||
<ColumnDefinition Width="0" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Image x:Name="imgIco" Width="32" Height="32" HorizontalAlignment="Left"
|
||||
<Image x:Name="ImageIcon" Width="32" Height="32" HorizontalAlignment="Left"
|
||||
Source="{Binding Image ,IsAsync=True}" />
|
||||
<Grid Margin="5 0 5 0" Grid.Column="1" HorizontalAlignment="Stretch">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition />
|
||||
<RowDefinition Height="Auto" x:Name="SubTitleRowDefinition" />
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Visibility="{Binding ShowOpenResultHotkey}">
|
||||
<TextBlock Margin="0 5 5 0" Style="{DynamicResource ItemSubTitleStyle}" HorizontalAlignment="Right" Opacity="0.8" >
|
||||
<TextBlock.Visibility>
|
||||
<Binding RelativeSource="{RelativeSource Mode=FindAncestor, AncestorType=ListBoxItem}" Converter="{StaticResource ResourceKey=OpenResultHotkeyVisibilityConverter}" />
|
||||
</TextBlock.Visibility>
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}{0}+{1}">
|
||||
<Binding Path="OpenResultModifiers" />
|
||||
<Binding RelativeSource="{RelativeSource Mode=FindAncestor, AncestorType=ListBoxItem}" Converter="{StaticResource ResourceKey=OrdinalConverter}" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock Style="{DynamicResource ItemTitleStyle}" DockPanel.Dock="Left"
|
||||
VerticalAlignment="Center" ToolTip="{Binding Result.Title}" x:Name="Title"
|
||||
Text="{Binding Result.Title}">
|
||||
|
|
@ -57,7 +72,7 @@
|
|||
</vm:ResultsViewModel.FormattedText>
|
||||
</TextBlock>
|
||||
<TextBlock Style="{DynamicResource ItemSubTitleStyle}" ToolTip="{Binding Result.SubTitle}"
|
||||
Grid.Row="1" x:Name="SubTitle" Text="{Binding Result.SubTitle}">
|
||||
Grid.Row="1" x:Name="SubTitle" Text="{Binding Result.SubTitle}" MinWidth="750">
|
||||
<vm:ResultsViewModel.FormattedText>
|
||||
<MultiBinding Converter="{StaticResource HighlightTextConverter}">
|
||||
<Binding Path="Result.SubTitle" />
|
||||
|
|
@ -76,6 +91,7 @@
|
|||
Value="True">
|
||||
<Setter TargetName="Title" Property="Style" Value="{DynamicResource ItemTitleSelectedStyle}" />
|
||||
<Setter TargetName="SubTitle" Property="Style" Value="{DynamicResource ItemSubTitleSelectedStyle}" />
|
||||
<Setter TargetName="ImageIcon" Property="Style" Value="{DynamicResource ItemImageSelectedStyle}" />
|
||||
</DataTrigger>
|
||||
</DataTemplate.Triggers>
|
||||
</DataTemplate>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
<Window 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:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
|
|
@ -7,6 +7,7 @@
|
|||
xmlns:scm="clr-namespace:System.ComponentModel;assembly=WindowsBase"
|
||||
xmlns:userSettings="clr-namespace:Flow.Launcher.Infrastructure.UserSettings;assembly=Flow.Launcher.Infrastructure"
|
||||
xmlns:sys="clr-namespace:System;assembly=mscorlib"
|
||||
xmlns:ui="http://schemas.modernwpf.com/2019"
|
||||
x:Class="Flow.Launcher.SettingWindow"
|
||||
mc:Ignorable="d"
|
||||
Icon="Images\app.png"
|
||||
|
|
@ -32,70 +33,72 @@
|
|||
|
||||
<TabControl Height="auto" SelectedIndex="0">
|
||||
<TabItem Header="{DynamicResource general}">
|
||||
<StackPanel Orientation="Vertical">
|
||||
<CheckBox Margin="10" IsChecked="{Binding PortableMode}">
|
||||
<TextBlock Text="Portable Mode" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.StartFlowLauncherOnSystemStartup}"
|
||||
<ScrollViewer ui:ScrollViewerHelper.AutoHideScrollBars="True" Margin="60,30,0,30">
|
||||
<StackPanel Orientation="Vertical">
|
||||
<ui:ToggleSwitch Margin="10" IsOn="{Binding PortableMode}">
|
||||
<TextBlock Text="Portable Mode" />
|
||||
</ui:ToggleSwitch>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.StartFlowLauncherOnSystemStartup}"
|
||||
Checked="OnAutoStartupChecked" Unchecked="OnAutoStartupUncheck">
|
||||
<TextBlock Text="{DynamicResource startFlowLauncherOnSystemStartup}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.HideOnStartup}">
|
||||
<TextBlock Text="{DynamicResource hideOnStartup}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.HideWhenDeactive}">
|
||||
<TextBlock Text="{DynamicResource hideFlowLauncherWhenLoseFocus}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.HideNotifyIcon}">
|
||||
<TextBlock Text="{DynamicResource hideNotifyIcon}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.RememberLastLaunchLocation}">
|
||||
<TextBlock Text="{DynamicResource rememberLastLocation}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.IgnoreHotkeysOnFullscreen}">
|
||||
<TextBlock Text="{DynamicResource ignoreHotkeysOnFullscreen}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.AutoUpdates}">
|
||||
<TextBlock Text="{DynamicResource autoUpdates}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding ShouldUsePinyin}">
|
||||
<TextBlock Text="{DynamicResource ShouldUsePinyin}" />
|
||||
</CheckBox>
|
||||
<StackPanel Margin="10" Orientation="Horizontal">
|
||||
<TextBlock Text="{DynamicResource querySearchPrecision}" />
|
||||
<ComboBox Margin="10 0 0 0" Width="120"
|
||||
<TextBlock Text="{DynamicResource startFlowLauncherOnSystemStartup}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.HideOnStartup}">
|
||||
<TextBlock Text="{DynamicResource hideOnStartup}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.HideWhenDeactive}">
|
||||
<TextBlock Text="{DynamicResource hideFlowLauncherWhenLoseFocus}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.HideNotifyIcon}">
|
||||
<TextBlock Text="{DynamicResource hideNotifyIcon}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.RememberLastLaunchLocation}">
|
||||
<TextBlock Text="{DynamicResource rememberLastLocation}" />
|
||||
</CheckBox>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.IgnoreHotkeysOnFullscreen}">
|
||||
<TextBlock Text="{DynamicResource ignoreHotkeysOnFullscreen}" />
|
||||
</CheckBox>
|
||||
<ui:ToggleSwitch Margin="10" IsOn="{Binding AutoUpdates}">
|
||||
<TextBlock Text="{DynamicResource autoUpdates}" />
|
||||
</ui:ToggleSwitch>
|
||||
<CheckBox Margin="10" IsChecked="{Binding ShouldUsePinyin}">
|
||||
<TextBlock Text="{DynamicResource ShouldUsePinyin}" />
|
||||
</CheckBox>
|
||||
<StackPanel Margin="10" Orientation="Horizontal">
|
||||
<TextBlock Text="{DynamicResource querySearchPrecision}" FontSize="14" />
|
||||
<ComboBox Margin="10 0 0 0" MaxWidth="200"
|
||||
ItemsSource="{Binding QuerySearchPrecisionStrings}"
|
||||
SelectedItem="{Binding Settings.QuerySearchPrecisionString}" />
|
||||
</StackPanel>
|
||||
<StackPanel Margin="10" Orientation="Horizontal">
|
||||
<TextBlock Text="{DynamicResource lastQueryMode}" />
|
||||
<ComboBox Margin="10 0 0 0" Width="120"
|
||||
</StackPanel>
|
||||
<StackPanel Margin="10" Orientation="Horizontal">
|
||||
<TextBlock Text="{DynamicResource lastQueryMode}" FontSize="14" />
|
||||
<ComboBox Margin="10 0 0 0" MaxWidth="200"
|
||||
ItemsSource="{Binding LastQueryModes}" SelectedValue="{Binding Settings.LastQueryMode}"
|
||||
DisplayMemberPath="Display" SelectedValuePath="Value" />
|
||||
</StackPanel>
|
||||
<StackPanel Margin="10" Orientation="Horizontal">
|
||||
<TextBlock Text="{DynamicResource language}" />
|
||||
<ComboBox Margin="10 0 0 0" Width="120"
|
||||
</StackPanel>
|
||||
<StackPanel Margin="10" Orientation="Horizontal">
|
||||
<TextBlock Text="{DynamicResource language}" FontSize="14" />
|
||||
<ComboBox Margin="10 0 0 0" MaxWidth="200"
|
||||
ItemsSource="{Binding Languages}" SelectedValue="{Binding Language}"
|
||||
DisplayMemberPath="Display" SelectedValuePath="LanguageCode" />
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" Margin="10">
|
||||
<TextBlock Text="{DynamicResource maxShowResults}" />
|
||||
<ComboBox Margin="10 0 0 0" Width="45" ItemsSource="{Binding MaxResultsRange}"
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" Margin="10">
|
||||
<TextBlock Text="{DynamicResource maxShowResults}" FontSize="14" />
|
||||
<ComboBox Margin="10 0 0 0" MaxWidth="100" ItemsSource="{Binding MaxResultsRange}"
|
||||
SelectedItem="{Binding Settings.MaxResultsToShow}" />
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Margin="10" Text="{DynamicResource pythonDirectory}" />
|
||||
<TextBox Width="300" Margin="10" Text="{Binding Settings.PluginSettings.PythonDirectory}" />
|
||||
<Button Margin="10" Click="OnSelectPythonDirectoryClick"
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Margin="10" Text="{DynamicResource pythonDirectory}" FontSize="14" />
|
||||
<TextBox Width="300" Margin="10" Text="{Binding Settings.PluginSettings.PythonDirectory}" />
|
||||
<Button Margin="10" Click="OnSelectPythonDirectoryClick"
|
||||
Content="{DynamicResource selectPythonDirectory}" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</ScrollViewer>
|
||||
</TabItem>
|
||||
<TabItem Header="{DynamicResource plugin}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="200" />
|
||||
<ColumnDefinition Width="215" />
|
||||
<ColumnDefinition />
|
||||
</Grid.ColumnDefinitions>
|
||||
<DockPanel Grid.Column="0">
|
||||
|
|
@ -106,7 +109,7 @@
|
|||
</TextBlock>
|
||||
<ListBox SelectedIndex="0" SelectedItem="{Binding SelectedPlugin}"
|
||||
ItemsSource="{Binding PluginViewModels}"
|
||||
Margin="10, 0, 10, 10" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
|
||||
Margin="10, 0, 10, 10" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ui:ScrollViewerHelper.AutoHideScrollBars="True">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Horizontal" Margin="3">
|
||||
|
|
@ -114,10 +117,11 @@
|
|||
Width="32" Height="32" />
|
||||
<StackPanel Margin="3 0 3 0">
|
||||
<TextBlock Text="{Binding PluginPair.Metadata.Name}"
|
||||
ToolTip="{Binding PluginPair.Metadata.Name}" />
|
||||
<TextBlock Text="{Binding PluginPair.Metadata.Description}"
|
||||
ToolTip="{Binding PluginPair.Metadata.Description}"
|
||||
Opacity="0.5" />
|
||||
ToolTip="{Binding PluginPair.Metadata.Description}" />
|
||||
<TextBlock Opacity="0.5">
|
||||
<Run Text="Version" />
|
||||
<Run Text="{Binding PluginPair.Metadata.Version}" />
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
|
|
@ -150,37 +154,37 @@
|
|||
<ColumnDefinition />
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding PluginPair.Metadata.Name}"
|
||||
ToolTip="{Binding PluginPair.Metadata.Name}"
|
||||
Grid.Column="0"
|
||||
Cursor="Hand" MouseUp="OnPluginNameClick" FontSize="24"
|
||||
HorizontalAlignment="Left" />
|
||||
<StackPanel Grid.Column="1" Orientation="Horizontal" HorizontalAlignment="Right"
|
||||
VerticalAlignment="Bottom" Opacity="0.5">
|
||||
<TextBlock Text="{DynamicResource author}" />
|
||||
<TextBlock Text=": " />
|
||||
<TextBlock Text="{Binding PluginPair.Metadata.Author}" ToolTip="{Binding PluginPair.Metadata.Author}" />
|
||||
</StackPanel>
|
||||
HorizontalAlignment="Left">
|
||||
<ToolTipService.ToolTip>
|
||||
<TextBlock>
|
||||
<Run Text="{DynamicResource author}" />
|
||||
<Run Text=": " />
|
||||
<Run Text="{Binding PluginPair.Metadata.Author}" />
|
||||
</TextBlock>
|
||||
</ToolTipService.ToolTip>
|
||||
</TextBlock>
|
||||
<ui:ToggleSwitch Grid.Column="1" OffContent="Disabled" OnContent="Enabled"
|
||||
MaxWidth="110" HorizontalAlignment="Right"
|
||||
IsOn="{Binding PluginState}"/>
|
||||
</Grid>
|
||||
<TextBlock Text="{Binding PluginPair.Metadata.Description}"
|
||||
ToolTip="{Binding PluginPair.Metadata.Description}"
|
||||
Grid.Row="1" Opacity="0.5" />
|
||||
<DockPanel Grid.Row="2" Margin="0 10 0 8">
|
||||
<CheckBox IsChecked="{Binding PluginPair.Metadata.Disabled}" Checked="OnPluginToggled"
|
||||
Unchecked="OnPluginToggled">
|
||||
<TextBlock Text="{DynamicResource disable}" />
|
||||
</CheckBox>
|
||||
<DockPanel Grid.Row="2" Margin="0 10 0 8" HorizontalAlignment="Right">
|
||||
|
||||
<TextBlock Text="{DynamicResource actionKeywords}"
|
||||
Visibility="{Binding ActionKeywordsVisibility}"
|
||||
Margin="20 0 0 0" />
|
||||
Margin="20 0 0 0" MaxWidth="100"/>
|
||||
<TextBlock Text="{Binding ActionKeywordsText}"
|
||||
Visibility="{Binding ActionKeywordsVisibility}"
|
||||
ToolTip="Change Action Keywords"
|
||||
Margin="5 0 0 0" Cursor="Hand" Foreground="Blue"
|
||||
MouseUp="OnPluginActionKeywordsClick" />
|
||||
<TextBlock Text="{Binding InitilizaTime}" Margin="10 0 0 0" />
|
||||
<TextBlock Text="{Binding QueryTime}" Margin="10 0 0 0" />
|
||||
MouseUp="OnPluginActionKeywordsClick" MaxWidth="100" />
|
||||
<TextBlock Text="{Binding InitilizaTime}" Margin="10 0 0 0" MaxWidth="100"/>
|
||||
<TextBlock Text="{Binding QueryTime}" Margin="10 0 0 0" MaxWidth="100"/>
|
||||
<TextBlock Text="{DynamicResource pluginDirectory}"
|
||||
HorizontalAlignment="Right" Cursor="Hand"
|
||||
MaxWidth="100" Cursor="Hand" Margin="40 0 0 0"
|
||||
MouseUp="OnPluginDirecotyClick" Foreground="Blue" />
|
||||
</DockPanel>
|
||||
</Grid>
|
||||
|
|
@ -212,20 +216,40 @@
|
|||
</DockPanel>
|
||||
<Grid Margin="0" Grid.Column="1">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="100"/>
|
||||
<RowDefinition />
|
||||
<RowDefinition Height="100" />
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Background="{Binding PreviewBackground}" Grid.Row="0" Margin="0">
|
||||
<StackPanel Grid.Row="0">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition />
|
||||
<RowDefinition Height="15"/>
|
||||
<RowDefinition Height="30"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Grid.Row="0" Text="{DynamicResource queryWindowShadowEffect}" Margin="0 30 0 0" FontSize="14" />
|
||||
<ui:ToggleSwitch Grid.Row="0" IsOn="{Binding DropShadowEffect}" Margin="210 23 0 0" Width="80"/>
|
||||
<TextBlock Grid.Row="1" Text="{DynamicResource shadowEffectCPUUsage}"
|
||||
Width="280"
|
||||
FontSize="10" HorizontalAlignment="Left"/>
|
||||
<TextBlock Grid.Row="2" Text="{DynamicResource shadowEffectPerformance}"
|
||||
Width="320"
|
||||
FontSize="10" HorizontalAlignment="Left"/>
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
<StackPanel Background="{Binding PreviewBackground}" Grid.Row="1" Margin="0">
|
||||
<StackPanel Orientation="Horizontal" Margin="10"
|
||||
HorizontalAlignment="Center" VerticalAlignment="Center">
|
||||
<Border Width="500" Style="{DynamicResource WindowBorderStyle}">
|
||||
<Border Width="500" Style="{DynamicResource WindowBorderStyle}" CornerRadius="5">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="50" />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBox Text="{DynamicResource helloFlowLauncher}" IsReadOnly="True"
|
||||
Style="{DynamicResource QueryBoxStyle}" Grid.Row="0" />
|
||||
<TextBox Text="{DynamicResource hiThere}" IsReadOnly="True"
|
||||
Style="{DynamicResource QueryBoxStyle}" Grid.Row="0"
|
||||
Margin="18 0 56 0" />
|
||||
<Image Source="{Binding ThemeImage}" HorizontalAlignment="Right" />
|
||||
<ContentControl Visibility="Visible" Grid.Row="1">
|
||||
<flowlauncher:ResultListBox DataContext="{Binding PreviewResults}" />
|
||||
</ContentControl>
|
||||
|
|
@ -234,16 +258,16 @@
|
|||
</StackPanel>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Row="1" Margin="0 10 0 10" Orientation="Vertical">
|
||||
<StackPanel Grid.Row="2" Margin="0 10 0 10" Orientation="Vertical">
|
||||
<StackPanel Orientation="Horizontal" Margin="2">
|
||||
<TextBlock Text="{DynamicResource queryBoxFont}" />
|
||||
<TextBlock Text="{DynamicResource queryBoxFont}" FontSize="14" Margin="0 6 0 0" />
|
||||
<ComboBox ItemsSource="{Binding Source={StaticResource SortedFonts}}"
|
||||
SelectedItem="{Binding SelectedQueryBoxFont}"
|
||||
HorizontalAlignment="Left" VerticalAlignment="Top" Width="160" Margin="10 -2 5 0" />
|
||||
HorizontalAlignment="Left" VerticalAlignment="Top" Width="180" Margin="25 -2 5 0" />
|
||||
<ComboBox ItemsSource="{Binding SelectedQueryBoxFont.FamilyTypefaces}"
|
||||
SelectedItem="{Binding SelectedQueryBoxFontFaces}"
|
||||
HorizontalAlignment="Left" VerticalAlignment="Top"
|
||||
Width="120" Margin="0 -2 0 0">
|
||||
Width="130" Margin="25 -2 0 0">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<ItemsControl ItemsSource="{Binding AdjustedFaceNames}">
|
||||
|
|
@ -257,16 +281,16 @@
|
|||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" Margin="2">
|
||||
<TextBlock Text="{DynamicResource resultItemFont}" />
|
||||
<StackPanel Orientation="Horizontal" Margin="2 10 2 2">
|
||||
<TextBlock Text="{DynamicResource resultItemFont}" FontSize="14" Margin="0 4 0 0" />
|
||||
<ComboBox ItemsSource="{Binding Source={StaticResource SortedFonts}}"
|
||||
SelectedItem="{Binding SelectedResultFont}"
|
||||
HorizontalAlignment="Left" VerticalAlignment="Top"
|
||||
Width="160" Margin="5 -2 5 0" />
|
||||
Width="180" Margin="20 -2 5 0" />
|
||||
<ComboBox ItemsSource="{Binding SelectedResultFont.FamilyTypefaces}"
|
||||
SelectedItem="{Binding SelectedResultFontFaces}"
|
||||
HorizontalAlignment="Left" VerticalAlignment="Top"
|
||||
Width="120" Margin="0 -2 0 0">
|
||||
Width="130" Margin="26 -2 0 0">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<ItemsControl ItemsSource="{Binding AdjustedFaceNames}">
|
||||
|
|
@ -285,24 +309,36 @@
|
|||
</Grid>
|
||||
</TabItem>
|
||||
<TabItem Header="{DynamicResource hotkey}">
|
||||
<Grid Margin="10">
|
||||
<Grid Margin="30 10 30 10">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="80" />
|
||||
<RowDefinition Height="35" />
|
||||
<RowDefinition Height="20" />
|
||||
<RowDefinition Height="400" />
|
||||
<RowDefinition Height="70" />
|
||||
<RowDefinition Height="250" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Grid.Row="0" Orientation="Horizontal" VerticalAlignment="Center" Height="24"
|
||||
<StackPanel Grid.Row="0" Orientation="Horizontal" VerticalAlignment="Center"
|
||||
Margin="0,4,0,3">
|
||||
<TextBlock VerticalAlignment="Center" Margin="0 0 10 0" Text="{DynamicResource flowlauncherHotkey}" />
|
||||
<TextBlock VerticalAlignment="Center" Margin="0 0 10 0" Text="{DynamicResource flowlauncherHotkey}" FontSize="14" />
|
||||
<flowlauncher:HotkeyControl x:Name="HotkeyControl" HotkeyChanged="OnHotkeyChanged"
|
||||
Loaded="OnHotkeyControlLoaded" />
|
||||
Loaded="OnHotkeyControlLoaded" Height="35"/>
|
||||
</StackPanel>
|
||||
<TextBlock VerticalAlignment="Center" Grid.Row="1" Margin="0,3,10,2"
|
||||
Text="{DynamicResource customQueryHotkey}" />
|
||||
<ListView ItemsSource="{Binding Settings.CustomPluginHotkeys}"
|
||||
<StackPanel Grid.Row="1" Orientation="Horizontal" VerticalAlignment="Center"
|
||||
Margin="0,4,0,3">
|
||||
<TextBlock VerticalAlignment="Center" Margin="0 0 10 0" Text="{DynamicResource openResultModifiers}" FontSize="14" />
|
||||
<ComboBox Margin="0 0 0 0" Width="120"
|
||||
ItemsSource="{Binding OpenResultModifiersList}"
|
||||
SelectedItem="{Binding Settings.OpenResultModifiers}" FontSize="14" />
|
||||
<CheckBox Margin="30 0 0 0" IsChecked="{Binding Settings.ShowOpenResultHotkey}" VerticalAlignment="Center">
|
||||
<TextBlock Text="{DynamicResource showOpenResultHotkey}" FontSize="14" />
|
||||
</CheckBox>
|
||||
</StackPanel>
|
||||
<TextBlock Grid.Row="2" VerticalAlignment="Center" Margin="0 23 10 2" Text="{DynamicResource customQueryHotkey}" FontSize="14" />
|
||||
<ListView Grid.Row="3" ItemsSource="{Binding Settings.CustomPluginHotkeys}"
|
||||
SelectedItem="{Binding SelectedCustomPluginHotkey}"
|
||||
Margin="0 5 0 0" Grid.Row="2">
|
||||
Style="{StaticResource {x:Static GridView.GridViewStyleKey}}"
|
||||
BorderBrush="DarkGray" BorderThickness="1"
|
||||
Margin="0 5 0 0">
|
||||
<ListView.View>
|
||||
<GridView>
|
||||
<GridViewColumn Header="{DynamicResource hotkey}" Width="180">
|
||||
|
|
@ -312,7 +348,7 @@
|
|||
</DataTemplate>
|
||||
</GridViewColumn.CellTemplate>
|
||||
</GridViewColumn>
|
||||
<GridViewColumn Header="{DynamicResource actionKeywords}" Width="500">
|
||||
<GridViewColumn Header="{DynamicResource actionKeywords}" Width="546">
|
||||
<GridViewColumn.CellTemplate>
|
||||
<DataTemplate DataType="userSettings:CustomPluginHotkey">
|
||||
<TextBlock Text="{Binding ActionKeyword}" />
|
||||
|
|
@ -322,8 +358,8 @@
|
|||
</GridView>
|
||||
</ListView.View>
|
||||
</ListView>
|
||||
<StackPanel Grid.Row="3" HorizontalAlignment="Right" VerticalAlignment="Bottom"
|
||||
Orientation="Horizontal" Height="40" Width="360">
|
||||
<StackPanel Grid.Row="4" HorizontalAlignment="Right" VerticalAlignment="Bottom"
|
||||
Orientation="Horizontal" Width="360">
|
||||
<Button Click="OnDeleteCustomHotkeyClick" Width="100"
|
||||
Margin="10" Content="{DynamicResource delete}" />
|
||||
<Button Click="OnnEditCustomHotkeyClick" Width="100" Margin="10"
|
||||
|
|
@ -334,11 +370,16 @@
|
|||
</Grid>
|
||||
</TabItem>
|
||||
<TabItem Header="{DynamicResource proxy}">
|
||||
<StackPanel>
|
||||
<CheckBox Margin="10" IsChecked="{Binding Settings.Proxy.Enabled}">
|
||||
<TextBlock Text="{DynamicResource enableProxy}" />
|
||||
<StackPanel Height="400" Margin="65,0">
|
||||
<CheckBox Margin="15 10 10 10" IsChecked="{Binding Settings.Proxy.Enabled}">
|
||||
<TextBlock Text="{DynamicResource enableProxy}" FontSize="14" />
|
||||
</CheckBox>
|
||||
<Grid Margin="10" IsEnabled="{Binding Settings.Proxy.Enabled}">
|
||||
<Grid.Resources>
|
||||
<Style TargetType="{x:Type TextBlock}">
|
||||
<Setter Property="FontSize" Value="14" />
|
||||
</Style>
|
||||
</Grid.Resources>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
|
|
@ -346,27 +387,29 @@
|
|||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="100" />
|
||||
<ColumnDefinition Width="200" />
|
||||
<ColumnDefinition Width="100" />
|
||||
<ColumnDefinition Width="135" />
|
||||
<ColumnDefinition Width="200" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{DynamicResource server}" Grid.Row="0" Grid.Column="0" Padding="5" />
|
||||
<TextBox Text="{Binding Settings.Proxy.Server}" Grid.Row="0" Grid.Column="1" Padding="5" />
|
||||
<TextBlock Text="{DynamicResource port}" Grid.Row="0" Grid.Column="2" Padding="5" />
|
||||
<TextBox Text="{Binding Settings.Proxy.Port, TargetNullValue={x:Static sys:String.Empty} }" Grid.Row="0" Grid.Column="3" Padding="5" />
|
||||
<TextBox Text="{Binding Settings.Proxy.Server}" Grid.Row="0" Grid.Column="1" Padding="5" Margin="0 0 0 20" />
|
||||
<TextBlock Text="{DynamicResource port}" Grid.Row="0" Grid.Column="2" Padding="5" Margin ="40 0 0 0" />
|
||||
<TextBox Text="{Binding Settings.Proxy.Port, TargetNullValue={x:Static sys:String.Empty} }" Grid.Row="0"
|
||||
Grid.Column="3" Padding="5" Margin="0 0 0 20"/>
|
||||
<TextBlock Text="{DynamicResource userName}" Grid.Row="1" Grid.Column="0" Padding="5" />
|
||||
<TextBox Text="{Binding Settings.Proxy.UserName}" Grid.Row="1" Grid.Column="1" Padding="5" />
|
||||
<TextBlock Text="{DynamicResource password}" Grid.Row="1" Grid.Column="2" Padding="5" />
|
||||
<TextBlock Text="{DynamicResource password}" Grid.Row="1" Grid.Column="2" Padding="5" Margin ="40 0 0 0" />
|
||||
<TextBox Text="{Binding Settings.Proxy.Password}" Grid.Row="1" Grid.Column="3" Padding="5" />
|
||||
</Grid>
|
||||
<Button Content="{DynamicResource testProxy}" IsEnabled="{Binding Settings.Proxy.Enabled}"
|
||||
Width="80" HorizontalAlignment="Left" Margin="10" Click="OnTestProxyClick" />
|
||||
HorizontalAlignment="Right" Margin="10 15 10 10" Click="OnTestProxyClick" />
|
||||
</StackPanel>
|
||||
</TabItem>
|
||||
<TabItem Header="{DynamicResource about}">
|
||||
<Grid>
|
||||
<Grid Height="400" Margin="65,0">
|
||||
<Grid.Resources>
|
||||
<Style TargetType="{x:Type TextBlock}">
|
||||
<Setter Property="Margin" Value="10, 10, 0, 0" />
|
||||
<Setter Property="Margin" Value="10, 25, 0, 0" />
|
||||
<Setter Property="FontSize" Value="14" />
|
||||
</Style>
|
||||
</Grid.Resources>
|
||||
<Grid.ColumnDefinitions>
|
||||
|
|
@ -380,8 +423,8 @@
|
|||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Grid.Row="0" Grid.ColumnSpan="2" Text="{Binding ActivatedTimes, Mode=OneWay}" />
|
||||
<TextBlock Grid.Row="1" Grid.Column="0" Text="{DynamicResource website}" />
|
||||
<TextBlock Grid.Row="0" Grid.ColumnSpan="2" Text="{Binding ActivatedTimes, Mode=OneWay}" FontSize="12" />
|
||||
<TextBlock Grid.Row="1" Grid.Column="0" Text="{DynamicResource website}"/>
|
||||
<TextBlock Grid.Row="1" Grid.Column="1" HorizontalAlignment="Left">
|
||||
<Hyperlink NavigateUri="{Binding Github, Mode=OneWay}" RequestNavigate="OnRequestNavigate">
|
||||
<Run Text="{Binding Github, Mode=OneWay}" />
|
||||
|
|
@ -398,7 +441,7 @@
|
|||
</TextBlock>
|
||||
<Button Grid.Row="4" Grid.Column="0"
|
||||
Content="{DynamicResource checkUpdates}" Click="OnCheckUpdates"
|
||||
HorizontalAlignment="Left" Margin="10 10 10 10" />
|
||||
HorizontalAlignment="Left" Margin="10 30 10 10" />
|
||||
</Grid>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
|
|
|
|||
|
|
@ -270,7 +270,6 @@ namespace Flow.Launcher
|
|||
private void OnClosed(object sender, EventArgs e)
|
||||
{
|
||||
_viewModel.Save();
|
||||
PluginManager.Save();
|
||||
}
|
||||
|
||||
private void OnCloseExecuted(object sender, ExecutedRoutedEventArgs e)
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@
|
|||
<Style x:Key="BaseQueryBoxStyle" TargetType="{x:Type TextBox}">
|
||||
<Setter Property="BorderThickness" Value="0" />
|
||||
<Setter Property="FontSize" Value="28" />
|
||||
<Setter Property="FontWeight" Value="Medium" />
|
||||
<Setter Property="FontWeight" Value="Normal" />
|
||||
<Setter Property="Height" Value="46" />
|
||||
<Setter Property="Background" Value="#616161" />
|
||||
<Setter Property="Background" Value="#2F2F2F" />
|
||||
<Setter Property="Foreground" Value="#E3E0E3" />
|
||||
<Setter Property="CaretBrush" Value="#E3E0E3" />
|
||||
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||||
|
|
@ -33,12 +33,10 @@
|
|||
<Style x:Key="BaseWindowBorderStyle" TargetType="{x:Type Border}">
|
||||
<Setter Property="BorderThickness" Value="0" />
|
||||
<Setter Property="CornerRadius" Value="0" />
|
||||
<Setter Property="Background" Value="#424242"></Setter>
|
||||
<Setter Property="Background" Value="#2F2F2F"></Setter>
|
||||
<Setter Property="Padding" Value="8 10 8 8" />
|
||||
</Style>
|
||||
<Style x:Key="BaseWindowStyle" TargetType="{x:Type Window}">
|
||||
<Setter Property="Width" Value="800" />
|
||||
<Setter Property="MaxWidth" Value="800" />
|
||||
</Style>
|
||||
|
||||
<Style x:Key="BasePendingLineStyle" TargetType="{x:Type Line}">
|
||||
|
|
@ -74,6 +72,11 @@
|
|||
<Setter Property="RenderOptions.ClearTypeHint" Value="Enabled"/>
|
||||
</Style>
|
||||
|
||||
<SolidColorBrush x:Key="ItemSelectedBackgroundColor">#4D4D4D</SolidColorBrush>
|
||||
|
||||
<Style x:Key="BaseItemImageSelectedStyle" TargetType="{x:Type Image}" >
|
||||
</Style>
|
||||
|
||||
<Style x:Key="BaseListboxStyle" TargetType="{x:Type ListBox}">
|
||||
<Setter Property="BorderBrush" Value="Transparent"/>
|
||||
<Setter Property="Background" Value="Transparent"/>
|
||||
|
|
|
|||
|
|
@ -6,16 +6,15 @@
|
|||
</ResourceDictionary.MergedDictionaries>
|
||||
|
||||
<Style x:Key="QueryBoxStyle" BasedOn="{StaticResource BaseQueryBoxStyle}" TargetType="{x:Type TextBox}">
|
||||
<Setter Property="SelectionBrush" Value="#4D4D4D"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="WindowBorderStyle" BasedOn="{StaticResource BaseWindowBorderStyle}" TargetType="{x:Type Border}">
|
||||
</Style>
|
||||
|
||||
|
||||
<Style x:Key="WindowStyle" BasedOn="{StaticResource BaseWindowStyle}" TargetType="{x:Type Window}">
|
||||
</Style>
|
||||
|
||||
|
||||
|
||||
<Style x:Key="PendingLineStyle" BasedOn="{StaticResource BasePendingLineStyle}" TargetType="{x:Type Line}">
|
||||
</Style>
|
||||
|
||||
|
|
@ -25,16 +24,20 @@
|
|||
<Style x:Key="ItemSubTitleStyle" BasedOn="{StaticResource BaseItemSubTitleStyle}" TargetType="{x:Type TextBlock}" >
|
||||
</Style>
|
||||
<Style x:Key="ItemTitleSelectedStyle" BasedOn="{StaticResource BaseItemTitleSelectedStyle}" TargetType="{x:Type TextBlock}" >
|
||||
<Setter Property="Cursor" Value="Arrow" />
|
||||
</Style>
|
||||
<Style x:Key="ItemSubTitleSelectedStyle" BasedOn="{StaticResource BaseItemSubTitleSelectedStyle}" TargetType="{x:Type TextBlock}" >
|
||||
<Setter Property="Cursor" Value="Arrow" />
|
||||
</Style>
|
||||
<SolidColorBrush x:Key="ItemSelectedBackgroundColor">#4F6180</SolidColorBrush>
|
||||
|
||||
<Style x:Key="ItemImageSelectedStyle" BasedOn="{StaticResource BaseItemImageSelectedStyle}" TargetType="{x:Type Image}" >
|
||||
<Setter Property="Cursor" Value="Arrow" />
|
||||
</Style>
|
||||
|
||||
<!-- button style in the middle of the scrollbar -->
|
||||
<Style x:Key="ThumbStyle" BasedOn="{StaticResource BaseThumbStyle}" TargetType="{x:Type Thumb}">
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ScrollBarStyle" BasedOn="{StaticResource BaseScrollBarStyle}" TargetType="{x:Type ScrollBar}">
|
||||
|
||||
</Style>
|
||||
</ResourceDictionary>
|
||||
|
|
@ -19,6 +19,8 @@ using Flow.Launcher.Infrastructure.UserSettings;
|
|||
using Flow.Launcher.Plugin;
|
||||
using Flow.Launcher.Plugin.SharedCommands;
|
||||
using Flow.Launcher.Storage;
|
||||
using System.Windows.Media;
|
||||
using Flow.Launcher.Infrastructure.Image;
|
||||
|
||||
namespace Flow.Launcher.ViewModel
|
||||
{
|
||||
|
|
@ -26,6 +28,8 @@ namespace Flow.Launcher.ViewModel
|
|||
{
|
||||
#region Private Fields
|
||||
|
||||
private const string DefaultOpenResultModifiers = "Alt";
|
||||
|
||||
private bool _isQueryRunning;
|
||||
private Query _lastQuery;
|
||||
private string _queryTextBeforeLeaveResults;
|
||||
|
|
@ -74,6 +78,7 @@ namespace Flow.Launcher.ViewModel
|
|||
|
||||
SetHotkey(_settings.Hotkey, OnHotkey);
|
||||
SetCustomPluginHotkey();
|
||||
SetOpenResultModifiers();
|
||||
}
|
||||
|
||||
private void RegisterResultsUpdatedEvent()
|
||||
|
|
@ -212,7 +217,7 @@ namespace Flow.Launcher.ViewModel
|
|||
Query();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// we need move cursor to end when we manually changed query
|
||||
/// but we don't want to move cursor to end when query is updated from TextBox
|
||||
|
|
@ -277,6 +282,10 @@ namespace Flow.Launcher.ViewModel
|
|||
public ICommand LoadHistoryCommand { get; set; }
|
||||
public ICommand OpenResultCommand { get; set; }
|
||||
|
||||
public string OpenResultCommandModifiers { get; private set; }
|
||||
|
||||
public ImageSource Image => ImageLoader.Load(Constant.QueryTextBoxIconImagePath);
|
||||
|
||||
#endregion
|
||||
|
||||
public void Query()
|
||||
|
|
@ -594,6 +603,11 @@ namespace Flow.Launcher.ViewModel
|
|||
}
|
||||
}
|
||||
|
||||
private void SetOpenResultModifiers()
|
||||
{
|
||||
OpenResultCommandModifiers = _settings.OpenResultModifiers ?? DefaultOpenResultModifiers;
|
||||
}
|
||||
|
||||
private void OnHotkey(object sender, HotkeyEventArgs e)
|
||||
{
|
||||
if (!ShouldIgnoreHotkeys())
|
||||
|
|
|
|||
|
|
@ -13,6 +13,14 @@ namespace Flow.Launcher.ViewModel
|
|||
private readonly Internationalization _translator = InternationalizationManager.Instance;
|
||||
|
||||
public ImageSource Image => ImageLoader.Load(PluginPair.Metadata.IcoPath);
|
||||
public bool PluginState
|
||||
{
|
||||
get { return !PluginPair.Metadata.Disabled; }
|
||||
set
|
||||
{
|
||||
PluginPair.Metadata.Disabled = !value;
|
||||
}
|
||||
}
|
||||
public Visibility ActionKeywordsVisibility => PluginPair.Metadata.ActionKeywords.Count > 1 ? Visibility.Collapsed : Visibility.Visible;
|
||||
public string InitilizaTime => string.Format(_translator.GetTranslation("plugin_init_time"), PluginPair.Metadata.InitTime);
|
||||
public string QueryTime => string.Format(_translator.GetTranslation("plugin_query_time"), PluginPair.Metadata.AvgQueryTime);
|
||||
|
|
|
|||
|
|
@ -1,9 +1,11 @@
|
|||
using System;
|
||||
using System.Windows;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Threading;
|
||||
using Flow.Launcher.Infrastructure;
|
||||
using Flow.Launcher.Infrastructure.Image;
|
||||
using Flow.Launcher.Infrastructure.Logger;
|
||||
using Flow.Launcher.Infrastructure.UserSettings;
|
||||
using Flow.Launcher.Plugin;
|
||||
|
||||
|
||||
|
|
@ -11,14 +13,22 @@ namespace Flow.Launcher.ViewModel
|
|||
{
|
||||
public class ResultViewModel : BaseModel
|
||||
{
|
||||
public ResultViewModel(Result result)
|
||||
public ResultViewModel(Result result, Settings settings)
|
||||
{
|
||||
if (result != null)
|
||||
{
|
||||
Result = result;
|
||||
}
|
||||
|
||||
Settings = settings;
|
||||
}
|
||||
|
||||
public Settings Settings { get; private set; }
|
||||
|
||||
public Visibility ShowOpenResultHotkey => Settings.ShowOpenResultHotkey ? Visibility.Visible : Visibility.Hidden;
|
||||
|
||||
public string OpenResultModifiers => Settings.OpenResultModifiers;
|
||||
|
||||
public ImageSource Image
|
||||
{
|
||||
get
|
||||
|
|
|
|||
|
|
@ -156,7 +156,7 @@ namespace Flow.Launcher.ViewModel
|
|||
private List<ResultViewModel> NewResults(List<Result> newRawResults, string resultId)
|
||||
{
|
||||
var results = Results.ToList();
|
||||
var newResults = newRawResults.Select(r => new ResultViewModel(r)).ToList();
|
||||
var newResults = newRawResults.Select(r => new ResultViewModel(r, _settings)).ToList();
|
||||
var oldResults = results.Where(r => r.Result.PluginID == resultId).ToList();
|
||||
|
||||
// Find the same results in A (old results) and B (new newResults)
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ using Flow.Launcher.Core.Plugin;
|
|||
using Flow.Launcher.Core.Resource;
|
||||
using Flow.Launcher.Helper;
|
||||
using Flow.Launcher.Infrastructure;
|
||||
using Flow.Launcher.Infrastructure.Image;
|
||||
using Flow.Launcher.Infrastructure.Storage;
|
||||
using Flow.Launcher.Infrastructure.UserSettings;
|
||||
using Flow.Launcher.Plugin;
|
||||
|
|
@ -47,6 +48,18 @@ namespace Flow.Launcher.ViewModel
|
|||
await _updater.UpdateApp(false);
|
||||
}
|
||||
|
||||
public bool AutoUpdates
|
||||
{
|
||||
get { return Settings.AutoUpdates; }
|
||||
set
|
||||
{
|
||||
Settings.AutoUpdates = value;
|
||||
|
||||
if (value)
|
||||
UpdateApp();
|
||||
}
|
||||
}
|
||||
|
||||
// This is only required to set at startup. When portable mode enabled/disabled a restart is always required
|
||||
private bool _portableMode = DataLocation.PortableDataLocationInUse();
|
||||
public bool PortableMode
|
||||
|
|
@ -70,6 +83,14 @@ namespace Flow.Launcher.ViewModel
|
|||
|
||||
public void Save()
|
||||
{
|
||||
foreach (var vm in PluginViewModels)
|
||||
{
|
||||
var id = vm.PluginPair.Metadata.ID;
|
||||
|
||||
Settings.PluginSettings.Plugins[id].Disabled = vm.PluginPair.Metadata.Disabled;
|
||||
}
|
||||
|
||||
PluginManager.Save();
|
||||
_storage.Save();
|
||||
}
|
||||
|
||||
|
|
@ -139,6 +160,7 @@ namespace Flow.Launcher.ViewModel
|
|||
}
|
||||
}
|
||||
|
||||
public List<string> OpenResultModifiersList => new List<string> { KeyConstant.Alt, KeyConstant.Ctrl, $"{KeyConstant.Ctrl}+{KeyConstant.Alt}" };
|
||||
private Internationalization _translater => InternationalizationManager.Instance;
|
||||
public List<Language> Languages => _translater.LoadAvailableLanguages();
|
||||
public IEnumerable<int> MaxResultsRange => Enumerable.Range(2, 16);
|
||||
|
|
@ -247,6 +269,24 @@ namespace Flow.Launcher.ViewModel
|
|||
public List<string> Themes
|
||||
=> ThemeManager.Instance.LoadAvailableThemes().Select(Path.GetFileNameWithoutExtension).ToList();
|
||||
|
||||
public bool DropShadowEffect
|
||||
{
|
||||
get { return Settings.UseDropShadowEffect; }
|
||||
set
|
||||
{
|
||||
if (value)
|
||||
{
|
||||
ThemeManager.Instance.AddDropShadowEffectToCurrentTheme();
|
||||
}
|
||||
else
|
||||
{
|
||||
ThemeManager.Instance.RemoveDropShadowEffectToCurrentTheme();
|
||||
}
|
||||
|
||||
Settings.UseDropShadowEffect = value;
|
||||
}
|
||||
}
|
||||
|
||||
public Brush PreviewBackground
|
||||
{
|
||||
get
|
||||
|
|
@ -404,6 +444,8 @@ namespace Flow.Launcher.ViewModel
|
|||
}
|
||||
}
|
||||
|
||||
public ImageSource ThemeImage => ImageLoader.Load(Constant.QueryTextBoxIconImagePath);
|
||||
|
||||
#endregion
|
||||
|
||||
#region hotkey
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 5.2 KiB |
|
|
@ -6,4 +6,10 @@
|
|||
<system:String x:Key="flowlauncher_plugin_browserbookmark_plugin_name">Browser Bookmarks</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_plugin_description">Search your browser bookmarks</system:String>
|
||||
|
||||
<!--Settings-->
|
||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_openBookmarks">Open bookmarks in:</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_newWindow">New window</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_newTab">New tab</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_setBrowserFromPath">Set browser from path:</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_choose">Choose</system:String>
|
||||
</ResourceDictionary>
|
||||
|
|
@ -6,20 +6,34 @@
|
|||
mc:Ignorable="d"
|
||||
Background="White"
|
||||
d:DesignHeight="300" d:DesignWidth="500">
|
||||
<Grid Margin="10,10,10,0">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="40" />
|
||||
<RowDefinition Height="90" />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Orientation="Horizontal" Grid.Row="0">
|
||||
<Label Content="Open bookmark in:" Margin="40 3 0 8"/>
|
||||
<RadioButton Name="NewWindowBrowser" GroupName="OpenSearchBehaviour" Content="New window" Click="OnNewBrowserWindowClick" Margin="10" />
|
||||
<RadioButton Name="NewTabInBrowser" GroupName="OpenSearchBehaviour" Content="New tab" Click="OnNewTabClick" Margin="10" />
|
||||
<StackPanel>
|
||||
<Grid Grid.Row="0" Margin="40 40 0 0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="160" />
|
||||
<ColumnDefinition Width="140"/>
|
||||
<ColumnDefinition Width="100"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Grid.Column="0" Content="{DynamicResource flowlauncher_plugin_browserbookmark_settings_openBookmarks}"
|
||||
FontSize="15" Margin="0 5 0 0"/>
|
||||
<RadioButton Grid.Column="1" Name="NewWindowBrowser" GroupName="OpenSearchBehaviour"
|
||||
Content="{DynamicResource flowlauncher_plugin_browserbookmark_settings_newWindow}"
|
||||
Click="OnNewBrowserWindowClick" />
|
||||
<RadioButton Grid.Column="2" Name="NewTabInBrowser" GroupName="OpenSearchBehaviour"
|
||||
Content="{DynamicResource flowlauncher_plugin_browserbookmark_settings_newTab}"
|
||||
Click="OnNewTabClick" />
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
<StackPanel VerticalAlignment="Top" Grid.Row="1" Height="106" Margin="41,13,0,0">
|
||||
<Label Content="Set browser from path:" Height="28" Margin="0,0,155,0" HorizontalAlignment="Left" Width="290"/>
|
||||
<TextBox x:Name="browserPathBox" HorizontalAlignment="Left" Height="34" Margin="5,0,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="311" RenderTransformOrigin="0.502,-1.668"/>
|
||||
<Button x:Name="viewButton" HorizontalAlignment="Left" Margin="340,-33,-1,0" Width="100" Height="28" Click="OnChooseClick" FontSize="10" Content="Choose" />
|
||||
<Label Content="{DynamicResource flowlauncher_plugin_browserbookmark_settings_setBrowserFromPath}"
|
||||
Height="28" Margin="0,0,155,0" HorizontalAlignment="Left" Width="290"/>
|
||||
<TextBox x:Name="browserPathBox" HorizontalAlignment="Left" Height="34" TextWrapping="Wrap" VerticalAlignment="Top" Width="311" RenderTransformOrigin="0.502,-1.668"/>
|
||||
<Button x:Name="viewButton" Content="{DynamicResource flowlauncher_plugin_browserbookmark_settings_choose}"
|
||||
HorizontalAlignment="Left" Margin="340,-35,-1,0" Width="100" Height="34" Click="OnChooseClick" FontSize="14" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</UserControl>
|
||||
|
|
@ -15,42 +15,44 @@
|
|||
<core:LocalizationConverter x:Key="LocalizationConverter"/>
|
||||
</UserControl.Resources>
|
||||
|
||||
<Border BorderBrush="Gray" Margin="10" BorderThickness="1">
|
||||
<Grid Margin="10">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto"/>
|
||||
<RowDefinition Height="auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="3*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<TextBlock Grid.Column="0" Grid.Row="0" Text="{DynamicResource flowlauncher_plugin_calculator_output_decimal_seperator}" VerticalAlignment="Center" />
|
||||
<ComboBox x:Name="DecimalSeparatorComboBox"
|
||||
<Grid Margin="20 50 0 0">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto"/>
|
||||
<RowDefinition Height="auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="3*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<TextBlock Grid.Column="0" Grid.Row="0" Text="{DynamicResource flowlauncher_plugin_calculator_output_decimal_seperator}"
|
||||
VerticalAlignment="Center" FontSize="14"/>
|
||||
<ComboBox x:Name="DecimalSeparatorComboBox"
|
||||
Grid.Column="1"
|
||||
Grid.Row="0"
|
||||
Margin="0 5 0 5"
|
||||
Margin="10 5 0 5"
|
||||
HorizontalAlignment="Left"
|
||||
MaxWidth="300"
|
||||
SelectedItem="{Binding Settings.DecimalSeparator}"
|
||||
ItemsSource="{Binding Source={ui:EnumBindingSource {x:Type calculator:DecimalSeparator}}}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Converter={StaticResource LocalizationConverter}}" />
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Converter={StaticResource LocalizationConverter}}" FontSize="14"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
|
||||
<TextBlock Grid.Column="0" Grid.Row="1" Text="{DynamicResource flowlauncher_plugin_calculator_max_decimal_places}" VerticalAlignment="Center" />
|
||||
<ComboBox x:Name="MaxDecimalPlaces"
|
||||
<TextBlock Grid.Column="0" Grid.Row="1" Text="{DynamicResource flowlauncher_plugin_calculator_max_decimal_places}"
|
||||
VerticalAlignment="Center" FontSize="14"/>
|
||||
<ComboBox x:Name="MaxDecimalPlaces"
|
||||
Grid.Column="1"
|
||||
Grid.Row="1"
|
||||
Margin="0 5 0 5"
|
||||
Margin="10 5 0 5"
|
||||
HorizontalAlignment="Left"
|
||||
MaxWidth="300"
|
||||
SelectedItem="{Binding Settings.MaxDecimalPlaces}"
|
||||
ItemsSource="{Binding MaxDecimalPlacesRange}">
|
||||
</ComboBox>
|
||||
</ComboBox>
|
||||
|
||||
</Grid>
|
||||
</Border>
|
||||
</Grid>
|
||||
</UserControl>
|
||||
|
|
|
|||
|
|
@ -6,21 +6,23 @@
|
|||
mc:Ignorable="d"
|
||||
Loaded="View_Loaded"
|
||||
d:DesignHeight="300" d:DesignWidth="300">
|
||||
<Border BorderBrush="Gray" Margin="10" BorderThickness="1">
|
||||
<Grid Margin="10" VerticalAlignment="Top" >
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"></ColumnDefinition>
|
||||
<ColumnDefinition Width="*"></ColumnDefinition>
|
||||
<ColumnDefinition Width="Auto"></ColumnDefinition>
|
||||
</Grid.ColumnDefinitions>
|
||||
<CheckBox Grid.Row="0" Grid.ColumnSpan="3" x:Name="UseLocationAsWorkingDir" Content="{DynamicResource flowlauncher_plugin_everything_use_location_as_working_dir}" Margin="10" HorizontalAlignment="Left" />
|
||||
<Label Grid.Row="1" Margin="10" Content="{DynamicResource flowlauncher_plugin_everything_editor_path}" HorizontalAlignment="Left"/>
|
||||
<Label Grid.Row="1" Grid.Column="1" x:Name="EditorPath" Margin="10" HorizontalAlignment="Stretch" />
|
||||
<Button Grid.Row="1" Grid.Column="2" x:Name="OpenEditorPath" Content="..." Margin="10" HorizontalAlignment="Right" Click="EditorPath_Clicked"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
<Grid Margin="7,50" VerticalAlignment="Top" >
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition />
|
||||
<ColumnDefinition />
|
||||
<ColumnDefinition />
|
||||
</Grid.ColumnDefinitions>
|
||||
<CheckBox Grid.Row="0" Grid.ColumnSpan="3" x:Name="UseLocationAsWorkingDir" Content="{DynamicResource
|
||||
flowlauncher_plugin_everything_use_location_as_working_dir}"
|
||||
Margin="10" HorizontalAlignment="Left" />
|
||||
<Label Grid.Row="1" Margin="10" Content="{DynamicResource flowlauncher_plugin_everything_editor_path}"
|
||||
HorizontalAlignment="Left"/>
|
||||
<Label Grid.Row="1" Grid.Column="1" x:Name="EditorPath" Margin="10" HorizontalAlignment="Left" />
|
||||
<Button Grid.Row="1" Grid.Column="2" x:Name="OpenEditorPath" Content="..." Margin="10"
|
||||
HorizontalAlignment="Left" Click="EditorPath_Clicked"/>
|
||||
</Grid>
|
||||
</UserControl>
|
||||
|
|
|
|||
|
|
@ -1,31 +1,32 @@
|
|||
<UserControl x:Class="Flow.Launcher.Plugin.Folder.FileSystemSettings"
|
||||
<UserControl x:Class="Flow.Launcher.Plugin.Folder.FolderPluginSettings"
|
||||
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:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="300" d:DesignWidth="500">
|
||||
<Grid Margin="10">
|
||||
<UserControl.Resources>
|
||||
<DataTemplate x:Key="ListViewTemplate">
|
||||
<TextBlock
|
||||
Text="{Binding Nickname, Mode=OneTime}"
|
||||
Margin="0,5,0,5" />
|
||||
</DataTemplate>
|
||||
</UserControl.Resources>
|
||||
<Grid Margin="10">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*"/>
|
||||
<RowDefinition Height="50"/>
|
||||
<RowDefinition Height="100"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ListView x:Name="lbxFolders" Grid.Row="0" AllowDrop="True"
|
||||
Drop="lbxFolders_Drop"
|
||||
DragEnter="lbxFolders_DragEnter">
|
||||
<ListView.View>
|
||||
<GridView>
|
||||
<GridViewColumn Header="{DynamicResource flowlauncher_plugin_folder_folder_path}" Width="180">
|
||||
<GridViewColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path}"/>
|
||||
</DataTemplate>
|
||||
</GridViewColumn.CellTemplate>
|
||||
</GridViewColumn>
|
||||
</GridView>
|
||||
</ListView.View>
|
||||
</ListView>
|
||||
<StackPanel Grid.Row="1" HorizontalAlignment="Right" Orientation="Horizontal">
|
||||
<ScrollViewer Margin="0 35 0 0" HorizontalScrollBarVisibility="Hidden">
|
||||
<StackPanel>
|
||||
<ListView
|
||||
x:Name="lbxFolders" Grid.Row="0" AllowDrop="True"
|
||||
Drop="lbxFolders_Drop"
|
||||
DragEnter="lbxFolders_DragEnter"
|
||||
ItemTemplate="{StaticResource ListViewTemplate}"/>
|
||||
</StackPanel>
|
||||
</ScrollViewer>
|
||||
<StackPanel Grid.Row="1" HorizontalAlignment="Right" Orientation="Horizontal">
|
||||
<Button x:Name="btnDelete" Click="btnDelete_Click" Width="100" Margin="10" Content="{DynamicResource flowlauncher_plugin_folder_delete}"/>
|
||||
<Button x:Name="btnEdit" Click="btnEdit_Click" Width="100" Margin="10" Content="{DynamicResource flowlauncher_plugin_folder_edit}"/>
|
||||
<Button x:Name="btnAdd" Click="btnAdd_Click" Width="100" Margin="10" Content="{DynamicResource flowlauncher_plugin_folder_add}"/>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Windows;
|
||||
|
|
@ -11,17 +12,42 @@ using MessageBox = System.Windows.MessageBox;
|
|||
namespace Flow.Launcher.Plugin.Folder
|
||||
{
|
||||
|
||||
public partial class FileSystemSettings
|
||||
public partial class FolderPluginSettings
|
||||
{
|
||||
private IPublicAPI flowlauncherAPI;
|
||||
private Settings _settings;
|
||||
|
||||
public FileSystemSettings(IPublicAPI flowlauncherAPI, Settings settings)
|
||||
public FolderPluginSettings(IPublicAPI flowlauncherAPI, Settings settings)
|
||||
{
|
||||
this.flowlauncherAPI = flowlauncherAPI;
|
||||
InitializeComponent();
|
||||
_settings = settings;
|
||||
lbxFolders.ItemsSource = _settings.FolderLinks;
|
||||
|
||||
RefreshView();
|
||||
}
|
||||
|
||||
public void RefreshView()
|
||||
{
|
||||
lbxFolders.Items.SortDescriptions.Add(new SortDescription("Path", ListSortDirection.Ascending));
|
||||
|
||||
if (lbxFolders.Items.Count == 0
|
||||
&& btnDelete.Visibility == Visibility.Visible
|
||||
&& btnEdit.Visibility == Visibility.Visible)
|
||||
{
|
||||
btnDelete.Visibility = Visibility.Hidden;
|
||||
btnEdit.Visibility = Visibility.Hidden;
|
||||
}
|
||||
|
||||
if (lbxFolders.Items.Count > 0
|
||||
&& btnDelete.Visibility == Visibility.Hidden
|
||||
&& btnEdit.Visibility == Visibility.Hidden)
|
||||
{
|
||||
btnDelete.Visibility = Visibility.Visible;
|
||||
btnEdit.Visibility = Visibility.Visible;
|
||||
}
|
||||
|
||||
lbxFolders.Items.Refresh();
|
||||
}
|
||||
|
||||
private void btnDelete_Click(object sender, RoutedEventArgs e)
|
||||
|
|
@ -34,7 +60,7 @@ namespace Flow.Launcher.Plugin.Folder
|
|||
if (MessageBox.Show(msg, string.Empty, MessageBoxButton.YesNo) == MessageBoxResult.Yes)
|
||||
{
|
||||
_settings.FolderLinks.Remove(selectedFolder);
|
||||
lbxFolders.Items.Refresh();
|
||||
RefreshView();
|
||||
}
|
||||
}
|
||||
else
|
||||
|
|
@ -57,7 +83,7 @@ namespace Flow.Launcher.Plugin.Folder
|
|||
link.Path = folderBrowserDialog.SelectedPath;
|
||||
}
|
||||
|
||||
lbxFolders.Items.Refresh();
|
||||
RefreshView();
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -84,7 +110,7 @@ namespace Flow.Launcher.Plugin.Folder
|
|||
_settings.FolderLinks.Add(newFolder);
|
||||
}
|
||||
|
||||
lbxFolders.Items.Refresh();
|
||||
RefreshView();
|
||||
}
|
||||
|
||||
private void lbxFolders_Drop(object sender, DragEventArgs e)
|
||||
|
|
@ -110,7 +136,7 @@ namespace Flow.Launcher.Plugin.Folder
|
|||
_settings.FolderLinks.Add(newFolder);
|
||||
}
|
||||
|
||||
lbxFolders.Items.Refresh();
|
||||
RefreshView();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ namespace Flow.Launcher.Plugin.Folder
|
|||
|
||||
public Control CreateSettingPanel()
|
||||
{
|
||||
return new FileSystemSettings(_context.API, _settings);
|
||||
return new FolderPluginSettings(_context.API, _settings);
|
||||
}
|
||||
|
||||
public void Init(PluginInitContext context)
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||
|
||||
<system:String x:Key="flowlauncher_plugin_plugin_management_plugin_name">Flow Launcher Plugin Management</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_plugin_management_plugin_name">Plugin Management</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_plugin_management_plugin_description">Install, remove or update Flow Launcher plugins</system:String>
|
||||
|
||||
</ResourceDictionary>
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"ID": "D2D2C23B084D422DB66FE0C79D6C2A6A",
|
||||
"ActionKeyword": "wpm",
|
||||
"Name": "Flow Launcher Plugin Management",
|
||||
"Name": "Plugin Management",
|
||||
"Description": "Install/Remove/Update Flow Launcher plugins",
|
||||
"Author": "qianlifeng",
|
||||
"Version": "1.0",
|
||||
|
|
|
|||
|
|
@ -5,18 +5,18 @@
|
|||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
mc:Ignorable="d"
|
||||
Width="400"
|
||||
Height="120"
|
||||
Height="130"
|
||||
WindowStartupLocation="CenterScreen">
|
||||
<StackPanel Orientation="Vertical">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Label Content="{DynamicResource flowlauncher_plugin_program_directory}"/>
|
||||
<TextBox Name="Directory" VerticalAlignment="Center" Width="300" Margin="0,7" />
|
||||
<Label Content="{DynamicResource flowlauncher_plugin_program_directory}" Margin="15,10"/>
|
||||
<TextBox Name="Directory" VerticalAlignment="Center" Width="278" Margin="10,7" />
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
|
||||
<Button Click="BrowseButton_Click" Content="{DynamicResource flowlauncher_plugin_program_browse}"
|
||||
HorizontalAlignment="Right" Margin="10" Height="20" Width="70" />
|
||||
HorizontalAlignment="Right" Margin="10" Height="31" Width="70" />
|
||||
<Button Click="ButtonAdd_OnClick" Content="{DynamicResource flowlauncher_plugin_program_update}"
|
||||
HorizontalAlignment="Right" Margin="10" Height="20" Width="70" />
|
||||
HorizontalAlignment="Right" Margin="10" Height="31" Width="70" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</Window>
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@
|
|||
<system:String x:Key="flowlauncher_plugin_program_pls_select_program_source">Please select a program source</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_program_delete_program_source">Are you sure you want to delete the selected program sources?</system:String>
|
||||
|
||||
<system:String x:Key="flowlauncher_plugin_program_update">Update</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_program_update">OK</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_program_only_index_tip">Flow Launcher will only index files that end with the following suffixes:</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_program_split_by_tip">(Each suffix should split by ';' )</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_program_update_file_suffixes">Successfully updated file suffixes</system:String>
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
<TextBlock Margin="10 10 0 0" Foreground="Gray" Text="{DynamicResource flowlauncher_plugin_program_only_index_tip}" />
|
||||
<TextBlock Margin="10 10 0 0" Foreground="Gray" Text="{DynamicResource flowlauncher_plugin_program_split_by_tip}" />
|
||||
<TextBox x:Name="tbSuffixes" Margin="10"/>
|
||||
<Button HorizontalAlignment="Right" Height="30" Width="80" Click="ButtonBase_OnClick" Margin="10" Content="{DynamicResource flowlauncher_plugin_program_update}" />
|
||||
<Button HorizontalAlignment="Right" Height="30" Width="80" Click="ButtonBase_OnClick" Margin="0 0 10 0" Content="{DynamicResource flowlauncher_plugin_program_update}" />
|
||||
</StackPanel>
|
||||
</Window>
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
d:DesignHeight="300" d:DesignWidth="600">
|
||||
<Grid Margin="10">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="50"/>
|
||||
<RowDefinition Height="75"/>
|
||||
<RowDefinition Height="*"/>
|
||||
<RowDefinition Height="50"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
|
@ -18,18 +18,23 @@
|
|||
<CheckBox Name="RegistryEnabled" Click="RegistryEnabled_Click" Margin="5" Content="{DynamicResource flowlauncher_plugin_program_index_registry}" />
|
||||
</StackPanel>
|
||||
<StackPanel HorizontalAlignment="Right" Orientation="Horizontal">
|
||||
<Button Height="30" HorizontalAlignment="Right" Margin="10" Width="100" x:Name="btnLoadAllProgramSource" Click="btnLoadAllProgramSource_OnClick" Content="{DynamicResource flowlauncher_plugin_program_all_programs}" />
|
||||
<Button Height="30" HorizontalAlignment="Right" Margin="10" Width="100" x:Name="btnProgramSuffixes" Click="BtnProgramSuffixes_OnClick" Content="{DynamicResource flowlauncher_plugin_program_suffixes}" />
|
||||
<Button Height="30" HorizontalAlignment="Right" Margin="10" Width="100" x:Name="btnReindex" Click="btnReindex_Click" Content="{DynamicResource flowlauncher_plugin_program_reindex}" />
|
||||
<Button Height="31" HorizontalAlignment="Right" Margin="10" Width="100" x:Name="btnLoadAllProgramSource" Click="btnLoadAllProgramSource_OnClick" Content="{DynamicResource flowlauncher_plugin_program_all_programs}" />
|
||||
<Button Height="31" HorizontalAlignment="Right" Margin="10" Width="100" x:Name="btnProgramSuffixes" Click="BtnProgramSuffixes_OnClick" Content="{DynamicResource flowlauncher_plugin_program_suffixes}" />
|
||||
<Button Height="31" HorizontalAlignment="Right" Margin="10" Width="100" x:Name="btnReindex" Click="btnReindex_Click" Content="{DynamicResource flowlauncher_plugin_program_reindex}" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
<ListView x:Name="programSourceView" Grid.Row="1" AllowDrop="True" SelectionMode="Extended" GridViewColumnHeader.Click="GridViewColumnHeaderClickedHandler"
|
||||
PreviewMouseRightButtonUp="ProgramSourceView_PreviewMouseRightButtonUp"
|
||||
DragEnter="programSourceView_DragEnter"
|
||||
Drop="programSourceView_Drop" >
|
||||
<ListView x:Name="programSourceView" Grid.Row="1" AllowDrop="True" SelectionMode="Extended" Style="{StaticResource {x:Static GridView.GridViewStyleKey}}"
|
||||
Margin="0 13 0 0"
|
||||
BorderBrush="DarkGray"
|
||||
BorderThickness="1"
|
||||
GridViewColumnHeader.Click="GridViewColumnHeaderClickedHandler"
|
||||
PreviewMouseRightButtonUp="ProgramSourceView_PreviewMouseRightButtonUp"
|
||||
DragEnter="programSourceView_DragEnter"
|
||||
Drop="programSourceView_Drop">
|
||||
<ListView.ItemContainerStyle>
|
||||
<Style TargetType="ListViewItem">
|
||||
<EventSetter Event="PreviewMouseUp" Handler="Row_OnClick"/>
|
||||
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
|
||||
</Style>
|
||||
</ListView.ItemContainerStyle>
|
||||
<ListView.View>
|
||||
|
|
@ -41,10 +46,10 @@
|
|||
</DataTemplate>
|
||||
</GridViewColumn.CellTemplate>
|
||||
</GridViewColumn>
|
||||
<GridViewColumn Header="Enabled" Width="50">
|
||||
<GridViewColumn Header="Enabled">
|
||||
<GridViewColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Enabled}"/>
|
||||
<TextBlock Text="{Binding Enabled}" MaxWidth="60" TextAlignment="Center"/>
|
||||
</DataTemplate>
|
||||
</GridViewColumn.CellTemplate>
|
||||
</GridViewColumn>
|
||||
|
|
@ -65,8 +70,8 @@
|
|||
</StackPanel>
|
||||
<StackPanel HorizontalAlignment="Right" Orientation="Horizontal">
|
||||
<Button x:Name="btnProgramSourceStatus" Click="btnProgramSourceStatus_OnClick" Width="100" Margin="10" Content="{DynamicResource flowlauncher_plugin_program_disable}" />
|
||||
<Button x:Name="btnAddProgramSource" Click="btnAddProgramSource_OnClick" Width="100" Margin="10" Content="{DynamicResource flowlauncher_plugin_program_add}"/>
|
||||
<Button x:Name="btnEditProgramSource" Click="btnEditProgramSource_OnClick" Width="100" Margin="10" Content="{DynamicResource flowlauncher_plugin_program_edit}"/>
|
||||
<Button x:Name="btnAddProgramSource" Click="btnAddProgramSource_OnClick" Width="100" Margin="10" Content="{DynamicResource flowlauncher_plugin_program_add}"/>
|
||||
</StackPanel>
|
||||
</DockPanel>
|
||||
</Grid>
|
||||
|
|
|
|||
|
|
@ -42,11 +42,34 @@ namespace Flow.Launcher.Plugin.Program.Views
|
|||
|
||||
StartMenuEnabled.IsChecked = _settings.EnableStartMenuSource;
|
||||
RegistryEnabled.IsChecked = _settings.EnableRegistrySource;
|
||||
|
||||
ViewRefresh();
|
||||
}
|
||||
|
||||
private void ViewRefresh()
|
||||
{
|
||||
if(programSourceView.Items.Count == 0
|
||||
&& btnProgramSourceStatus.Visibility == Visibility.Visible
|
||||
&& btnEditProgramSource.Visibility == Visibility.Visible)
|
||||
{
|
||||
btnProgramSourceStatus.Visibility = Visibility.Hidden;
|
||||
btnEditProgramSource.Visibility = Visibility.Hidden;
|
||||
}
|
||||
|
||||
if (programSourceView.Items.Count > 0
|
||||
&& btnProgramSourceStatus.Visibility == Visibility.Hidden
|
||||
&& btnEditProgramSource.Visibility == Visibility.Hidden)
|
||||
{
|
||||
btnProgramSourceStatus.Visibility = Visibility.Visible;
|
||||
btnEditProgramSource.Visibility = Visibility.Visible;
|
||||
}
|
||||
|
||||
programSourceView.Items.Refresh();
|
||||
}
|
||||
|
||||
private void ReIndexing()
|
||||
{
|
||||
programSourceView.Items.Refresh();
|
||||
ViewRefresh();
|
||||
Task.Run(() =>
|
||||
{
|
||||
Dispatcher.Invoke(() => { indexingPanel.Visibility = Visibility.Visible; });
|
||||
|
|
@ -63,7 +86,7 @@ namespace Flow.Launcher.Plugin.Program.Views
|
|||
ReIndexing();
|
||||
}
|
||||
|
||||
programSourceView.Items.Refresh();
|
||||
ViewRefresh();
|
||||
}
|
||||
|
||||
private void DeleteProgramSources(List<ProgramSource> itemsToDelete)
|
||||
|
|
@ -148,7 +171,7 @@ namespace Flow.Launcher.Plugin.Program.Views
|
|||
directoriesToAdd.ForEach(x => _settings.ProgramSources.Add(x));
|
||||
directoriesToAdd.ForEach(x => ProgramSettingDisplayList.Add(x));
|
||||
|
||||
programSourceView.Items.Refresh();
|
||||
ViewRefresh();
|
||||
ReIndexing();
|
||||
}
|
||||
}
|
||||
|
|
@ -170,7 +193,7 @@ namespace Flow.Launcher.Plugin.Program.Views
|
|||
{
|
||||
ProgramSettingDisplayList.LoadAllApplications();
|
||||
|
||||
programSourceView.Items.Refresh();
|
||||
ViewRefresh();
|
||||
}
|
||||
|
||||
private void btnProgramSourceStatus_OnClick(object sender, RoutedEventArgs e)
|
||||
|
|
@ -219,7 +242,7 @@ namespace Flow.Launcher.Plugin.Program.Views
|
|||
|
||||
programSourceView.SelectedItems.Clear();
|
||||
|
||||
programSourceView.Items.Refresh();
|
||||
ViewRefresh();
|
||||
}
|
||||
|
||||
private void ProgramSourceView_PreviewMouseRightButtonUp(object sender, MouseButtonEventArgs e)
|
||||
|
|
|
|||
|
|
@ -6,22 +6,20 @@
|
|||
mc:Ignorable="d"
|
||||
Loaded="CMDSetting_OnLoaded"
|
||||
d:DesignHeight="300" d:DesignWidth="300">
|
||||
<Border BorderBrush="Gray" Margin="10" BorderThickness="1">
|
||||
<Grid Margin="10" VerticalAlignment="Top" >
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
</Grid.RowDefinitions>
|
||||
<CheckBox Grid.Row="0" x:Name="ReplaceWinR" Content="{DynamicResource flowlauncher_plugin_cmd_relace_winr}" Margin="10" HorizontalAlignment="Left"/>
|
||||
<CheckBox Grid.Row="1" x:Name="LeaveShellOpen" Content="{DynamicResource flowlauncher_plugin_cmd_leave_cmd_open}" Margin="10" HorizontalAlignment="Left"/>
|
||||
<CheckBox Grid.Row="2" x:Name="AlwaysRunAsAdministrator" Content="{DynamicResource flowlauncher_plugin_cmd_always_run_as_administrator}" Margin="10" HorizontalAlignment="Left"/>
|
||||
<ComboBox Grid.Row="3" x:Name="ShellComboBox" Margin="10" HorizontalAlignment="Left" >
|
||||
<ComboBoxItem>CMD</ComboBoxItem>
|
||||
<ComboBoxItem>PowerShell</ComboBoxItem>
|
||||
<ComboBoxItem>RunCommand</ComboBoxItem>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Border>
|
||||
<Grid Margin="7,50" VerticalAlignment="Top" >
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
</Grid.RowDefinitions>
|
||||
<CheckBox Grid.Row="0" x:Name="ReplaceWinR" Content="{DynamicResource flowlauncher_plugin_cmd_relace_winr}" Margin="10" HorizontalAlignment="Left"/>
|
||||
<CheckBox Grid.Row="1" x:Name="LeaveShellOpen" Content="{DynamicResource flowlauncher_plugin_cmd_leave_cmd_open}" Margin="10" HorizontalAlignment="Left"/>
|
||||
<CheckBox Grid.Row="2" x:Name="AlwaysRunAsAdministrator" Content="{DynamicResource flowlauncher_plugin_cmd_always_run_as_administrator}" Margin="10" HorizontalAlignment="Left"/>
|
||||
<ComboBox Grid.Row="3" x:Name="ShellComboBox" Margin="10" HorizontalAlignment="Left" >
|
||||
<ComboBoxItem>CMD</ComboBoxItem>
|
||||
<ComboBoxItem>PowerShell</ComboBoxItem>
|
||||
<ComboBoxItem>RunCommand</ComboBoxItem>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</UserControl>
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 5.3 KiB |
|
|
@ -17,7 +17,7 @@
|
|||
<system:String x:Key="flowlauncher_plugin_sys_emptyrecyclebin">Empty recycle bin</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_sys_hibernate">Hibernate computer</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_sys_save_all_settings">Save all Flow Launcher settings</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_sys_reload_plugin_data">Reloads plugin data with new content added after Flow Launcher started. Plugins need to have this feature already added.</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_sys_reload_plugin_data">Refreshes plugin data with new content</system:String>
|
||||
|
||||
<!--Dialogs-->
|
||||
<system:String x:Key="flowlauncher_plugin_sys_dlgtitle_success">Success</system:String>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
<UserControl x:Class="Flow.Launcher.Plugin.Sys.SysSettings"
|
||||
<UserControl x:Class="Flow.Launcher.Plugin.Sys.SysSettings"
|
||||
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"
|
||||
|
|
@ -6,7 +6,10 @@
|
|||
mc:Ignorable="d"
|
||||
d:DesignHeight="300" d:DesignWidth="300">
|
||||
<Grid Margin="10">
|
||||
<ListView x:Name="lbxCommands" Grid.Row="0">
|
||||
<ListView x:Name="lbxCommands" Grid.Row="0" Style="{StaticResource {x:Static GridView.GridViewStyleKey}}"
|
||||
BorderBrush="DarkGray"
|
||||
BorderThickness="1"
|
||||
Margin="7 15 0 25">
|
||||
<ListView.View>
|
||||
<GridView>
|
||||
<GridViewColumn Header="{DynamicResource flowlauncher_plugin_sys_command}" Width="150">
|
||||
|
|
@ -16,7 +19,7 @@
|
|||
</DataTemplate>
|
||||
</GridViewColumn.CellTemplate>
|
||||
</GridViewColumn>
|
||||
<GridViewColumn Header="{DynamicResource flowlauncher_plugin_sys_desc}" Width="Auto">
|
||||
<GridViewColumn Header="{DynamicResource flowlauncher_plugin_sys_desc}" Width="379">
|
||||
<GridViewColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding SubTitle}"/>
|
||||
|
|
@ -26,6 +29,5 @@
|
|||
</GridView>
|
||||
</ListView.View>
|
||||
</ListView>
|
||||
|
||||
</Grid>
|
||||
</UserControl>
|
||||
|
|
|
|||
|
|
@ -4,20 +4,26 @@
|
|||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="500">
|
||||
<Grid Margin="10,10,10,0">
|
||||
<Grid Margin="40,40,10,0">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="40" />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Orientation="Horizontal" Grid.Row="0">
|
||||
<Label Content="Open search in:" Margin="40 3 0 8" />
|
||||
<RadioButton x:Name="NewWindowBrowser" GroupName="OpenSearchBehaviour" Content="New window" Click="OnNewBrowserWindowClick" Margin="10" />
|
||||
<RadioButton x:Name="NewTabInBrowser" GroupName="OpenSearchBehaviour" Content="New tab" Click="OnNewTabClick" Margin="10" />
|
||||
<Label Content="Open search in:" Margin="0 10 15 0" />
|
||||
<RadioButton x:Name="NewWindowBrowser" GroupName="OpenSearchBehaviour"
|
||||
Content="New window" Click="OnNewBrowserWindowClick" />
|
||||
<RadioButton x:Name="NewTabInBrowser" GroupName="OpenSearchBehaviour"
|
||||
Content="New tab" Click="OnNewTabClick" />
|
||||
</StackPanel>
|
||||
<StackPanel VerticalAlignment="Top" Grid.Row="1" Height="106" Margin="41,13,0,0">
|
||||
<Label Content="{DynamicResource flowlauncher_plugin_url_plugin_set_tip}" Height="28" Margin="0,0,155,0" HorizontalAlignment="Left" Width="290" />
|
||||
<TextBox x:Name="browserPathBox" HorizontalAlignment="Left" Height="34" Margin="5,0,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="311" RenderTransformOrigin="0.502,-1.668" />
|
||||
<Button x:Name="viewButton" HorizontalAlignment="Left" Margin="340,-33,-1,0" Width="100" Height="28" Click="OnChooseClick" FontSize="10" Content="{DynamicResource flowlauncher_plugin_url_plugin_choose}" />
|
||||
<StackPanel VerticalAlignment="Top" Grid.Row="1" Height="106" Margin="0 20 0 0">
|
||||
<Label Content="{DynamicResource flowlauncher_plugin_url_plugin_set_tip}" Height="28" Margin="0,0,155,0"
|
||||
HorizontalAlignment="Left" Width="290" />
|
||||
<TextBox x:Name="browserPathBox" HorizontalAlignment="Left" Height="34" TextWrapping="Wrap"
|
||||
VerticalAlignment="Top" Width="311" RenderTransformOrigin="0.502,-1.668" />
|
||||
<Button x:Name="viewButton" HorizontalAlignment="Left" Margin="340,-33,-1,0" Width="100"
|
||||
Height="32" Click="OnChooseClick" FontSize="14"
|
||||
Content="{DynamicResource flowlauncher_plugin_url_plugin_choose}" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</UserControl>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
<system:String x:Key="flowlauncher_plugin_websearch_action_keyword">Action Keyword</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_websearch_url">URL</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_websearch_search">Search</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_websearch_enable_suggestion">Enable search suggestions</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_websearch_enable_suggestion">Search suggestions</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_websearch_pls_select_web_search">Please select a web search</system:String>
|
||||
<system:String x:Key="flowlauncher_plugin_websearch_delete_warning">Are you sure you want to delete {0}?</system:String>
|
||||
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
mc:Ignorable="d"
|
||||
ResizeMode="NoResize"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
Title="Search Source Setting" Height="300" Width="500"
|
||||
Title="Search Source Setting" Height="400" Width="500"
|
||||
d:DataContext="{d:DesignInstance vm:SearchSourceViewModel}">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
|
|
@ -47,16 +47,16 @@
|
|||
<TextBlock Margin="10" FontSize="14" Grid.Row="4" Grid.Column="0" VerticalAlignment="Center"
|
||||
HorizontalAlignment="Right" Text="{DynamicResource flowlauncher_plugin_websearch_icon}" />
|
||||
<StackPanel Orientation="Horizontal" Grid.Row="4" Grid.Column="1" Margin="10">
|
||||
<Image Source="{Binding SearchSource.Image ,IsAsync=True}" Width="24" Height="24" Margin="0 0 10 0" />
|
||||
<Button Click="OnSelectIconClick" Height="24"
|
||||
<Image Source="{Binding SearchSource.Image ,IsAsync=True}" Width="24" Height="24" Margin="0 0 20 0" />
|
||||
<Button Click="OnSelectIconClick" Height="35"
|
||||
Content="{DynamicResource flowlauncher_plugin_websearch_select_icon}" />
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" Grid.Row="5" Grid.Column="1">
|
||||
<Button Click="OnCancelButtonClick"
|
||||
Margin="10 0 10 0" Width="80" Height="25"
|
||||
Margin="10 0 10 0" Width="80" Height="35"
|
||||
Content="{DynamicResource flowlauncher_plugin_websearch_cancel}" />
|
||||
<Button Click="OnConfirmButtonClick"
|
||||
Margin="10 0 10 0" Width="80" Height="25"
|
||||
Margin="10 0 10 0" Width="80" Height="35"
|
||||
Content="{DynamicResource flowlauncher_plugin_websearch_confirm}" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
|
|
|||
|
|
@ -8,34 +8,49 @@
|
|||
Background="White"
|
||||
d:DataContext="{d:DesignInstance vm:SettingsViewModel}"
|
||||
d:DesignHeight="300" d:DesignWidth="500">
|
||||
<Grid Margin="10">
|
||||
<UserControl.Resources>
|
||||
<Style TargetType="TextBox" x:Key="BrowserPathBoxStyle">
|
||||
<Setter Property="Height" Value="28"/>
|
||||
<Setter Property="VerticalContentAlignment" Value="Center"/>
|
||||
</Style>
|
||||
</UserControl.Resources>
|
||||
<Grid Margin="15 0 0 0">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="40" />
|
||||
<RowDefinition Height="30" />
|
||||
<RowDefinition Height="48" />
|
||||
<RowDefinition Height="45" />
|
||||
<RowDefinition />
|
||||
<RowDefinition Height="40" />
|
||||
<RowDefinition Height="50" />
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Orientation="Horizontal" Grid.Row="0">
|
||||
<CheckBox IsChecked="{Binding Settings.EnableSuggestion}"
|
||||
Margin="0 10 10 10"
|
||||
Margin="0 0 20 0"
|
||||
Name="EnableSuggestion"
|
||||
Content="{DynamicResource flowlauncher_plugin_websearch_enable_suggestion}" />
|
||||
<ComboBox ItemsSource="{Binding Settings.Suggestions}"
|
||||
SelectedItem="{Binding Settings.SelectedSuggestion}"
|
||||
IsEnabled="{Binding ElementName=EnableSuggestion, Path=IsChecked}" Margin="10,3,10,10" />
|
||||
IsEnabled="{Binding ElementName=EnableSuggestion, Path=IsChecked}" />
|
||||
<!-- Not sure why binding IsEnabled directly to Settings.EnableWebSaerchSuggestion is not working -->
|
||||
<Label Content="Open search in:" Margin="30 3 0 8"/>
|
||||
<RadioButton Name="NewWindowBrowser" GroupName="OpenSearchBehaviour" Content="New window" Click="OnNewBrowserWindowClick" Margin="10" />
|
||||
<RadioButton Name="NewTabInBrowser" GroupName="OpenSearchBehaviour" Content="New tab" Click="OnNewTabClick" Margin="10" />
|
||||
</StackPanel>
|
||||
<StackPanel Grid.Row="1" HorizontalAlignment="Left" Margin="0,3,0,17" Width="480">
|
||||
<Label Content="Set browser from path:" Height="28" Margin="0,0,350,0" HorizontalAlignment="Left" Width="130"/>
|
||||
<TextBox x:Name="browserPathBox" HorizontalAlignment="Left" Height="21" Margin="138,-25,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="214" RenderTransformOrigin="0.502,-1.668"/>
|
||||
<Button x:Name="viewButton" HorizontalAlignment="Left" Margin="381,-30,0,0" Width="58" Height="25" Click="OnChooseClick" FontSize="10" Content="Choose" />
|
||||
<StackPanel Grid.Row="1" HorizontalAlignment="Left" Orientation="Horizontal">
|
||||
<Label Content="Open search in:" Margin="0 15 20 0"/>
|
||||
<RadioButton Name="NewWindowBrowser" GroupName="OpenSearchBehaviour" Content="New window" Click="OnNewBrowserWindowClick"
|
||||
Margin="0 0 20 0"/>
|
||||
<RadioButton Name="NewTabInBrowser" GroupName="OpenSearchBehaviour" Content="New tab" Click="OnNewTabClick" />
|
||||
</StackPanel>
|
||||
<StackPanel Grid.Row="2" HorizontalAlignment="Left" Margin="0 3 0 0">
|
||||
<Label Content="Set browser from path:" Margin="0 0 350 0" HorizontalAlignment="Left" Width="140"/>
|
||||
<TextBox x:Name="browserPathBox" HorizontalAlignment="Left" Margin="160,-22,0,0"
|
||||
Width="214" Style="{StaticResource BrowserPathBoxStyle}"/>
|
||||
<Button x:Name="viewButton" HorizontalAlignment="Left" Margin="400,-30,0,0"
|
||||
Click="OnChooseClick" FontSize="13" Content="Choose" Width="80"/>
|
||||
</StackPanel>
|
||||
<ListView ItemsSource="{Binding Settings.SearchSources}"
|
||||
SelectedItem="{Binding Settings.SelectedSearchSource}"
|
||||
Grid.Row="2">
|
||||
Grid.Row="3"
|
||||
Style="{StaticResource {x:Static GridView.GridViewStyleKey}}"
|
||||
BorderBrush="DarkGray"
|
||||
BorderThickness="1">
|
||||
<ListView.View>
|
||||
<GridView>
|
||||
<GridViewColumn Header="{DynamicResource flowlauncher_plugin_websearch_action_keyword}">
|
||||
|
|
@ -45,7 +60,7 @@
|
|||
</DataTemplate>
|
||||
</GridViewColumn.CellTemplate>
|
||||
</GridViewColumn>
|
||||
<GridViewColumn Header="{DynamicResource flowlauncher_plugin_websearch_url}">
|
||||
<GridViewColumn Header="{DynamicResource flowlauncher_plugin_websearch_url}" Width="418">
|
||||
<GridViewColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Url}" />
|
||||
|
|
@ -55,12 +70,12 @@
|
|||
</GridView>
|
||||
</ListView.View>
|
||||
</ListView>
|
||||
<StackPanel Grid.Row="3" HorizontalAlignment="Right" Orientation="Horizontal">
|
||||
<StackPanel Grid.Row="4" HorizontalAlignment="Right" Orientation="Horizontal">
|
||||
<Button Click="OnDeleteSearchSearchClick" Width="100" Margin="10"
|
||||
Content="{DynamicResource flowlauncher_plugin_websearch_delete}" />
|
||||
<Button Click="OnEditSearchSourceClick" Width="100" Margin="10"
|
||||
Content="{DynamicResource flowlauncher_plugin_websearch_edit}" />
|
||||
<Button Click="OnAddSearchSearchClick" Width="100" Margin="10"
|
||||
<Button Click="OnAddSearchSearchClick" Width="100" Margin="10 10 10 10"
|
||||
Content="{DynamicResource flowlauncher_plugin_websearch_add}" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 5.3 KiB |
|
|
@ -12,6 +12,7 @@ Flow Launcher. Dedicated to make your workflow flow more seamlessly. Aimed at be
|
|||
<sub>Remember to star it, flow will love you more :)</sub>
|
||||
|
||||
## Features
|
||||

|
||||
|
||||
- Search everything from applications, folders, bookmarks, YouTube, Twitter and more. All from the comfort of your keyboard without ever touching the mouse.
|
||||
- Run batch and PowerShell commands as Administrator or a different user.
|
||||
|
|
|
|||