List of usage examples for com.google.gwt.dom.client Document createScriptElement
public ScriptElement createScriptElement(String source)
From source file:org.rstudio.core.client.patch.DiffMatchPatch.java
License:Open Source License
private static void injectJavascript(String source) { Document doc = Document.get(); HeadElement head = (HeadElement) doc.getElementsByTagName("head").getItem(0); if (head == null) { head = doc.createHeadElement();/* w w w. ja v a 2 s . c o m*/ doc.insertBefore(head, doc.getBody()); } ScriptElement script = doc.createScriptElement(source); script.setType("text/javascript"); head.appendChild(script); }
From source file:org.rstudio.studio.client.workbench.prefs.views.AceEditorPreview.java
License:Open Source License
@Override protected void onFrameLoaded() { isFrameLoaded_ = true;//from w w w. j a v a2s .c o m final Document doc = getDocument(); // NOTE: There is an interesting 'feature' in Firefox whereby an // initialized IFrame will report that it has successfully initialized the // window / underlying document (readyState is 'complete') but, in fact, // there is still some initialization left to occur and any changes made // before complete initialization will cause it to be swept out from under // our feet. To work around this, we double-check that the document we are // working with is the _same document_ after each JavaScript load // iteration. new ExternalJavaScriptLoader(getDocument(), AceResources.INSTANCE.acejs().getSafeUri().asString()) .addCallback(new Callback() { public void onLoaded() { if (getDocument() != doc) { onFrameLoaded(); return; } new ExternalJavaScriptLoader(getDocument(), AceResources.INSTANCE.acesupportjs().getSafeUri().asString()) .addCallback(new Callback() { public void onLoaded() { if (getDocument() != doc) { onFrameLoaded(); return; } final Document doc = getDocument(); final BodyElement body = doc.getBody(); if (themeUrl_ != null) setTheme(themeUrl_); if (fontSize_ != null) setFontSize(fontSize_); if (zoomLevel_ != null) setZoomLevel(zoomLevel_); body.getStyle().setMargin(0, Unit.PX); body.getStyle().setBackgroundColor("white"); StyleElement style = doc.createStyleElement(); style.setType("text/css"); style.setInnerText( ".ace_editor {\n" + "border: none !important;\n" + "}"); setFont(ThemeFonts.getFixedWidthFont()); body.appendChild(style); DivElement div = doc.createDivElement(); div.setId("editor"); div.getStyle().setWidth(100, Unit.PCT); div.getStyle().setHeight(100, Unit.PCT); div.setInnerText(code_); body.appendChild(div); FontSizer.injectStylesIntoDocument(doc); FontSizer.applyNormalFontSize(div); body.appendChild(doc.createScriptElement( "var event = require('ace/lib/event');\n" + "var Editor = require('ace/editor').Editor;\n" + "var Renderer = require('ace/virtual_renderer').VirtualRenderer;\n" + "var dom = require('ace/lib/dom');\n" + "var container = document.getElementById('editor');\n" + "var value = dom.getInnerText(container);\n" + "container.innerHTML = '';\n" + "var session = ace.createEditSession(value);\n" + "var editor = new Editor(new Renderer(container, {}));\n" + "editor.setSession(session);\n" + "var env = {document: session, editor: editor, onResize: editor.resize.bind(editor, null)};\n" + "event.addListener(window, 'resize', env.onResize);\n" + "editor.on('destory', function() { event.removeListener(window, 'resize', env.onResize); });\n" + "editor.container.env = editor.env = env;\n" + "editor.renderer.setHScrollBarAlwaysVisible(false);\n" + "editor.setHighlightActiveLine(false);\n" + "editor.setReadOnly(true);\n" + "editor.renderer.setShowGutter(false);\n" + "editor.renderer.setDisplayIndentGuides(false);\n" + "var RMode = require('mode/r').Mode;\n" + "editor.getSession().setMode(new RMode(false, editor.getSession()));")); } }); } }); }
From source file:org.vectomatic.dom.svg.impl.DOMHelperImplIE.java
License:Open Source License
public DOMHelperImplIE() { // Inject the xpath.js script in the iframe document (not // in the main document, otherwise the added code will not be // seen by the GWT code which lives in the iframe document) Document doc = getIFrameDocument(); ScriptElement scriptElem = doc.createScriptElement(Resource.INSTANCE.xpath().getText()); doc.getBody().appendChild(scriptElem); initXPath();/* w w w .j a v a2 s.c o m*/ }
From source file:org.waveprotocol.wave.client.doodad.experimental.htmltemplate.CajolerFacade.java
License:Apache License
private static IFrameElement createCajaFrame() { IFrameElement cajaFrame = Document.get().createIFrameElement(); cajaFrame.setFrameBorder(0);//from ww w .j a v a 2 s .c om cajaFrame.setAttribute("width", "0"); cajaFrame.setAttribute("height", "0"); Document.get().getBody().appendChild(cajaFrame); Document cajaFrameDoc = cajaFrame.getContentDocument(); cajaFrameDoc.getBody().appendChild(cajaFrameDoc.createScriptElement(RESOURCES.supportingJs().getText())); cajaFrameDoc.getBody().appendChild(cajaFrameDoc.createScriptElement(RESOURCES.taming().getText())); return cajaFrame; }
From source file:org.waveprotocol.wave.client.doodad.experimental.htmltemplate.CajolerFacade.java
License:Apache License
private void appendToDocument(HTML target, PluginContext pluginContext, CajolerResponse response) { DivElement domitaVdocElement = Document.get().createDivElement(); domitaVdocElement.setClassName("innerHull"); target.getElement().setInnerHTML(""); target.getElement().setClassName("outerHull"); target.getElement().appendChild(domitaVdocElement); initializeDoodadEnvironment(cajaFrame, domitaVdocElement, pluginContext.getJSOInterface()); // Render HTML domitaVdocElement.setInnerHTML(response.getHtml()); // Inject JS//ww w . j av a 2s. c o m Document cajaFrameDoc = cajaFrame.getContentDocument(); cajaFrameDoc.getBody().appendChild(cajaFrameDoc.createScriptElement(response.getJs())); }