Changeset 238378 in webkit


Ignore:
Timestamp:
Nov 19, 2018 12:51:40 PM (6 years ago)
Author:
Joseph Pecoraro
Message:

Web Inspector: "Reload Web Inspector" button no longer partially works
https://bugs.webkit.org/show_bug.cgi?id=191773
<rdar://problem/46139932>

Reviewed by Devin Rousso.

Source/WebCore:

  • inspector/InspectorFrontendClient.h:
  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::reopen):

  • inspector/InspectorFrontendHost.h:
  • inspector/InspectorFrontendHost.idl:

Provide a host call to reopen an inspector window to reload it.

  • testing/Internals.cpp:

Stub implementation, this is not used in tests.

Source/WebInspectorUI:

  • UserInterface/Base/Main.js:
  • UserInterface/Debug/UncaughtExceptionReporter.js:

(sheetElement.innerHTML):

  • UserInterface/Views/SettingsTabContentView.js:

Source/WebKit:

  • UIProcess/RemoteWebInspectorProxy.cpp:

(WebKit::RemoteWebInspectorProxy::load):
(WebKit::RemoteWebInspectorProxy::reopen):

  • UIProcess/RemoteWebInspectorProxy.h:
  • UIProcess/RemoteWebInspectorProxy.messages.in:
  • WebProcess/WebPage/RemoteWebInspectorUI.cpp:

(WebKit::RemoteWebInspectorUI::reopen):

  • WebProcess/WebPage/RemoteWebInspectorUI.h:
  • WebProcess/WebPage/WebInspector.cpp:

(WebKit::WebInspector::reopen):

  • WebProcess/WebPage/WebInspector.h:
  • WebProcess/WebPage/WebInspector.messages.in:
  • WebProcess/WebPage/WebInspectorUI.cpp:

(WebKit::WebInspectorUI::reopen):

  • WebProcess/WebPage/WebInspectorUI.h:

Source/WebKitLegacy/ios:

  • WebCoreSupport/WebInspectorClientIOS.mm:

(WebInspectorFrontendClient::reopen):

Source/WebKitLegacy/mac:

  • WebCoreSupport/WebInspectorClient.h:
  • WebCoreSupport/WebInspectorClient.mm:

(WebInspectorFrontendClient::reopen):

Source/WebKitLegacy/win:

  • WebCoreSupport/WebInspectorClient.cpp:

(WebInspectorFrontendClient::reopen):

  • WebCoreSupport/WebInspectorClient.h:
