chromium/chrome/browser/ui/webui/ash/office_fallback/office_fallback.mojom

// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

module ash.office_fallback.mojom;

// The selected choice when the user closes the dialog.
enum DialogChoice {
  kCancel,
  kOk,
  kQuickOffice,
  kTryAgain,
};

// Lives in the browser process. A renderer uses this to create a page handler
// that enables communication between a renderer and the browser process.
interface PageHandlerFactory {
  // Creates a page handler to enable communication with the browser process.
  CreatePageHandler(pending_receiver<PageHandler> handler);
};

// Lives in the browser process. A renderer uses this to invoke methods that
// are implemented in the browser process.
interface PageHandler {
  // Passes on the user selected choice and requests the dialog to be closed.
  Close(DialogChoice choice);
};