using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using Tango.PPC.Browser.Attributes;
using Tango.PPC.Browser.Views;
using Tango.PPC.Common.Helpers;
using Tango.Touch.Keyboard;
namespace Tango.PPC.Browser.BoundsObjects
{
[BoundObject("keyboard", "keyboard.js")]
public class KeyboardHandler
{
private DateTime _lastTime;
public KeyboardHandler()
{
_lastTime = DateTime.Now;
}
public void openKeyboard(String inputType)
{
if (DateTime.Now > _lastTime.AddMilliseconds(1000))
{
_lastTime = DateTime.Now;
Application.Current.Dispatcher.BeginInvoke(new Action(async () =>
{
switch (inputType)
{
case "search":
KeyboardHelper.OpenKeyboard(KeyboardActionKeyMode.Go);
break;
default:
KeyboardHelper.OpenKeyboard(KeyboardActionKeyMode.Next);
break;
}
await Task.Delay(50);
BrowserView.Instance.btnGo.Focus();
await Task.Delay(50);
BrowserView.Instance.Browser.Focus();
Debug.WriteLine("Focus");
}));
}
}
public void closeKeyboard()
{
if (DateTime.Now > _lastTime.AddMilliseconds(1000))
{
_lastTime = DateTime.Now;
Application.Current.Dispatcher.BeginInvoke(new Action(() =>
{
KeyboardHelper.CloseKeyboard();
}));
}
}
}
}