Location:
trunk/Source
Files:
30 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r238377 r238378  
     12018-11-19  Joseph Pecoraro  <pecoraro@apple.com>
     2
     3        Web Inspector: "Reload Web Inspector" button no longer partially works
     4        https://bugs.webkit.org/show_bug.cgi?id=191773
     5        <rdar://problem/46139932>
     6
     7        Reviewed by Devin Rousso.
     8
     9        * inspector/InspectorFrontendClient.h:
     10        * inspector/InspectorFrontendHost.cpp:
     11        (WebCore::InspectorFrontendHost::reopen):
     12        * inspector/InspectorFrontendHost.h:
     13        * inspector/InspectorFrontendHost.idl:
     14        Provide a host call to reopen an inspector window to reload it.
     15
     16        * testing/Internals.cpp:
     17        Stub implementation, this is not used in tests.
     18
    1192018-11-19  Rob Buis  <rbuis@igalia.com>
    220
  • trunk/Source/WebCore/inspector/InspectorFrontendClient.h

    r238350 r238378  
    6262    virtual void bringToFront() = 0;
    6363    virtual void closeWindow() = 0;
     64    virtual void reopen() = 0;
    6465
    6566    virtual UserInterfaceLayoutDirection userInterfaceLayoutDirection() const = 0;
  • trunk/Source/WebCore/inspector/InspectorFrontendHost.cpp

    r238350 r238378  
    191191}
    192192
     193void InspectorFrontendHost::reopen()
     194{
     195    if (m_client)
     196        m_client->reopen();
     197}
     198
    193199void InspectorFrontendHost::bringToFront()
    194200{
  • trunk/Source/WebCore/inspector/InspectorFrontendHost.h

    r238350 r238378  
    5858    void requestSetDockSide(const String&);
    5959    void closeWindow();
     60    void reopen();
    6061    void bringToFront();
    6162    void inspectedURLChanged(const String&);
  • trunk/Source/WebCore/inspector/InspectorFrontendHost.idl

    r238350 r238378  
    3737    void loaded();
    3838    void closeWindow();
     39    void reopen();
    3940    void bringToFront();
    4041    void inspectedURLChanged(DOMString newURL);
  • trunk/Source/WebCore/testing/Internals.cpp

    r238350 r238378  
    308308    void detachWindow() final { }
    309309    void closeWindow() final;
     310    void reopen() final { }
    310311    void bringToFront() final { }
    311312    String localizedStringsURL() final { return String(); }
  • trunk/Source/WebInspectorUI/ChangeLog

    r238350 r238378  
     12018-11-19  Joseph Pecoraro  <pecoraro@apple.com>
     2
     3        Web Inspector: "Reload Web Inspector" button no longer partially works
     4        https://bugs.webkit.org/show_bug.cgi?id=191773
     5        <rdar://problem/46139932>
     6
     7        Reviewed by Devin Rousso.
     8
     9        * UserInterface/Base/Main.js:
     10        * UserInterface/Debug/UncaughtExceptionReporter.js:
     11        (sheetElement.innerHTML):
     12        * UserInterface/Views/SettingsTabContentView.js:
     13
    1142018-11-17  Devin Rousso  <drousso@apple.com>
    215
  • trunk/Source/WebInspectorUI/UserInterface/Base/Main.js

    r238198 r238378  
    15851585        proposedContextMenu.appendSeparator();
    15861586        proposedContextMenu.appendItem(WI.unlocalizedString("Reload Web Inspector"), () => {
    1587             // FIXME: Reload Web Inspector does not work with MultiplexingBackendTarget.
    1588             window.location.reload();
     1587            InspectorFrontendHost.reopen();
    15891588        });
    15901589
     
    22542253        this._dockRight();
    22552254
    2256     // FIXME: Reload Web Inspector does not work with MultiplexingBackendTarget.
    2257     window.location.reload();
     2255    InspectorFrontendHost.reopen();
    22582256};
    22592257
  • trunk/Source/WebInspectorUI/UserInterface/Debug/Bootstrap.js

    r238331 r238378  
    3737    // Reload the Web Inspector.
    3838    new WI.KeyboardShortcut(WI.KeyboardShortcut.Modifier.Option | WI.KeyboardShortcut.Modifier.Shift | WI.KeyboardShortcut.Modifier.CommandOrControl, "R", () => {
    39         window.location.reload();
     39        InspectorFrontendHost.reopen();
    4040    });
    4141
  • trunk/Source/WebInspectorUI/UserInterface/Debug/UncaughtExceptionReporter.js

    r238192 r238378  
    258258        to the Web Inspector without reloading. However, some things might not work without reloading if the error corrupted the Inspector's internal state.</dd>`;
    259259
    260     // FIXME: Reload Web Inspector does not work with MultiplexingBackendTarget.
    261260    let sheetElement = window.__sheetElement = document.createElement("div");
    262261    sheetElement.classList.add("sheet-container");
     
    274273        bug with this information</a>. It is possible that someone else broke it by accident.</dd>
    275274        <dt>Oops, can I try again?</dt>
    276         <dd><a href="javascript:window.location.reload()">Click to reload the Inspector</a>
     275        <dd><a href="javascript:InspectorFrontendHost.reopen()">Click to reload the Inspector</a>
    277276        again after making local changes.</dd>
    278277        ${dismissOptionHTML}
  • trunk/Source/WebInspectorUI/UserInterface/Views/SettingsTabContentView.js

    r238192 r238378  
    259259        experimentalSettingsView.addSeparator();
    260260
    261         // FIXME: Reload Web Inspector does not work with MultiplexingBackendTarget.
    262261        let reloadInspectorButton = document.createElement("button");
    263262        reloadInspectorButton.textContent = WI.UIString("Reload Web Inspector");
    264         reloadInspectorButton.addEventListener("click", () => { window.location.reload(); });
     263        reloadInspectorButton.addEventListener("click", () => { InspectorFrontendHost.reopen(); });
    265264
    266265        let reloadInspectorContainerElement = experimentalSettingsView.addCenteredContainer(reloadInspectorButton, WI.UIString("for changes to take effect"));
  • trunk/Source/WebKit/ChangeLog

    r238372 r238378  
     12018-11-19  Joseph Pecoraro  <pecoraro@apple.com>
     2
     3        Web Inspector: "Reload Web Inspector" button no longer partially works
     4        https://bugs.webkit.org/show_bug.cgi?id=191773
     5        <rdar://problem/46139932>
     6
     7        Reviewed by Devin Rousso.
     8
     9        * UIProcess/RemoteWebInspectorProxy.cpp:
     10        (WebKit::RemoteWebInspectorProxy::load):
     11        (WebKit::RemoteWebInspectorProxy::reopen):
     12        * UIProcess/RemoteWebInspectorProxy.h:
     13        * UIProcess/RemoteWebInspectorProxy.messages.in:
     14        * WebProcess/WebPage/RemoteWebInspectorUI.cpp:
     15        (WebKit::RemoteWebInspectorUI::reopen):
     16        * WebProcess/WebPage/RemoteWebInspectorUI.h:
     17        * WebProcess/WebPage/WebInspector.cpp:
     18        (WebKit::WebInspector::reopen):
     19        * WebProcess/WebPage/WebInspector.h:
     20        * WebProcess/WebPage/WebInspector.messages.in:
     21        * WebProcess/WebPage/WebInspectorUI.cpp:
     22        (WebKit::WebInspectorUI::reopen):
     23        * WebProcess/WebPage/WebInspectorUI.h:
     24
    1252018-11-19  Alejandro G. Castro  <alex@igalia.com>
    226
  • trunk/Source/WebKit/UIProcess/RemoteWebInspectorProxy.cpp

    r238350 r238378  
    5757    createFrontendPageAndWindow();
    5858
     59    m_debuggableType = debuggableType;
     60    m_backendCommandsURL = backendCommandsURL;
     61
    5962    m_inspectorPage->process().send(Messages::RemoteWebInspectorUI::Initialize(debuggableType, backendCommandsURL), m_inspectorPage->pageID());
    6063    m_inspectorPage->loadRequest(URL(URL(), WebInspectorProxy::inspectorPageURL()));
     
    9093
    9194    closeFrontendPageAndWindow();
     95}
     96
     97void RemoteWebInspectorProxy::reopen()
     98{
     99    ASSERT(!m_debuggableType.isEmpty());
     100
     101    closeFrontendPageAndWindow();
     102    load(m_debuggableType, m_backendCommandsURL);
    92103}
    93104
  • trunk/Source/WebKit/UIProcess/RemoteWebInspectorProxy.h

    r238350 r238378  
    9696    // RemoteWebInspectorProxy messages.
    9797    void frontendDidClose();
     98    void reopen();
    9899    void bringToFront();
    99100    void save(const String& filename, const String& content, bool base64Encoded, bool forceSaveAs);
     
    120121    WebPageProxy* m_inspectorPage { nullptr };
    121122
     123    String m_debuggableType;
     124    String m_backendCommandsURL;
     125
    122126#if PLATFORM(MAC)
    123127    RetainPtr<WKInspectorViewController> m_inspectorView;
  • trunk/Source/WebKit/UIProcess/RemoteWebInspectorProxy.messages.in

    r238350 r238378  
    2323messages -> RemoteWebInspectorProxy {
    2424    FrontendDidClose()
     25    Reopen()
    2526    BringToFront()
    2627
  • trunk/Source/WebKit/WebProcess/WebPage/RemoteWebInspectorUI.cpp

    r238350 r238378  
    129129}
    130130
     131void RemoteWebInspectorUI::reopen()
     132{
     133    WebProcess::singleton().parentProcessConnection()->send(Messages::RemoteWebInspectorProxy::Reopen(), m_page.pageID());
     134}
     135
    131136void RemoteWebInspectorUI::openInNewTab(const String& url)
    132137{
  • trunk/Source/WebKit/WebProcess/WebPage/RemoteWebInspectorUI.h

    r238350 r238378  
    6767    void bringToFront() override;
    6868    void closeWindow() override;
     69    void reopen() override;
    6970
    7071    void openInNewTab(const String& url) override;
  • trunk/Source/WebKit/WebProcess/WebPage/WebInspector.cpp

    r238369 r238378  
    143143}
    144144
     145void WebInspector::reopen()
     146{
     147    close();
     148    show();
     149}
     150
    145151void WebInspector::openInNewTab(const String& urlString)
    146152{
  • trunk/Source/WebKit/WebProcess/WebPage/WebInspector.h

    r238330 r238378  
    5353    void show();
    5454    void close();
     55    void reopen();
    5556
    5657    void openInNewTab(const String& urlString);
  • trunk/Source/WebKit/WebProcess/WebPage/WebInspector.messages.in

    r238330 r238378  
    2424    Show()
    2525    Close()
     26    Reopen()
    2627
    2728    SetAttached(bool attached)
  • trunk/Source/WebKit/WebProcess/WebPage/WebInspectorUI.cpp

    r238350 r238378  
    168168}
    169169
     170void WebInspectorUI::reopen()
     171{
     172    if (m_backendConnection)
     173        m_backendConnection->send(Messages::WebInspector::Reopen(), 0);
     174}
     175
    170176WebCore::UserInterfaceLayoutDirection WebInspectorUI::userInterfaceLayoutDirection() const
    171177{
  • trunk/Source/WebKit/WebProcess/WebPage/WebInspectorUI.h

    r238350 r238378  
    9393    void bringToFront() override;
    9494    void closeWindow() override;
     95    void reopen() override;
    9596
    9697    WebCore::UserInterfaceLayoutDirection userInterfaceLayoutDirection() const override;
  • trunk/Source/WebKitLegacy/ios/ChangeLog

    r237266 r238378  
     12018-11-19  Joseph Pecoraro  <pecoraro@apple.com>
     2
     3        Web Inspector: "Reload Web Inspector" button no longer partially works
     4        https://bugs.webkit.org/show_bug.cgi?id=191773
     5        <rdar://problem/46139932>
     6
     7        Reviewed by Devin Rousso.
     8
     9        * WebCoreSupport/WebInspectorClientIOS.mm:
     10        (WebInspectorFrontendClient::reopen):
     11
    1122018-10-18  Alexey Proskuryakov  <ap@apple.com>
    213
  • trunk/Source/WebKitLegacy/ios/WebCoreSupport/WebInspectorClientIOS.mm

    r238350 r238378  
    126126void WebInspectorFrontendClient::bringToFront() { }
    127127void WebInspectorFrontendClient::closeWindow() { }
     128void WebInspectorFrontendClient::reopen() { }
    128129void WebInspectorFrontendClient::attachWindow(DockSide) { }
    129130void WebInspectorFrontendClient::detachWindow() { }
  • trunk/Source/WebKitLegacy/mac/ChangeLog

    r238350 r238378  
     12018-11-19  Joseph Pecoraro  <pecoraro@apple.com>
     2
     3        Web Inspector: "Reload Web Inspector" button no longer partially works
     4        https://bugs.webkit.org/show_bug.cgi?id=191773
     5        <rdar://problem/46139932>
     6
     7        Reviewed by Devin Rousso.
     8
     9        * WebCoreSupport/WebInspectorClient.h:
     10        * WebCoreSupport/WebInspectorClient.mm:
     11        (WebInspectorFrontendClient::reopen):
     12
    1132018-11-17  Devin Rousso  <drousso@apple.com>
    214
  • trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebInspectorClient.h

    r238350 r238378  
    118118    void bringToFront() override;
    119119    void closeWindow() override;
     120    void reopen() override;
    120121
    121122    void attachWindow(DockSide) override;
  • trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebInspectorClient.mm

    r238350 r238378  
    251251}
    252252
     253void WebInspectorFrontendClient::reopen()
     254{
     255    WebInspector* inspector = [m_inspectedWebView inspector];
     256    [inspector close:nil];
     257    [inspector show:nil];
     258}
     259
    253260void WebInspectorFrontendClient::attachWindow(DockSide)
    254261{
     
    692699    _destroyingInspectorView = YES;
    693700
    694     if (_attachedToInspectedWebView)
    695         [self close];
     701    [self close];
    696702
    697703    _visible = NO;
  • trunk/Source/WebKitLegacy/win/ChangeLog

    r238350 r238378  
     12018-11-19  Joseph Pecoraro  <pecoraro@apple.com>
     2
     3        Web Inspector: "Reload Web Inspector" button no longer partially works
     4        https://bugs.webkit.org/show_bug.cgi?id=191773
     5        <rdar://problem/46139932>
     6
     7        Reviewed by Devin Rousso.
     8
     9        * WebCoreSupport/WebInspectorClient.cpp:
     10        (WebInspectorFrontendClient::reopen):
     11        * WebCoreSupport/WebInspectorClient.h:
     12
    1132018-11-17  Devin Rousso  <drousso@apple.com>
    214
  • trunk/Source/WebKitLegacy/win/WebCoreSupport/WebInspectorClient.cpp

    r238350 r238378  
    271271}
    272272
     273void WebInspectorFrontendClient::reopen()
     274{
     275    destroyInspectorView();
     276
     277    if (Page* inspectedPage = m_inspectedWebView->page())
     278        inspectedPage->inspectorController().show();
     279}
     280
    273281void WebInspectorFrontendClient::attachWindow(DockSide)
    274282{
  • trunk/Source/WebKitLegacy/win/WebCoreSupport/WebInspectorClient.h

    r238350 r238378  
    104104    void bringToFront() override;
    105105    void closeWindow() override;
     106    void reopen() override;
    106107
    107108    void setAttachedWindowHeight(unsigned) override;
Note: See TracChangeset for help on using the changeset viewer.