Example usage for com.google.gwt.dom.client MetaElement setName

List of usage examples for com.google.gwt.dom.client MetaElement setName

Introduction

In this page you can find the example usage for com.google.gwt.dom.client MetaElement setName.

Prototype

public void setName(String name) 

Source Link

Document

Meta information name.

Usage

From source file:com.github.gwtbootstrap.client.ui.resources.MetaInjector.java

License:Apache License

/**
 * Puts a meta tag with the given name and content into the document header.
 * //w ww  .j  a v  a2s.c om
 * @param name
 *            the value of the {@code name} attribute.
 * @param content
 *            the value of the {@code content} attribute.
 */
public static void inject(String name, String content) {
    HeadElement head = getHead();
    MetaElement element = createMetaElement();
    element.setName(name);
    element.setContent(content);
    head.appendChild(element);
}

From source file:com.googlecode.mgwt.ui.client.MGWT.java

License:Apache License

/**
 * Apply settings for this mgwt app. Every app should call this method with the options its wants
 * for their app// ww w  .  j a  v a 2 s .co  m
 *
 * The options are documented in @link {@link MGWTSettings}
 *
 * @param settings the settings for this app
 *
 */
public static void applySettings(MGWTSettings settings) {

    Element head = getHead();
    // You can disable injection of default resources
    // by putting this in your gwt.xml
    // <set-property name="mgwt.mainresource.inject" value="no" />
    MainResourceHolder.inject();

    if (settings.getIconUrl() != null) {
        LinkElement iconUrlLinkElement = Document.get().createLinkElement();
        iconUrlLinkElement.setRel("apple-touch-icon");
        iconUrlLinkElement.setHref(settings.getIconUrl());
        head.appendChild(iconUrlLinkElement);
    }

    if (settings.getStartUrl() != null) {
        LinkElement startUrlLinkElement = Document.get().createLinkElement();
        startUrlLinkElement.setRel("apple-touch-startup-image");
        startUrlLinkElement.setHref(settings.getStartUrl());
        head.appendChild(startUrlLinkElement);
    }

    ViewPort viewPort = settings.getViewPort();

    if (viewPort != null) {
        MetaElement fixViewPortElement = Document.get().createMetaElement();
        fixViewPortElement.setName("viewport");
        fixViewPortElement.setContent(viewPort.getContent());
        head.appendChild(fixViewPortElement);

    }

    if (settings.isFullscreen()) {
        MetaElement fullScreenMetaTag = Document.get().createMetaElement();
        fullScreenMetaTag.setName("apple-mobile-web-app-capable");
        fullScreenMetaTag.setContent("yes");
        head.appendChild(fullScreenMetaTag);

        if (settings.getStatusBar() != null) {
            MetaElement statusBarMetaTag = Document.get().createMetaElement();
            statusBarMetaTag.setName("apple-mobile-web-app-status-bar-style");
            statusBarMetaTag.setContent(settings.getStatusBar());
            head.appendChild(statusBarMetaTag);

        }

    }

    scrollingDisabled = settings.isPreventScrolling();

    if (TouchSupport.isTouchEventsEmulatedUsingPointerEvents()) {
        MetaElement tapHighlight = Document.get().createMetaElement();
        tapHighlight.setName("msapplication-tap-highlight");
        tapHighlight.setContent("no");
        head.appendChild(tapHighlight);

        if (settings.isPreventScrolling()) {
            BodyElement body = Document.get().getBody();
            setupPreventScrollingIE10(body);
        }
    }

    if (settings.isPreventScrolling() && getOsDetection().isIOs()) {
        BodyElement body = Document.get().getBody();
        setupPreventScrolling(body);

    }

    if (settings.isDisablePhoneNumberDetection()) {
        MetaElement fullScreenMetaTag = Document.get().createMetaElement();
        fullScreenMetaTag.setName("format-detection");
        fullScreenMetaTag.setContent("telephone=no");
        head.appendChild(fullScreenMetaTag);
    }

    if (settings.getStatusBarStyle() != null) {
        MetaElement statusBarTag = Document.get().createMetaElement();
        statusBarTag.setName("apple-mobile-web-app-status-bar-style");
        switch (settings.getStatusBarStyle()) {

        case BLACK:
            statusBarTag.setContent("black");
            break;
        case BLACK_TRANSLUCENT:
            statusBarTag.setContent("black-translucent");
            break;
        case DEFAULT:
        default:
            statusBarTag.setContent("default");
            break;
        }

        head.appendChild(statusBarTag);
    }

    if (settings.shouldFixIOS71BodyBug()) {
        IOS71BodyBug.applyWorkaround();
    }
}

