Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7039cbc6 authored by Vladislav Kaznacheev's avatar Vladislav Kaznacheev
Browse files

Add content description and tooltip to menu item

Bug: 34076597
Test: manual
Change-Id: Ide32463252457721286c929ab2f8f7bae241835d
parent c9facc0a
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -42593,6 +42593,7 @@ package android.view {
    method public abstract android.view.ActionProvider getActionProvider();
    method public abstract android.view.View getActionView();
    method public abstract char getAlphabeticShortcut();
    method public default java.lang.CharSequence getContentDescription();
    method public abstract int getGroupId();
    method public abstract android.graphics.drawable.Drawable getIcon();
    method public abstract android.content.Intent getIntent();
@@ -42603,6 +42604,7 @@ package android.view {
    method public abstract android.view.SubMenu getSubMenu();
    method public abstract java.lang.CharSequence getTitle();
    method public abstract java.lang.CharSequence getTitleCondensed();
    method public default java.lang.CharSequence getTooltip();
    method public abstract boolean hasSubMenu();
    method public abstract boolean isActionViewExpanded();
    method public abstract boolean isCheckable();
@@ -42615,6 +42617,7 @@ package android.view {
    method public abstract android.view.MenuItem setAlphabeticShortcut(char);
    method public abstract android.view.MenuItem setCheckable(boolean);
    method public abstract android.view.MenuItem setChecked(boolean);
    method public default android.view.MenuItem setContentDescription(java.lang.CharSequence);
    method public abstract android.view.MenuItem setEnabled(boolean);
    method public abstract android.view.MenuItem setIcon(android.graphics.drawable.Drawable);
    method public abstract android.view.MenuItem setIcon(int);
@@ -42628,6 +42631,7 @@ package android.view {
    method public abstract android.view.MenuItem setTitle(java.lang.CharSequence);
    method public abstract android.view.MenuItem setTitle(int);
    method public abstract android.view.MenuItem setTitleCondensed(java.lang.CharSequence);
    method public default android.view.MenuItem setTooltip(java.lang.CharSequence);
    method public abstract android.view.MenuItem setVisible(boolean);
    field public static final int SHOW_AS_ACTION_ALWAYS = 2; // 0x2
    field public static final int SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW = 8; // 0x8
+4 −0
Original line number Diff line number Diff line
@@ -45803,6 +45803,7 @@ package android.view {
    method public abstract android.view.ActionProvider getActionProvider();
    method public abstract android.view.View getActionView();
    method public abstract char getAlphabeticShortcut();
    method public default java.lang.CharSequence getContentDescription();
    method public abstract int getGroupId();
    method public abstract android.graphics.drawable.Drawable getIcon();
    method public abstract android.content.Intent getIntent();
@@ -45813,6 +45814,7 @@ package android.view {
    method public abstract android.view.SubMenu getSubMenu();
    method public abstract java.lang.CharSequence getTitle();
    method public abstract java.lang.CharSequence getTitleCondensed();
    method public default java.lang.CharSequence getTooltip();
    method public abstract boolean hasSubMenu();
    method public abstract boolean isActionViewExpanded();
    method public abstract boolean isCheckable();
@@ -45825,6 +45827,7 @@ package android.view {
    method public abstract android.view.MenuItem setAlphabeticShortcut(char);
    method public abstract android.view.MenuItem setCheckable(boolean);
    method public abstract android.view.MenuItem setChecked(boolean);
    method public default android.view.MenuItem setContentDescription(java.lang.CharSequence);
    method public abstract android.view.MenuItem setEnabled(boolean);
    method public abstract android.view.MenuItem setIcon(android.graphics.drawable.Drawable);
    method public abstract android.view.MenuItem setIcon(int);
@@ -45838,6 +45841,7 @@ package android.view {
    method public abstract android.view.MenuItem setTitle(java.lang.CharSequence);
    method public abstract android.view.MenuItem setTitle(int);
    method public abstract android.view.MenuItem setTitleCondensed(java.lang.CharSequence);
    method public default android.view.MenuItem setTooltip(java.lang.CharSequence);
    method public abstract android.view.MenuItem setVisible(boolean);
    field public static final int SHOW_AS_ACTION_ALWAYS = 2; // 0x2
    field public static final int SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW = 8; // 0x8
+4 −0
Original line number Diff line number Diff line
@@ -42880,6 +42880,7 @@ package android.view {
    method public abstract android.view.ActionProvider getActionProvider();
    method public abstract android.view.View getActionView();
    method public abstract char getAlphabeticShortcut();
    method public default java.lang.CharSequence getContentDescription();
    method public abstract int getGroupId();
    method public abstract android.graphics.drawable.Drawable getIcon();
    method public abstract android.content.Intent getIntent();
@@ -42890,6 +42891,7 @@ package android.view {
    method public abstract android.view.SubMenu getSubMenu();
    method public abstract java.lang.CharSequence getTitle();
    method public abstract java.lang.CharSequence getTitleCondensed();
    method public default java.lang.CharSequence getTooltip();
    method public abstract boolean hasSubMenu();
    method public abstract boolean isActionViewExpanded();
    method public abstract boolean isCheckable();
@@ -42902,6 +42904,7 @@ package android.view {
    method public abstract android.view.MenuItem setAlphabeticShortcut(char);
    method public abstract android.view.MenuItem setCheckable(boolean);
    method public abstract android.view.MenuItem setChecked(boolean);
    method public default android.view.MenuItem setContentDescription(java.lang.CharSequence);
    method public abstract android.view.MenuItem setEnabled(boolean);
    method public abstract android.view.MenuItem setIcon(android.graphics.drawable.Drawable);
    method public abstract android.view.MenuItem setIcon(int);
@@ -42915,6 +42918,7 @@ package android.view {
    method public abstract android.view.MenuItem setTitle(java.lang.CharSequence);
    method public abstract android.view.MenuItem setTitle(int);
    method public abstract android.view.MenuItem setTitleCondensed(java.lang.CharSequence);
    method public default android.view.MenuItem setTooltip(java.lang.CharSequence);
    method public abstract android.view.MenuItem setVisible(boolean);
    field public static final int SHOW_AS_ACTION_ALWAYS = 2; // 0x2
    field public static final int SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW = 8; // 0x8
+10 −0
Original line number Diff line number Diff line
@@ -334,6 +334,9 @@ public class MenuInflater {

        private ActionProvider itemActionProvider;

        private CharSequence itemContentDescription;
        private CharSequence itemTooltip;

        private static final int defaultGroupId = NO_ID;
        private static final int defaultItemId = NO_ID;
        private static final int defaultItemCategory = 0;
@@ -424,6 +427,10 @@ public class MenuInflater {
                itemActionProvider = null;
            }

            itemContentDescription =
                    a.getText(com.android.internal.R.styleable.MenuItem_contentDescription);
            itemTooltip = a.getText(com.android.internal.R.styleable.MenuItem_tooltip);

            a.recycle();

            itemAdded = false;
@@ -486,6 +493,9 @@ public class MenuInflater {
            if (itemActionProvider != null) {
                item.setActionProvider(itemActionProvider);
            }

            item.setContentDescription(itemContentDescription);
            item.setTooltip(itemTooltip);
        }

        public MenuItem addItem() {
+36 −0
Original line number Diff line number Diff line
@@ -599,4 +599,40 @@ public interface MenuItem {
     * @return This menu item instance for call chaining
     */
    public MenuItem setOnActionExpandListener(OnActionExpandListener listener);

    /**
     * Change the content description associated with this menu item.
     *
     * @param contentDescription The new content description.
     */
    default MenuItem setContentDescription(CharSequence contentDescription) {
        return this;
    }

    /**
     * Retrieve the content description associated with this menu item.
     *
     * @return The content description.
     */
    default CharSequence getContentDescription() {
        return null;
    }

    /**
     * Change the tooltip text associated with this menu item.
     *
     * @param tooltip The new tooltip text.
     */
    default MenuItem setTooltip(CharSequence tooltip) {
        return this;
    }

    /**
     * Retrieve the tooltip text associated with this menu item.
     *
     * @return The tooltip text.
     */
    default CharSequence getTooltip() {
        return null;
    }
}
Loading