root/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuPopulator.java

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. shouldShowContextMenu
  2. buildContextMenu
  3. onItemSelected

// Copyright 2013 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.

package org.chromium.chrome.browser.contextmenu;

import android.content.Context;
import android.view.ContextMenu;

/**
 * A delegate responsible for populating context menus and processing results from
 * {@link ContextMenuHelper}.
 */
public interface ContextMenuPopulator {
    /**
     * Determines whether or not a context menu should be shown for {@code params}.
     * @param params The {@link ContextMenuParams} that represent what should be shown in the
     *               context menu.
     * @return       Whether or not a context menu should be shown.
     */
    public boolean shouldShowContextMenu(ContextMenuParams params);

    /**
     * Should be used to populate {@code menu} with the correct context menu items.
     * @param menu    The menu to populate.
     * @param context A {@link Context} instance.
     * @param params  The parameters that represent what should be shown in the context menu.
     */
    public void buildContextMenu(ContextMenu menu, Context context, ContextMenuParams params);

    /**
     * Called when a context menu item has been selected.
     * @param helper The {@link ContextMenuHelper} driving the menu operations.
     * @param params The parameters that represent what is being shown in the context menu.
     * @param itemId The id of the selected menu item.
     * @return       Whether or not the selection was handled.
     */
    public boolean onItemSelected(ContextMenuHelper helper, ContextMenuParams params, int itemId);

/* [<][>][^][v][top][bottom][index][help] */