Example #1
0
        public virtual void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            if (!TwitterUtils.IsTweetDeckWebsite(frame) || browser.IsLoading)
            {
                lastHighlightedTweetAuthors   = StringUtils.EmptyArray;
                lastHighlightedTweetImageList = StringUtils.EmptyArray;
                ContextInfo = default(KeyValuePair <string, string>);
            }
            else
            {
                lastHighlightedTweetAuthors   = TweetDeckBridge.LastHighlightedTweetAuthorsArray;
                lastHighlightedTweetImageList = TweetDeckBridge.LastHighlightedTweetImagesArray;
            }

            bool hasTweetImage = IsImage;
            bool hasTweetVideo = IsVideo;

            string TextOpen(string name) => "Open " + name + " in browser";
            string TextCopy(string name) => "Copy " + name + " address";
            string TextSave(string name) => "Save " + name + " as...";

            if (parameters.TypeFlags.HasFlag(ContextMenuType.Link) && !parameters.UnfilteredLinkUrl.EndsWith("tweetdeck.twitter.com/#", StringComparison.Ordinal) && !hasTweetImage && !hasTweetVideo)
            {
                if (TwitterUtils.RegexAccount.IsMatch(parameters.UnfilteredLinkUrl))
                {
                    model.AddItem(MenuOpenLinkUrl, TextOpen("account"));
                    model.AddItem(MenuCopyLinkUrl, TextCopy("account"));
                    model.AddItem(MenuCopyUsername, "Copy account username");
                }
                else
                {
                    model.AddItem(MenuOpenLinkUrl, TextOpen("link"));
                    model.AddItem(MenuCopyLinkUrl, TextCopy("link"));
                }

                model.AddSeparator();
            }

            if (hasTweetVideo)
            {
                model.AddItem(MenuOpenMediaUrl, TextOpen("video"));
                model.AddItem(MenuCopyMediaUrl, TextCopy("video"));
                model.AddItem(MenuSaveMedia, TextSave("video"));
                model.AddSeparator();
            }
            else if ((parameters.TypeFlags.HasFlag(ContextMenuType.Media) && parameters.HasImageContents) || hasTweetImage)
            {
                model.AddItem(MenuViewImage, "View image in photo viewer");
                model.AddItem(MenuOpenMediaUrl, TextOpen("image"));
                model.AddItem(MenuCopyMediaUrl, TextCopy("image"));
                model.AddItem(MenuSaveMedia, TextSave("image"));

                if (lastHighlightedTweetImageList.Length > 1)
                {
                    model.AddItem(MenuSaveTweetImages, TextSave("all images"));
                }

                model.AddSeparator();
            }
        }
Example #2
0
        void IContextMenuHandler.OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            //To disable the menu then call clear
            model.Clear();

            //Removing existing menu item
            //bool removed = model.Remove(CefMenuCommand.ViewSource); // Remove "View Source" option
            if (parameters.LinkUrl != "")
            {
                model.AddItem((CefMenuCommand)OpenLinkInNewTab, "Open link in new tab");
                model.AddItem((CefMenuCommand)SaveLinkAs, "Save link as");
                model.AddItem((CefMenuCommand)CopyLinkAddress, "Copy link address");
                model.AddSeparator();
            }

            if (parameters.HasImageContents && parameters.SourceUrl != "")
            {
                model.AddItem((CefMenuCommand)SaveImageAs, "Save image as");
                model.AddSeparator();
            }

            // model.AddItem((CefMenuCommand)SaveAsPdf, "Save as Pdf");

            //Add new custom menu items
            model.AddItem((CefMenuCommand)ShowDevTools, "Developer tools");
            model.AddItem(CefMenuCommand.ViewSource, "View source");
        }
