Changeset 53100 in webkit


Ignore:
Timestamp:
Jan 11, 2010 2:33:06 PM (14 years ago)
Author:
eric@webkit.org
Message:

2010-01-11 Alexander Pavlov <apavlov@chromium.org>

Reviewed by Pavel Feldman.

Rewrite relative URLs in the ElementsTreeOutline to make them navigable

Targets for "src" and "href" attribute values in the Elements outline tree
are rewritten to full URLs whenever possible.
https://bugs.webkit.org/show_bug.cgi?id=33024

  • inspector/elements-panel-rewrite-href-expected.txt: Added.
  • inspector/elements-panel-rewrite-href.html: Added.

2010-01-11 Alexander Pavlov <apavlov@chromium.org>

Reviewed by Pavel Feldman.

Rewrite relative URLs in the ElementsTreeOutline to make them navigable

Targets for "src" and "href" attribute values in the Elements outline tree
are rewritten to full URLs whenever possible.
https://bugs.webkit.org/show_bug.cgi?id=33024

Test: inspector/elements-panel-rewrite-href.html

  • inspector/front-end/ElementsTreeOutline.js: (WebInspector.ElementsTreeElement.prototype._rewriteAttrHref): (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo):
  • inspector/front-end/inspector.js:
Location:
trunk
Files:
2 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r53098 r53100  
     12010-01-11  Alexander Pavlov  <apavlov@chromium.org>
     2
     3        Reviewed by Pavel Feldman.
     4
     5        Rewrite relative URLs in the ElementsTreeOutline to make them navigable
     6
     7        Targets for "src" and "href" attribute values in the Elements outline tree
     8        are rewritten to full URLs whenever possible.
     9        https://bugs.webkit.org/show_bug.cgi?id=33024
     10
     11        * inspector/elements-panel-rewrite-href-expected.txt: Added.
     12        * inspector/elements-panel-rewrite-href.html: Added.
     13
    1142010-01-11  Csaba Osztrogonác  <ossy@webkit.org>
    215
  • trunk/WebCore/ChangeLog

    r53088 r53100  
     12010-01-11  Alexander Pavlov  <apavlov@chromium.org>
     2
     3        Reviewed by Pavel Feldman.
     4
     5        Rewrite relative URLs in the ElementsTreeOutline to make them navigable
     6
     7        Targets for "src" and "href" attribute values in the Elements outline tree
     8        are rewritten to full URLs whenever possible.
     9        https://bugs.webkit.org/show_bug.cgi?id=33024
     10
     11        Test: inspector/elements-panel-rewrite-href.html
     12
     13        * inspector/front-end/ElementsTreeOutline.js:
     14        (WebInspector.ElementsTreeElement.prototype._rewriteAttrHref):
     15        (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo):
     16        * inspector/front-end/inspector.js:
     17
    1182010-01-11  Nikolas Zimmermann  <nzimmermann@rim.com>
    219
  • trunk/WebCore/inspector/front-end/ElementsTreeOutline.js

    r52556 r53100  
    894894    },
    895895
     896    _rewriteAttrHref: function(node, hrefValue)
     897    {
     898        if (!hrefValue || hrefValue.indexOf("://") > 0)
     899            return hrefValue;
     900
     901        var match;
     902        var documentURL;
     903        for (var frameOwnerCandidate = node; frameOwnerCandidate; frameOwnerCandidate = frameOwnerCandidate.parentNode) {
     904            if (frameOwnerCandidate.documentURL) {
     905                documentURL = frameOwnerCandidate.documentURL;
     906                break;
     907            }
     908        }
     909        if (documentURL) {
     910            match = documentURL.match(WebInspector.URLRegExp);
     911            if (match) {
     912                var path = hrefValue;
     913                if (path.charAt(0) !== "/") {
     914                    var documentPath = match[4] || "/";
     915                    path = documentPath.substring(0, documentPath.lastIndexOf("/")) + "/" + path;
     916                }
     917                return match[1] + "://" + match[2] + (match[3] ? (":" + match[3]) : "") + path;
     918            }
     919        }
     920
     921        // documentURL not found or has bad value
     922        for (var url in WebInspector.resourceURLMap) {
     923            match = url.match(WebInspector.URLRegExp);
     924            if (match && match[4] === hrefValue)
     925                return url;
     926        }
     927        return hrefValue;
     928    },
     929
    896930    _nodeTitleInfo: function(node, hasChildren, linkify, tooltipText)
    897931    {
     
    914948                        if (linkify && (attr.name === "src" || attr.name === "href")) {
    915949                            var value = value.replace(/([\/;:\)\]\}])/g, "$1\u200B");
    916                             info.title += linkify(attr.value, value, "webkit-html-attribute-value", node.nodeName.toLowerCase() == "a", tooltipText);
     950                            info.title += linkify(this._rewriteAttrHref(node, attr.value), value, "webkit-html-attribute-value", node.nodeName.toLowerCase() == "a", tooltipText);
    917951                        } else {
    918952                            var value = value.escapeHTML();
  • trunk/WebCore/inspector/front-end/inspector.js

    r52623 r53100  
    6363    // 4 - ?path
    6464    // 5 - ?fragment
    65     URLRegExp: /^(http[s]?|file):\/\/([^\/:]+)(?::([\d]+))?(?:(\/[^#]*)(?:#(.*))?)?$/i,
     65    URLRegExp: /^(http[s]?|file):\/\/([^\/:]*)(?::([\d]+))?(?:(\/[^#]*)(?:#(.*))?)?$/i,
    6666
    6767    get platform()
Note: See TracChangeset for help on using the changeset viewer.