Verified Commit f660ab2a authored by Olli Pettay's avatar Olli Pettay Committed by ma1
Browse files

Bug 1973699, modernize nsDocShell accesses a bit, a=RyanVM DONTBUILD

parent eee14064
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -131,7 +131,7 @@ nsDSURIContentListener::DoContent(const nsACString& aContentType,
  nsresult rv;
  NS_ENSURE_ARG_POINTER(aContentHandler);
  NS_ENSURE_TRUE(mDocShell, NS_ERROR_FAILURE);
  RefPtr<nsDocShell> docShell = mDocShell;
  RefPtr<nsDocShell> docShell = mDocShell.get();

  *aAbortProcess = false;

+3 −2
Original line number Diff line number Diff line
@@ -11,8 +11,9 @@
#include "nsIURIContentListener.h"
#include "nsWeakReference.h"
#include "nsITimer.h"
#include "mozilla/WeakPtr.h"
#include "nsDocShell.h"

class nsDocShell;
class nsIInterfaceRequestor;
class nsIWebNavigationInfo;
class nsPIDOMWindowOuter;
@@ -85,7 +86,7 @@ class nsDSURIContentListener final : public nsIURIContentListener,
  }

 protected:
  nsDocShell* mDocShell;
  mozilla::MainThreadWeakPtr<nsDocShell> mDocShell;
  // Hack to handle multipart images without creating a new viewer
  nsCOMPtr<nsIStreamListener> mExistingJPEGStreamListener;
  nsCOMPtr<nsIChannel> mExistingJPEGRequest;
+2 −2
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@
using namespace mozilla;
using namespace mozilla::dom;

nsDocShellEditorData::nsDocShellEditorData(nsIDocShell* aOwningDocShell)
nsDocShellEditorData::nsDocShellEditorData(nsDocShell* aOwningDocShell)
    : mDocShell(aOwningDocShell),
      mDetachedEditingState(Document::EditingState::eOff),
      mMakeEditable(false),
@@ -121,7 +121,7 @@ nsresult nsDocShellEditorData::DetachFromWindow() {
  return NS_OK;
}

nsresult nsDocShellEditorData::ReattachToWindow(nsIDocShell* aDocShell) {
nsresult nsDocShellEditorData::ReattachToWindow(nsDocShell* aDocShell) {
  mDocShell = aDocShell;

  nsCOMPtr<nsPIDOMWindowOuter> domWindow =
+5 −4
Original line number Diff line number Diff line
@@ -12,8 +12,9 @@

#include "mozilla/RefPtr.h"
#include "mozilla/dom/Document.h"
#include "mozilla/WeakPtr.h"
#include "nsDocShell.h"

class nsIDocShell;
class nsEditingSession;

namespace mozilla {
@@ -22,7 +23,7 @@ class HTMLEditor;

class nsDocShellEditorData {
 public:
  explicit nsDocShellEditorData(nsIDocShell* aOwningDocShell);
  explicit nsDocShellEditorData(nsDocShell* aOwningDocShell);
  ~nsDocShellEditorData();

  MOZ_CAN_RUN_SCRIPT_BOUNDARY nsresult MakeEditable(bool aWaitForUriLoad);
@@ -33,14 +34,14 @@ class nsDocShellEditorData {
  SetHTMLEditor(mozilla::HTMLEditor* aHTMLEditor);
  MOZ_CAN_RUN_SCRIPT_BOUNDARY void TearDownEditor();
  nsresult DetachFromWindow();
  nsresult ReattachToWindow(nsIDocShell* aDocShell);
  nsresult ReattachToWindow(nsDocShell* aDocShell);
  bool WaitingForLoad() const { return mMakeEditable; }

 protected:
  void EnsureEditingSession();

  // The doc shell that owns us. Weak ref, since it always outlives us.
  nsIDocShell* mDocShell;
  mozilla::WeakPtr<nsDocShell> mDocShell;

  // Only present for the content root docShell. Session is owned here.
  RefPtr<nsEditingSession> mEditingSession;