Bug 1236991 - part 3: fix tooltips picking up SVG <title> elements inside SVG link tags, r?enndeakin draft
authorGijs Kruitbosch <gijskruitbosch@gmail.com>
Mon, 11 Apr 2016 14:25:10 +0100
changeset 349465 c03e79b7cb17b31e6f703ca4749e99b944dd1070
parent 349464 aedc58244082168f281155b60b13f613d23dbbd2
child 349466 40cad79518ee808430cb2acac09953ab3cd9e88d
push id15095
push usergijskruitbosch@gmail.com
push dateMon, 11 Apr 2016 16:49:08 +0000
reviewersenndeakin
bugs1236991
milestone48.0a1
Bug 1236991 - part 3: fix tooltips picking up SVG <title> elements inside SVG link tags, r?enndeakin MozReview-Commit-ID: XEQJQtMCaC
embedding/browser/nsDocShellTreeOwner.cpp
--- a/embedding/browser/nsDocShellTreeOwner.cpp
+++ b/embedding/browser/nsDocShellTreeOwner.cpp
@@ -1199,20 +1199,19 @@ nsDefaultTooltipTextProvider::GetNodeTex
               nsCOMPtr<nsIURI> uri(linkContent->GetURIExternal());
               if (uri) {
                 currElement->GetAttributeNS(
                   xlinkNS, NS_LITERAL_STRING("title"), outText);
                 if (outText.Length()) {
                   found = true;
                 }
               }
-            } else {
-              if (lookingForSVGTitle) {
-                lookingForSVGTitle = UseSVGTitle(currElement);
-              }
+            }
+            if (!found && lookingForSVGTitle) {
+              lookingForSVGTitle = UseSVGTitle(currElement);
               if (lookingForSVGTitle) {
                 nsINodeList* childNodes = content->ChildNodes();
                 uint32_t childNodeCount = childNodes->Length();
                 for (uint32_t i = 0; i < childNodeCount; i++) {
                   nsIContent* child = childNodes->Item(i);
                   if (child->IsSVGElement(nsGkAtoms::title)) {
                     static_cast<dom::SVGTitleElement*>(child)->GetTextContent(outText);
                     if (outText.Length()) {