winjs / angular-winjs

Project to smooth the AngularJS/WinJS interaction
Other
126 stars 46 forks source link

Flyout is hidden when typing button Alt #107

Open h2qutc opened 7 years ago

h2qutc commented 7 years ago

Hi, I had a flyout with some inputs (text, email). When I tried to tap button Alt or Alt Gr (french keyboard), the flyout is hidden immediately. Any ideas ?

rcbyrne commented 6 years ago

Hello h2qutc,

I encountered the same issue using normal WinJS and fixed it by adding event.preventDefault() in function Flyout_handleKeyDown(){ ... } in the ui.js page.

_handleKeyDown: function Flyout_handleKeyDown(event) {
     if ((event.keyCode === Key.space || event.keyCode === Key.enter) 
     && (this === _Global.document.activeElement)) {
          event.preventDefault();
          event.stopPropagation();
          this.winControl.hide();
     } else if (event.shiftKey && event.keyCode === Key.tab
     && this === _Global.document.activeElement
     && !event.altKey && !event.ctrlKey && !event.metaKey) {
          event.preventDefault();
          event.stopPropagation();
          this.winControl._focusOnLastFocusableElementOrThis();

     //Add The Following
     } else if (event.keyCode === Key.alt) { 
          event.stopPropagation();
     }
}