public function isObjRevisionable()
    {
        if ($this->isObjRevisionable === null) {
            // Overridden by permissions
            if (!$this->checkPermission('revision') || !$this->form()) {
                $this->isObjRevisionable = false;
            } else {
                $obj = $this->form()->obj();
                if (!$obj->id()) {
                    $this->isObjRevisionable = false;
                    return $this->isObjRevisionable;
                }

                if ($obj instanceof RevisionableInterface && $obj->revisionEnabled()) {
                    $this->isObjRevisionable = !!count($obj->allRevisions());
                }
            }
        }

        return $this->isObjRevisionable;
    }