| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 package org.chromium.distiller; | 5 package org.chromium.distiller; |
| 6 | 6 |
| 7 import com.google.gwt.core.client.JsArray; | 7 import com.google.gwt.core.client.JsArray; |
| 8 import com.google.gwt.core.client.JsArrayString; | 8 import com.google.gwt.core.client.JsArrayString; |
| 9 import com.google.gwt.dom.client.AnchorElement; | 9 import com.google.gwt.dom.client.AnchorElement; |
| 10 import com.google.gwt.dom.client.Document; | 10 import com.google.gwt.dom.client.Document; |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 105 /* | 105 /* |
| 106 * We want to use jsni for direct access to javascript's innerText. This av
oids GWT's | 106 * We want to use jsni for direct access to javascript's innerText. This av
oids GWT's |
| 107 * implementation of Element::getInnerText(), which is intentionally differe
nt to mimic an old | 107 * implementation of Element::getInnerText(), which is intentionally differe
nt to mimic an old |
| 108 * IE behaviour, which returns text within <script> tags. | 108 * IE behaviour, which returns text within <script> tags. |
| 109 */ | 109 */ |
| 110 public static native String getInnerText(Node node) /*-{ | 110 public static native String getInnerText(Node node) /*-{ |
| 111 return node.innerText; | 111 return node.innerText; |
| 112 }-*/; | 112 }-*/; |
| 113 | 113 |
| 114 public static native double getTime() /*-{ | 114 public static native double getTime() /*-{ |
| 115 // window.performance is unavailable in Gwt's dev environment. | 115 // window.performance is unavailable in Gwt's dev environment and even r
eferencing it on iOS |
| 116 if (window.performance) { | 116 // causes a crash. |
| 117 if ((typeof distiller_on_ios === 'undefined' || !distiller_on_ios) && wi
ndow.performance) { |
| 117 return window.performance.now(); | 118 return window.performance.now(); |
| 118 } | 119 } |
| 119 return Date.now(); | 120 return Date.now(); |
| 120 }-*/; | 121 }-*/; |
| 121 | 122 |
| 122 /** | 123 /** |
| 123 * Use jsni for direct access to javascript's textContent. textContent is d
ifferent from | 124 * Use jsni for direct access to javascript's textContent. textContent is d
ifferent from |
| 124 * innerText (see http://www.kellegous.com/j/2013/02/27/innertext-vs-textcon
tent): | 125 * innerText (see http://www.kellegous.com/j/2013/02/27/innertext-vs-textcon
tent): |
| 125 * - textContent is the raw textual content, doesn't require layout, and is
basically a | 126 * - textContent is the raw textual content, doesn't require layout, and is
basically a |
| 126 * concatenation of the values of all text nodes within a subtree. | 127 * concatenation of the values of all text nodes within a subtree. |
| (...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 393 }-*/; | 394 }-*/; |
| 394 | 395 |
| 395 public static native Document createHTMLDocument(Document doc) /*-{ | 396 public static native Document createHTMLDocument(Document doc) /*-{ |
| 396 return doc.implementation.createHTMLDocument(); | 397 return doc.implementation.createHTMLDocument(); |
| 397 }-*/; | 398 }-*/; |
| 398 | 399 |
| 399 public static native Element getFirstElementChild(Document document) /*-{ | 400 public static native Element getFirstElementChild(Document document) /*-{ |
| 400 return document.firstElementChild; | 401 return document.firstElementChild; |
| 401 }-*/; | 402 }-*/; |
| 402 } | 403 } |
| OLD | NEW |