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

Side by Side Diff: Source/core/frame/LocalDOMWindow.cpp

Issue 365873002: Implement a part of ProcessingInstruction by using PrivateScript (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: WIP: async XHR, rewriting layout tests Created 6 years, 3 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 | Annotate | Revision Log
« no previous file with comments | « Source/core/frame/LocalDOMWindow.h ('k') | Source/core/xml/DocumentXSLT.h » ('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) 2006, 2007, 2008, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008, 2010 Apple Inc. All rights reserved.
3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
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 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 17 matching lines...) Expand all
28 #include "core/frame/LocalDOMWindow.h" 28 #include "core/frame/LocalDOMWindow.h"
29 29
30 #include "bindings/core/v8/Dictionary.h" 30 #include "bindings/core/v8/Dictionary.h"
31 #include "bindings/core/v8/ExceptionMessages.h" 31 #include "bindings/core/v8/ExceptionMessages.h"
32 #include "bindings/core/v8/ExceptionState.h" 32 #include "bindings/core/v8/ExceptionState.h"
33 #include "bindings/core/v8/ExceptionStatePlaceholder.h" 33 #include "bindings/core/v8/ExceptionStatePlaceholder.h"
34 #include "bindings/core/v8/ScriptCallStackFactory.h" 34 #include "bindings/core/v8/ScriptCallStackFactory.h"
35 #include "bindings/core/v8/ScriptController.h" 35 #include "bindings/core/v8/ScriptController.h"
36 #include "bindings/core/v8/SerializedScriptValue.h" 36 #include "bindings/core/v8/SerializedScriptValue.h"
37 #include "bindings/core/v8/V8DOMActivityLogger.h" 37 #include "bindings/core/v8/V8DOMActivityLogger.h"
38 #include "bindings/core/v8/V8Document.h"
38 #include "core/css/CSSComputedStyleDeclaration.h" 39 #include "core/css/CSSComputedStyleDeclaration.h"
39 #include "core/css/CSSRuleList.h" 40 #include "core/css/CSSRuleList.h"
40 #include "core/css/DOMWindowCSS.h" 41 #include "core/css/DOMWindowCSS.h"
41 #include "core/css/MediaQueryList.h" 42 #include "core/css/MediaQueryList.h"
42 #include "core/css/MediaQueryMatcher.h" 43 #include "core/css/MediaQueryMatcher.h"
43 #include "core/css/StyleMedia.h" 44 #include "core/css/StyleMedia.h"
44 #include "core/css/resolver/StyleResolver.h" 45 #include "core/css/resolver/StyleResolver.h"
45 #include "core/dom/ContextFeatures.h" 46 #include "core/dom/ContextFeatures.h"
46 #include "core/dom/DOMImplementation.h" 47 #include "core/dom/DOMImplementation.h"
47 #include "core/dom/Document.h" 48 #include "core/dom/Document.h"
(...skipping 14 matching lines...) Expand all
62 #include "core/frame/EventHandlerRegistry.h" 63 #include "core/frame/EventHandlerRegistry.h"
63 #include "core/frame/FrameConsole.h" 64 #include "core/frame/FrameConsole.h"
64 #include "core/frame/FrameHost.h" 65 #include "core/frame/FrameHost.h"
65 #include "core/frame/FrameView.h" 66 #include "core/frame/FrameView.h"
66 #include "core/frame/History.h" 67 #include "core/frame/History.h"
67 #include "core/frame/LocalFrame.h" 68 #include "core/frame/LocalFrame.h"
68 #include "core/frame/Location.h" 69 #include "core/frame/Location.h"
69 #include "core/frame/Navigator.h" 70 #include "core/frame/Navigator.h"
70 #include "core/frame/Screen.h" 71 #include "core/frame/Screen.h"
71 #include "core/frame/Settings.h" 72 #include "core/frame/Settings.h"
73 #include "core/frame/csp/ContentSecurityPolicy.h"
72 #include "core/html/HTMLFrameOwnerElement.h" 74 #include "core/html/HTMLFrameOwnerElement.h"
73 #include "core/inspector/ConsoleMessage.h" 75 #include "core/inspector/ConsoleMessage.h"
74 #include "core/inspector/ConsoleMessageStorage.h" 76 #include "core/inspector/ConsoleMessageStorage.h"
75 #include "core/inspector/InspectorInstrumentation.h" 77 #include "core/inspector/InspectorInstrumentation.h"
76 #include "core/inspector/InspectorTraceEvents.h" 78 #include "core/inspector/InspectorTraceEvents.h"
77 #include "core/inspector/ScriptCallStack.h" 79 #include "core/inspector/ScriptCallStack.h"
78 #include "core/loader/DocumentLoader.h" 80 #include "core/loader/DocumentLoader.h"
79 #include "core/loader/FrameLoadRequest.h" 81 #include "core/loader/FrameLoadRequest.h"
80 #include "core/loader/FrameLoader.h" 82 #include "core/loader/FrameLoader.h"
81 #include "core/loader/FrameLoaderClient.h" 83 #include "core/loader/FrameLoaderClient.h"
(...skipping 1807 matching lines...) Expand 10 before | Expand all | Expand 10 after
1889 DOMWindowLifecycleNotifier& LocalDOMWindow::lifecycleNotifier() 1891 DOMWindowLifecycleNotifier& LocalDOMWindow::lifecycleNotifier()
1890 { 1892 {
1891 return static_cast<DOMWindowLifecycleNotifier&>(LifecycleContext<LocalDOMWin dow>::lifecycleNotifier()); 1893 return static_cast<DOMWindowLifecycleNotifier&>(LifecycleContext<LocalDOMWin dow>::lifecycleNotifier());
1892 } 1894 }
1893 1895
1894 PassOwnPtr<LifecycleNotifier<LocalDOMWindow> > LocalDOMWindow::createLifecycleNo tifier() 1896 PassOwnPtr<LifecycleNotifier<LocalDOMWindow> > LocalDOMWindow::createLifecycleNo tifier()
1895 { 1897 {
1896 return DOMWindowLifecycleNotifier::create(this); 1898 return DOMWindowLifecycleNotifier::create(this);
1897 } 1899 }
1898 1900
1901 void LocalDOMWindow::replaceDocument(String documentSource, String contentType, String encodingName)
1902 {
1903 ASSERT(m_frame);
1904 RefPtrWillBeRawPtr<Document> oldDocument(m_document);
1905
1906 DocumentInit init(oldDocument->url(), m_frame);
1907
1908 bool forceXHTML = contentType == "text/plain";
1909
1910 RefPtrWillBeRawPtr<Document> newDocument = installNewDocument(contentType, i nit, forceXHTML);
1911
1912 // Before parsing, we need to save & detach the old document and get the new document
1913 // in place. We have to do this only if we're rendering the result document.
1914 if (FrameView* view = m_frame->view())
1915 view->clear();
1916
1917 newDocument->updateSecurityOrigin(oldDocument->securityOrigin());
1918 newDocument->setCookieURL(oldDocument->cookieURL());
1919 newDocument->contentSecurityPolicy()->copyStateFrom(oldDocument->contentSecu rityPolicy());
1920
1921 DocumentEncodingData data;
1922 data.setEncoding(WTF::TextEncoding(encodingName));
1923 newDocument->setEncodingData(data);
1924
1925 V8Document::PrivateScript::setTransformSourceDocumentMethod(m_frame, newDocu ment.get(), oldDocument.get());
1926 newDocument->setContent(documentSource);
1927 }
1928
1899 void LocalDOMWindow::trace(Visitor* visitor) 1929 void LocalDOMWindow::trace(Visitor* visitor)
1900 { 1930 {
1901 visitor->trace(m_document); 1931 visitor->trace(m_document);
1902 visitor->trace(m_screen); 1932 visitor->trace(m_screen);
1903 visitor->trace(m_history); 1933 visitor->trace(m_history);
1904 visitor->trace(m_locationbar); 1934 visitor->trace(m_locationbar);
1905 visitor->trace(m_menubar); 1935 visitor->trace(m_menubar);
1906 visitor->trace(m_personalbar); 1936 visitor->trace(m_personalbar);
1907 visitor->trace(m_scrollbars); 1937 visitor->trace(m_scrollbars);
1908 visitor->trace(m_statusbar); 1938 visitor->trace(m_statusbar);
1909 visitor->trace(m_toolbar); 1939 visitor->trace(m_toolbar);
1910 visitor->trace(m_console); 1940 visitor->trace(m_console);
1911 visitor->trace(m_navigator); 1941 visitor->trace(m_navigator);
1912 visitor->trace(m_location); 1942 visitor->trace(m_location);
1913 visitor->trace(m_media); 1943 visitor->trace(m_media);
1914 visitor->trace(m_sessionStorage); 1944 visitor->trace(m_sessionStorage);
1915 visitor->trace(m_localStorage); 1945 visitor->trace(m_localStorage);
1916 visitor->trace(m_applicationCache); 1946 visitor->trace(m_applicationCache);
1917 visitor->trace(m_performance); 1947 visitor->trace(m_performance);
1918 visitor->trace(m_css); 1948 visitor->trace(m_css);
1919 visitor->trace(m_eventQueue); 1949 visitor->trace(m_eventQueue);
1920 WillBeHeapSupplementable<LocalDOMWindow>::trace(visitor); 1950 WillBeHeapSupplementable<LocalDOMWindow>::trace(visitor);
1921 EventTargetWithInlineData::trace(visitor); 1951 EventTargetWithInlineData::trace(visitor);
1922 LifecycleContext<LocalDOMWindow>::trace(visitor); 1952 LifecycleContext<LocalDOMWindow>::trace(visitor);
1923 } 1953 }
1924 1954
1925 } // namespace blink 1955 } // namespace blink
OLDNEW
« no previous file with comments | « Source/core/frame/LocalDOMWindow.h ('k') | Source/core/xml/DocumentXSLT.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698