diff --git a/apps/opencs/view/doc/subview.cpp b/apps/opencs/view/doc/subview.cpp
index df1e7ee49..f4f0c6afe 100644
--- a/apps/opencs/view/doc/subview.cpp
+++ b/apps/opencs/view/doc/subview.cpp
@@ -2,6 +2,24 @@
 
 #include "view.hpp"
 
+#include <QShortcut>
+#include <QEvent>
+#include <QKeyEvent>
+
+bool CSVDoc::SubView::event (QEvent *event)
+{
+    if (event->type()==QEvent::ShortcutOverride)
+    {
+        QKeyEvent *keyEvent = static_cast<QKeyEvent *> (event);
+
+        if (keyEvent->key()==Qt::Key_W && keyEvent->modifiers()==(Qt::ShiftModifier | Qt::ControlModifier))
+            emit closeRequest();
+            return true;
+    }
+    
+    return QDockWidget::event (event);
+}
+
 CSVDoc::SubView::SubView (const CSMWorld::UniversalId& id)
  : mUniversalId (id)
 {
diff --git a/apps/opencs/view/doc/subview.hpp b/apps/opencs/view/doc/subview.hpp
index a8aa3cda1..b323f9ed9 100644
--- a/apps/opencs/view/doc/subview.hpp
+++ b/apps/opencs/view/doc/subview.hpp
@@ -34,6 +34,8 @@ namespace CSVDoc
 
             void setUniversalId(const CSMWorld::UniversalId& id);
 
+            bool event (QEvent *event);
+
         public:
 
             SubView (const CSMWorld::UniversalId& id);