void InspectorOverlay::rebuildOverlayPage() { FrameView* view = m_webViewImpl->mainFrameImpl()->frameView(); if (!view) return; IntRect visibleRectInDocument = view->scrollableArea()->visibleContentRect(); IntSize viewportSize = m_webViewImpl->page()->frameHost().visualViewport().size(); toLocalFrame(overlayPage()->mainFrame())->view()->resize(viewportSize); overlayPage()->frameHost().visualViewport().setSize(viewportSize); reset(viewportSize, visibleRectInDocument.location()); drawNodeHighlight(); drawQuadHighlight(); drawPausedInDebuggerMessage(); if (m_layoutEditor && !m_highlightNode) m_layoutEditor->rebuild(); }
void InspectorOverlay::update() { if (!shouldShowOverlay()) { m_client->hideHighlight(); return; } FrameView* view = m_page.mainFrame().view(); if (!view) return; FrameView* overlayView = overlayPage()->mainFrame().view(); IntSize viewportSize = view->unscaledVisibleContentSizeIncludingObscuredArea(); IntSize frameViewFullSize = view->unscaledVisibleContentSizeIncludingObscuredArea(ScrollableArea::IncludeScrollbars); overlayPage()->setPageScaleFactor(m_page.pageScaleFactor(), IntPoint()); frameViewFullSize.scale(m_page.pageScaleFactor()); overlayView->resize(frameViewFullSize); // Clear canvas and paint things. // FIXME: Remove extra parameter? reset(viewportSize, IntSize()); // Include scrollbars to avoid masking them by the gutter. drawGutter(); drawNodeHighlight(); drawQuadHighlight(); drawPausedInDebuggerMessage(); // Position DOM elements. overlayPage()->mainFrame().document()->recalcStyle(Style::Force); if (overlayView->needsLayout()) overlayView->layout(); // Kick paint. m_client->highlight(); }
void InspectorOverlay::update() { if (!m_highlightNode && !m_highlightQuad && m_pausedInDebuggerMessage.isNull() && m_size.isEmpty()) { m_client->hideHighlight(); return; } FrameView* view = m_page->mainFrame()->view(); if (!view) return; FrameView* overlayView = overlayPage()->mainFrame()->view(); IntSize viewportSize = view->visibleContentRect().size(); IntSize frameViewFullSize = view->visibleContentRect(ScrollableArea::IncludeScrollbars).size(); IntSize size = m_size.isEmpty() ? frameViewFullSize : m_size; overlayPage()->setPageScaleFactor(m_page->pageScaleFactor(), IntPoint()); size.scale(m_page->pageScaleFactor()); overlayView->resize(size); // Clear canvas and paint things. reset(viewportSize, m_size.isEmpty() ? IntSize() : frameViewFullSize); // Include scrollbars to avoid masking them by the gutter. drawGutter(); drawNodeHighlight(); drawQuadHighlight(); drawPausedInDebuggerMessage(); // Position DOM elements. overlayPage()->mainFrame()->document()->recalcStyle(Node::Force); if (overlayView->needsLayout()) overlayView->layout(); // Kick paint. m_client->highlight(); }
void InspectorOverlay::rebuildOverlayPage() { FrameView* view = m_frameImpl->frameView(); LocalFrame* frame = m_frameImpl->frame(); if (!view || !frame) return; IntRect visibleRectInDocument = view->getScrollableArea()->visibleContentRect(); IntSize viewportSize = frame->host()->visualViewport().size(); overlayMainFrame()->view()->resize(viewportSize); overlayPage()->frameHost().visualViewport().setSize(viewportSize); overlayMainFrame()->setPageZoomFactor(windowToViewportScale()); reset(viewportSize, visibleRectInDocument.location()); if (m_showReloadingBlanket) { evaluateInOverlay("showReloadingBlanket", ""); return; } drawNodeHighlight(); drawQuadHighlight(); drawPausedInDebuggerMessage(); drawViewSize(); }