Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1233)

Unified Diff: chrome/browser/extensions/context_menu_matcher.h

Issue 10984034: Revert 158691 - Give platform apps control over launcher right-click context menu. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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_
« no previous file with comments | « chrome/browser/extensions/api/context_menu/context_menu_api.cc ('k') | chrome/browser/extensions/context_menu_matcher.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698