private async void textBox_KeyDown(object sender, KeyEventArgs e)
{
try
{
if (System.IO.File.Exists(StaticDeclarations.Historypath) && textBox.Text != null)
{
ShowSuggestions();
if (string.IsNullOrEmpty(textBox.Text.Trim()) == false)
{
MagicBox.Clear();
foreach (string str in allItems1)
{
if (str.Contains(textBox.Text.Trim()))
{
string[] split = str.Split(splitChar);
await MagicBox.AddSuggestion(split[1], split[0], mainWindow);
}
}
}
else if (textBox.Text.Trim() == "")
{
MagicBox.Clear();
foreach (string str in allItems1)
{
string[] split = str.Split(splitChar);
await MagicBox.AddSuggestion(split[1], split[0], mainWindow);
}
}
StaticFunctions.AnimateHeight(ListContainer.Height, MagicBox.ItemsCount * MagicBox.ItemHeight, ListContainer, 0.2);
}
else
{
ListContainer.Height = 0;
HideSuggestions();
}
}
catch (Exception ex)
{
Console.WriteLine("Listbox find suggestions error: " + ex.Message + " " + ex.Data);
}
if (e.Key == Key.Down)
{
MagicBox.Focus();
}
if (e.Key == Key.Enter)
{
dynamic textArray = textBox.Text.Split();
if ((textBox.Text.Contains(".") && !textBox.Text.Contains(" ") && !textBox.Text.Contains(" .") &&
!textBox.Text.Contains(". ")) || textArray[0].Contains(":/") || textArray[0].Contains(":\\"))
{
WebView.Load(textBox.Text);
}
else
{
try
{
dynamic dyn = JsonConvert.DeserializeObject(System.IO.File.ReadAllText("settings.json"));
if (Convert.ToString(dyn.SE) == "Google")
{
textBox.Text = textBox.Text.Replace(textBox.Text, "http://google.com/#q=" + textBox.Text);
WebView.Load(textBox.Text);
}
if (Convert.ToString(dyn.SE) == "DuckDuckGo")
{
textBox.Text = textBox.Text.Replace(textBox.Text, "https://duckduckgo.com/?q=" + textBox.Text);
WebView.Load(textBox.Text);
}
if (Convert.ToString(dyn.SE) == "Bing")
{
textBox.Text = textBox.Text.Replace(textBox.Text, "http://www.bing.com/search?q=" + textBox.Text);
WebView.Load(textBox.Text);
}
}
catch (Exception ex)
{
Console.WriteLine("textBox KeyDown Key.Enter error: " + ex.Message + " " + ex.Data);
}
}
HideSuggestions();
}
}