diff --git a/apps/common/main/lib/controller/Desktop.js b/apps/common/main/lib/controller/Desktop.js
index 745ba5079..b14fb3235 100644
--- a/apps/common/main/lib/controller/Desktop.js
+++ b/apps/common/main/lib/controller/Desktop.js
@@ -48,7 +48,7 @@ define([
         uithemes: true
     };
 
-    var native = window.AscDesktopEditor;
+    var native = window.native || window.AscDesktopEditor;
     !!native && native.execCommand('webapps:features', JSON.stringify(features));
 
     var Desktop = function () {
diff --git a/apps/common/main/lib/controller/Themes.js b/apps/common/main/lib/controller/Themes.js
index 0e952e05d..2a6726ab6 100644
--- a/apps/common/main/lib/controller/Themes.js
+++ b/apps/common/main/lib/controller/Themes.js
@@ -253,8 +253,8 @@ define([
                 return themes_map[this.currentThemeId()].type == 'dark';
             },
 
-            setTheme: function (id) {
-                if ( !!themes_map[id] ) {
+            setTheme: function (id, force) {
+                if ( (currentThemeId != id || force) && !!themes_map[id] ) {
                     var classname = document.body.className.replace(/theme-\w+\s?/, '');
                     document.body.className = classname;
 
diff --git a/apps/documenteditor/main/index.html.deploy b/apps/documenteditor/main/index.html.deploy
index 4fb78e4ee..dbcbd8d6b 100644
--- a/apps/documenteditor/main/index.html.deploy
+++ b/apps/documenteditor/main/index.html.deploy
@@ -212,11 +212,12 @@
         window.parentOrigin = params["parentOrigin"];
 
         if ( window.AscDesktopEditor ) {
-            window.desktop = window.AscDesktopEditor;
+            window.native = window.AscDesktopEditor;
             window.on_native_message = function (cmd, param) {
                 !window.native_message_cmd && (window.native_message_cmd = []);
                 window.native_message_cmd[cmd] = param;
             }
+            window.native.execCommand('webapps:entry', '');
         }
     </script>
 
@@ -229,7 +230,7 @@
     <div id="viewport"></div>
 
     <script>
-        if ( window.desktop ) {
+        if ( window.native ) {
             var logo = document.getElementsByClassName('loading-logo');
             if ( !!logo && logo.length ) {
                 logo[0].setAttribute('style','display:none;');
diff --git a/apps/presentationeditor/main/index.html.deploy b/apps/presentationeditor/main/index.html.deploy
index b3daac5dc..37f77909c 100644
--- a/apps/presentationeditor/main/index.html.deploy
+++ b/apps/presentationeditor/main/index.html.deploy
@@ -259,11 +259,12 @@
         }
 
         if ( window.AscDesktopEditor ) {
-            window.desktop = window.AscDesktopEditor;
+            window.native = window.AscDesktopEditor;
             window.on_native_message = function (cmd, param) {
                 !window.native_message_cmd && (window.native_message_cmd = []);
                 window.native_message_cmd[cmd] = param;
             }
+            window.native.execCommand('webapps:entry', '');
         }
     </script>
 
@@ -287,7 +288,7 @@
     <div id="viewport"></div>
 
     <script>
-        if ( window.desktop ) {
+        if ( window.native ) {
             var logo = document.getElementsByClassName('loading-logo');
             if ( !!logo && logo.length ) {
                 logo[0].setAttribute('style','display:none;');
diff --git a/apps/spreadsheeteditor/main/index.html.deploy b/apps/spreadsheeteditor/main/index.html.deploy
index c8f8fd4dc..485017699 100644
--- a/apps/spreadsheeteditor/main/index.html.deploy
+++ b/apps/spreadsheeteditor/main/index.html.deploy
@@ -254,11 +254,12 @@
         window.parentOrigin = params["parentOrigin"];
 
         if ( window.AscDesktopEditor ) {
-            window.desktop = window.AscDesktopEditor;
+            window.native = window.AscDesktopEditor;
             window.on_native_message = function (cmd, param) {
                 !window.native_message_cmd && (window.native_message_cmd = []);
                 window.native_message_cmd[cmd] = param;
             }
+            window.native.execCommand('webapps:entry', '');
         }
     </script>
 
@@ -287,7 +288,7 @@
     <div id="viewport"></div>
 
     <script>
-        if ( window.desktop ) {
+        if ( window.native ) {
             var logo = document.getElementsByClassName('loading-logo');
             if ( !!logo && logo.length ) {
                 logo[0].setAttribute('style','display:none;');