Example #3
0
        public virtual void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            if (parameters.TypeFlags.HasFlag(ContextMenuType.Link) && !parameters.UnfilteredLinkUrl.EndsWith("tweetdeck.twitter.com/#", StringComparison.Ordinal))
            {
                if (RegexTwitterAccount.IsMatch(parameters.UnfilteredLinkUrl))
                {
                    model.AddItem((CefMenuCommand)MenuOpenLinkUrl, "Open account in browser");
                    model.AddItem((CefMenuCommand)MenuCopyLinkUrl, "Copy account address");
                    model.AddItem((CefMenuCommand)MenuCopyUsername, "Copy account username");
                }
                else
                {
                    model.AddItem((CefMenuCommand)MenuOpenLinkUrl, "Open link in browser");
                    model.AddItem((CefMenuCommand)MenuCopyLinkUrl, "Copy link address");
                }

                model.AddSeparator();
            }

            if (parameters.TypeFlags.HasFlag(ContextMenuType.Media) && parameters.HasImageContents)
            {
                model.AddItem((CefMenuCommand)MenuOpenImage, "Open image in browser");
                model.AddItem((CefMenuCommand)MenuSaveImage, "Save image as...");
                model.AddItem((CefMenuCommand)MenuCopyImageUrl, "Copy image address");
                model.AddSeparator();
            }
        }
Example #4
0
            void IContextMenuHandler.OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
            {
                //To disable the menu then call clear
                // model.Clear();

                //Removing existing menu item
                //bool removed = model.Remove(CefMenuCommand.ViewSource); // Remove "View Source" option

                //Add new custom menu items

                model.Clear();

                if (parameters.TypeFlags.HasFlag(ContextMenuType.Link) &&
                    new Uri(parameters.LinkUrl).Fragment.StartsWith("#FILE:"))
                {
                    model.AddItem((CefMenuCommand)OpenFile, "開く");
                    model.AddSeparator();
                    model.AddItem((CefMenuCommand)OpenFolder, "フォルダを開く");
                }
                else
                {
                    if (Application.DebugMode)
                    {
                        model.AddItem((CefMenuCommand)ShowDevTools, "開発ツール");
                        model.AddItem((CefMenuCommand)ShowDBBrowser, "DBブラウザー(β版)");
                        model.AddItem((CefMenuCommand)GroongaDebug, "Groongaコマンド実行");
                        model.AddItem((CefMenuCommand)ShowDebugForm, "デバッグウインドウを開く");
                        model.AddSeparator();
                        model.AddItem(CefMenuCommand.ReloadNoCache, "更新");
                    }
                }
            }
        public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            // Remove any existent option using the Clear method of the model
            //
            //model.Clear();


            // Add a new item to the list using the AddItem method of the model

            if (!string.IsNullOrEmpty(parameters.LinkUrl) && parameters.LinkUrl.StartsWith("http", StringComparison.OrdinalIgnoreCase))
            {
                model.AddItem((CefMenuCommand)26504, "Copy link address");

                if (model.Count > 0)
                {
                    model.AddSeparator();
                }

                model.AddItem((CefMenuCommand)26502, "Open in new tab w/ cookies");
                model.AddItem((CefMenuCommand)26503, "Open in new tab");
                model.AddItem((CefMenuCommand)26505, "Open in default browser");
                //model.SetCommandIdAt(0, (CefMenuCommand)26502); not working?

                model.AddSeparator();
            }

            model.AddItem((CefMenuCommand)26501, "Export as PDF");

            // Add a separator
            //model.AddSeparator();
        }
Example #6
0
        public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            // Remove any existent option using the Clear method of the model
            //
            model.Clear();

            Console.WriteLine("Context menu opened !");

            // You can add a separator in case that there are more items on the list
            if (model.Count > 0)
            {
                model.AddSeparator();
            }


            // Add a new item to the list using the AddItem method of the model
            model.AddItem((CefMenuCommand)26501, "Show DevTools");
            model.AddItem((CefMenuCommand)26502, "Close DevTools");

            // Add a separator
            model.AddSeparator();

            // Add another example item
            model.AddItem((CefMenuCommand)26503, "Display alert message");
        }
