コード例 #1
0
        /// <summary>
        /// Class constructor.
        /// Initializes component (Xaml partial).
        /// </summary>
        public MobileMainView()
        {
            InitializeComponent();

            _ecoreKeyUp     = new EcoreEvent <EcoreKeyEventArgs>(EcoreEventType.KeyUp, EcoreKeyEventArgs.Create);
            _ecoreKeyUp.On += _ecoreKeyUp_On;
        }
コード例 #2
0
        protected override void OnCreate()
        {
            base.OnCreate();

            _keyDown     = new EcoreEvent <EcoreKeyEventArgs>(EcoreEventType.KeyDown, EcoreKeyEventArgs.Create);
            _keyDown.On += (s, e) =>
            {
                Xamarin.Forms.MessagingCenter.Send <IKeyEventSender, string>(this, "KeyDown", e.KeyName);
            };

            LoadApplication(new App());
        }
コード例 #3
0
 /// <summary>
 /// Unregister KeyEvent
 /// </summary>
 /// <param name="page">Page to get notified about HW key Event</param>
 /// <seealso cref="Page"></seealso>
 /// <param name="key">HW key event string</param>
 /// <seealso cref="string"></seealso>
 public void UnregisterKeyEvent(Page page, string key)
 {
     if (_key != null)
     {
         _key.Dispose();
         _key = null;
         // Grab key events using the ElmSharp.Window.KeyGrabEx().
         global::Xamarin.Forms.Platform.Tizen.Forms.Context.MainWindow.KeyUngrabEx(key);
     }
     else
     {
         System.Diagnostics.Debug.WriteLine(" +++++ [UnregisterKeyEvent] It's already disposed!!  Page(" + page.Title + ") Key(" + key + ")");
     }
 }
コード例 #4
0
        protected override void OnCreate()
        {
            base.OnCreate();

            Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
            ServicePointManager.DefaultConnectionLimit = 100;

            _keyDown     = new EcoreEvent <EcoreKeyEventArgs>(EcoreEventType.KeyDown, EcoreKeyEventArgs.Create);
            _keyDown.On += (s, e) =>
            {
                // Send key event to the portable project using MessagingCenter
                MessagingCenter.Send <IKeyEventSender, string>(this, "KeyDown", e.KeyName);
            };

            app = new App();
            LoadApplication(app);
        }
コード例 #5
0
        /// <summary>
        /// Initializes new instance of KeyboardService class.
        /// </summary>
        public KeyboardService()
        {
            EcoreEvent <EcoreKeyEventArgs> keyDown = new EcoreEvent <EcoreKeyEventArgs>(
                EcoreEventType.KeyDown, EcoreKeyEventArgs.Create);

            keyDown.On += (s, e) =>
            {
                switch (e.KeyName)
                {
                case "Down":
                    ArrowDownKeyDown?.Invoke(this, null);
                    break;

                case "Up":
                    ArrowUpKeyDown?.Invoke(this, null);
                    break;
                }
            };
        }
コード例 #6
0
        /// <summary>
        /// Register KeyEvent
        /// </summary>
        /// <param name="page">Page to get notified about HW key Event</param>
        /// <param name="key">HW key event string</param>
        public void RegisterKeyEvent(Page page, string key)
        {
            Page _page = page;

            // Register key event callbacks for the window using the EcoreEvent.
            _key     = new EcoreEvent <EcoreKeyEventArgs>(EcoreEventType.KeyUp, EcoreKeyEventArgs.Create);
            _key.On += (s, e) =>
            {
                // Send key event to the portable project using MessagingCenter
                if (e.KeyName.Equals(key))
                {
                    // Send key event to the portable project using MessagingCenter
                    MessagingCenter.Send <IKeyEventSender, string>(this, page.Title + key, e.KeyName);
                }
            };

            // Grab key events using the ElmSharp.Window.KeyGrabEx().
            global::Xamarin.Forms.Platform.Tizen.Forms.Context.MainWindow.KeyGrabEx(key);
        }
コード例 #7
0
 public override void Initialize()
 {
     Context.AddLifecycleEventListener(this);
     _keyDown     = new EcoreEvent <EcoreKeyEventArgs>(EcoreEventType.KeyDown, EcoreKeyEventArgs.Create);
     _keyDown.On += (s, e) =>
     {
         //Propagate the key press event to JavaScript module
         var param = new JObject();
         param.Add("KeyName", e.KeyName);
         param.Add("KeyCode", e.KeyCode);
         SendEvent("onTVKeyDown", param);
     };
     _keyUp     = new EcoreEvent <EcoreKeyEventArgs>(EcoreEventType.KeyUp, EcoreKeyEventArgs.Create);
     _keyUp.On += (s, e) =>
     {
         //Propagate the key press event to JavaScript module
         var param = new JObject();
         param.Add("KeyName", e.KeyName);
         param.Add("KeyCode", e.KeyCode);
         SendEvent("onTVKeyUp", param);
     };
 }
コード例 #8
0
 private void InitializeKeyEvent()
 {
     _keyDown     = new EcoreEvent <EcoreKeyEventArgs>(EcoreEventType.KeyDown, EcoreKeyEventArgs.Create);
     _keyDown.On += KeyEventHandler;
 }
コード例 #9
0
 EcoreKeyEvents()
 {
     _ecoreKeyDown = new EcoreEvent <EcoreKeyEventArgs>(EcoreEventType.KeyDown, EcoreKeyEventArgs.Create);
     _ecoreKeyUp   = new EcoreEvent <EcoreKeyEventArgs>(EcoreEventType.KeyUp, EcoreKeyEventArgs.Create);
 }