updateObjects(force = true) {
      // Some async or lazy mode operations (ie. Images lazy load) need to reinitHistory without removing state selections
      if (force) self.unselectAll();

      self.names.forEach((tag) => tag.needsUpdate && tag.needsUpdate());
      self.updateAppearenceFromState();
      const areas = Array.from(self.areas.values());
      // It should find just one unfinished region, but just in case we work with array
      const filtered = areas.filter((area) => area.isDrawing);

      // Update UI to reflect the state of an unfinished region in case if it exists
      if (filtered.length) self.regionStore.selection._updateResultsFromRegions(filtered);
    }
update some fragile parts after snapshot manipulations (undo/redo)

@param {boolean} [force=true] force update will unselect all regions