Example #7
0
        public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            if (model.Count > 0)
            {
                model.AddSeparator();
            }

            if (!string.IsNullOrEmpty(parameters.UnfilteredLinkUrl))
            {
                model.AddItem((CefMenuCommand)26501, "Copy Link Address");
            }

            if (!string.IsNullOrEmpty(parameters.LinkUrl))
            {
                model.AddItem((CefMenuCommand)26502, "Open Link in New Window");
            }

            if (!string.IsNullOrEmpty(parameters.UnfilteredLinkUrl) || !string.IsNullOrEmpty(parameters.LinkUrl))
            {
                model.AddSeparator();
            }

            var dev = model.AddSubMenu((CefMenuCommand)26503, "Developer Tools");

            dev.AddItem((CefMenuCommand)26504, "Inspector");
        }
        public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            //_last_command = 0;
            // Remove any existent option using the Clear method of the model
            model.Clear();
            model.AddItem(CefMenuCommand.Back, "Back");
            model.AddItem(CefMenuCommand.Forward, "Forward");
            model.AddItem(CefMenuCommand.Print, "Print...");
            model.AddItem(CefMenuCommand.ViewSource, "View Page Source");
            //model.Remove(CefMenuCommand.Copy);
            // You can add a separator in case that there are more items on the list
            if (model.Count > 0)
            {
                model.AddSeparator();
            }

            model.AddItem((CefMenuCommand)ContextMenuCommand.CMD_COPY, "Copy");
            model.AddSeparator();
            // Add a new item to the list using the AddItem method of the model
            model.AddItem((CefMenuCommand)ContextMenuCommand.CMD_MY_COPY, "Only Copy");
            // Add a separator
            model.AddSeparator();

            //model.AddItem((CefMenuCommand)ContextMenuCommand.CMD_TRANSLATE_EN_TO_AR, "Translate EN-> AR");
            //model.AddSeparator();
            //model.AddItem((CefMenuCommand)ContextMenuCommand.CMD_TRANSLATE_DE_TO_AR, "Translate DE-> AR");
        }
Example #9
0
        public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            // clear the menu
            model.Clear();

            // save text
            lastSelText = parameters.SelectionText;

            // to copy text
            if (parameters.SelectionText.CheckIfValid())
            {
                model.AddItem(CefMenuCommand.Copy, "Copy");

                model.AddSeparator();
            }

            //Removing existing menu item
            //bool removed = model.Remove(CefMenuCommand.ViewSource); // Remove "View Source" option
            if (parameters.LinkUrl != "")
            {
                model.AddItem((CefMenuCommand)OpenLinkInNewTab, "Open link in new tab");
                model.AddItem((CefMenuCommand)CopyLinkAddress, "Copy link");


                model.AddSeparator();
            }

            if (parameters.HasImageContents && parameters.SourceUrl.CheckIfValid())
            {
                // RIGHT CLICKED ON IMAGE
                model.AddItem((CefMenuCommand)SaveImageAs, "Save Image As");
            }

            if (parameters.SelectionText != null)
            {
                // TEXT IS SELECTED
                model.AddItem((CefMenuCommand)Copy, "Copy");
                model.AddItem((CefMenuCommand)Undo, "Undo");
                model.AddItem((CefMenuCommand)Paste, "Paste");
                model.AddItem((CefMenuCommand)SelectAll, "Select all");
                model.AddItem((CefMenuCommand)Redo, "Redo");
                model.AddItem((CefMenuCommand)Cut, "Cut");


                model.AddItem((CefMenuCommand)Delete, "Delete");
            }

            //Add new custom menu items
            //#if DEBUG
            model.AddItem((CefMenuCommand)ShowDevTools, "Developer tools");
            model.AddItem(CefMenuCommand.ViewSource, "View source");
            model.AddItem((CefMenuCommand)SaveAsPdf, "Save as PDF");

            model.AddSeparator();

            //#endif

            model.AddItem((CefMenuCommand)RefreshTab, "Refresh tab");
            model.AddItem((CefMenuCommand)CloseTab, "Close tab");
        }
Example #10
0
 void IContextMenuHandler.OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
 {
     model.AddSeparator();
     model.AddItem((CefMenuCommand)GetCurrentCookie, "获取当前 Cookie");
     model.AddItem((CefMenuCommand)InputCookie, "手动输入 Cookie");
     model.AddSeparator();
     model.AddItem((CefMenuCommand)ShowDevTools, "检查 (ShowDevTools)");
 }
