1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
7 import "mojo/public/interfaces/application/service_provider.mojom";
8 import "mojo/services/public/interfaces/input_events/input_events.mojom";
10 [Client=WindowManagerClient]
11 interface WindowManager {
12 // Requests the WindowManager to embed the app for |url| at an appropriate
13 // View. See ViewManger::Embed() for details on |service_provider|.
14 Embed(string url, ServiceProvider&? service_provider);
16 SetCapture(uint32 view_id) => (bool success);
17 FocusWindow(uint32 view_id) => (bool success);
18 ActivateWindow(uint32 view_id) => (bool success);
21 interface WindowManagerClient {
22 OnCaptureChanged(uint32 old_capture_view_id, uint32 new_capture_view_id);
23 OnFocusChanged(uint32 old_focused_node_id, uint32 new_focused_node_id);
24 OnActiveWindowChanged(uint32 old_focused_window, uint32 new_focused_window);