exch-bms2/beatoraja

SearchTextField does not work when changing window size

Opened this issue · 0 comments

My environment

  • Version : beatoraja 0.8.4
  • Skin (MUSIC SELECT) : beatoraja default, ModernChicSelect-2.2 (Occurs in both)
  • Monitor resolution : WQHD (2560 x 1440)
  • beatoraja display resolution : FULLHD (1920 x 1080)
  • Display mode : WINDOWS, BORDERLESS (Occurs in both)

After starting with the display resolution specified in the configuration, when the window size is manually changed, clicking on the displayed search field does not switch to text input.
The implemented part of the screen click detection actor (screen) is positioned based on the resolution at startup, which deviates from the window size after manual change.


画面解像度をコンフィグにて指定して起動後,ウィンドウサイズを手動で変更すると表示されている検索用フィールドをクリックしてもテキスト入力に移行できない.
実装されている箇所を確認したところ,画面クリック感知用Actor (screen) は起動時の解像度で位置が決められており,手動変更後のウィンドウサイズと乖離している.

screen = new Group();
screen.setBounds(0, 0, resolution.width, resolution.height);
screen.addListener(new ClickListener() {
public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
if (getKeyboardFocus() != null && !r.contains(x, y)) {
unfocus(selector);
}
return false;
}
});


※ 他のクリック可能なボタンやフィールドは,上記の手動変更後も表示位置をクリックすれば動作しました.
#49#528 で言及されている LWJGL3 への移行で解決する?