Example #11
0
        void IContextMenuHandler.OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            model.Clear();

            if (parameters.HasImageContents && parameters.SourceUrl != "")
            {
                model.AddItem((CefMenuCommand)SaveImageAs, "Сохранить изображение как");
                model.AddItem((CefMenuCommand)CopyImage, "Копировать изображение");
            }

            model.AddSeparator();
            model.AddItem((CefMenuCommand)ShowDevTools, "Инструменты разработчика");
            model.AddSeparator();
        }
        public override void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            model.Clear();

            if (parameters.TypeFlags.HasFlag(ContextMenuType.Selection))
            {
                model.AddItem(CefMenuCommand.Copy, "Copy");
                model.AddSeparator();
            }

            base.OnBeforeContextMenu(browserControl, browser, frame, parameters, model);

            if (enableCustomMenu)
            {
                if (form.CanViewDetail)
                {
                    model.AddItem(MenuViewDetail, "View detail");
                }

                model.AddItem(MenuSkipTweet, "Skip tweet");
                model.AddCheckItem(MenuFreeze, "Freeze");
                model.SetChecked(MenuFreeze, form.FreezeTimer);

                if (!string.IsNullOrEmpty(form.CurrentTweetUrl))
                {
                    model.AddSeparator();
                    model.AddItem(MenuCopyTweetUrl, "Copy tweet address");

                    if (!string.IsNullOrEmpty(form.CurrentQuoteUrl))
                    {
                        model.AddItem(MenuCopyQuotedTweetUrl, "Copy quoted tweet address");
                    }
                }
            }

            if (HasDevTools)
            {
                AddSeparator(model);
                AddDebugMenuItems(model);
            }

            RemoveSeparatorIfLast(model);

            form.InvokeAsyncSafe(() => {
                form.ContextMenuOpen = true;
                form.TriggerAnalyticsEvent(AnalyticsFile.Event.NotificationContextMenu);
            });
        }
Example #13
0
        public override void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            if (!TwitterUrls.IsTweetDeck(frame.Url) || browser.IsLoading)
            {
                extraContext.Reset();
            }

            base.OnBeforeContextMenu(browserControl, browser, frame, parameters, model);

            bool isSelecting = parameters.TypeFlags.HasFlag(ContextMenuType.Selection);
            bool isEditing   = parameters.TypeFlags.HasFlag(ContextMenuType.Editable);

            if (!isSelecting && !isEditing)
            {
                AddSeparator(model);

                IMenuModel globalMenu = model.Count == 0 ? model : model.AddSubMenu(MenuGlobal, Program.BrandName);

                globalMenu.AddItem(CefMenuCommand.Reload, TitleReloadBrowser);
                globalMenu.AddCheckItem(MenuMute, TitleMuteNotifications);
                globalMenu.SetChecked(MenuMute, Config.MuteNotifications);
                globalMenu.AddSeparator();

                globalMenu.AddItem(MenuSettings, TitleSettings);
                globalMenu.AddItem(MenuPlugins, TitlePlugins);
                globalMenu.AddItem(MenuAbout, TitleAboutProgram);

                AddDebugMenuItems(globalMenu);
            }
        }
Example #14
0
 protected static void AddSeparator(IMenuModel model)
 {
     if (model.Count > 0 && model.GetTypeAt(model.Count - 1) != MenuItemType.Separator) // do not add separators if there is nothing to separate
     {
         model.AddSeparator();
     }
 }
    public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
    {
        // Remove any existent option using the Clear method of the model
        //
        //model.Clear();



        // You can add a separator in case that there are more items on the list
        if (model.Count > 0)
        {
            model.AddSeparator();
        }


        // Add a new item to the list using the AddItem method of the model
        model.AddItem((CefMenuCommand)26504, "Save As");
        model.AddItem((CefMenuCommand)26505, "Show DevTools");


        // Add a separator


        // Add another example item
        model.AddItem((CefMenuCommand)113, "Copy");
        model.AddItem((CefMenuCommand)100, "Back");
        model.AddItem((CefMenuCommand)101, "Forward");
        model.AddItem((CefMenuCommand)102, "Reload");
        model.AddItem((CefMenuCommand)103, "Reload No Cache");
    }
