@Override
  public void update() {
    EditorImpl.assertIsDispatchThread();
    int oldWidth = getWidthInPixels();
    int oldHeight = getHeightInPixels();
    GutterIconRenderer oldIconRenderer = getGutterIconRenderer();
    doUpdate();
    int changeFlags = 0;
    if (oldWidth != getWidthInPixels()) changeFlags |= InlayModel.ChangeFlags.WIDTH_CHANGED;
    if (oldHeight != getHeightInPixels()) changeFlags |= InlayModel.ChangeFlags.HEIGHT_CHANGED;
    if (!Objects.equals(oldIconRenderer, getGutterIconRenderer())) changeFlags |= InlayModel.ChangeFlags.GUTTER_ICON_PROVIDER_CHANGED;
    if (changeFlags != 0) {
      myEditor.getInlayModel().notifyChanged(this, changeFlags);
    }
    else {
      repaint();
    }
  }
@Override
  public void update()