SubresourceLoader::SubresourceLoader(Frame* frame, SubresourceLoaderClient* client, bool sendResourceLoadCallbacks, bool shouldContentSniff) : ResourceLoader(frame, sendResourceLoadCallbacks, shouldContentSniff) , m_client(client) , m_loadingMultipartContent(false) { #ifndef NDEBUG subresourceLoaderCounter.increment(); #endif }
CachedPage::CachedPage(Page* page) : m_timeStamp(currentTime()) , m_cachedMainFrame(CachedFrame::create(page->mainFrame())) , m_needStyleRecalcForVisitedLinks(false) { #ifndef NDEBUG cachedPageCounter.increment(); #endif }
WebPageProxy::WebPageProxy(WebPageNamespace* pageNamespace, uint64_t pageID) : m_pageNamespace(pageNamespace) , m_mainFrame(0) , m_canGoBack(false) , m_canGoForward(false) , m_valid(true) , m_closed(false) , m_pageID(pageID) { #ifndef NDEBUG webPageProxyCounter.increment(); #endif }
JSEventListener::JSEventListener(JSObject* listener, JSDOMWindow* window, bool isHTML) : JSAbstractEventListener(isHTML) , m_listener(listener) , m_window(window) { if (m_listener) { JSDOMWindow::ListenersMap& listeners = isHTML ? m_window->jsHTMLEventListeners() : m_window->jsEventListeners(); listeners.set(m_listener, this); } #ifndef NDEBUG eventListenerCounter.increment(); #endif }
WebFrame::WebFrame() : m_coreFrame(0) , m_policyListenerID(0) , m_policyFunction(0) , m_policyDownloadID(0) , m_frameLoaderClient(this) , m_loadListener(0) , m_frameID(generateFrameID()) { WebProcess::shared().addWebFrame(m_frameID, this); #ifndef NDEBUG webFrameCounter.increment(); #endif }
SVGElementInstance::SVGElementInstance(SVGUseElement* useElement, SVGElement* originalElement) : m_needsUpdate(false) , m_useElement(useElement) , m_element(originalElement) , m_previousSibling(0) , m_nextSibling(0) , m_firstChild(0) , m_lastChild(0) { ASSERT(m_useElement); ASSERT(m_element); // Register as instance for passed element. m_element->mapInstanceToElement(this); #ifndef NDEBUG instanceCounter.increment(); #endif }
SVGElementInstance::SVGElementInstance(SVGUseElement* correspondingUseElement, SVGUseElement* directUseElement, PassRefPtr<SVGElement> originalElement) : m_correspondingUseElement(correspondingUseElement) , m_directUseElement(directUseElement) , m_element(originalElement) , m_previousSibling(0) , m_nextSibling(0) , m_firstChild(0) , m_lastChild(0) { ASSERT(m_correspondingUseElement); ASSERT(m_element); // Register as instance for passed element. m_element->mapInstanceToElement(this); #ifndef NDEBUG instanceCounter.increment(); #endif }
Page::Page(ChromeClient* chromeClient, ContextMenuClient* contextMenuClient, EditorClient* editorClient, DragClient* dragClient, InspectorClient* inspectorClient) : m_chrome(new Chrome(this, chromeClient)) , m_dragCaretController(new SelectionController(0, true)) , m_dragController(new DragController(this, dragClient)) , m_focusController(new FocusController(this)) , m_contextMenuController(new ContextMenuController(this, contextMenuClient)) , m_inspectorController(new InspectorController(this, inspectorClient)) , m_settings(new Settings(this)) , m_progress(new ProgressTracker) , m_backForwardList(BackForwardList::create(this)) , m_editorClient(editorClient) , m_frameCount(0) , m_tabKeyCyclesThroughElements(true) , m_defersLoading(false) , m_inLowQualityInterpolationMode(false) , m_parentInspectorController(0) , m_didLoadUserStyleSheet(false) , m_userStyleSheetModificationTime(0) , m_group(0) , m_debugger(0) , m_pendingUnloadEventCount(0) , m_pendingBeforeUnloadEventCount(0) , m_customHTMLTokenizerTimeDelay(-1) , m_customHTMLTokenizerChunkSize(-1) { if (!allPages) { allPages = new HashSet<Page*>; setFocusRingColorChangeFunction(setNeedsReapplyStyles); networkStateNotifier().setNetworkStateChangedFunction(networkStateChanged); } ASSERT(!allPages->contains(this)); allPages->add(this); JavaScriptDebugServer::shared().pageCreated(this); #ifndef NDEBUG pageCounter.increment(); #endif }
WebPage::WebPage(uint64_t pageID, const IntSize& viewSize, const WebPreferencesStore& store, DrawingArea::Type drawingAreaType) : m_page(new Page(new WebChromeClient(this), new WebContextMenuClient(this), new WebEditorClient(this), new WebDragClient(this), new WebInspectorClient(this), 0, 0, 0)) , m_viewSize(viewSize) , m_drawingArea(DrawingArea::create(drawingAreaType, this)) , m_canGoBack(false) , m_canGoForward(false) , m_pageID(pageID) { ASSERT(m_pageID); m_page->settings()->setJavaScriptEnabled(store.javaScriptEnabled); m_page->settings()->setLoadsImagesAutomatically(store.loadsImagesAutomatically); m_page->settings()->setPluginsEnabled(store.pluginsEnabled); m_page->settings()->setMinimumFontSize(store.minimumFontSize); m_page->settings()->setMinimumLogicalFontSize(store.minimumLogicalFontSize); m_page->settings()->setDefaultFontSize(store.defaultFontSize); m_page->settings()->setDefaultFixedFontSize(store.defaultFixedFontSize); m_page->settings()->setStandardFontFamily(store.standardFontFamily); m_page->settings()->setCursiveFontFamily(store.cursiveFontFamily); m_page->settings()->setFantasyFontFamily(store.fantasyFontFamily); m_page->settings()->setFixedFontFamily(store.fixedFontFamily); m_page->settings()->setSansSerifFontFamily(store.sansSerifFontFamily); m_page->settings()->setSerifFontFamily(store.serifFontFamily); platformInitialize(); m_mainFrame = WebFrame::createMainFrame(this); WebProcess::shared().connection()->send(WebPageProxyMessage::DidCreateMainFrame, m_pageID, CoreIPC::In(m_mainFrame->frameID())); if (WebProcess::shared().injectedBundle()) WebProcess::shared().injectedBundle()->didCreatePage(this); #ifndef NDEBUG webPageCounter.increment(); #endif }
JSLazyEventListener::JSLazyEventListener(const String& functionName, const String& eventParameterName, const String& code, Node* node, const String& sourceURL, int lineNumber, JSObject* wrapper, DOMWrapperWorld* isolatedWorld) : JSEventListener(0, wrapper, true, isolatedWorld) , m_functionName(functionName) , m_eventParameterName(eventParameterName) , m_code(code) , m_sourceURL(sourceURL) , m_lineNumber(lineNumber) , m_originalNode(node) { // We don't retain the original node because we assume it // will stay alive as long as this handler object is around // and we need to avoid a reference cycle. If JS transfers // this handler to another node, initializeJSFunction will // be called and then originalNode is no longer needed. // A JSLazyEventListener can be created with a line number of zero when it is created with // a setAttribute call from JavaScript, so make the line number 1 in that case. if (m_lineNumber == 0) m_lineNumber = 1; #ifndef NDEBUG eventListenerCounter.increment(); #endif }
JSLazyEventListener::JSLazyEventListener(const String& functionName, const String& eventParameterName, const String& code, JSDOMGlobalObject* globalObject, Node* node, int lineNumber) : JSEventListener(0, globalObject, true) , m_functionName(functionName) , m_eventParameterName(eventParameterName) , m_code(code) , m_parsed(false) , m_lineNumber(lineNumber) , m_originalNode(node) { // We don't retain the original node because we assume it // will stay alive as long as this handler object is around // and we need to avoid a reference cycle. If JS transfers // this handler to another node, parseCode will be called and // then originalNode is no longer needed. // A JSLazyEventListener can be created with a line number of zero when it is created with // a setAttribute call from JavaScript, so make the line number 1 in that case. if (m_lineNumber == 0) m_lineNumber = 1; #ifndef NDEBUG eventListenerCounter.increment(); #endif }