Example #16
0
        void IContextMenuHandler.OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            // To disable the menu then call clear
            model.Clear();
            // Removing existing menu item
            // model.Remove(CefMenuCommand.ViewSource); // Remove "View Source" option
            // Add new custom menu items
            // model.AddItem((CefMenuCommand)CloseDevTools, "Close DevTools");

            string selectionText = parameters.SelectionText;
            bool   selectedText  = !selectionText.Equals("");

            // 不在input中 勾选内容 右键
            if (!parameters.IsEditable && selectedText)
            {
                model.AddItem(CefMenuCommand.Copy, "复制 (Ctrl+C)");
            }
            // 在input中
            else if (parameters.IsEditable)
            {
                model.AddItem(CefMenuCommand.Cut, "剪切 (Ctrl+X)");
                model.AddItem(CefMenuCommand.Copy, "复制 (Ctrl+C)");
                model.AddItem(CefMenuCommand.Paste, "粘贴 (Ctrl+V)");
                model.AddItem(CefMenuCommand.Delete, "删除 (Delete)");
                model.AddSeparator();
                model.AddItem(CefMenuCommand.SelectAll, "全选 (Ctrl+A)");
                if (!selectedText)
                {
                    // 若没有勾选内容,则禁止点击 Cut Copy
                    model.SetEnabled(CefMenuCommand.Cut, false);
                    model.SetEnabled(CefMenuCommand.Copy, false);
                    model.SetEnabled(CefMenuCommand.Delete, false);
                }
            }
            else if (parameters.MediaType == ContextMenuMediaType.Image)
            {
                model.AddItem((CefMenuCommand)SaveImage, "下载图片");
            }
            else if (parameters.UnfilteredLinkUrl != "")
            {
                model.AddItem((CefMenuCommand)CopyLink, "复制链接");
                // 当 LinkUrl 是 JavaScript:; 的时候,下载会出问题
                if (!Regex.IsMatch(parameters.UnfilteredLinkUrl, @"(?s)(?i)^(javascript:)"))
                {
                    model.AddItem((CefMenuCommand)SaveLink, "下载链接内容");
                    model.AddItem((CefMenuCommand)LinkOpenDefaultBrowser, "默认浏览器打开");
                }
            }
            else
            {
                if (_showReload)
                {
                    model.AddItem(CefMenuCommand.ReloadNoCache, "刷新 (ReloadNoCache)");
                }
                model.AddItem((CefMenuCommand)FeedbackProject, "反馈问题");
                model.AddItem((CefMenuCommand)LinkToQWQCODEProject, "开源项目");
# if DEBUG
                model.AddItem((CefMenuCommand)ShowDevTools, "检查 (ShowDevTools)");
# endif
            }
Example #17
0
 protected static void AddSeparator(IMenuModel model)
 {
     if (model.Count > 0 && model.GetTypeAt(model.Count - 1) != MenuItemType.Separator)
     {
         model.AddSeparator();
     }
 }
Example #18
0
 public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser,
                                 IFrame frame, IContextMenuParams parameters, IMenuModel model)
 {
     model.AddSeparator();
     model.AddItem((CefMenuCommand)ReloadPage, "Reload Page");
     model.AddItem((CefMenuCommand)DevTools, "Show Dev Tools");
     model.AddItem((CefMenuCommand)Home, "Home");
 }
