Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(521)

Side by Side Diff: Source/core/xml/XMLTreeViewer.cpp

Issue 22150003: XMLTreeViewer should be created only in the XML viewer mode (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « Source/core/xml/XMLTreeViewer.h ('k') | Source/core/xml/parser/XMLDocumentParser.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Google Inc. All rights reserved. 2 * Copyright (C) 2011 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 10 *
(...skipping 30 matching lines...) Expand all
41 41
42 using namespace std; 42 using namespace std;
43 43
44 namespace WebCore { 44 namespace WebCore {
45 45
46 XMLTreeViewer::XMLTreeViewer(Document* document) 46 XMLTreeViewer::XMLTreeViewer(Document* document)
47 : m_document(document) 47 : m_document(document)
48 { 48 {
49 } 49 }
50 50
51 bool XMLTreeViewer::hasNoStyleInformation() const
52 {
53 if (m_document->sawElementsInKnownNamespaces() || m_document->transformSourc eDocument())
54 return false;
55
56 if (!m_document->frame() || !m_document->frame()->page())
57 return false;
58
59 if (m_document->frame()->tree()->parent())
60 return false; // This document is not in a top frame
61
62 return true;
63 }
64
65 void XMLTreeViewer::transformDocumentToTreeView() 51 void XMLTreeViewer::transformDocumentToTreeView()
66 { 52 {
67 m_document->setIsViewSource(true); 53 m_document->setIsViewSource(true);
68 String scriptString(reinterpret_cast<const char*>(XMLViewer_js), sizeof(XMLV iewer_js)); 54 String scriptString(reinterpret_cast<const char*>(XMLViewer_js), sizeof(XMLV iewer_js));
69 m_document->frame()->script()->executeScriptInMainWorld(ScriptSourceCode(scr iptString)); 55 m_document->frame()->script()->executeScriptInMainWorld(ScriptSourceCode(scr iptString));
70 String noStyleMessage("This XML file does not appear to have any style infor mation associated with it. The document tree is shown below."); 56 String noStyleMessage("This XML file does not appear to have any style infor mation associated with it. The document tree is shown below.");
71 m_document->frame()->script()->executeScriptInMainWorld(ScriptSourceCode("pr epareWebKitXMLViewer('" + noStyleMessage + "');")); 57 m_document->frame()->script()->executeScriptInMainWorld(ScriptSourceCode("pr epareWebKitXMLViewer('" + noStyleMessage + "');"));
72 58
73 String cssString(reinterpret_cast<const char*>(XMLViewer_css), sizeof(XMLVie wer_css)); 59 String cssString(reinterpret_cast<const char*>(XMLViewer_css), sizeof(XMLVie wer_css));
74 RefPtr<Text> text = m_document->createTextNode(cssString); 60 RefPtr<Text> text = m_document->createTextNode(cssString);
75 m_document->getElementById("xml-viewer-style")->appendChild(text, IGNORE_EXC EPTION, AttachLazily); 61 m_document->getElementById("xml-viewer-style")->appendChild(text, IGNORE_EXC EPTION, AttachLazily);
76 } 62 }
77 63
78 } // namespace WebCore 64 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/xml/XMLTreeViewer.h ('k') | Source/core/xml/parser/XMLDocumentParser.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698