When using arrow keys in text entry components (e.g. JTextFields), the cursor is put at the beginning of the input, instead of moving one character as expected.
missing . . .
protected void paintSafely(Graphics g) { ...... if (dropCaret != null) { //<<-- dropCaret.paint(g); } }
alternative . . .
protected void paintSafely(Graphics g) { if (!this.changeListenerAdded) { this.changeListenerAdded = true; this.textField.getDocument() .addDocumentListener(this.changeListener); } Graphics2D g2 = (Graphics2D) g; g2.setRenderingHint( RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); g2.setRenderingHint( RenderingHints.KEY_ALPHA_INTERPOLATION, RenderingHints.VALUE_ALPHA_INTERPOLATION_QUALITY); if ((this.textField.isEditable()) && (this.textField.getClientProperty("joxy.isEditor") == null)) { paintBackground(g); if ((this.clearButtonOpacity > 0) && (this.textField.isEnabled())) { paintClearButton(g, this.clearButtonOpacity); } } ((Graphics2D) g).setRenderingHint( RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_LCD_HRGB); super.paintSafely(g); }
Log in to post a comment.
missing . . .
alternative . . .