Skip to content

Commit acf3a27

Browse files
committed
Improve code quality
1 parent 0d74048 commit acf3a27

File tree

2 files changed

+46
-45
lines changed

2 files changed

+46
-45
lines changed

Flow.Launcher/MainWindow.xaml.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -296,7 +296,7 @@ private void OnKeyDown(object sender, KeyEventArgs e)
296296
e.Handled = true;
297297
break;
298298
case Key.Right:
299-
if (_viewModel.SelectedIsFromQueryResults()
299+
if (_viewModel.QueryResultsSelected()
300300
&& QueryTextBox.CaretIndex == QueryTextBox.Text.Length
301301
&& !string.IsNullOrEmpty(QueryTextBox.Text))
302302
{
@@ -306,7 +306,7 @@ private void OnKeyDown(object sender, KeyEventArgs e)
306306

307307
break;
308308
case Key.Left:
309-
if (!_viewModel.SelectedIsFromQueryResults() && QueryTextBox.CaretIndex == 0)
309+
if (!_viewModel.QueryResultsSelected() && QueryTextBox.CaretIndex == 0)
310310
{
311311
_viewModel.EscCommand.Execute(null);
312312
e.Handled = true;
@@ -316,7 +316,7 @@ private void OnKeyDown(object sender, KeyEventArgs e)
316316
case Key.Back:
317317
if (specialKeyState.CtrlPressed)
318318
{
319-
if (_viewModel.SelectedIsFromQueryResults()
319+
if (_viewModel.QueryResultsSelected()
320320
&& QueryTextBox.Text.Length > 0
321321
&& QueryTextBox.CaretIndex == QueryTextBox.Text.Length)
322322
{

Flow.Launcher/ViewModel/MainViewModel.cs

Lines changed: 43 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ public MainViewModel()
164164
case nameof(Results.SelectedItem):
165165
_selectedItemFromQueryResults = true;
166166
PreviewSelectedItem = Results.SelectedItem;
167-
UpdatePreview();
167+
_ = UpdatePreviewAsync();
168168
break;
169169
}
170170
};
@@ -176,7 +176,7 @@ public MainViewModel()
176176
case nameof(History.SelectedItem):
177177
_selectedItemFromQueryResults = false;
178178
PreviewSelectedItem = History.SelectedItem;
179-
UpdatePreview();
179+
_ = UpdatePreviewAsync();
180180
break;
181181
}
182182
};
@@ -280,7 +280,7 @@ private async Task ReloadPluginDataAsync()
280280
[RelayCommand]
281281
private void LoadHistory()
282282
{
283-
if (SelectedIsFromQueryResults())
283+
if (QueryResultsSelected())
284284
{
285285
SelectedResults = History;
286286
History.SelectedIndex = _history.Items.Count - 1;
@@ -294,7 +294,7 @@ private void LoadHistory()
294294
[RelayCommand]
295295
public void ReQuery()
296296
{
297-
if (SelectedIsFromQueryResults())
297+
if (QueryResultsSelected())
298298
{
299299
_ = QueryResultsAsync(isReQuery: true);
300300
}
@@ -335,7 +335,7 @@ public void ForwardHistory()
335335
[RelayCommand]
336336
private void LoadContextMenu()
337337
{
338-
if (SelectedIsFromQueryResults())
338+
if (QueryResultsSelected())
339339
{
340340
// When switch to ContextMenu from QueryResults, but no item being chosen, should do nothing
341341
// i.e. Shift+Enter/Ctrl+O right after Alt + Space should do nothing
@@ -365,7 +365,7 @@ private void Backspace(object index)
365365
private void AutocompleteQuery()
366366
{
367367
var result = SelectedResults.SelectedItem?.Result;
368-
if (result != null && SelectedIsFromQueryResults()) // SelectedItem returns null if selection is empty.
368+
if (result != null && QueryResultsSelected()) // SelectedItem returns null if selection is empty.
369369
{
370370
var autoCompleteText = result.Title;
371371

@@ -417,7 +417,7 @@ private async Task OpenResultAsync(string index)
417417
})
418418
.ConfigureAwait(false);
419419

420-
if (SelectedIsFromQueryResults())
420+
if (QueryResultsSelected())
421421
{
422422
_userSelectedRecord.Add(result);
423423
// origin query is null when user select the context menu item directly of one item from query list
@@ -496,7 +496,7 @@ private void SelectPrevItem()
496496
{
497497
if (_history.Items.Count > 0
498498
&& QueryText == string.Empty
499-
&& SelectedIsFromQueryResults())
499+
&& QueryResultsSelected())
500500
{
501501
lastHistoryIndex = 1;
502502
ReverseHistory();
@@ -516,7 +516,7 @@ private void SelectNextItem()
516516
[RelayCommand]
517517
private void Esc()
518518
{
519-
if (!SelectedIsFromQueryResults())
519+
if (!QueryResultsSelected())
520520
{
521521
SelectedResults = Results;
522522
}
@@ -528,7 +528,7 @@ private void Esc()
528528

529529
public void BackToQueryResults()
530530
{
531-
if (!SelectedIsFromQueryResults())
531+
if (!QueryResultsSelected())
532532
{
533533
SelectedResults = Results;
534534
}
@@ -662,11 +662,11 @@ private ResultsViewModel SelectedResults
662662
get => _selectedResults;
663663
set
664664
{
665-
var isReturningFromQueryResults = SelectedIsFromQueryResults();
665+
var isReturningFromQueryResults = QueryResultsSelected();
666666
var isReturningFromContextMenu = ContextMenuSelected();
667667
var isReturningFromHistory = HistorySelected();
668668
_selectedResults = value;
669-
if (SelectedIsFromQueryResults())
669+
if (QueryResultsSelected())
670670
{
671671
Results.Visibility = Visibility.Visible;
672672
ContextMenu.Visibility = Visibility.Collapsed;
@@ -871,9 +871,9 @@ public bool InternalPreviewVisible
871871
// This is not a reliable indicator of whether external preview is visible due to the
872872
// ability of manually closing/exiting the external preview program which, does not inform flow that
873873
// preview is no longer available.
874-
public bool ExternalPreviewVisible { get; set; } = false;
874+
public bool ExternalPreviewVisible { get; private set; }
875875

876-
private void ShowPreview()
876+
private async Task ShowPreviewAsync()
877877
{
878878
var useExternalPreview = PluginManager.UseExternalPreview();
879879

@@ -884,13 +884,15 @@ when CanExternalPreviewSelectedResult(out var path):
884884
// Internal preview may still be on when user switches to external
885885
if (InternalPreviewVisible)
886886
HideInternalPreview();
887-
OpenExternalPreview(path);
887+
888+
_ = OpenExternalPreviewAsync(path);
888889
break;
889890

890891
case true
891892
when !CanExternalPreviewSelectedResult(out var _):
892893
if (ExternalPreviewVisible)
893-
CloseExternalPreview();
894+
await CloseExternalPreviewAsync();
895+
894896
ShowInternalPreview();
895897
break;
896898

@@ -903,7 +905,7 @@ when CanExternalPreviewSelectedResult(out var path):
903905
private void HidePreview()
904906
{
905907
if (PluginManager.UseExternalPreview())
906-
CloseExternalPreview();
908+
_ = CloseExternalPreviewAsync();
907909

908910
if (InternalPreviewVisible)
909911
HideInternalPreview();
@@ -918,25 +920,25 @@ private void TogglePreview()
918920
}
919921
else
920922
{
921-
ShowPreview();
923+
_ = ShowPreviewAsync();
922924
}
923925
}
924926

925-
private void OpenExternalPreview(string path, bool sendFailToast = true)
927+
private async Task OpenExternalPreviewAsync(string path, bool sendFailToast = true)
926928
{
927-
_ = PluginManager.OpenExternalPreviewAsync(path, sendFailToast).ConfigureAwait(false);
929+
await PluginManager.OpenExternalPreviewAsync(path, sendFailToast).ConfigureAwait(false);
928930
ExternalPreviewVisible = true;
929931
}
930932

931-
private void CloseExternalPreview()
933+
private async Task CloseExternalPreviewAsync()
932934
{
933-
_ = PluginManager.CloseExternalPreviewAsync().ConfigureAwait(false);
935+
await PluginManager.CloseExternalPreviewAsync().ConfigureAwait(false);
934936
ExternalPreviewVisible = false;
935937
}
936938

937-
private static void SwitchExternalPreview(string path, bool sendFailToast = true)
939+
private static async Task SwitchExternalPreviewAsync(string path, bool sendFailToast = true)
938940
{
939-
_ = PluginManager.SwitchExternalPreviewAsync(path,sendFailToast).ConfigureAwait(false);
941+
await PluginManager.SwitchExternalPreviewAsync(path, sendFailToast).ConfigureAwait(false);
940942
}
941943

942944
private void ShowInternalPreview()
@@ -956,45 +958,41 @@ public void ResetPreview()
956958
{
957959
case true
958960
when PluginManager.AllowAlwaysPreview() && CanExternalPreviewSelectedResult(out var path):
959-
OpenExternalPreview(path);
961+
_ = OpenExternalPreviewAsync(path);
960962
break;
961-
962963
case true:
963964
ShowInternalPreview();
964965
break;
965-
966966
case false:
967967
HidePreview();
968968
break;
969969
}
970970
}
971971

972-
private void UpdatePreview()
972+
private async Task UpdatePreviewAsync()
973973
{
974974
switch (PluginManager.UseExternalPreview())
975975
{
976976
case true
977977
when CanExternalPreviewSelectedResult(out var path):
978978
if (ExternalPreviewVisible)
979979
{
980-
SwitchExternalPreview(path, false);
980+
_ = SwitchExternalPreviewAsync(path, false);
981981
}
982982
else if (InternalPreviewVisible)
983983
{
984984
HideInternalPreview();
985-
OpenExternalPreview(path);
985+
_ = OpenExternalPreviewAsync(path);
986986
}
987987
break;
988-
989988
case true
990989
when !CanExternalPreviewSelectedResult(out var _):
991990
if (ExternalPreviewVisible)
992991
{
993-
CloseExternalPreview();
992+
await CloseExternalPreviewAsync();
994993
ShowInternalPreview();
995994
}
996995
break;
997-
998996
case false
999997
when InternalPreviewVisible:
1000998
PreviewSelectedItem?.LoadPreviewImage();
@@ -1004,17 +1002,23 @@ when CanExternalPreviewSelectedResult(out var path):
10041002

10051003
private bool CanExternalPreviewSelectedResult(out string path)
10061004
{
1007-
path = PreviewSelectedItem == Results.SelectedItem ? Results.SelectedItem?.Result?.Preview.FilePath : string.Empty;
1005+
path = QueryResultsPreviewed() ? Results.SelectedItem?.Result?.Preview.FilePath : string.Empty;
10081006
return !string.IsNullOrEmpty(path);
10091007
}
1008+
1009+
private bool QueryResultsPreviewed()
1010+
{
1011+
var previewed = PreviewSelectedItem == Results.SelectedItem;
1012+
return previewed;
1013+
}
10101014

10111015
#endregion
10121016

10131017
#region Query
10141018

10151019
public void Query(bool isReQuery = false)
10161020
{
1017-
if (SelectedIsFromQueryResults())
1021+
if (QueryResultsSelected())
10181022
{
10191023
_ = QueryResultsAsync(isReQuery);
10201024
}
@@ -1382,7 +1386,7 @@ private static Result ContextMenuPluginInfo(string id)
13821386
return menu;
13831387
}
13841388

1385-
internal bool SelectedIsFromQueryResults()
1389+
internal bool QueryResultsSelected()
13861390
{
13871391
var selected = SelectedResults == Results;
13881392
return selected;
@@ -1447,10 +1451,10 @@ public async void Hide()
14471451

14481452
if (ExternalPreviewVisible)
14491453
{
1450-
CloseExternalPreview();
1454+
await CloseExternalPreviewAsync();
14511455
}
14521456

1453-
if (!SelectedIsFromQueryResults())
1457+
if (!QueryResultsSelected())
14541458
{
14551459
SelectedResults = Results;
14561460
}
@@ -1460,10 +1464,7 @@ public async void Hide()
14601464
{
14611465
ChangeQueryText(string.Empty);
14621466
await Task.Delay(1); // Wait for one frame to ensure UI reflects changes
1463-
Application.Current.Dispatcher.Invoke(() =>
1464-
{
1465-
Application.Current.MainWindow.UpdateLayout(); // Force UI update
1466-
});
1467+
Application.Current.Dispatcher.Invoke(Application.Current.MainWindow.UpdateLayout); // Force UI update
14671468
}
14681469

14691470
switch (Settings.LastQueryMode)

0 commit comments

Comments
 (0)