diff --git a/app/src/main/java/org/autojs/autojs/permission/PostNotificationsPermission.kt b/app/src/main/java/org/autojs/autojs/permission/PostNotificationsPermission.kt index 4d4909ef..70648dd0 100644 --- a/app/src/main/java/org/autojs/autojs/permission/PostNotificationsPermission.kt +++ b/app/src/main/java/org/autojs/autojs/permission/PostNotificationsPermission.kt @@ -86,7 +86,7 @@ class PostNotificationsPermission(override val context: Context) : PermissionIte } // First request (or still allowed without rationale). - // zh-CN: 首次请求 (或无需 rationale 也允许再次请求)时直接发起系统权限请求. + // zh-CN: 首次请求 (或无需 rationale 也允许再次请求) 时直接发起系统权限请求. launchRequest() return true } diff --git a/app/src/main/java/org/autojs/autojs/ui/main/FloatingActionMenu.java b/app/src/main/java/org/autojs/autojs/ui/main/FloatingActionMenu.java index 5446c0df..189f507e 100644 --- a/app/src/main/java/org/autojs/autojs/ui/main/FloatingActionMenu.java +++ b/app/src/main/java/org/autojs/autojs/ui/main/FloatingActionMenu.java @@ -22,6 +22,7 @@ import androidx.interpolator.view.animation.FastOutSlowInInterpolator; import com.google.android.material.floatingactionbutton.FloatingActionButton; import io.reactivex.subjects.PublishSubject; import org.autojs.autojs6.R; +import org.jetbrains.annotations.NotNull; /** * Created by Stardust on Sep 24, 2017. @@ -54,6 +55,7 @@ public class FloatingActionMenu extends FrameLayout implements View.OnClickListe private OnFloatingActionButtonClickListener mOnFloatingActionButtonClickListener; private View mToggleFab; + private int[] mToggleFabLoc; public FloatingActionMenu(@NonNull Context context) { super(context); @@ -110,8 +112,9 @@ public class FloatingActionMenu extends FrameLayout implements View.OnClickListe mOnFloatingActionButtonClickListener = listener; } - public void setToggleFab(@Nullable View toggleFab) { + public void setToggleFab(@Nullable View toggleFab, int @NotNull [] locFab) { mToggleFab = toggleFab; + mToggleFabLoc = locFab; } @Override @@ -190,29 +193,28 @@ public class FloatingActionMenu extends FrameLayout implements View.OnClickListe FloatingActionMenu thisMenu = this; mOverlay = new View(context) { - private final int[] loc = new int[2]; private final Rect menuRectOnScreen = new Rect(); private final Rect toggleFabRectOnScreen = new Rect(); @SuppressLint("ClickableViewAccessibility") @Override public boolean onTouchEvent(MotionEvent event) { - thisMenu.getLocationOnScreen(loc); + int[] locMenu = new int[2]; + thisMenu.getLocationOnScreen(locMenu); menuRectOnScreen.set( - loc[0], - loc[1], - loc[0] + thisMenu.getWidth(), - loc[1] + thisMenu.getHeight() + locMenu[0], + locMenu[1], + locMenu[0] + thisMenu.getWidth(), + locMenu[1] + thisMenu.getHeight() ); boolean hasToggleFab = (mToggleFab != null) && mToggleFab.isShown(); if (hasToggleFab) { - mToggleFab.getLocationOnScreen(loc); toggleFabRectOnScreen.set( - loc[0], - loc[1], - loc[0] + mToggleFab.getWidth(), - loc[1] + mToggleFab.getHeight() + mToggleFabLoc[0], + mToggleFabLoc[1], + mToggleFabLoc[0] + mToggleFab.getWidth(), + mToggleFabLoc[1] + mToggleFab.getHeight() ); } else { toggleFabRectOnScreen.setEmpty(); diff --git a/app/src/main/java/org/autojs/autojs/ui/main/plugin/PluginFloatingActionMenu.java b/app/src/main/java/org/autojs/autojs/ui/main/plugin/PluginFloatingActionMenu.java index 0e093ef0..02c79079 100644 --- a/app/src/main/java/org/autojs/autojs/ui/main/plugin/PluginFloatingActionMenu.java +++ b/app/src/main/java/org/autojs/autojs/ui/main/plugin/PluginFloatingActionMenu.java @@ -22,6 +22,7 @@ import androidx.interpolator.view.animation.FastOutSlowInInterpolator; import com.google.android.material.floatingactionbutton.FloatingActionButton; import io.reactivex.subjects.PublishSubject; import org.autojs.autojs6.R; +import org.jetbrains.annotations.NotNull; /** * Created by SuperMonster003 on Jan 17, 2026. @@ -49,6 +50,7 @@ public class PluginFloatingActionMenu extends FrameLayout implements View.OnClic private OnFloatingActionButtonClickListener mOnFloatingActionButtonClickListener; private View mToggleFab; + private int[] mToggleFabLoc; public PluginFloatingActionMenu(@NonNull Context context) { super(context); @@ -105,8 +107,9 @@ public class PluginFloatingActionMenu extends FrameLayout implements View.OnClic mOnFloatingActionButtonClickListener = listener; } - public void setToggleFab(@Nullable View toggleFab) { + public void setToggleFab(@Nullable View toggleFab, int @NotNull [] locFab) { mToggleFab = toggleFab; + mToggleFabLoc = locFab; } @Override @@ -185,29 +188,28 @@ public class PluginFloatingActionMenu extends FrameLayout implements View.OnClic PluginFloatingActionMenu thisMenu = this; mOverlay = new View(context) { - private final int[] loc = new int[2]; private final Rect menuRectOnScreen = new Rect(); private final Rect toggleFabRectOnScreen = new Rect(); @SuppressLint("ClickableViewAccessibility") @Override public boolean onTouchEvent(MotionEvent event) { - thisMenu.getLocationOnScreen(loc); + int[] locMenu = new int[2]; + thisMenu.getLocationOnScreen(locMenu); menuRectOnScreen.set( - loc[0], - loc[1], - loc[0] + thisMenu.getWidth(), - loc[1] + thisMenu.getHeight() + locMenu[0], + locMenu[1], + locMenu[0] + thisMenu.getWidth(), + locMenu[1] + thisMenu.getHeight() ); boolean hasToggleFab = (mToggleFab != null) && mToggleFab.isShown(); if (hasToggleFab) { - mToggleFab.getLocationOnScreen(loc); toggleFabRectOnScreen.set( - loc[0], - loc[1], - loc[0] + mToggleFab.getWidth(), - loc[1] + mToggleFab.getHeight() + mToggleFabLoc[0], + mToggleFabLoc[1], + mToggleFabLoc[0] + mToggleFab.getWidth(), + mToggleFabLoc[1] + mToggleFab.getHeight() ); } else { toggleFabRectOnScreen.setEmpty(); diff --git a/app/src/main/java/org/autojs/autojs/ui/main/plugin/PluginFragment.kt b/app/src/main/java/org/autojs/autojs/ui/main/plugin/PluginFragment.kt index d8001067..5f7360dc 100644 --- a/app/src/main/java/org/autojs/autojs/ui/main/plugin/PluginFragment.kt +++ b/app/src/main/java/org/autojs/autojs/ui/main/plugin/PluginFragment.kt @@ -100,6 +100,8 @@ class PluginFragment : ViewPagerFragment(0), OnFloatingActionButtonClickListener private fun initFloatingActionMenuIfNeeded(fab: FloatingActionButton): PluginFloatingActionMenu { return mFloatingActionMenu ?: requireActivity().findViewById(R.id.plugin_floating_action_menu).also { menu -> + val locFab = IntArray(2) + fab.getLocationOnScreen(locFab) menu.state .observeOn(AndroidSchedulers.mainThread()) .subscribe(object : SimpleObserver() { @@ -114,7 +116,7 @@ class PluginFragment : ViewPagerFragment(0), OnFloatingActionButtonClickListener menu.layoutParams.runCatching { javaClass.getField("bottomMargin").setInt(this, fab.marginBottom) } - menu.setToggleFab(fab) + menu.setToggleFab(fab, locFab) mFloatingActionMenu = menu } } diff --git a/app/src/main/java/org/autojs/autojs/ui/main/scripts/ExplorerFragment.kt b/app/src/main/java/org/autojs/autojs/ui/main/scripts/ExplorerFragment.kt index ef3e65b9..63c9a9b4 100644 --- a/app/src/main/java/org/autojs/autojs/ui/main/scripts/ExplorerFragment.kt +++ b/app/src/main/java/org/autojs/autojs/ui/main/scripts/ExplorerFragment.kt @@ -125,6 +125,8 @@ class ExplorerFragment : ViewPagerFragment(0), OnFloatingActionButtonClickListen private fun initFloatingActionMenuIfNeeded(fab: FloatingActionButton): FloatingActionMenu { return mFloatingActionMenu ?: requireActivity().findViewById(R.id.floating_action_menu).also { menu -> + val locFab = IntArray(2) + fab.getLocationOnScreen(locFab) menu.state .observeOn(AndroidSchedulers.mainThread()) .subscribe(object : SimpleObserver() { @@ -139,7 +141,7 @@ class ExplorerFragment : ViewPagerFragment(0), OnFloatingActionButtonClickListen menu.layoutParams.runCatching { javaClass.getField("bottomMargin").setInt(this, fab.marginBottom) } - menu.setToggleFab(fab) + menu.setToggleFab(fab, locFab) mFloatingActionMenu = menu } } diff --git a/gradle/data/agp-releases.list b/gradle/data/agp-releases.list index ec9a5752..730c7cbf 100644 --- a/gradle/data/agp-releases.list +++ b/gradle/data/agp-releases.list @@ -1,5 +1,5 @@ -#Fri Jan 16 16:31:36 GMT+8 2026 -9.1.0-alpha05 +#Tue Jan 27 22:23:42 GMT+8 2026 +9.1.0-alpha06 9.0.0 8.13.2 8.12.3 diff --git a/gradle/data/android-studio-build-version.properties b/gradle/data/android-studio-build-version.properties index 1866fc46..53e4b9fb 100644 --- a/gradle/data/android-studio-build-version.properties +++ b/gradle/data/android-studio-build-version.properties @@ -1,4 +1,5 @@ -#Fri Jan 16 15:48:07 GMT+8 2026 +#Tue Jan 27 22:22:32 GMT+8 2026 +253.29346.138.2532.14775144=2025.3.2.1 253.29346.138.2531.14721781=2025.3.1.5 253.29346.138.2531.14682307=2025.3.1.4 253.29346.138.2531.14653457=2025.3.1.3 diff --git a/gradle/wrappers/g8/gradle/wrapper/gradle-wrapper.properties b/gradle/wrappers/g8/gradle/wrapper/gradle-wrapper.properties index d4081da4..f10ca95d 100644 --- a/gradle/wrappers/g8/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrappers/g8/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,7 @@ +#Tue Jan 27 22:22:08 GMT+8 2026 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.4-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/version.properties b/version.properties index 19fb6e06..faeb17df 100644 --- a/version.properties +++ b/version.properties @@ -1,5 +1,5 @@ -#Wed Jan 28 15:47:25 CST 2026 -BUILD_TIME=1769586445990 +#Wed Jan 28 17:23:27 CST 2026 +BUILD_TIME=1769592207672 COMPILE_SDK_VERSION=36 IMAGE_QUANT_CMAKE_VERSION=3.22.1 IMAGE_QUANT_NDK_VERSION=26.1.10909125 @@ -27,6 +27,6 @@ RAPID_OCR_OPENCV_MOBILE_LABEL_VERSION=13 RAPID_OCR_OPENCV_MOBILE_VERSION=4.5.3 TARGET_SDK_VERSION=36 TARGET_SDK_VERSION_INRT=29 -VERSION_BUILD=3664 +VERSION_BUILD=3665 VERSION_NAME=6.7.0 Alpha18 VSCODE_EXT_REQUIRED_VERSION=1.0.13