Example #19
0
 public void OnBeforeContextMenu(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
 {
     if (parameters.HasImageContents || parameters.SelectionText != "")
     {
         model.AddSeparator();
         model.AddItem(CefMenuCommand.UserFirst + 1, "加入笔记");
     }
 }
 public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
 {
     // Remove any existent option using the Clear method of the model
     //
     //model.Clear();
     Console.WriteLine("Context menu opened !");
     // You can add a separator in case that there are more items on the list
     if (model.Count > 0)
     {
         model.AddSeparator();
     }
     // Add a new item to the list using the AddItem method of the model
     model.AddItem((CefMenuCommand)26501, "Show DevTools");
     // Add a separator
     model.AddSeparator();
     model.AddItem((CefMenuCommand)26503, "Open in Paintbrush");
     model.AddItem((CefMenuCommand)26504, "Open in Excel");
     model.AddItem((CefMenuCommand)26505, "Run Script..");
        public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            if (model.Count > 0)
            {
                model.AddSeparator();
            }

            model.AddItem((CefMenuCommand)26501, "Show DevTools");
        }
Example #22
0
        public virtual void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            if (!TwitterUrls.IsTweetDeck(frame.Url) || browser.IsLoading)
            {
                Context = CurrentInfo.Reset();
            }
            else
            {
                Context = CurrentInfo.Create(parameters);
            }

            if (parameters.TypeFlags.HasFlag(ContextMenuType.Selection) && !parameters.TypeFlags.HasFlag(ContextMenuType.Editable))
            {
                model.AddItem(MenuSearchInBrowser, "Search in browser");
                model.AddSeparator();
                model.AddItem(MenuReadApplyROT13, "Apply ROT13");
                model.AddSeparator();
            }
Example #23
0
        public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            // Remove any existent option using the Clear method of the model
            //
            model.Clear();

            //Console.WriteLine("Context menu opened !");

            // You can add a separator in case that there are more items on the list
            if (model.Count > 0)
            {
                model.AddSeparator();
            }

            model.AddItem((CefMenuCommand)26503, "Reload Page");
            model.AddSeparator();


            // Add a new item to the list using the AddItem method of the model
            model.AddItem((CefMenuCommand)26501, "Show DevTools");
            model.AddItem((CefMenuCommand)26502, "Close DevTools");

            model.AddSeparator();
            model.AddItem((CefMenuCommand)26504, "Show resources");


            //model.AddSeparator();
            //model.AddItem((CefMenuCommand)26510, "Write files HTML, JSON, JS, CSS, TXT net exist");

            //model.AddSeparator();
            //model.AddItem((CefMenuCommand)26505, "Write files JS not exist to WCD");

            //model.AddSeparator();
            //model.AddItem((CefMenuCommand)26506, "Write files CSS not exist to WCD");

            //model.AddSeparator();
            //model.AddItem((CefMenuCommand)26507, "Write files TXT not exist to WCD");

            //model.AddSeparator();
            //model.AddItem((CefMenuCommand)26508, "Write files JSON not exist to WCD");

            //model.AddSeparator();
            //model.AddItem((CefMenuCommand)26509, "Write files HTML not exist to WCD");
        }
Example #24
0
        public void OnBeforeContextMenu(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters,
                                        IMenuModel model)
        {
            if (model.Count > 0)
            {
                model.AddSeparator();
            }

            model.AddItem(CefMenuCommand.AddToDictionary, "Sözlüğe Ekle");
        }
Example #25
0
        void IContextMenuHandler.OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            //Removing existing menu item
            model.Clear();

            if (!string.IsNullOrEmpty(parameters.UnfilteredLinkUrl))
            {
                model.AddItem((CefMenuCommand)26501, "Open link in new tab");
                model.AddSeparator();
            }
            if (parameters.TypeFlags.HasFlag(ContextMenuType.Media) && parameters.HasImageContents)
            {
                if (!UI.BrowserPanel.IsUsingTor)
                {
                    if (OsirtHelper.HasJpegExtension(parameters.SourceUrl))
                    {
                        model.AddItem((CefMenuCommand)ViewImageExifData, "View image EXIF data");
                    }
                    model.AddItem((CefMenuCommand)MenuSaveImage, "Save image");
                }
                model.AddItem((CefMenuCommand)CopyImgLocation, "Copy image location to clipboard");
                model.AddItem((CefMenuCommand)ReverseImageSearch, "Reverse image search using TinEye");
                model.AddSeparator();
                //
            }
            if (OsirtHelper.IsOnYouTube(browserControl.Address))
            {
                model.AddItem((CefMenuCommand)SaveYouTubeVideo, "Extract YouTube video");
            }
            if (OsirtHelper.IsOnFacebook(browserControl.Address))
            {
                model.AddItem((CefMenuCommand)ViewFacebookId, "Show Facebook profile ID");
            }
            if (OsirtHelper.IsOnTwitter(browserControl.Address))
            {
                model.AddItem((CefMenuCommand)ViewTwitterId, "Show Twitter profile ID");
            }

            model.AddItem((CefMenuCommand)ViewSource, "View page source");
            model.AddItem((CefMenuCommand)ExtractAllLinks, "Extract all links on page");
            model.AddItem((CefMenuCommand)Bookmark, "Add page to bookmarks");
        }
Example #26
0
        public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            if (model.Count > 0)
            {
                model.AddSeparator();
            }

            var mode = NativeMethod.IsOneMinuteMode ? 5 : 1;

            model.AddItem((CefMenuCommand)26501, $"{mode}分モードに変更");
        }
