@ApiStatus.Internal
  public void stickyLinesForLangChanged(@NotNull ObservableStateListener.PropertyChangeEvent event) {
    if (myStickyLinesManager != null) {
      Ref<Object> oldValRef = event.getOldValueRef();
      if (oldValRef != null &&
          oldValRef.get() instanceof Boolean oldVal &&
          event.getNewValue() instanceof Boolean newVal) {
        if (oldVal && !newVal) {
          /*
          Sticky model should be cleared in the following scenario:
            1) editor is initialized
            2) editor.language == null
            3) areStickyLinesShown == true
            4) sticky model is not empty from previous session
            5) sticky lines are shown on the panel
            6) updated editor.language != null
            7) areStickyLinesShown == false for the particular language
            8) sticky lines are hidden
            9) clearing sticky model to avoid showing lines on next editor opening
           */
          myStickyLinesManager.clearStickyModel();
        }
      }
    }
  }
@ApiStatus.Internal
  public void stickyLinesForLangChanged(@NotNull ObservableStateListener.PropertyChangeEvent event)