admin
2020-06-10 a610f2ab6e543d2cb78c1ef212ac6a74ddc067d9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
// Copyright © 2014 The CefSharp Authors. All rights reserved.
//
// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
 
using System;
using System.Collections.Generic;
 
namespace CefSharp
{
    /// <summary>
    /// Wrapper for the CefContextMenuParams
    /// </summary>
    public interface IContextMenuParams : IDisposable
    {
        /// <summary>
        /// Returns the Y coordinate of the mouse where the context menu was invoked.
        /// Coords are relative to the associated RenderView's origin.
        /// </summary>
        int YCoord { get; }
 
        /// <summary>
        /// Returns the X coordinate of the mouse where the context menu was invoked.
        /// Coords are relative to the associated RenderView's origin.
        /// </summary>
        int XCoord { get; }
 
        /// <summary>
        /// Returns flags representing the type of node that the context menu was invoked on.
        /// </summary>
        ContextMenuType TypeFlags { get; }
 
        /// <summary>
        /// Returns the URL of the link, if any, that encloses the node that the
        /// context menu was invoked on.
        /// </summary>
        string LinkUrl { get; }
 
        /// <summary>
        /// Returns the link URL, if any, to be used ONLY for "copy link address". We
        /// don't validate this field in the frontend process.
        /// </summary>
        string UnfilteredLinkUrl { get; }
 
        /// <summary>
        /// Returns the source URL, if any, for the element that the context menu was
        /// invoked on. Example of elements with source URLs are img, audio, and video.
        /// </summary>
        string SourceUrl { get; }
 
        /// <summary>
        /// Returns true if the context menu was invoked on an image which has
        /// non-empty contents.
        /// </summary>
        bool HasImageContents { get; }
 
        /// <summary>
        /// Returns the URL of the top level page that the context menu was invoked on.
        /// </summary>
        string PageUrl { get; }
 
        /// <summary>
        /// Returns the URL of the subframe that the context menu was invoked on.
        /// </summary>
        string FrameUrl { get; }
 
        /// <summary>
        /// Returns the character encoding of the subframe that the context menu was
        /// invoked on.
        /// </summary>
        string FrameCharset { get; }
 
        /// <summary>
        /// Returns the type of context node that the context menu was invoked on.
        /// </summary>
        ContextMenuMediaType MediaType { get; }
 
        /// <summary>
        /// Returns flags representing the actions supported by the media element, if
        /// any, that the context menu was invoked on.
        /// </summary>
        ContextMenuMediaState MediaStateFlags { get; }
 
        /// <summary>
        /// Returns the text of the selection, if any, that the context menu was
        /// invoked on.
        /// </summary>
        string SelectionText { get; }
 
        /// <summary>
        /// Returns the text of the misspelled word, if any, that the context menu was
        /// invoked on.
        /// </summary>
        string MisspelledWord { get; }
 
        /// <summary>
        /// Returns a list of strings from the spell check service for the misspelled word if there is one.
        /// </summary>
        List<string> DictionarySuggestions { get; }
 
        /// <summary>
        /// Returns true if the context menu was invoked on an editable node.
        /// </summary>
        bool IsEditable { get; }
 
        /// <summary>
        /// Returns true if the context menu was invoked on an editable node where
        /// spell-check is enabled.
        /// </summary>
        bool IsSpellCheckEnabled { get; }
 
        /// <summary>
        /// Returns flags representing the actions supported by the editable node, if
        /// any, that the context menu was invoked on.
        /// </summary>
        /// <returns>Returns ContextMenuEditState as flags</returns>
        ContextMenuEditState EditStateFlags { get; }
 
        /// <summary>
        /// Returns true if the context menu contains items specified by the renderer
        /// process (for example, plugin placeholder or pepper plugin menu items).
        /// </summary>
        bool IsCustomMenu { get; }
 
        /// <summary>
        /// Returns true if the context menu was invoked from a pepper plugin.
        /// </summary>
        bool IsPepperMenu { get; }
 
        /// <summary>
        /// Gets a value indicating whether the object has been disposed of.
        /// </summary>
        bool IsDisposed { get; }
    }
}