Compare commits

..

1 Commits

Author SHA1 Message Date
Jesse Katsumata
89ccb2dd89 0.3.2
Some checks failed
Build / lint (12) (push) Has been cancelled
Build / tsc (12) (push) Has been cancelled
Build / android (12) (push) Has been cancelled
Build / ios (12) (push) Has been cancelled
2021-03-30 13:49:06 +09:00
5 changed files with 4 additions and 38 deletions

View File

@ -108,14 +108,6 @@ The title of the menu.
| ------ | -------- |
| string | No |
### `isAnchoredToRight` (Android only)
Boolean determining if menu should anchored to right or left corner of parent view.
| Type | Required |
| ------- | -------- |
| boolean | No |
### `actions`
Actions to be displayed in the menu.

View File

@ -7,7 +7,6 @@ import android.os.Build
import android.text.Spannable
import android.text.SpannableStringBuilder
import android.text.style.ForegroundColorSpan
import android.view.Gravity
import android.view.Menu
import android.view.MotionEvent
import android.widget.PopupMenu
@ -20,9 +19,9 @@ import com.facebook.react.views.view.ReactViewGroup
import java.lang.reflect.Field
class MenuView(private val mContext: ReactContext): ReactViewGroup(mContext) {
class MenuView(context: ReactContext): ReactViewGroup(context) {
private lateinit var mActions: ReadableArray
private var mIsAnchoredToRight = false
private var mContext: ReactContext = context as ReactContext
private val mPopupMenu: PopupMenu = PopupMenu(context, this)
private var mIsMenuDisplayed = false
@ -43,14 +42,7 @@ class MenuView(private val mContext: ReactContext): ReactViewGroup(mContext) {
}
fun setActions(actions: ReadableArray) {
mActions = actions
}
fun setIsAnchoredToRight(isAnchoredToRight: Boolean) {
if (mIsAnchoredToRight == isAnchoredToRight) {
return
}
mIsAnchoredToRight = isAnchoredToRight
this.mActions = actions
}
private val getActionsCount: Int
@ -59,12 +51,6 @@ class MenuView(private val mContext: ReactContext): ReactViewGroup(mContext) {
private fun prepareMenu() {
if (getActionsCount > 0) {
mPopupMenu.menu.clear()
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
mPopupMenu.gravity = when (mIsAnchoredToRight) {
true -> Gravity.RIGHT
false -> Gravity.LEFT
}
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
mPopupMenu.setForceShowIcon(true)
}

View File

@ -29,11 +29,6 @@ class MenuViewManager: ReactClippingViewManager<MenuView>() {
view.setActions(actions)
}
@ReactProp(name = "isAnchoredToRight", defaultBoolean = false)
fun setIsAnchoredToRight(view: MenuView, isAnchoredToRight: Boolean) {
view.setIsAnchoredToRight(isAnchoredToRight)
}
override fun getExportedCustomDirectEventTypeConstants(): MutableMap<String, Any> {
return MapBuilder.of(
"onPressAction",

View File

@ -1,6 +1,6 @@
{
"name": "@react-native-menu/menu",
"version": "0.3.3",
"version": "0.3.2",
"description": "UIMenu component for react-native",
"main": "lib/commonjs/index",
"module": "lib/module/index",

View File

@ -100,13 +100,6 @@ export type MenuComponentProps = {
* The title of the menu.
*/
title?: string;
/**
* (Android API 23+)
* Boolean value determines whether popup menu should be anchored
* to right corner of parent view - default value is `false`
* @platform Android
*/
isAnchoredToRight?: boolean;
};
export type ProcessedMenuAction = Omit<