assertj / assertj/assertj-swing

delay setings dont speedup enterText

オープン
#55 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
import from fest-swing Improvement Major
主要言語
Java
スター
121
フォーク
52
PR マージ指標
30日以内にマージされた PR はありません

説明

_Issue by **[a](http://jira.codehaus.org/secure/ViewProfile.jspa?name=henningb)** from Mon, 30 Nov 2009 05:10:44 -0600_
_Originally opened as http://jira.codehaus.org/browse/FEST-265_

---

you cant speedup enterText with the delay settings.


robot.settings().delayBetweenEvents(10); 

robot.settings().eventPostingDelay(10);
XXXXXXX.enterText(text);

Thas only works for keys without modifiers like Numbers.

Workaround (using awt.Robot, German Keybord and AltGr dont work):


 public void setTextSim(String text, CommonComponentFixture component){

KeyStrokeMappingProvider_de provider= new KeyStrokeMappingProvider_de();
KeyStrokeMap.addKeyStrokesFrom(provider);

java.awt.Robot awtRobot = null;
try {
awtRobot = new java.awt.Robot();
} catch (AWTException e) {
e.printStackTrace();
}
awtRobot.setAutoDelay(5);

component.focus();

boolean shiftPressed=false;
for (int i=0;i<text.length();i++){
char character = text.charAt(i);

boolean needShift=((KeyStrokeMap.keyStrokeFor(character).getModifiers() & InputEvent.SHIFT_DOWN_MASK) != 0 );

if (needShift){
if (!shiftPressed){
awtRobot.keyPress(KeyEvent.VK_SHIFT);
awtRobot.waitForIdle();
shiftPressed=true;
}
} else {//dont need shift
if (shiftPressed){
awtRobot.keyRelease(KeyEvent.VK_SHIFT);
awtRobot.waitForIdle();
shiftPressed=false;
}
}

int keyCode=KeyStrokeMap.keyStrokeFor(character).getKeyCode();

awtRobot.keyRelease(keyCode);
awtRobot.waitForIdle();
awtRobot.keyPress(keyCode);
awtRobot.waitForIdle();
}


if (shiftPressed){
robot.releaseKey(KeyEvent.VK_SHIFT);
}

}


---

votes (original issue): 0
watches (original issue): 1

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

Search for the enterText entry point and the robot.settings() handling of delayBetweenEvents and eventPostingDelay, then trace how modified keystrokes are posted. Reproduce the example with modifier keys and confirm that the configured delays affect those characters as well as unmodified keys.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java
領域
desktop, testing
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。