Skip to content

Commit 350276d

Browse files
authored
Merge pull request #3370 from Jack251970/history_preview1
Support Preview Panel for History Results
2 parents 7c418a6 + 65f07d8 commit 350276d

File tree

7 files changed

+193
-122
lines changed

7 files changed

+193
-122
lines changed

Flow.Launcher.Infrastructure/Constant.cs

+1
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ public static class Constant
3232
public static readonly string MissingImgIcon = Path.Combine(ImagesDirectory, "app_missing_img.png");
3333
public static readonly string LoadingImgIcon = Path.Combine(ImagesDirectory, "loading.png");
3434
public static readonly string ImageIcon = Path.Combine(ImagesDirectory, "image.png");
35+
public static readonly string HistoryIcon = Path.Combine(ImagesDirectory, "history.png");
3536

3637
public static string PythonPath;
3738
public static string NodePath;

Flow.Launcher/MainWindow.xaml

+11-6
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,7 @@
216216

217217
<Border MouseDown="OnMouseDown" Style="{DynamicResource WindowBorderStyle}">
218218
<StackPanel Orientation="Vertical">
219-
<Grid>
219+
<Grid x:Name="QueryBoxArea">
220220
<Border MinHeight="30" Style="{DynamicResource QueryBoxBgStyle}">
221221
<Grid>
222222
<TextBox
@@ -339,7 +339,7 @@
339339
Y2="0" />
340340
</Grid>
341341

342-
<Grid ClipToBounds="True">
342+
<Grid x:Name="MiddleSeparatorArea" ClipToBounds="True">
343343
<ContentControl>
344344
<ContentControl.Style>
345345
<Style TargetType="ContentControl">
@@ -379,20 +379,22 @@
379379
</ContentControl>
380380
</Grid>
381381

382-
<Border Style="{DynamicResource WindowRadius}">
382+
<Border x:Name="ResultPreviewAreaBoarder" Style="{DynamicResource WindowRadius}">
383383
<Border.Clip>
384384
<MultiBinding Converter="{StaticResource BorderClipConverter}">
385385
<Binding Path="ActualWidth" RelativeSource="{RelativeSource Self}" />
386386
<Binding Path="ActualHeight" RelativeSource="{RelativeSource Self}" />
387387
<Binding Path="CornerRadius" RelativeSource="{RelativeSource Self}" />
388388
</MultiBinding>
389389
</Border.Clip>
390-
<Grid>
390+
391+
<Grid x:Name="ResultPreviewArea">
391392
<Grid.ColumnDefinitions>
392393
<ColumnDefinition Width="*" MinWidth="80" />
393394
<ColumnDefinition Width="Auto" />
394395
<ColumnDefinition Width="0.85*" MinWidth="244" />
395396
</Grid.ColumnDefinitions>
397+
396398
<StackPanel
397399
x:Name="ResultArea"
398400
Grid.Column="0"
@@ -419,7 +421,9 @@
419421
RightClickResultCommand="{Binding RightClickResultCommand}" />
420422
</ContentControl>
421423
</StackPanel>
424+
422425
<GridSplitter
426+
x:Name="PreviewMiddleSeparator"
423427
Grid.Column="1"
424428
Margin="0"
425429
HorizontalAlignment="Center"
@@ -433,6 +437,7 @@
433437
</ControlTemplate>
434438
</GridSplitter.Template>
435439
</GridSplitter>
440+
436441
<Grid
437442
x:Name="Preview"
438443
Grid.Column="2"
@@ -442,7 +447,7 @@
442447
<Border
443448
MinHeight="380"
444449
d:DataContext="{d:DesignInstance vm:ResultViewModel}"
445-
DataContext="{Binding SelectedItem, ElementName=ResultListBox}"
450+
DataContext="{Binding PreviewSelectedItem, Mode=OneWay}"
446451
Visibility="{Binding ShowDefaultPreview}">
447452
<Grid
448453
Margin="0 0 10 5"
@@ -519,7 +524,7 @@
519524
MaxHeight="{Binding ElementName=ResultListBox, Path=ActualHeight}"
520525
Padding="0 0 10 10"
521526
d:DataContext="{d:DesignInstance vm:ResultViewModel}"
522-
DataContext="{Binding SelectedItem, ElementName=ResultListBox}"
527+
DataContext="{Binding PreviewSelectedItem, Mode=OneWay}"
523528
Visibility="{Binding ShowCustomizedPreview}">
524529
<ContentControl Content="{Binding Result.PreviewPanel.Value}" />
525530
</Border>

