これはおそらく長いチャンスかもしれませんが、私はそれについてしばらく考えてきました。
私はこの種の相互作用を実際に使用するケースが非常にまれであることを知っています。私が考える主な用途は次のとおりです。
- 同時に複数のウィンドウを移動
- ライブパフォーマンス環境で様々なメディアアプリケーションを運営
どちらも完全に普遍的に有益ではありませんが、それでも興味深く考える価値があると思います。
私の理解によると、単一のウィンドウはいつでもフォーカスを受け取り、すべてのキー/マウスイベントがそのウィンドウに渡されます。しかし、複数の独立したカーソルを作成することが可能であり、タッチスクリーン入力は通常最大10の接触点を可能にしますが、これらの入力方法は依然として単一ウィンドウに制限されているようです。
複数のウィンドウを同時に操作できる相互作用を開発することはそれほど難しくないと思います。これは、同様の動作がすでにX11転送を介して可能であるためです。私は何を変更するべきか、または何かをこのように置き換えることができるかどうかを正確に伝えるのに十分なグラフィック/入力スタックに慣れていません。
私が期待できる問題の1つは、単一の入力イベント(キー入力など)をどこに送信するかを決定することです。考えられる解決策には、「デフォルト」ウィンドウを選択した最初のウィンドウとして定義すること、または複数のウィンドウを選択した場合にメインイベントを完全に無効にすることが含まれます。
もう一つの問題は、単一ウィンドウフォーカスとマルチウィンドウフォーカスを切り替えることが適切なタイミングを決定することです。たぶんメイン/セカンダリウィンドウが主張されたら、これは問題になりませんか?
したがって、質問は次のようになります。
私が間違っていますか?複数のウィンドウを同時に操作することはすでに可能ですか(X11、ウェイランド、またはわからないことから)。そうでなければ、
これを行うには、既存の入力/ウィンドウインフラストラクチャのどの部分を変更する必要がありますか?
私が言及した問題を解決するためのよりエレガントな方法はありますか?
このデザインにはどのような他の問題が固有ですか?