| Index: third_party/WebKit/Source/web/InspectorOverlay.cpp
|
| diff --git a/third_party/WebKit/Source/web/InspectorOverlay.cpp b/third_party/WebKit/Source/web/InspectorOverlay.cpp
|
| index e30b2572f5a5a89326ddc67829fb3dc32489cd8a..8b43c3dc2113cacbaaadb7c7a2632377d73cbb74 100644
|
| --- a/third_party/WebKit/Source/web/InspectorOverlay.cpp
|
| +++ b/third_party/WebKit/Source/web/InspectorOverlay.cpp
|
| @@ -173,6 +173,7 @@ private:
|
|
|
| InspectorOverlay::InspectorOverlay(WebViewImpl* webViewImpl)
|
| : m_webViewImpl(webViewImpl)
|
| + , m_messageType(MessageType::Empty)
|
| , m_overlayHost(InspectorOverlayHost::create())
|
| , m_drawViewSize(false)
|
| , m_resizeTimerActive(false)
|
| @@ -290,10 +291,31 @@ bool InspectorOverlay::handleInputEvent(const WebInputEvent& inputEvent)
|
|
|
| void InspectorOverlay::setPausedInDebuggerMessage(const String& message)
|
| {
|
| - m_pausedInDebuggerMessage = message;
|
| + m_message = message;
|
| + m_messageType = message.isNull() ? MessageType::Empty : MessageType::PausedInDebugger;
|
| scheduleUpdate();
|
| }
|
|
|
| +void InspectorOverlay::setReloadingBanner(const String& message)
|
| +{
|
| + DCHECK(!message.isNull());
|
| + m_message = message;
|
| + m_messageType = MessageType::Reloading;
|
| + scheduleUpdate();
|
| +}
|
| +
|
| +void InspectorOverlay::maybeClearReloadingBanner()
|
| +{
|
| + if (m_messageType != MessageType::Reloading)
|
| + return;
|
| + m_message = String();
|
| + m_messageType = MessageType::Empty;
|
| + if (m_suspended)
|
| + clearInternal();
|
| + else
|
| + scheduleUpdate();
|
| +}
|
| +
|
| void InspectorOverlay::hideHighlight()
|
| {
|
| m_highlightNode.clear();
|
| @@ -354,9 +376,9 @@ void InspectorOverlay::highlightQuad(std::unique_ptr<FloatQuad> quad, const Insp
|
|
|
| bool InspectorOverlay::isEmpty()
|
| {
|
| - if (m_suspended)
|
| + if (m_suspended && m_messageType != MessageType::Reloading)
|
| return true;
|
| - bool hasVisibleElements = m_highlightNode || m_eventTargetNode || m_highlightQuad || (m_resizeTimerActive && m_drawViewSize) || !m_pausedInDebuggerMessage.isNull();
|
| + bool hasVisibleElements = m_highlightNode || m_eventTargetNode || m_highlightQuad || (m_resizeTimerActive && m_drawViewSize) || !m_message.isNull();
|
| return !hasVisibleElements && m_inspectMode == InspectorDOMAgent::NotSearching;
|
| }
|
|
|
| @@ -390,7 +412,7 @@ void InspectorOverlay::rebuildOverlayPage()
|
|
|
| drawNodeHighlight();
|
| drawQuadHighlight();
|
| - drawPausedInDebuggerMessage();
|
| + drawMessages();
|
| drawViewSize();
|
| if (m_layoutEditor && !m_highlightNode)
|
| m_layoutEditor->rebuild();
|
| @@ -445,10 +467,12 @@ void InspectorOverlay::drawQuadHighlight()
|
| evaluateInOverlay("drawHighlight", highlight.asProtocolValue());
|
| }
|
|
|
| -void InspectorOverlay::drawPausedInDebuggerMessage()
|
| +void InspectorOverlay::drawMessages()
|
| {
|
| - if (m_inspectMode == InspectorDOMAgent::NotSearching && !m_pausedInDebuggerMessage.isNull())
|
| - evaluateInOverlay("drawPausedInDebuggerMessage", m_pausedInDebuggerMessage);
|
| + if (!m_suspended && m_inspectMode == InspectorDOMAgent::NotSearching && m_messageType == MessageType::PausedInDebugger)
|
| + evaluateInOverlay("drawPausedInDebuggerMessage", m_message);
|
| + else if (m_messageType == MessageType::Reloading)
|
| + evaluateInOverlay("drawReloadingMessage", m_message);
|
| }
|
|
|
| void InspectorOverlay::drawViewSize()
|
| @@ -593,7 +617,7 @@ void InspectorOverlay::clearInternal()
|
| m_overlayChromeClient.clear();
|
| }
|
| m_resizeTimerActive = false;
|
| - m_pausedInDebuggerMessage = String();
|
| + m_message = String();
|
| m_inspectMode = InspectorDOMAgent::NotSearching;
|
| m_timer.stop();
|
| hideHighlight();
|
| @@ -672,10 +696,10 @@ void InspectorOverlay::overlayClearSelection(bool commitChanges)
|
|
|
| void InspectorOverlay::suspend()
|
| {
|
| - if (!m_suspended) {
|
| - m_suspended = true;
|
| - clearInternal();
|
| - }
|
| + if (m_suspended)
|
| + return;
|
| + m_suspended = true;
|
| + clearInternal();
|
| }
|
|
|
| void InspectorOverlay::resume()
|
|
|