| // Copyright 2017 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module pdf.mojom; |
| |
| import "services/network/public/mojom/referrer_policy.mojom"; |
| import "ui/gfx/geometry/mojom/geometry.mojom"; |
| import "url/mojom/url.mojom"; |
| |
| interface PdfListener { |
| // Sets the current caret position. |
| SetCaretPosition(gfx.mojom.PointF position); |
| |
| // Move the end of the range selection to |extent|. |
| MoveRangeSelectionExtent(gfx.mojom.PointF extent); |
| |
| // Sets the selection to be between |base| and |extent|. The |extent| will |
| // be moved if the selection is modified. |
| SetSelectionBounds(gfx.mojom.PointF base, gfx.mojom.PointF extent); |
| }; |
| |
| // Browser-side interface used by PDF renderers. |
| interface PdfHost { |
| SetListener(pending_remote<PdfListener> client); |
| |
| // Updates the content restrictions, i.e. to disable print/copy. |
| UpdateContentRestrictions(int32 restrictions); |
| |
| // The currently displayed PDF has an unsupported feature. |
| HasUnsupportedFeature(); |
| |
| // Brings up SaveAs... dialog to save specified URL. |
| SaveUrlAs(url.mojom.Url url, network.mojom.ReferrerPolicy policy); |
| |
| // Notifies the embedder of the top-left and bottom-right coordinates of the |
| // current selection. |
| SelectionChanged(gfx.mojom.PointF left, int32 left_height, |
| gfx.mojom.PointF right, int32 right_height); |
| |
| // Notifies the embedder know the plugin can handle save commands internally. |
| SetPluginCanSave(bool can_save); |
| }; |