blob: 8867fa188fd4526e1e816731b17a4938bd2c1afb [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
module ash.mojom;
// An exported object in ash which lets an ash consumer set a client interface.
interface NewWindowController {
SetClient(associated NewWindowClient client);
// Shows the keyboard shortcut overlay. TODO(mash): this calls the client
// function of the same name below, but it should be implemented inside ash.
ShowKeyboardOverlay();
};
// A delegate interface that an ash user sends to ash to handle certain window
// management responsibilities.
interface NewWindowClient {
// Invoked when the user uses Ctrl+T to open a new tab.
NewTab();
// Invoked when the user uses Ctrl-N or Ctrl-Shift-N to open a new window.
NewWindow(bool incognito);
// Invoked when an accelerator is used to open the file manager.
OpenFileManager();
// Invoked when the user opens Crosh.
OpenCrosh();
// Invoked when an accelerator is used to open help center.
OpenGetHelp();
// Invoked when the user uses Shift+Ctrl+T to restore the closed tab.
RestoreTab();
// Shows the keyboard shortcut overlay.
ShowKeyboardOverlay();
// Shows the task manager window.
ShowTaskManager();
// Opens the feedback page for "Report Issue".
OpenFeedbackPage();
};