mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-11-24 14:26:09 +03:00
105 lines
3.2 KiB
Plaintext
105 lines
3.2 KiB
Plaintext
|
// Copyright 2017 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 chrome.mojom;
|
||
|
|
||
|
import "content/public/common/webplugininfo.mojom";
|
||
|
import "mojo/public/mojom/base/file_path.mojom";
|
||
|
import "mojo/public/mojom/base/string16.mojom";
|
||
|
import "url/mojom/origin.mojom";
|
||
|
import "url/mojom/url.mojom";
|
||
|
|
||
|
|
||
|
// Plugin messages sent from renderer to the host.
|
||
|
interface PluginHost {
|
||
|
// Tells the browser to show the Flash permission bubble in the same tab.
|
||
|
ShowFlashPermissionBubble();
|
||
|
|
||
|
// Tells the browser that there was an error loading a plugin.
|
||
|
CouldNotLoadPlugin(mojo_base.mojom.FilePath file_path);
|
||
|
|
||
|
// Notifies when a plugin couldn't be loaded because it's outdated.
|
||
|
BlockedOutdatedPlugin(PluginRenderer plugin_renderer,
|
||
|
string group_id);
|
||
|
|
||
|
// Notifies when a plugin couldn't be loaded because it requires a
|
||
|
// component update.
|
||
|
BlockedComponentUpdatedPlugin(PluginRenderer plugin_renderer,
|
||
|
string group_id);
|
||
|
|
||
|
};
|
||
|
|
||
|
// Plugin messages sent from renderer to the host requiring user auth actions.
|
||
|
interface PluginAuthHost {
|
||
|
// Notifies when a plugin couldn't be loaded because it requires
|
||
|
// user authorization.
|
||
|
BlockedUnauthorizedPlugin(mojo_base.mojom.String16 name, string group_id);
|
||
|
};
|
||
|
|
||
|
// These are only used internally, so the order does not matter.
|
||
|
enum PluginStatus {
|
||
|
kAllowed,
|
||
|
// Plugin is blocked, but still can be manually loaded via context menu.
|
||
|
kBlocked,
|
||
|
// Plugin is blocked by policy, so it cannot be manually loaded.
|
||
|
kBlockedByPolicy,
|
||
|
// Plugin is blocked, and cannot be manually loaded via context menu.
|
||
|
kBlockedNoLoading,
|
||
|
kComponentUpdateRequired,
|
||
|
kDisabled,
|
||
|
// Flash is blocked, but user can click on the placeholder to trigger the
|
||
|
// Flash permission prompt.
|
||
|
kFlashHiddenPreferHtml,
|
||
|
kNotFound,
|
||
|
kOutdatedBlocked,
|
||
|
kOutdatedDisallowed,
|
||
|
kPlayImportantContent,
|
||
|
kRestartRequired,
|
||
|
kUnauthorized,
|
||
|
};
|
||
|
|
||
|
struct PluginInfo {
|
||
|
PluginStatus status;
|
||
|
content.mojom.WebPluginInfo plugin;
|
||
|
string actual_mime_type;
|
||
|
string group_identifier;
|
||
|
mojo_base.mojom.String16 group_name;
|
||
|
};
|
||
|
|
||
|
struct PluginParam {
|
||
|
mojo_base.mojom.String16 name;
|
||
|
mojo_base.mojom.String16 value;
|
||
|
};
|
||
|
|
||
|
interface PluginInfoHost {
|
||
|
// Return information about a plugin for the given URL and MIME type.
|
||
|
// Includes specific reasons why a plugin can't be used, for example because
|
||
|
// it's disabled.
|
||
|
[Sync]
|
||
|
GetPluginInfo(int32 render_frame_id,
|
||
|
url.mojom.Url url,
|
||
|
url.mojom.Origin origin,
|
||
|
string mime_type) => (PluginInfo plugin_info);
|
||
|
};
|
||
|
|
||
|
// Plugin messages sent from a host to the renderer.
|
||
|
interface PluginRenderer {
|
||
|
|
||
|
// Notifies a missing plugin placeholder that we have finished downloading
|
||
|
// the plugin.
|
||
|
FinishedDownloading();
|
||
|
|
||
|
// Notifies a missing plugin placeholder that we have finished component-
|
||
|
// updating the plug-in.
|
||
|
UpdateSuccess();
|
||
|
|
||
|
// Notifies a missing plugin placeholder that we have failed to
|
||
|
// component-update the plug-in.
|
||
|
UpdateFailure();
|
||
|
|
||
|
// Notifies a missing plugin placeholder that we have started the component
|
||
|
// download.
|
||
|
UpdateDownloading();
|
||
|
};
|