From source file:com.lofidewanto.demo.client.DemoGwtWebApp.java

License:Apache License

private void addMetaElements() {
    logger.info("Add viewport");
    MetaElement element = Document.get().createMetaElement();
    element.setName("viewport");
    element.setContent("width=device-width, initial-scale=1.0");

    NodeList<Element> node = Document.get().getElementsByTagName("head");
    Element elementHead = node.getItem(0);
    elementHead.appendChild(element);//  w ww.  j a  va  2  s. co m
}

From source file:com.smartgwt.mobile.client.util.Page.java

License:Open Source License

@SGWTInternal
public static void _updateViewport(Float scale, String width, String height, Boolean scalable,
        String extraViewportParams) {
    final StringBuilder sb = new StringBuilder();

    if (scale != null) {
        sb.append("initial-scale=").append(scale.floatValue());
    }//w  w w. j av a  2 s .c  o  m
    if (width != null) {
        if (sb.length() != 0)
            sb.append(", ");
        sb.append("width=").append(width);
    }
    if (height != null) {
        if (sb.length() != 0)
            sb.append(", ");
        sb.append("height=").append(height);
    }
    if (scalable != null) {
        if (sb.length() != 0)
            sb.append(", ");
        sb.append("user-scalable=").append(scalable.booleanValue() ? "yes" : "no");
        // setting user-scalable to 'no' seems to reliably disable pinch zooming
        // However on pivot the iPhone zooms by default and this seems to still occur
        // with user-scalable set to 'no'. If a desired 'scale' was specified,
        // setting the min/max scale to it appears to really disable scale on pivot
        if (scalable == false && scale != null) {
            sb.append(", minimum-scale=").append(scale.floatValue()).append(", maximum-scale=")
                    .append(scale.floatValue());
        }
    }
    if (extraViewportParams != null && !extraViewportParams.isEmpty()) {
        if (sb.length() > 0)
            sb.append(", ");
        sb.append(extraViewportParams);
    }

    final NodeList<Element> metaTags = Document.get().getElementsByTagName("meta");
    MetaElement vpTag = null;
    // remove all but the last viewport <meta> tag and select the last one
    for (int i = 0; i < metaTags.getLength(); /*empty*/) {
        if ("viewport".equals(metaTags.getItem(i).<MetaElement>cast().getName())) {
            if (vpTag != null) {
                vpTag.getParentNode().removeChild(vpTag);
                vpTag = metaTags.getItem(i - 1).cast();
            } else {
                vpTag = metaTags.getItem(i).cast();
                ++i;
            }
        } else
            ++i;
    }
    if (vpTag != null) {
        vpTag.setContent(sb.toString());
    } else {
        vpTag = Document.get().createMetaElement();
        vpTag.setName("viewport");
        vpTag.setContent(sb.toString());
        Document.get().getElementsByTagName("head").getItem(0).appendChild(vpTag);
    }
}

From source file:de.swm.commons.mobile.client.SWMMobile.java

License:Apache License

/**
 * Apply settings for this mgwt app. Every app should call this method with the options its wants for their app
 * <p/>/* www  . j a  v a  2s.co m*/
 * The options are documented in @link {@link SWMMobileSettings}
 *
 * @param settings the settings for this app
 */
