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

Side by Side Diff: third_party/WebKit/Source/web/InspectorOverlay.cpp

Issue 1850413002: Improve DEFINE_STATIC_LOCAL()'s handling of Blink GCed objects. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: address compilation failure Created 4 years, 8 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
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 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are 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 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 450 matching lines...) Expand 10 before | Expand all | Expand 10 after
461 evaluateInOverlay("drawViewSize", ""); 461 evaluateInOverlay("drawViewSize", "");
462 } 462 }
463 463
464 Page* InspectorOverlay::overlayPage() 464 Page* InspectorOverlay::overlayPage()
465 { 465 {
466 if (m_overlayPage) 466 if (m_overlayPage)
467 return m_overlayPage.get(); 467 return m_overlayPage.get();
468 468
469 ScriptForbiddenScope::AllowUserAgentScript allowScript; 469 ScriptForbiddenScope::AllowUserAgentScript allowScript;
470 470
471 DEFINE_STATIC_LOCAL(Persistent<FrameLoaderClient>, dummyFrameLoaderClient, ( EmptyFrameLoaderClient::create())); 471 DEFINE_STATIC_LOCAL(FrameLoaderClient, dummyFrameLoaderClient, (EmptyFrameLo aderClient::create()));
472 Page::PageClients pageClients; 472 Page::PageClients pageClients;
473 fillWithEmptyClients(pageClients); 473 fillWithEmptyClients(pageClients);
474 DCHECK(!m_overlayChromeClient); 474 DCHECK(!m_overlayChromeClient);
475 m_overlayChromeClient = InspectorOverlayChromeClient::create(m_webViewImpl-> page()->chromeClient(), *this); 475 m_overlayChromeClient = InspectorOverlayChromeClient::create(m_webViewImpl-> page()->chromeClient(), *this);
476 pageClients.chromeClient = m_overlayChromeClient.get(); 476 pageClients.chromeClient = m_overlayChromeClient.get();
477 m_overlayPage = Page::create(pageClients); 477 m_overlayPage = Page::create(pageClients);
478 478
479 Settings& settings = m_webViewImpl->page()->settings(); 479 Settings& settings = m_webViewImpl->page()->settings();
480 Settings& overlaySettings = m_overlayPage->settings(); 480 Settings& overlaySettings = m_overlayPage->settings();
481 481
482 overlaySettings.genericFontFamilySettings().updateStandard(settings.genericF ontFamilySettings().standard()); 482 overlaySettings.genericFontFamilySettings().updateStandard(settings.genericF ontFamilySettings().standard());
483 overlaySettings.genericFontFamilySettings().updateSerif(settings.genericFont FamilySettings().serif()); 483 overlaySettings.genericFontFamilySettings().updateSerif(settings.genericFont FamilySettings().serif());
484 overlaySettings.genericFontFamilySettings().updateSansSerif(settings.generic FontFamilySettings().sansSerif()); 484 overlaySettings.genericFontFamilySettings().updateSansSerif(settings.generic FontFamilySettings().sansSerif());
485 overlaySettings.genericFontFamilySettings().updateCursive(settings.genericFo ntFamilySettings().cursive()); 485 overlaySettings.genericFontFamilySettings().updateCursive(settings.genericFo ntFamilySettings().cursive());
486 overlaySettings.genericFontFamilySettings().updateFantasy(settings.genericFo ntFamilySettings().fantasy()); 486 overlaySettings.genericFontFamilySettings().updateFantasy(settings.genericFo ntFamilySettings().fantasy());
487 overlaySettings.genericFontFamilySettings().updatePictograph(settings.generi cFontFamilySettings().pictograph()); 487 overlaySettings.genericFontFamilySettings().updatePictograph(settings.generi cFontFamilySettings().pictograph());
488 overlaySettings.setMinimumFontSize(settings.minimumFontSize()); 488 overlaySettings.setMinimumFontSize(settings.minimumFontSize());
489 overlaySettings.setMinimumLogicalFontSize(settings.minimumLogicalFontSize()) ; 489 overlaySettings.setMinimumLogicalFontSize(settings.minimumLogicalFontSize()) ;
490 overlaySettings.setScriptEnabled(true); 490 overlaySettings.setScriptEnabled(true);
491 overlaySettings.setPluginsEnabled(false); 491 overlaySettings.setPluginsEnabled(false);
492 overlaySettings.setLoadsImagesAutomatically(true); 492 overlaySettings.setLoadsImagesAutomatically(true);
493 // FIXME: http://crbug.com/363843. Inspector should probably create its 493 // FIXME: http://crbug.com/363843. Inspector should probably create its
494 // own graphics layers and attach them to the tree rather than going 494 // own graphics layers and attach them to the tree rather than going
495 // through some non-composited paint function. 495 // through some non-composited paint function.
496 overlaySettings.setAcceleratedCompositingEnabled(false); 496 overlaySettings.setAcceleratedCompositingEnabled(false);
497 497
498 RawPtr<LocalFrame> frame = LocalFrame::create(dummyFrameLoaderClient.get(), &m_overlayPage->frameHost(), 0); 498 RawPtr<LocalFrame> frame = LocalFrame::create(&dummyFrameLoaderClient, &m_ov erlayPage->frameHost(), 0);
499 frame->setView(FrameView::create(frame.get())); 499 frame->setView(FrameView::create(frame.get()));
500 frame->init(); 500 frame->init();
501 FrameLoader& loader = frame->loader(); 501 FrameLoader& loader = frame->loader();
502 frame->view()->setCanHaveScrollbars(false); 502 frame->view()->setCanHaveScrollbars(false);
503 frame->view()->setTransparent(true); 503 frame->view()->setTransparent(true);
504 504
505 const WebData& overlayPageHTMLResource = Platform::current()->loadResource(" InspectorOverlayPage.html"); 505 const WebData& overlayPageHTMLResource = Platform::current()->loadResource(" InspectorOverlayPage.html");
506 RefPtr<SharedBuffer> data = SharedBuffer::create(overlayPageHTMLResource.dat a(), overlayPageHTMLResource.size()); 506 RefPtr<SharedBuffer> data = SharedBuffer::create(overlayPageHTMLResource.dat a(), overlayPageHTMLResource.size());
507 loader.load(FrameLoadRequest(0, blankURL(), SubstituteData(data, "text/html" , "UTF-8", KURL(), ForceSynchronousLoad))); 507 loader.load(FrameLoadRequest(0, blankURL(), SubstituteData(data, "text/html" , "UTF-8", KURL(), ForceSynchronousLoad)));
508 v8::Isolate* isolate = toIsolate(frame.get()); 508 v8::Isolate* isolate = toIsolate(frame.get());
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
774 774
775 void InspectorOverlay::initializeLayoutEditorIfNeeded(Node* node) 775 void InspectorOverlay::initializeLayoutEditorIfNeeded(Node* node)
776 { 776 {
777 if (m_inspectMode != InspectorDOMAgent::ShowLayoutEditor || !node || !node-> isElementNode() || !node->ownerDocument()->isActive()) 777 if (m_inspectMode != InspectorDOMAgent::ShowLayoutEditor || !node || !node-> isElementNode() || !node->ownerDocument()->isActive())
778 return; 778 return;
779 m_layoutEditor = LayoutEditor::create(toElement(node), m_cssAgent, m_domAgen t, &overlayMainFrame()->script()); 779 m_layoutEditor = LayoutEditor::create(toElement(node), m_cssAgent, m_domAgen t, &overlayMainFrame()->script());
780 toChromeClientImpl(m_webViewImpl->page()->chromeClient()).setCursorOverridde n(true); 780 toChromeClientImpl(m_webViewImpl->page()->chromeClient()).setCursorOverridde n(true);
781 } 781 }
782 782
783 } // namespace blink 783 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/platform/heap/HeapTest.cpp ('k') | third_party/WebKit/Source/web/WebPagePopupImpl.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698