Example #27
0
        void IContextMenuHandler.OnBeforeContextMenu(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            /* Console.WriteLine("Context menu opened");
             * Console.WriteLine(parameters.MisspelledWord);*/

            if (model.Count > 0)
            {
                model.AddSeparator();
            }
            model.AddItem(CefMenuCommand.StopLoad, "Stop Load");
            model.AddItem(CefMenuCommand.Reload, "Reload");
            model.AddItem(CefMenuCommand.ReloadNoCache, "ReloadNoCache");
            model.AddSeparator();
            model.AddItem((CefMenuCommand)26501, "Show DevTools");
            model.AddItem((CefMenuCommand)26502, "Close DevTools");


            //To disable context mode then clear
            // model.Clear();
        }
Example #28
0
 public void OnBeforeContextMenu(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
 {
     model.Clear();
     if (parameters.LinkUrl != string.Empty)
     {
         model.AddItem((CefMenuCommand)26501, "Open in new tab");
     }
     model.AddItem((CefMenuCommand)26502, "Show DevTools");
     model.AddItem((CefMenuCommand)26503, "Close DevTools");
     model.AddSeparator();
     model.AddItem((CefMenuCommand)26504, "Display alert message");
 }
Example #29
0
        public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            model.Clear();
            //主要修改代码在此处;如果需要完完全全重新添加菜单项,首先执行model.Clear()清空菜单列表即可.
            //需要自定义菜单项的,可以在这里添加按钮;
            //if (model.Count > 0)
            //{
            //    model.AddSeparator();//添加分隔符;
            //}
            model.AddItem(CefMenuCommand.Back, "返回");
            model.AddItem(CefMenuCommand.Forward, "前进");
            model.AddItem(CefMenuCommand.Reload, "刷新");
            model.AddItem(CefMenuCommand.SelectAll, "全选");
            model.AddSeparator();
            model.AddItem(CefMenuCommand.Print, "打印");

            model.AddSeparator();

            model.AddItem(CefMenuCommand.ViewSource, "查看源码");
            model.AddItem((CefMenuCommand)26501, "检查");
        }
Example #30
0
        public override void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            model.Clear();

            if (parameters.TypeFlags.HasFlag(ContextMenuType.Selection))
            {
                model.AddItem(CefMenuCommand.Copy, "Copy");
                model.AddSeparator();
            }

            base.OnBeforeContextMenu(browserControl, browser, frame, parameters, model);

            if (enableCustomMenu)
            {
                model.AddItem((CefMenuCommand)MenuSkipTweet, "Skip tweet");
                model.AddCheckItem((CefMenuCommand)MenuFreeze, "Freeze");
                model.SetChecked((CefMenuCommand)MenuFreeze, form.FreezeTimer);
                model.AddSeparator();

                if (!string.IsNullOrEmpty(form.CurrentUrl))
                {
                    model.AddItem((CefMenuCommand)MenuCopyTweetUrl, "Copy tweet address");

                    if (!string.IsNullOrEmpty(form.CurrentQuotedTweetUrl))
                    {
                        model.AddItem((CefMenuCommand)MenuCopyQuotedTweetUrl, "Copy quoted tweet address");
                    }

                    model.AddSeparator();
                }
            }

            #if DEBUG
            AddDebugMenuItems(model);
            #endif

            RemoveSeparatorIfLast(model);

            form.InvokeSafe(() => form.ContextMenuOpen = true);
        }
Example #31
0
        void IContextMenuHandler.OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            Console.WriteLine("Context menu opened");
            Console.WriteLine(parameters.MisspelledWord);

            if (model.Count > 0)
            {
                model.AddSeparator();
            }

            model.AddItem((CefMenuCommand)26501, "Show DevTools");
            model.AddItem((CefMenuCommand)26502, "Close DevTools");

            //To disable context mode then clear
            // model.Clear();
        }
Example #32
0
        void IContextMenuHandler.OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
        {
            Console.WriteLine("Context menu opened");
            Console.WriteLine(parameters.MisspelledWord);

            if (model.Count > 0)
            {
                model.AddSeparator();
            }
            url = parameters.LinkUrl;
           
            model.Clear();
            if (!url.Equals(""))
            model.AddItem((CefMenuCommand)26501, "Open link in new tab");
            
            if (parameters.MediaType == ContextMenuMediaType.Image)
            {
                img = parameters.SourceUrl;
                model.AddItem((CefMenuCommand) 26502, "Save image");
            }

        }