Fix search and global title bar issues.

This commit is contained in:
Burak Kaan Köse
2026-03-25 09:45:49 +01:00
parent 7aad6b0157
commit 0056f372b9
17 changed files with 417 additions and 168 deletions
@@ -122,11 +122,6 @@
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<AutoSuggestBox
PlaceholderText="{x:Bind domain:Translator.ContactsPage_SearchPlaceholder, Mode=OneTime}"
QueryIcon="Find"
Text="{x:Bind ViewModel.SearchQuery, Mode=TwoWay}" />
<Button
Grid.Column="1"
Command="{x:Bind ViewModel.ReloadContactsCommand}"
@@ -1,15 +1,30 @@
using System;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.UI.Xaml.Controls;
using Wino.Core.Domain;
using Wino.Mail.ViewModels;
using Wino.Mail.ViewModels.Data;
using Wino.Mail.WinUI.Interfaces;
using Wino.Mail.WinUI.Models;
using Wino.Views.Abstract;
namespace Wino.Views.Settings;
public sealed partial class ContactsPage : ContactsPageAbstract
public sealed partial class ContactsPage : ContactsPageAbstract, ITitleBarSearchHost
{
public ObservableCollection<TitleBarSearchSuggestion> SearchSuggestions { get; } = [];
public string SearchText
{
get => ViewModel.SearchQuery;
set => ViewModel.SearchQuery = value;
}
public string SearchPlaceholderText => Translator.ContactsPage_SearchPlaceholder;
public ContactsPage()
{
InitializeComponent();
@@ -110,4 +125,22 @@ public sealed partial class ContactsPage : ContactsPageAbstract
ContactsListView.SelectionChanged += ContactsListView_SelectionChanged;
ViewModel.SelectedContacts.Clear();
}
public Task OnTitleBarSearchTextChangedAsync() => Task.CompletedTask;
public void OnTitleBarSearchSuggestionChosen(TitleBarSearchSuggestion suggestion)
{
}
public Task OnTitleBarSearchSubmittedAsync(string queryText, TitleBarSearchSuggestion? chosenSuggestion)
{
SearchText = queryText;
if (ViewModel.ReloadContactsCommand.CanExecute(null))
{
ViewModel.ReloadContactsCommand.Execute(null);
}
return Task.CompletedTask;
}
}