Skip to content

Commit c6a554f

Browse files
committed
[Menu] Fixed menu icon get squeezed for API <=21.
Resolves #897 PiperOrigin-RevId: 289939633
1 parent a15d3ea commit c6a554f

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

catalog/java/io/material/catalog/menu/MenuMainDemoFragment.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525
import android.content.ClipboardManager;
2626
import android.content.Context;
2727
import android.graphics.drawable.InsetDrawable;
28+
import android.os.Build.VERSION;
29+
import android.os.Build.VERSION_CODES;
2830
import android.os.Bundle;
2931
import androidx.annotation.LayoutRes;
3032
import androidx.annotation.MenuRes;
@@ -100,7 +102,17 @@ private void showMenu(View v, @MenuRes int menuRes) {
100102
TypedValue.COMPLEX_UNIT_DIP, ICON_MARGIN, getResources().getDisplayMetrics());
101103

102104
if (item.getIcon() != null) {
103-
item.setIcon(new InsetDrawable(item.getIcon(), iconMarginPx, 0, iconMarginPx, 0));
105+
if (VERSION.SDK_INT > VERSION_CODES.LOLLIPOP) {
106+
item.setIcon(new InsetDrawable(item.getIcon(), iconMarginPx, 0, iconMarginPx, 0));
107+
} else {
108+
item.setIcon(
109+
new InsetDrawable(item.getIcon(), iconMarginPx, 0, iconMarginPx, 0) {
110+
@Override
111+
public int getIntrinsicWidth() {
112+
return getIntrinsicHeight() + iconMarginPx + iconMarginPx;
113+
}
114+
});
115+
}
104116
}
105117
}
106118
}

0 commit comments

Comments
 (0)