| Index: chrome/browser/extensions/context_menu_matcher.h
|
| ===================================================================
|
| --- chrome/browser/extensions/context_menu_matcher.h (revision 158704)
|
| +++ chrome/browser/extensions/context_menu_matcher.h (working copy)
|
| @@ -1,86 +0,0 @@
|
| -// Copyright (c) 2012 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.
|
| -
|
| -#ifndef CHROME_BROWSER_EXTENSIONS_CONTEXT_MENU_MATCHER_H_
|
| -#define CHROME_BROWSER_EXTENSIONS_CONTEXT_MENU_MATCHER_H_
|
| -
|
| -#include <map>
|
| -
|
| -#include "base/callback.h"
|
| -#include "base/memory/scoped_ptr.h"
|
| -#include "base/memory/scoped_vector.h"
|
| -#include "chrome/browser/extensions/menu_manager.h"
|
| -#include "ui/base/models/simple_menu_model.h"
|
| -
|
| -class ExtensionContextMenuBrowserTest;
|
| -class Profile;
|
| -
|
| -namespace extensions {
|
| -
|
| -// This class contains code that is shared between the various places where
|
| -// context menu items added by the extension or app should be shown.
|
| -class ContextMenuMatcher {
|
| - public:
|
| - static const size_t kMaxExtensionItemTitleLength;
|
| -
|
| - // The |filter| will be called on possibly matching menu items, and its
|
| - // result is used to determine which items to actually append to the menu.
|
| - ContextMenuMatcher(Profile* profile,
|
| - ui::SimpleMenuModel::Delegate* delegate,
|
| - ui::SimpleMenuModel* menu_model,
|
| - const base::Callback<bool(const MenuItem*)>& filter);
|
| -
|
| - // This is a helper function to append items for one particular extension.
|
| - // The |index| parameter is used for assigning id's, and is incremented for
|
| - // each item actually added.
|
| - void AppendExtensionItems(const std::string& extension_id,
|
| - const string16& selection_text,
|
| - int* index);
|
| -
|
| - void Clear();
|
| -
|
| - bool IsCommandIdChecked(int command_id) const;
|
| - bool IsCommandIdEnabled(int command_id) const;
|
| - void ExecuteCommand(int command_id,
|
| - const content::ContextMenuParams& params);
|
| -
|
| - private:
|
| - friend class ::ExtensionContextMenuBrowserTest;
|
| -
|
| - MenuItem::List GetRelevantExtensionItems(
|
| - const MenuItem::List& items,
|
| - bool can_cross_incognito);
|
| -
|
| - // Used for recursively adding submenus of extension items.
|
| - void RecursivelyAppendExtensionItems(
|
| - const MenuItem::List& items,
|
| - bool can_cross_incognito,
|
| - const string16& selection_text,
|
| - ui::SimpleMenuModel* menu_model,
|
| - int* index);
|
| -
|
| - // Attempts to get an MenuItem given the id of a context menu item.
|
| - extensions::MenuItem* GetExtensionMenuItem(int id) const;
|
| -
|
| - // This will set the icon on the most recently-added item in the menu_model_.
|
| - void SetExtensionIcon(const std::string& extension_id);
|
| -
|
| - Profile* profile_;
|
| - ui::SimpleMenuModel* menu_model_;
|
| - ui::SimpleMenuModel::Delegate* delegate_;
|
| -
|
| - base::Callback<bool(const MenuItem*)> filter_;
|
| -
|
| - // Maps the id from a context menu item to the MenuItem's internal id.
|
| - std::map<int, extensions::MenuItem::Id> extension_item_map_;
|
| -
|
| - // Keep track of and clean up menu models for submenus.
|
| - ScopedVector<ui::SimpleMenuModel> extension_menu_models_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(ContextMenuMatcher);
|
| -};
|
| -
|
| -} // namespace extensions
|
| -
|
| -#endif // CHROME_BROWSER_EXTENSIONS_CONTEXT_MENU_MATCHER_H_
|
|
|