aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMikhail Shabarov <61410877+mshabarov@users.noreply.github.com>2021-09-28 11:01:19 +0300
committerGitHub <noreply@github.com>2021-09-28 11:01:19 +0300
commitc982b1c531b7367ed43976a87be3818e3eeb8e79 (patch)
tree60a3c5ab9f638be5079a9c6e792841b8d536aa6c
parent2d30ee97f19e1ae956a67afeb0e41f0ee6d08de8 (diff)
downloadvaadin-framework-c982b1c531b7367ed43976a87be3818e3eeb8e79.tar.gz
vaadin-framework-c982b1c531b7367ed43976a87be3818e3eeb8e79.zip
fix: Add MPR UI id request parameter (#12412)
* fix: Add MPR UI id request parameter Related-to https://github.com/vaadin/multiplatform-runtime/issues/85 * test: Remove redundant non-empty param test * test: Remove leftovers * fix: Init window.mprUiId earlier than window.vaadin * Add missing '='
-rw-r--r--server/src/main/resources/VAADIN/vaadinBootstrap.js6
-rw-r--r--uitest/src/main/java/com/vaadin/tests/components/ui/UIInitBrowserDetails.java1
-rw-r--r--uitest/src/test/java/com/vaadin/tests/components/ui/UIInitBrowserDetailsTest.java5
3 files changed, 11 insertions, 1 deletions
diff --git a/server/src/main/resources/VAADIN/vaadinBootstrap.js b/server/src/main/resources/VAADIN/vaadinBootstrap.js
index a6830f434b..82e7482216 100644
--- a/server/src/main/resources/VAADIN/vaadinBootstrap.js
+++ b/server/src/main/resources/VAADIN/vaadinBootstrap.js
@@ -365,6 +365,12 @@
params += '&v-wn=' + encodeURIComponent(window.name);
}
+ // This parameter is used in multiplatform-runtime as a key for
+ // storing the MPR UI content in the session
+ if (window.mprUiId) {
+ params += '&v-mui=' + encodeURIComponent(window.mprUiId);
+ }
+
// Detect touch device support
var supportsTouch = false;
try {
diff --git a/uitest/src/main/java/com/vaadin/tests/components/ui/UIInitBrowserDetails.java b/uitest/src/main/java/com/vaadin/tests/components/ui/UIInitBrowserDetails.java
index d362c5e689..8b97899baf 100644
--- a/uitest/src/main/java/com/vaadin/tests/components/ui/UIInitBrowserDetails.java
+++ b/uitest/src/main/java/com/vaadin/tests/components/ui/UIInitBrowserDetails.java
@@ -37,6 +37,7 @@ public class UIInitBrowserDetails extends AbstractReindeerTestUI {
addDetail("dst saving", "v-dstd", wb.getDSTSavings());
addDetail("dst in effect", "v-dston", wb.isDSTInEffect());
addDetail("current date", "v-curdate", wb.getCurrentDate());
+ addDetail("mpr ui id", "v-mui", "");
}
private void addDetail(String name, String param, Object value) {
diff --git a/uitest/src/test/java/com/vaadin/tests/components/ui/UIInitBrowserDetailsTest.java b/uitest/src/test/java/com/vaadin/tests/components/ui/UIInitBrowserDetailsTest.java
index 71d6871883..a3b5db11a8 100644
--- a/uitest/src/test/java/com/vaadin/tests/components/ui/UIInitBrowserDetailsTest.java
+++ b/uitest/src/test/java/com/vaadin/tests/components/ui/UIInitBrowserDetailsTest.java
@@ -11,7 +11,7 @@ import com.vaadin.tests.tb3.MultiBrowserTest;
public class UIInitBrowserDetailsTest extends MultiBrowserTest {
@Test
- public void testBrowserDetails() throws Exception {
+ public void testBrowserDetails() {
openTestURL();
/* location */
compareRequestAndBrowserValue("v-loc", "location", "null");
@@ -23,6 +23,9 @@ public class UIInitBrowserDetailsTest extends MultiBrowserTest {
compareRequestAndBrowserValue("v-sw", "screen width", "-1");
/* screen height */
compareRequestAndBrowserValue("v-sh", "screen height", "-1");
+ /* mpr ui id */
+ compareRequestAndBrowserValue("v-mui", "mpr ui id",
+ "any-non-empty-value");
/* timezone offset */
assertTextNotNull("timezone offset");
/* raw timezone offset */