diff --git a/web/org.openbravo.mobile.core/source/component/ob-terminal-component.js b/web/org.openbravo.mobile.core/source/component/ob-terminal-component.js
index 1b35b673..00e82720 100644
--- a/web/org.openbravo.mobile.core/source/component/ob-terminal-component.js
+++ b/web/org.openbravo.mobile.core/source/component/ob-terminal-component.js
@@ -440,7 +440,7 @@ enyo.kind({
       appHeight = 700,
       minAppWidth = 393;
     OB.resizing = true;
-
+    this.setViewPorts(winWidth, winHeight);
     // resize in case of window rotation but not if virtual keyboard appears
     // hack: virtual keyboard is detected because only y is resized but not x
     if (
@@ -472,7 +472,19 @@ enyo.kind({
       OB.resizing = false;
     }
   },
-
+  setViewPorts: function(width, height) {
+    let viewheight = height;
+    let viewwidth = width;
+    let viewport = document.querySelector('meta[name=viewport]');
+    viewport.setAttribute(
+      'content',
+      'height=' +
+        viewheight +
+        'px, width=' +
+        viewwidth +
+        'px, initial-scale=1.0'
+    );
+  },
   rendered: function() {
     var keeper;
     // property useEmbededBarcode match with flag "Hide virtual keyboard with barcode scanner"
@@ -487,6 +499,10 @@ enyo.kind({
       }
     };
 
+    this.setViewPorts(
+      window.visualViewport.width,
+      window.visualViewport.height
+    );
     // Creating focus keeper. This needs to be done in this way instead of using enyo components
     // because currently, it is not possible to place focus (in iOS)
     keeper = document.getElementById('_focusKeeper');
