aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPekka Hyvönen <pekka@vaadin.com>2015-05-13 14:56:20 +0300
committerPekka Hyvönen <pekka@vaadin.com>2015-05-13 15:10:49 +0300
commit0d1bbc946c5372994ef5587438023e42ddcfa54c (patch)
treeae881df4b392ac9baff91692f0f65d9d73b8ea9c
parent31aea7e2bcabb461a324341186a09a99e3139758 (diff)
downloadvaadin-framework-0d1bbc946c5372994ef5587438023e42ddcfa54c.tar.gz
vaadin-framework-0d1bbc946c5372994ef5587438023e42ddcfa54c.zip
Fixes regression in Notifications and tests (#14872)
Change-Id: Ifa52508f5555c47b778cb7f80aa09f665b03b8d4
-rw-r--r--client/src/com/vaadin/client/ApplicationConnection.java10
-rw-r--r--client/src/com/vaadin/client/ui/VNotification.java17
-rw-r--r--uitest/src/com/vaadin/tests/themes/valo/NotificationStyle.java19
-rw-r--r--uitest/src/com/vaadin/tests/themes/valo/NotificationStyleTest.java15
4 files changed, 47 insertions, 14 deletions
diff --git a/client/src/com/vaadin/client/ApplicationConnection.java b/client/src/com/vaadin/client/ApplicationConnection.java
index af86818fb3..3a8d69f25a 100644
--- a/client/src/com/vaadin/client/ApplicationConnection.java
+++ b/client/src/com/vaadin/client/ApplicationConnection.java
@@ -1285,12 +1285,18 @@ public class ApplicationConnection implements HasHandlers {
StringBuilder html = new StringBuilder();
if (caption != null) {
- html.append("<h1>");
+ html.append("<h1 class='");
+ html.append(VNotification.getDependentStyle(this,
+ VNotification.CAPTION));
+ html.append("'>");
html.append(caption);
html.append("</h1>");
}
if (message != null) {
- html.append("<p>");
+ html.append("<p class='");
+ html.append(VNotification.getDependentStyle(this,
+ VNotification.DESCRIPTION));
+ html.append("'>");
html.append(message);
html.append("</p>");
}
diff --git a/client/src/com/vaadin/client/ui/VNotification.java b/client/src/com/vaadin/client/ui/VNotification.java
index 2892d4e3ac..4f0c2eb625 100644
--- a/client/src/com/vaadin/client/ui/VNotification.java
+++ b/client/src/com/vaadin/client/ui/VNotification.java
@@ -63,8 +63,8 @@ public class VNotification extends VOverlay {
private static final String STYLENAME_POSITION_CENTER = "v-position-center";
private static final String STYLENAME_POSITION_ASSISTIVE = "v-position-assistive";
- private static final String CAPTION = "caption";
- private static final String DESCRIPTION = "description";
+ public static final String CAPTION = "caption";
+ public static final String DESCRIPTION = "description";
/**
* Position that is only accessible for assistive devices, invisible for
@@ -532,7 +532,18 @@ public class VNotification extends VOverlay {
html, position, style);
}
- private static String getDependentStyle(ApplicationConnection client,
+ /**
+ * Meant for internal usage only.
+ *
+ * @since 7.5.0
+ * @param client
+ * application connection
+ * @param style
+ * the dependent style name
+ * @return the given dependent style name prefixed with current notification
+ * primary style
+ */
+ public static String getDependentStyle(ApplicationConnection client,
String style) {
VNotification notification = createNotification(-1, client
.getUIConnector().getWidget());
diff --git a/uitest/src/com/vaadin/tests/themes/valo/NotificationStyle.java b/uitest/src/com/vaadin/tests/themes/valo/NotificationStyle.java
index c7abcf9303..e918bb64d0 100644
--- a/uitest/src/com/vaadin/tests/themes/valo/NotificationStyle.java
+++ b/uitest/src/com/vaadin/tests/themes/valo/NotificationStyle.java
@@ -32,14 +32,29 @@ public class NotificationStyle extends AbstractTestUI {
@Override
protected void setup(VaadinRequest request) {
- Button button = new Button("Show notification",
+ Button button = new Button("Show notification with h1",
new Button.ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
Notification notification = new Notification(
"<p>Caption</p>",
- "<div style='display:inline-block;'><h1>Description</h1></div>");
+ "<div style='display:inline-block;'><h1>Description</h1>"
+ + "<p class='tested-p'>tested p</p></div>");
+ notification.setHtmlContentAllowed(true);
+ notification.setDelayMsec(50000);
+ notification.show(getPage());
+ }
+ });
+ addComponent(button);
+ button = new Button("Show notification with p",
+ new Button.ClickListener() {
+
+ @Override
+ public void buttonClick(ClickEvent event) {
+ Notification notification = new Notification(
+ "<p>Caption</p>",
+ "Description text<p class='tested-p'>tested p text</p>");
notification.setHtmlContentAllowed(true);
notification.setDelayMsec(50000);
notification.show(getPage());
diff --git a/uitest/src/com/vaadin/tests/themes/valo/NotificationStyleTest.java b/uitest/src/com/vaadin/tests/themes/valo/NotificationStyleTest.java
index 829ad27a94..b2db29443a 100644
--- a/uitest/src/com/vaadin/tests/themes/valo/NotificationStyleTest.java
+++ b/uitest/src/com/vaadin/tests/themes/valo/NotificationStyleTest.java
@@ -57,19 +57,20 @@ public class NotificationStyleTest extends MultiBrowserTest {
public void testNotificationPStyle() {
openTestURL();
- $(ButtonElement.class).first().click();
+ $(ButtonElement.class).get(1).click();
new Actions(getDriver()).moveByOffset(10, 10).perform();
waitUntil(notificationPresentCondition(), 2);
WebElement notification = findElement(By.className("v-Notification"));
- List<WebElement> headers = notification.findElements(By.tagName("p"));
- String lineHeight = headers.get(0).getCssValue("line-height");
- String lineHeightInnerHeader = headers.get(1)
- .getCssValue("line-height");
+ WebElement description = notification.findElement(By
+ .className("v-Notification-description"));
+ String display = description.getCssValue("display");
+ String displayP2 = notification.findElement(
+ By.className("tested-p")).getCssValue("display");
Assert.assertNotEquals("Styles for notification defined 'p' tag "
- + "and custom HTML tag are the same", lineHeight,
- lineHeightInnerHeader);
+ + "and custom HTML tag are the same", display,
+ displayP2);
}
private ExpectedCondition<Boolean> notificationPresentCondition() {