Flow.Launcher/MainWindow.xaml.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -326,7 +326,7 @@ private void OnKeyDown(object sender, KeyEventArgs e)
326326
e.Handled = true;
327327
break;
328328
case Key.Right:
329-
if (_viewModel.SelectedIsFromQueryResults()
329+
if (_viewModel.QueryResultsSelected()
330330
&& QueryTextBox.CaretIndex == QueryTextBox.Text.Length
331331
&& !string.IsNullOrEmpty(QueryTextBox.Text))
332332
{
@@ -336,7 +336,7 @@ private void OnKeyDown(object sender, KeyEventArgs e)
336336

337337
break;
338338
case Key.Left:
339-
if (!_viewModel.SelectedIsFromQueryResults() && QueryTextBox.CaretIndex == 0)
339+
if (!_viewModel.QueryResultsSelected() && QueryTextBox.CaretIndex == 0)
340340
{
341341
_viewModel.EscCommand.Execute(null);
342342
e.Handled = true;
@@ -346,7 +346,7 @@ private void OnKeyDown(object sender, KeyEventArgs e)
346346
case Key.Back:
347347
if (specialKeyState.CtrlPressed)
348348
{
349-
if (_viewModel.SelectedIsFromQueryResults()
349+
if (_viewModel.QueryResultsSelected()
350350
&& QueryTextBox.Text.Length > 0
351351
&& QueryTextBox.CaretIndex == QueryTextBox.Text.Length)
352352
{

Flow.Launcher/Themes/Base.xaml

+4-3
Original file line numberDiff line numberDiff line change
@@ -390,6 +390,7 @@
390390
<Style.Triggers>
391391
<MultiDataTrigger>
392392
<MultiDataTrigger.Conditions>
393+
<Condition Binding="{Binding ElementName=History, Path=Visibility}" Value="Collapsed" />
393394
<Condition Binding="{Binding ElementName=ResultListBox, Path=Items.Count}" Value="0" />
394395
</MultiDataTrigger.Conditions>
395396
<MultiDataTrigger.Setters>
@@ -431,12 +432,12 @@
431432
</DataTrigger>
432433
</Style.Triggers>
433434
</Style>
435+
434436
<Style
435437
x:Key="PreviewBorderStyle"
436438
BasedOn="{StaticResource BasePreviewBorderStyle}"
437439
TargetType="{x:Type Border}">
438440
<Setter Property="BorderBrush" Value="Gray" />
439-
440441
</Style>
441442

442443
<Style x:Key="PreviewArea" TargetType="{x:Type Grid}">
@@ -446,8 +447,8 @@
446447
<MultiDataTrigger.Conditions>
447448
<!--
448449
<Condition Binding="{Binding ElementName=ResultListBox, Path=Visibility}" Value="Collapsed" />
449-
<Condition Binding="{Binding ElementName=ContextMenu, Path=Visibility}" Value="Collapsed" />
450-
<Condition Binding="{Binding ElementName=History, Path=Visibility}" Value="Collapsed" />-->
450+
<Condition Binding="{Binding ElementName=ContextMenu, Path=Visibility}" Value="Collapsed" />-->
451+
<Condition Binding="{Binding ElementName=History, Path=Visibility}" Value="Collapsed" />
451452
<Condition Binding="{Binding ElementName=ResultListBox, Path=Items.Count}" Value="0" />
452453
</MultiDataTrigger.Conditions>
453454
<MultiDataTrigger.Setters>

0 commit comments

Comments
 (0)