public static void applySettings(SWMMobileSettings settings) {

    Element head = getHead();

    if (settings.getIconUrl() != null) {
        LinkElement iconUrlLinkElement = Document.get().createLinkElement();
        iconUrlLinkElement.setRel("apple-touch-icon");
        iconUrlLinkElement.setHref(settings.getIconUrl());
        head.appendChild(iconUrlLinkElement);

    }

    if (getOsDetection().isIOs()) {
        MetaElement numberDetection = Document.get().createMetaElement();
        numberDetection.setName("format-detection");
        numberDetection.setContent("telephone=no");
        head.appendChild(numberDetection);

    }

    if (settings.getStartUrl() != null) {
        LinkElement startUrlLinkElement = Document.get().createLinkElement();
        startUrlLinkElement.setRel("apple-touch-startup-image");
        startUrlLinkElement.setHref(settings.getStartUrl());
        head.appendChild(startUrlLinkElement);
    }

    ViewPort viewPort = settings.getViewPort();

    if (viewPort != null) {
        MetaElement fixViewPortElement = Document.get().createMetaElement();
        fixViewPortElement.setName("viewport");
        fixViewPortElement.setContent(viewPort.getContent());
        head.appendChild(fixViewPortElement);

    }

    if (settings.isFullscreen()) {
        MetaElement fullScreenMetaTag = Document.get().createMetaElement();
        fullScreenMetaTag.setName("apple-mobile-web-app-capable");
        fullScreenMetaTag.setContent("yes");
        head.appendChild(fullScreenMetaTag);
    }

    boolean scrollingDisabled = settings.isPreventScrolling();
    if (settings.isPreventScrolling() && getOsDetection().isIOs()) {
        BodyElement body = Document.get().getBody();
        setupPreventScrolling(body);

    }

    if (settings.isDisablePhoneNumberDetection()) {
        MetaElement fullScreenMetaTag = Document.get().createMetaElement();
        fullScreenMetaTag.setName("format-detection");
        fullScreenMetaTag.setContent("telephone=no");
        head.appendChild(fullScreenMetaTag);
    }

    if (settings.getStatusBarStyle() != null) {
        MetaElement statusBarTag = Document.get().createMetaElement();
        statusBarTag.setName("apple-mobile-web-app-status-bar-style");
        switch (settings.getStatusBarStyle()) {
        case BLACK:
            statusBarTag.setContent("black");
            break;
        case BLACK_TRANSLUCENT:
            statusBarTag.setContent("black-translucent");
            break;
        case DEFAULT:
        default:
            statusBarTag.setContent("default");
            break;
        }

        head.appendChild(statusBarTag);
    }

}

From source file:fr.putnami.pwt.core.widget.client.DocumentMeta.java

License:Open Source License

/**
 * Return the first meta tag from the head section with name matching. <br>
 * If createIfMissing the tag is created and added at the end of the head section.<br>
 * <p>//from w w w .ja v  a 2  s .  c o  m
 * <strong>Note : </strong> the name is case insensitive
 * </p>
 *
 * @param name the name attribute of the metta tag
 * @param createIfMissing create the tag in the head section if missing
 * @return meta tag element or null
 */
public static MetaElement getDescriptionTag(String name, boolean createIfMissing) {
    Document doc = Document.get();
    HeadElement head = doc.getHead();
    assert head != null : "No head section found in the document";
    assert name != null : "the name must not be null";

    NodeList<Element> tags = head.getElementsByTagName("meta");
    MetaElement metaTag = null;
    for (int i = 0; i < tags.getLength(); i++) {
        metaTag = (MetaElement) tags.getItem(i);
        if (name.equalsIgnoreCase(metaTag.getName())) {
            return metaTag;
        }
    }
    if (createIfMissing) {
        metaTag = doc.createMetaElement();
        metaTag.setName(name);
        head.appendChild(metaTag);
    }
    return metaTag;
}

From source file:org.cruxframework.crux.core.client.screen.DisplayHandler.java

License:Apache License

/**
 * Create a viewport meta element with specified content
 * @param content/*ww  w . j a  v  a2s. c o  m*/
 * @param window
 */
public static void createViewport(String content, JavaScriptObject wnd) {
    Document document = getWindowDocument(wnd);
    MetaElement viewport = document.createMetaElement();
    viewport.setContent(content);
    viewport.setName("viewport");
    document.getElementsByTagName("head").getItem(0).appendChild(viewport);
    JavaScriptObject parentWindow = getParentWindow(wnd);
    if (parentWindow != null && isCruxWindow(parentWindow)) {
        createViewport(content, parentWindow);
    }
}

From source file:org.cruxframework.crux.core.client.screen.ViewPortHandlerImpl.java

License:Apache License

@Override
public void createViewport(String content, JavaScriptObject wnd) {
    Document document = getWindowDocument(wnd);
    MetaElement viewport = document.createMetaElement();
    viewport.setContent(content);//  w  ww.j  av  a  2s  .co  m
    viewport.setName("viewport");
    document.getElementsByTagName("head").getItem(0).appendChild(viewport);
    JavaScriptObject parentWindow = getParentWindow(wnd);
    if (parentWindow != null && isCruxWindow(parentWindow)) {
        createViewport(content, parentWindow);
    }
}