@DirtyUI
  @Override
  public void updateUI() {
    ReadAction.run(() -> {
      // Don't use the default TextUI, BaseTextUI, which does a lot of unnecessary
      // work. We do however need to provide a TextUI implementation since some
      // screen reader support code will invoke it
      setUI(new EditorAccessibilityTextUI());
      UISettings.setupEditorAntialiasing(this);
      // myEditor is null when updateUI() is called from parent's constructor
      putClientProperty(RenderingHints.KEY_FRACTIONALMETRICS, UISettings.getEditorFractionalMetricsHint());
      invalidate();
    });
  }
@DirtyUI
  @Override
  public void updateUI()