Example #1
0
 public virtual bool onKey(android.content.DialogInterface dialog, int keyCode, android.view.KeyEvent
                           @event)
 {
     if (keyCode == android.view.KeyEvent.KEYCODE_MENU || keyCode == android.view.KeyEvent
         .KEYCODE_BACK)
     {
         if (@event.getAction() == android.view.KeyEvent.ACTION_DOWN && @event.getRepeatCount
                 () == 0)
         {
             android.view.Window win = mDialog.getWindow();
             if (win != null)
             {
                 android.view.View decor = win.getDecorView();
                 if (decor != null)
                 {
                     android.view.KeyEvent.DispatcherState ds = decor.getKeyDispatcherState();
                     if (ds != null)
                     {
                         ds.startTracking(@event, this);
                         return(true);
                     }
                 }
             }
         }
         else
         {
             if (@event.getAction() == android.view.KeyEvent.ACTION_UP && [email protected]())
             {
                 android.view.Window win = mDialog.getWindow();
                 if (win != null)
                 {
                     android.view.View decor = win.getDecorView();
                     if (decor != null)
                     {
                         android.view.KeyEvent.DispatcherState ds = decor.getKeyDispatcherState();
                         if (ds != null && ds.isTracking(@event))
                         {
                             mMenu.close(true);
                             dialog.dismiss();
                             return(true);
                         }
                     }
                 }
             }
         }
     }
     // Menu shortcut matching
     return(mMenu.performShortcut(keyCode, @event, 0));
 }