OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013, Google Inc. All rights reserved. | 2 * Copyright (c) 2013, 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 * * Redistributions of source code must retain the above copyright | 8 * * 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 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 29 matching lines...) Expand all Loading... |
40 #include "wtf/Assertions.h" | 40 #include "wtf/Assertions.h" |
41 #include "wtf/PtrUtil.h" | 41 #include "wtf/PtrUtil.h" |
42 #include <memory> | 42 #include <memory> |
43 | 43 |
44 namespace blink { | 44 namespace blink { |
45 | 45 |
46 std::unique_ptr<DummyPageHolder> DummyPageHolder::create( | 46 std::unique_ptr<DummyPageHolder> DummyPageHolder::create( |
47 const IntSize& initialViewSize, | 47 const IntSize& initialViewSize, |
48 Page::PageClients* pageClients, | 48 Page::PageClients* pageClients, |
49 FrameLoaderClient* frameLoaderClient, | 49 FrameLoaderClient* frameLoaderClient, |
50 FrameSettingOverrideFunction settingOverrider) { | 50 FrameSettingOverrideFunction settingOverrider, |
| 51 InterfaceProvider* interfaceProvider) { |
51 return wrapUnique(new DummyPageHolder(initialViewSize, pageClients, | 52 return wrapUnique(new DummyPageHolder(initialViewSize, pageClients, |
52 frameLoaderClient, settingOverrider)); | 53 frameLoaderClient, settingOverrider, |
| 54 interfaceProvider)); |
53 } | 55 } |
54 | 56 |
55 DummyPageHolder::DummyPageHolder( | 57 DummyPageHolder::DummyPageHolder(const IntSize& initialViewSize, |
56 const IntSize& initialViewSize, | 58 Page::PageClients* pageClientsArgument, |
57 Page::PageClients* pageClientsArgument, | 59 FrameLoaderClient* frameLoaderClient, |
58 FrameLoaderClient* frameLoaderClient, | 60 FrameSettingOverrideFunction settingOverrider, |
59 FrameSettingOverrideFunction settingOverrider) { | 61 InterfaceProvider* interfaceProvider) { |
60 Page::PageClients pageClients; | 62 Page::PageClients pageClients; |
61 if (!pageClientsArgument) { | 63 if (!pageClientsArgument) { |
62 fillWithEmptyClients(pageClients); | 64 fillWithEmptyClients(pageClients); |
63 } else { | 65 } else { |
64 pageClients.chromeClient = pageClientsArgument->chromeClient; | 66 pageClients.chromeClient = pageClientsArgument->chromeClient; |
65 pageClients.contextMenuClient = pageClientsArgument->contextMenuClient; | 67 pageClients.contextMenuClient = pageClientsArgument->contextMenuClient; |
66 pageClients.editorClient = pageClientsArgument->editorClient; | 68 pageClients.editorClient = pageClientsArgument->editorClient; |
67 pageClients.spellCheckerClient = pageClientsArgument->spellCheckerClient; | 69 pageClients.spellCheckerClient = pageClientsArgument->spellCheckerClient; |
68 } | 70 } |
69 m_page = Page::create(pageClients); | 71 m_page = Page::create(pageClients); |
70 Settings& settings = m_page->settings(); | 72 Settings& settings = m_page->settings(); |
71 // FIXME: http://crbug.com/363843. This needs to find a better way to | 73 // FIXME: http://crbug.com/363843. This needs to find a better way to |
72 // not create graphics layers. | 74 // not create graphics layers. |
73 settings.setAcceleratedCompositingEnabled(false); | 75 settings.setAcceleratedCompositingEnabled(false); |
74 if (settingOverrider) | 76 if (settingOverrider) |
75 (*settingOverrider)(settings); | 77 (*settingOverrider)(settings); |
76 | 78 |
77 m_frameLoaderClient = frameLoaderClient; | 79 m_frameLoaderClient = frameLoaderClient; |
78 if (!m_frameLoaderClient) | 80 if (!m_frameLoaderClient) |
79 m_frameLoaderClient = EmptyFrameLoaderClient::create(); | 81 m_frameLoaderClient = EmptyFrameLoaderClient::create(); |
80 | 82 |
81 m_frame = LocalFrame::create(m_frameLoaderClient.get(), &m_page->frameHost(), | 83 m_frame = LocalFrame::create(m_frameLoaderClient.get(), &m_page->frameHost(), |
82 nullptr); | 84 nullptr, interfaceProvider); |
83 m_frame->setView(FrameView::create(m_frame.get(), initialViewSize)); | 85 m_frame->setView(FrameView::create(m_frame.get(), initialViewSize)); |
84 m_frame->view()->page()->frameHost().visualViewport().setSize( | 86 m_frame->view()->page()->frameHost().visualViewport().setSize( |
85 initialViewSize); | 87 initialViewSize); |
86 m_frame->init(); | 88 m_frame->init(); |
87 } | 89 } |
88 | 90 |
89 DummyPageHolder::~DummyPageHolder() { | 91 DummyPageHolder::~DummyPageHolder() { |
90 m_page->willBeDestroyed(); | 92 m_page->willBeDestroyed(); |
91 m_page.clear(); | 93 m_page.clear(); |
92 m_frame.clear(); | 94 m_frame.clear(); |
(...skipping 10 matching lines...) Expand all Loading... |
103 | 105 |
104 FrameView& DummyPageHolder::frameView() const { | 106 FrameView& DummyPageHolder::frameView() const { |
105 return *m_frame->view(); | 107 return *m_frame->view(); |
106 } | 108 } |
107 | 109 |
108 Document& DummyPageHolder::document() const { | 110 Document& DummyPageHolder::document() const { |
109 return *m_frame->domWindow()->document(); | 111 return *m_frame->domWindow()->document(); |
110 } | 112 } |
111 | 113 |
112 } // namespace blink | 114 } // namespace blink |
OLD | NEW |