tor4kichi / Hohoema

Windows10向けニコニコ動画プレイヤー
GNU General Public License v3.0
76 stars 10 forks source link

別ウィンドウ(AppWindow)時に生放送プレイヤーのキーボードショートカットが機能しない #883

Open tor4kichi opened 2 years ago

tor4kichi commented 2 years ago

いままでWindow.Currentを経由してキーボード入力をチェックしていたが、AppWindowではWindow.Currentはメインウィンドウしか得られないためAppWindow上のUIに対する入力が得られない。

そこで二通りの解決方法がある

ただ、現状動かしてわかった範囲では、KeyDownイベントについてはAppWindow上のUI要素に対するフォーカスが無くなった状態(主にフォーカス不可なGrid等をクリック・タッチした状態)でKeyDownイベントが(PreviewKeyDownも含めて)トリガーされないことを確認した。

一方、KeyboardAcceleratorであればAppWindowでもウィンドウがアクティブであれば受け取れる。ただし子UI要素にあるContentControl等にフォーカスが移ると親UI要素上のKeyboardAcceleratorがトリガーされなくなるので、適宜子要素のフォーカス可能要素からフォーカスを剥ぎ取るような処理を追加する必要がある。

tor4kichi commented 2 years ago

fix with b12a2ab81e0914995ca3e5218ddf38f0c5afb90d

tor4kichi commented 2 years ago

v1.2.23 から動画プレイヤー上のコメント欄へのフォーカス操作が「Cキー」に変わりました。

あと生放送プレイヤーはノータッチなのでやらないとですねぇ。