diff --git a/README.md b/README.md
index adc1045..a19aa02 100755
--- a/README.md
+++ b/README.md
@@ -14,3 +14,14 @@ http://nextcloud.example.com/index.php/apps/files/?dir=/New%20folder&hide-sideba
## Screenshot
![Tab view in sidebar](.readme/hidesidebars.png)
+
+## iframe
+
+This app from version 2.0.0 brings new config parameter `addAllowedFrameAncestorDomain`. For usage in iframe you must update `lib/public/AppFramework/Http/ContentSecurityPolicy.php` manually
+or use this new parameter `addAllowedFrameAncestorDomain` in `config.php`
+
+```
+...
+'addAllowedFrameAncestorDomain' => '*.example.com:*'
+...
+```
diff --git a/appinfo/app.php b/appinfo/app.php
deleted file mode 100755
index a23dcb6..0000000
--- a/appinfo/app.php
+++ /dev/null
@@ -1,5 +0,0 @@
-getEventDispatcher();
-if(\OC_User::isLoggedIn()) {
- OCP\Util::addScript('hidesidebars', 'script');
-}
diff --git a/appinfo/info.xml b/appinfo/info.xml
index 4a59f5d..21c52fa 100755
--- a/appinfo/info.xml
+++ b/appinfo/info.xml
@@ -15,17 +15,26 @@ Examples:
```
http://nextcloud.example.com/index.php/apps/files/?hide-sidebars
http://nextcloud.example.com/index.php/apps/files/?dir=/New%20folder&hide-sidebars
+```
+
+This app from version 2.0.0 brings new config parameter `addAllowedFrameAncestorDomain`.
+For usage in iframe you must update `lib/public/AppFramework/Http/ContentSecurityPolicy.php` manually
+or use this new parameter `addAllowedFrameAncestorDomain` in `config.php`
+
+```
+...
+'addAllowedFrameAncestorDomain' => '*.example.com:*'
+...
```]]>
- 1.1.0
+ 2.0.0
agpl
Radoslav Stofko
- HideSidebars
- tools
+ customization
https://github.com/pointcz/hidesidebars/issues
https://github.com/pointcz/hidesidebars
https://github.com/pointcz/hidesidebars
https://raw.githubusercontent.com/pointcz/hidesidebars/master/.readme/hidesidebars.png
-
+
diff --git a/img/app.svg b/img/app.svg
index e0a7d26..1f6d630 100644
--- a/img/app.svg
+++ b/img/app.svg
@@ -1 +1,6 @@
-
\ No newline at end of file
+
+
diff --git a/js/script.js b/js/script.js
index da17199..2100050 100755
--- a/js/script.js
+++ b/js/script.js
@@ -1,3 +1,5 @@
+console.log('hidesidebar script was loaded');
+
window.addEventListener('DOMContentLoaded', function(event) {
if (getParameterByName('hide-sidebars') !== null) {
hideTopMenu();
diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php
new file mode 100644
index 0000000..ec86170
--- /dev/null
+++ b/lib/AppInfo/Application.php
@@ -0,0 +1,33 @@
+registerEventListener(LoadAdditionalScriptsEvent::class, HidesidebarScripts::class);
+ $context->registerEventListener(AddContentSecurityPolicyEvent::class, CSPListener::class);
+ }
+
+ public function boot(IBootContext $context): void
+ {
+ }
+}
diff --git a/lib/Listener/CSPListener.php b/lib/Listener/CSPListener.php
new file mode 100644
index 0000000..5d07240
--- /dev/null
+++ b/lib/Listener/CSPListener.php
@@ -0,0 +1,33 @@
+config = $config;
+ }
+
+ public function handle(Event $event): void {
+ if (!$event instanceof AddContentSecurityPolicyEvent) {
+ return;
+ }
+
+ $csp = new EmptyContentSecurityPolicy();
+ $csp->addAllowedFrameAncestorDomain($this->config->getSystemValue(Application::CONFIG_FRAME_KEY)); //'*.pointcz.com:*'
+ $event->addPolicy($csp);
+ }
+}
diff --git a/lib/Listener/HidesidebarScripts.php b/lib/Listener/HidesidebarScripts.php
new file mode 100644
index 0000000..0e226d5
--- /dev/null
+++ b/lib/Listener/HidesidebarScripts.php
@@ -0,0 +1,35 @@
+userSession = $userSession;
+ }
+
+ public function handle(Event $event): void
+ {
+ if (!($event instanceof LoadAdditionalScriptsEvent)) {
+ return;
+ }
+
+ if ($this->userSession->isLoggedIn()) {
+ Util::addScript(Application::APP_ID, 'script');
+ }
+ }
+}