diff --git a/Admin/Admin.php b/Admin/Admin.php
index <HASH>..<HASH> 100644
--- a/Admin/Admin.php
+++ b/Admin/Admin.php
@@ -396,7 +396,7 @@ abstract class Admin implements AdminInterface, DomainObjectInterface
      * 
      * @var boolean	
      */
-    public $supportsPreviewMode = false;
+    protected $supportsPreviewMode = false;
 
     /**
      * Roles and permissions per role
@@ -2516,4 +2516,16 @@ abstract class Admin implements AdminInterface, DomainObjectInterface
         return $this->labelTranslatorStrategy;
     }
     
+	/**
+     * Returning true will enable preview mode for
+     * the target entity and show a preview button
+     * when editing/creating an entity
+     * 
+     * @return boolean
+     */
+    public function supportsPreviewMode()
+    {
+        return $this->supportsPreviewMode;
+    }
+    
 }
diff --git a/Controller/CRUDController.php b/Controller/CRUDController.php
index <HASH>..<HASH> 100644
--- a/Controller/CRUDController.php
+++ b/Controller/CRUDController.php
@@ -505,7 +505,10 @@ class CRUDController extends Controller
      */
     protected function isInPreviewMode()
     {
-        return ($this->isPreviewRequested() || $this->isPreviewApproved() || $this->isPreviewDeclined());
+        return $this->admin->supportsPreviewMode()
+            && ($this->isPreviewRequested()
+                || $this->isPreviewApproved()
+                || $this->isPreviewDeclined());
     }
 
     /**
Readded the supports preview mode getter and added another check for its value when determining preview mode