Change-Id: I6072429d3a87afd25a6dd6604749ace728ab6d7dtags/7.6.0.alpha3
@@ -84,6 +84,10 @@ public class ResponsiveConnector extends AbstractExtensionConnector implements | |||
getLogger().log(Level.SEVERE, message); | |||
} | |||
private static void warning(String message) { | |||
getLogger().warning(message); | |||
} | |||
@Override | |||
protected void extend(ServerConnector target) { | |||
this.target = (AbstractComponentConnector) target; | |||
@@ -204,10 +208,17 @@ public class ResponsiveConnector extends AbstractExtensionConnector implements | |||
var IE = @com.vaadin.client.BrowserInfo::get()().@com.vaadin.client.BrowserInfo::isIE()(); | |||
var IE8 = @com.vaadin.client.BrowserInfo::get()().@com.vaadin.client.BrowserInfo::isIE8()(); | |||
if (sheet.cssRules) { | |||
theRules = sheet.cssRules | |||
} else if (sheet.rules) { | |||
theRules = sheet.rules | |||
try { | |||
if (sheet.cssRules) { | |||
theRules = sheet.cssRules | |||
} else if (sheet.rules) { | |||
theRules = sheet.rules | |||
} | |||
} catch (e) { | |||
// FF spews if trying to access rules for cross domain styles | |||
@ResponsiveConnector::warning(*)("Can't process styles from " + sheet.href + | |||
", probably because of cross domain issues: " + e); | |||
return; | |||
} | |||
// Special import handling for IE8 |
@@ -0,0 +1,37 @@ | |||
/* | |||
* Copyright 2000-2014 Vaadin Ltd. | |||
* | |||
* Licensed under the Apache License, Version 2.0 (the "License"); you may not | |||
* use this file except in compliance with the License. You may obtain a copy of | |||
* the License at | |||
* | |||
* http://www.apache.org/licenses/LICENSE-2.0 | |||
* | |||
* Unless required by applicable law or agreed to in writing, software | |||
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | |||
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | |||
* License for the specific language governing permissions and limitations under | |||
* the License. | |||
*/ | |||
package com.vaadin.tests.extensions; | |||
import com.vaadin.annotations.StyleSheet; | |||
import com.vaadin.server.VaadinRequest; | |||
import com.vaadin.tests.components.AbstractTestUI; | |||
import com.vaadin.ui.Button; | |||
import com.vaadin.ui.Button.ClickEvent; | |||
@StyleSheet("http://fonts.googleapis.com/css?family=Cabin+Sketch") | |||
public class ResponsiveWithCrossDomainStyles extends AbstractTestUI { | |||
@Override | |||
protected void setup(VaadinRequest request) { | |||
addComponent(new Button("Make responsive", new Button.ClickListener() { | |||
@Override | |||
public void buttonClick(ClickEvent event) { | |||
event.getButton().setResponsive(true); | |||
} | |||
})); | |||
} | |||
} |
@@ -0,0 +1,34 @@ | |||
/* | |||
* Copyright 2000-2014 Vaadin Ltd. | |||
* | |||
* Licensed under the Apache License, Version 2.0 (the "License"); you may not | |||
* use this file except in compliance with the License. You may obtain a copy of | |||
* the License at | |||
* | |||
* http://www.apache.org/licenses/LICENSE-2.0 | |||
* | |||
* Unless required by applicable law or agreed to in writing, software | |||
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | |||
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | |||
* License for the specific language governing permissions and limitations under | |||
* the License. | |||
*/ | |||
package com.vaadin.tests.extensions; | |||
import org.junit.Test; | |||
import com.vaadin.testbench.elements.ButtonElement; | |||
import com.vaadin.tests.tb3.MultiBrowserTest; | |||
public class ResponsiveWithCrossDomainStylesTest extends MultiBrowserTest { | |||
@Test | |||
public void testResponsive() { | |||
setDebug(true); | |||
openTestURL(); | |||
$(ButtonElement.class).first().click(); | |||
assertNoErrorNotifications(); | |||
} | |||
} |