| // 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 mojom; |
| |
| struct MimeType { |
| string description; |
| array<string> file_extensions; |
| string mime_type; |
| }; |
| |
| struct PluginFile { |
| string description; |
| string enabled_mode; |
| array<MimeType> mime_types; |
| string name; |
| string path; |
| string type; |
| string version; |
| }; |
| |
| struct PluginData { |
| bool always_allowed; |
| bool trusted; |
| bool policy_click_to_play; |
| string description; |
| bool critical; |
| string enabled_mode; |
| string id; |
| string name; |
| string update_url; |
| string version; |
| array<PluginFile> plugin_files; |
| }; |
| |
| interface PluginsPageHandler { |
| GetPluginsData() => (array<PluginData> plugins); |
| GetShowDetails() => (bool show_details); |
| SaveShowDetailsToPrefs(bool details_mode); |
| SetPluginAlwaysAllowed(string plugin, bool allowed); |
| SetClientPage(PluginsPage page); |
| }; |
| |
| interface PluginsPage { |
| OnPluginsUpdated(array<PluginData> plugins); |
| }; |