diff options
Diffstat (limited to 'contexts/data/lib/closure-library/closure/goog/testing/style/style.js')
-rw-r--r-- | contexts/data/lib/closure-library/closure/goog/testing/style/style.js | 100 |
1 files changed, 0 insertions, 100 deletions
diff --git a/contexts/data/lib/closure-library/closure/goog/testing/style/style.js b/contexts/data/lib/closure-library/closure/goog/testing/style/style.js deleted file mode 100644 index 636d8b6..0000000 --- a/contexts/data/lib/closure-library/closure/goog/testing/style/style.js +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright 2011 The Closure Library Authors. All Rights Reserved. -// -// 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. - -/** - * @fileoverview Utilities for inspecting page layout. This is a port of - * http://go/layoutbot.java - * See {@link http://go/layouttesting}. - */ - -goog.provide('goog.testing.style'); - -goog.require('goog.dom'); -goog.require('goog.math.Rect'); -goog.require('goog.style'); - - -/** - * Determines whether the bounding rectangles of the given elements intersect. - * @param {Element} element The first element. - * @param {Element} otherElement The second element. - * @return {boolean} Whether the bounding rectangles of the given elements - * intersect. - */ -goog.testing.style.intersects = function(element, otherElement) { - var elementRect = goog.style.getBounds(element); - var otherElementRect = goog.style.getBounds(otherElement); - return goog.math.Rect.intersects(elementRect, otherElementRect); -}; - - -/** - * Determines whether the element has visible dimensions, i.e. x > 0 && y > 0. - * @param {Element} element The element to check. - * @return {boolean} Whether the element has visible dimensions. - */ -goog.testing.style.hasVisibleDimensions = function(element) { - var elSize = goog.style.getSize(element); - var shortest = elSize.getShortest(); - if (shortest <= 0) { - return false; - } - - return true; -}; - - -/** - * Determines whether the CSS style of the element renders it visible. - * @param {!Element} element The element to check. - * @return {boolean} Whether the CSS style of the element renders it visible. - */ -goog.testing.style.isVisible = function(element) { - var visibilityStyle = - goog.testing.style.getAvailableStyle_(element, 'visibility'); - var displayStyle = - goog.testing.style.getAvailableStyle_(element, 'display'); - - return (visibilityStyle != 'hidden' && displayStyle != 'none'); -}; - -/** - * Test whether the given element is on screen. - * @param {!Element} el The element to test. - * @return {boolean} Whether the element is on the screen. - */ -goog.testing.style.isOnScreen = function(el) { - var doc = goog.dom.getDomHelper(el).getDocument(); - var viewport = goog.style.getVisibleRectForElement(doc.body); - var viewportRect = goog.math.Rect.createFromBox(viewport); - return goog.dom.contains(doc, el) && - goog.style.getBounds(el).intersects(viewportRect); -}; - - -/** - * This is essentially goog.style.getStyle_. goog.style.getStyle_ is private - * and is not a recommended way for general purpose style extractor. For the - * purposes of layout testing, we only use this function for retrieving - * 'visiblity' and 'display' style. - * @param {!Element} element The element to retrieve the style from. - * @param {string} style Style property name. - * @return {string} Style value. - * @private - */ -goog.testing.style.getAvailableStyle_ = function(element, style) { - return goog.style.getComputedStyle(element, style) || - goog.style.getCascadedStyle(element, style) || - goog.style.getStyle(element, style); -}; |