boolean ensureImageLoaded() {
      IdeFrame frame = ComponentUtil.getParentOfType(IdeFrame.class, rootComponent);
      Project project = frame == null ? null : frame.getProject();
      String value = IdeBackgroundUtil.getBackgroundSpec(project, propertyName);
      if (!Objects.equals(value, current)) {
        current = value;
        loadImageAsync(value);
        // keep the current image for a while
      }
      return image != null;
    }
boolean ensureImageLoaded()