Open tor4kichi opened 2 years ago
いままでWindow.Currentを経由してキーボード入力をチェックしていたが、AppWindowではWindow.Currentはメインウィンドウしか得られないためAppWindow上のUIに対する入力が得られない。
そこで二通りの解決方法がある
ただ、現状動かしてわかった範囲では、KeyDownイベントについてはAppWindow上のUI要素に対するフォーカスが無くなった状態(主にフォーカス不可なGrid等をクリック・タッチした状態)でKeyDownイベントが(PreviewKeyDownも含めて)トリガーされないことを確認した。
一方、KeyboardAcceleratorであればAppWindowでもウィンドウがアクティブであれば受け取れる。ただし子UI要素にあるContentControl等にフォーカスが移ると親UI要素上のKeyboardAcceleratorがトリガーされなくなるので、適宜子要素のフォーカス可能要素からフォーカスを剥ぎ取るような処理を追加する必要がある。
fix with b12a2ab81e0914995ca3e5218ddf38f0c5afb90d
v1.2.23 から動画プレイヤー上のコメント欄へのフォーカス操作が「Cキー」に変わりました。
あと生放送プレイヤーはノータッチなのでやらないとですねぇ。
いままでWindow.Currentを経由してキーボード入力をチェックしていたが、AppWindowではWindow.Currentはメインウィンドウしか得られないためAppWindow上のUIに対する入力が得られない。
そこで二通りの解決方法がある
ただ、現状動かしてわかった範囲では、KeyDownイベントについてはAppWindow上のUI要素に対するフォーカスが無くなった状態(主にフォーカス不可なGrid等をクリック・タッチした状態)でKeyDownイベントが(PreviewKeyDownも含めて)トリガーされないことを確認した。
一方、KeyboardAcceleratorであればAppWindowでもウィンドウがアクティブであれば受け取れる。ただし子UI要素にあるContentControl等にフォーカスが移ると親UI要素上のKeyboardAcceleratorがトリガーされなくなるので、適宜子要素のフォーカス可能要素からフォーカスを剥ぎ取るような処理を追加する必要がある。