From 523cf066285a648b10b277bb1b3b2c7b9d66d464 Mon Sep 17 00:00:00 2001 From: Assam Boudjelthia Date: Wed, 22 Nov 2023 16:02:04 +0200 Subject: [PATCH] Android: rectify the visibility of QtAndroid.jar class Since we expect soon to support embedding of Qt from native Android apps, and allowing native apps to access some Qt java classes as API to enbale the embedding, it's needed now to set the visibility to public only to classes that are meant to be public. Task-number: QTBUG-115017 Change-Id: Iec73f8d39bf9c5f7d303176b2b345d5928fb46c7 Reviewed-by: Qt CI Bot Reviewed-by: Axel Spoerl --- src/android/jar/CMakeLists.txt | 4 ++-- .../jar/src/org/qtproject/qt/android/CursorHandle.java | 2 +- .../jar/src/org/qtproject/qt/android/EditContextView.java | 2 +- .../jar/src/org/qtproject/qt/android/EditPopupMenu.java | 2 +- .../jar/src/org/qtproject/qt/android/ExtractStyle.java | 2 +- .../{accessibility => }/QtAccessibilityDelegate.java | 7 ++----- .../src/org/qtproject/qt/android/QtActivityDelegate.java | 4 +--- .../jar/src/org/qtproject/qt/android/QtActivityLoader.java | 2 +- .../src/org/qtproject/qt/android/QtClipboardManager.java | 2 +- .../jar/src/org/qtproject/qt/android/QtDisplayManager.java | 2 +- .../jar/src/org/qtproject/qt/android/QtEditText.java | 2 +- .../src/org/qtproject/qt/android/QtInputConnection.java | 2 +- .../jar/src/org/qtproject/qt/android/QtInputDelegate.java | 2 +- src/android/jar/src/org/qtproject/qt/android/QtLayout.java | 2 +- src/android/jar/src/org/qtproject/qt/android/QtLoader.java | 2 +- .../org/qtproject/qt/android/QtMessageDialogHelper.java | 2 +- src/android/jar/src/org/qtproject/qt/android/QtNative.java | 2 +- .../android/{accessibility => }/QtNativeAccessibility.java | 2 +- .../jar/src/org/qtproject/qt/android/QtServiceLoader.java | 2 +- .../jar/src/org/qtproject/qt/android/QtSurface.java | 2 +- src/android/jar/src/org/qtproject/qt/android/QtThread.java | 2 +- .../org/qtproject/qt/android/extras/QtAndroidBinder.java | 2 +- .../qt/android/extras/QtAndroidServiceConnection.java | 2 +- .../jar/src/org/qtproject/qt/android/extras/QtNative.java | 2 +- src/plugins/platforms/android/androidjniaccessibility.cpp | 2 +- 25 files changed, 27 insertions(+), 32 deletions(-) rename src/android/jar/src/org/qtproject/qt/android/{accessibility => }/QtAccessibilityDelegate.java (98%) rename src/android/jar/src/org/qtproject/qt/android/{accessibility => }/QtNativeAccessibility.java (94%) diff --git a/src/android/jar/CMakeLists.txt b/src/android/jar/CMakeLists.txt index 729ea07013a..87f1e030d19 100644 --- a/src/android/jar/CMakeLists.txt +++ b/src/android/jar/CMakeLists.txt @@ -2,8 +2,8 @@ # SPDX-License-Identifier: BSD-3-Clause set(java_sources - src/org/qtproject/qt/android/accessibility/QtAccessibilityDelegate.java - src/org/qtproject/qt/android/accessibility/QtNativeAccessibility.java + src/org/qtproject/qt/android/QtAccessibilityDelegate.java + src/org/qtproject/qt/android/QtNativeAccessibility.java src/org/qtproject/qt/android/CursorHandle.java src/org/qtproject/qt/android/EditContextView.java src/org/qtproject/qt/android/EditPopupMenu.java diff --git a/src/android/jar/src/org/qtproject/qt/android/CursorHandle.java b/src/android/jar/src/org/qtproject/qt/android/CursorHandle.java index c8349992bb3..b7124a059f0 100644 --- a/src/android/jar/src/org/qtproject/qt/android/CursorHandle.java +++ b/src/android/jar/src/org/qtproject/qt/android/CursorHandle.java @@ -65,7 +65,7 @@ class CursorView extends ImageView } // Helper class that manages a cursor or selection handle -public class CursorHandle implements ViewTreeObserver.OnPreDrawListener +class CursorHandle implements ViewTreeObserver.OnPreDrawListener { private final View m_layout; private CursorView m_cursorView = null; diff --git a/src/android/jar/src/org/qtproject/qt/android/EditContextView.java b/src/android/jar/src/org/qtproject/qt/android/EditContextView.java index a7925f1c6f8..fbd32ed98b7 100644 --- a/src/android/jar/src/org/qtproject/qt/android/EditContextView.java +++ b/src/android/jar/src/org/qtproject/qt/android/EditContextView.java @@ -17,7 +17,7 @@ import android.widget.TextView; import java.util.HashMap; @SuppressLint("ViewConstructor") -public class EditContextView extends LinearLayout implements View.OnClickListener +class EditContextView extends LinearLayout implements View.OnClickListener { public static final int CUT_BUTTON = 1; public static final int COPY_BUTTON = 1 << 1; diff --git a/src/android/jar/src/org/qtproject/qt/android/EditPopupMenu.java b/src/android/jar/src/org/qtproject/qt/android/EditPopupMenu.java index c72a3f264d6..3349f320045 100644 --- a/src/android/jar/src/org/qtproject/qt/android/EditPopupMenu.java +++ b/src/android/jar/src/org/qtproject/qt/android/EditPopupMenu.java @@ -14,7 +14,7 @@ import android.view.ViewTreeObserver; import android.widget.PopupWindow; // Helper class that manages a cursor or selection handle -public class EditPopupMenu implements ViewTreeObserver.OnPreDrawListener, View.OnLayoutChangeListener, +class EditPopupMenu implements ViewTreeObserver.OnPreDrawListener, View.OnLayoutChangeListener, EditContextView.OnClickListener { private final View m_layout; diff --git a/src/android/jar/src/org/qtproject/qt/android/ExtractStyle.java b/src/android/jar/src/org/qtproject/qt/android/ExtractStyle.java index e2f0a3fe615..b5604d4c479 100644 --- a/src/android/jar/src/org/qtproject/qt/android/ExtractStyle.java +++ b/src/android/jar/src/org/qtproject/qt/android/ExtractStyle.java @@ -61,7 +61,7 @@ import java.util.Map; import java.util.Objects; -public class ExtractStyle { +class ExtractStyle { // This used to be retrieved from android.R.styleable.ViewDrawableStates field via reflection, // but since the access to that is restricted, we need to have hard-coded here. diff --git a/src/android/jar/src/org/qtproject/qt/android/accessibility/QtAccessibilityDelegate.java b/src/android/jar/src/org/qtproject/qt/android/QtAccessibilityDelegate.java similarity index 98% rename from src/android/jar/src/org/qtproject/qt/android/accessibility/QtAccessibilityDelegate.java rename to src/android/jar/src/org/qtproject/qt/android/QtAccessibilityDelegate.java index 6f757fd580a..abe12bbc9b1 100644 --- a/src/android/jar/src/org/qtproject/qt/android/accessibility/QtAccessibilityDelegate.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtAccessibilityDelegate.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only -package org.qtproject.qt.android.accessibility; +package org.qtproject.qt.android; import android.app.Activity; import android.content.Context; @@ -22,10 +22,7 @@ import android.view.accessibility.AccessibilityNodeInfo; import android.view.accessibility.AccessibilityNodeInfo.CollectionInfo; import android.view.accessibility.AccessibilityNodeProvider; -import org.qtproject.qt.android.QtActivityDelegate; -import org.qtproject.qt.android.QtNative; - -public class QtAccessibilityDelegate extends View.AccessibilityDelegate +class QtAccessibilityDelegate extends View.AccessibilityDelegate { private static final String TAG = "Qt A11Y"; diff --git a/src/android/jar/src/org/qtproject/qt/android/QtActivityDelegate.java b/src/android/jar/src/org/qtproject/qt/android/QtActivityDelegate.java index 5ef0b611f0b..964a0a871c7 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtActivityDelegate.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtActivityDelegate.java @@ -32,9 +32,7 @@ import android.widget.PopupMenu; import java.util.ArrayList; import java.util.HashMap; -import org.qtproject.qt.android.accessibility.QtAccessibilityDelegate; - -public class QtActivityDelegate +class QtActivityDelegate { private Activity m_activity; diff --git a/src/android/jar/src/org/qtproject/qt/android/QtActivityLoader.java b/src/android/jar/src/org/qtproject/qt/android/QtActivityLoader.java index 1b997a9401e..89185e3c455 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtActivityLoader.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtActivityLoader.java @@ -21,7 +21,7 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.nio.charset.StandardCharsets; -public class QtActivityLoader extends QtLoader { +class QtActivityLoader extends QtLoader { private final Activity m_activity; public QtActivityLoader(Activity activity) diff --git a/src/android/jar/src/org/qtproject/qt/android/QtClipboardManager.java b/src/android/jar/src/org/qtproject/qt/android/QtClipboardManager.java index 992ceb44c84..ac0d4e18903 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtClipboardManager.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtClipboardManager.java @@ -16,7 +16,7 @@ import java.util.ArrayList; import java.util.Objects; import java.util.concurrent.Semaphore; -public class QtClipboardManager +class QtClipboardManager { public static native void onClipboardDataChanged(long nativePointer); diff --git a/src/android/jar/src/org/qtproject/qt/android/QtDisplayManager.java b/src/android/jar/src/org/qtproject/qt/android/QtDisplayManager.java index a899a1540e9..267020ded60 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtDisplayManager.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtDisplayManager.java @@ -22,7 +22,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; -public class QtDisplayManager { +class QtDisplayManager { // screen methods public static native void setDisplayMetrics(int screenWidthPixels, int screenHeightPixels, diff --git a/src/android/jar/src/org/qtproject/qt/android/QtEditText.java b/src/android/jar/src/org/qtproject/qt/android/QtEditText.java index af778252955..b32d7aeded9 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtEditText.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtEditText.java @@ -13,7 +13,7 @@ import android.view.inputmethod.InputConnection; import org.qtproject.qt.android.QtInputConnection.QtInputConnectionListener; -public class QtEditText extends View +class QtEditText extends View { int m_initialCapsMode = 0; int m_imeOptions = 0; diff --git a/src/android/jar/src/org/qtproject/qt/android/QtInputConnection.java b/src/android/jar/src/org/qtproject/qt/android/QtInputConnection.java index 525cb3d0c63..02b1f373b66 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtInputConnection.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtInputConnection.java @@ -52,7 +52,7 @@ class QtNativeInputConnection static native boolean updateCursorPosition(); } -public class QtInputConnection extends BaseInputConnection +class QtInputConnection extends BaseInputConnection { private static final int ID_SELECT_ALL = android.R.id.selectAll; private static final int ID_CUT = android.R.id.cut; diff --git a/src/android/jar/src/org/qtproject/qt/android/QtInputDelegate.java b/src/android/jar/src/org/qtproject/qt/android/QtInputDelegate.java index 70b1aaf9598..ea1ec5860cc 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtInputDelegate.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtInputDelegate.java @@ -21,7 +21,7 @@ import android.view.inputmethod.InputMethodManager; import org.qtproject.qt.android.QtInputConnection.QtInputConnectionListener; /** @noinspection FieldCanBeLocal*/ -public class QtInputDelegate { +class QtInputDelegate { // keyboard methods public static native void keyDown(int key, int unicode, int modifier, boolean autoRepeat); diff --git a/src/android/jar/src/org/qtproject/qt/android/QtLayout.java b/src/android/jar/src/org/qtproject/qt/android/QtLayout.java index 16750aad89d..8732a5f6121 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtLayout.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtLayout.java @@ -10,7 +10,7 @@ import android.util.AttributeSet; import android.view.View; import android.view.ViewGroup; -public class QtLayout extends ViewGroup +class QtLayout extends ViewGroup { private int m_activityDisplayRotation = -1; private int m_ownDisplayRotation = -1; diff --git a/src/android/jar/src/org/qtproject/qt/android/QtLoader.java b/src/android/jar/src/org/qtproject/qt/android/QtLoader.java index c76d54bfd05..fa7277fc8bf 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtLoader.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtLoader.java @@ -24,7 +24,7 @@ import java.util.Objects; import dalvik.system.DexClassLoader; -public abstract class QtLoader { +abstract class QtLoader { protected static final String QtTAG = "QtLoader"; diff --git a/src/android/jar/src/org/qtproject/qt/android/QtMessageDialogHelper.java b/src/android/jar/src/org/qtproject/qt/android/QtMessageDialogHelper.java index 84f327d44a2..dbfad8450b2 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtMessageDialogHelper.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtMessageDialogHelper.java @@ -46,7 +46,7 @@ class ButtonStruct implements View.OnClickListener } } -public class QtMessageDialogHelper +class QtMessageDialogHelper { public QtMessageDialogHelper(Activity activity) diff --git a/src/android/jar/src/org/qtproject/qt/android/QtNative.java b/src/android/jar/src/org/qtproject/qt/android/QtNative.java index e4fe68100e9..b321e1e0529 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtNative.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtNative.java @@ -30,7 +30,7 @@ import javax.net.ssl.TrustManager; import javax.net.ssl.TrustManagerFactory; import javax.net.ssl.X509TrustManager; -public class QtNative +class QtNative { private static WeakReference m_activity = null; private static WeakReference m_service = null; diff --git a/src/android/jar/src/org/qtproject/qt/android/accessibility/QtNativeAccessibility.java b/src/android/jar/src/org/qtproject/qt/android/QtNativeAccessibility.java similarity index 94% rename from src/android/jar/src/org/qtproject/qt/android/accessibility/QtNativeAccessibility.java rename to src/android/jar/src/org/qtproject/qt/android/QtNativeAccessibility.java index 9fd53948770..dd2cead8cd0 100644 --- a/src/android/jar/src/org/qtproject/qt/android/accessibility/QtNativeAccessibility.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtNativeAccessibility.java @@ -1,7 +1,7 @@ // Copyright (C) 2016 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only -package org.qtproject.qt.android.accessibility; +package org.qtproject.qt.android; import android.graphics.Rect; import android.view.accessibility.AccessibilityNodeInfo; diff --git a/src/android/jar/src/org/qtproject/qt/android/QtServiceLoader.java b/src/android/jar/src/org/qtproject/qt/android/QtServiceLoader.java index b045b9abff5..a9d3b31fbe9 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtServiceLoader.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtServiceLoader.java @@ -12,7 +12,7 @@ import android.util.Log; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; -public class QtServiceLoader extends QtLoader { +class QtServiceLoader extends QtLoader { private final Service m_service; public QtServiceLoader(Service service) { diff --git a/src/android/jar/src/org/qtproject/qt/android/QtSurface.java b/src/android/jar/src/org/qtproject/qt/android/QtSurface.java index 17e4aeb20f0..704574384af 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtSurface.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtSurface.java @@ -13,7 +13,7 @@ import android.view.SurfaceHolder; import android.view.SurfaceView; @SuppressLint("ViewConstructor") -public class QtSurface extends SurfaceView implements SurfaceHolder.Callback +class QtSurface extends SurfaceView implements SurfaceHolder.Callback { private final GestureDetector m_gestureDetector; diff --git a/src/android/jar/src/org/qtproject/qt/android/QtThread.java b/src/android/jar/src/org/qtproject/qt/android/QtThread.java index 2d6f430b38b..359c1a72084 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtThread.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtThread.java @@ -6,7 +6,7 @@ package org.qtproject.qt.android; import java.util.ArrayList; import java.util.concurrent.Semaphore; -public class QtThread { +class QtThread { private final ArrayList m_pendingRunnables = new ArrayList<>(); private boolean m_exit = false; private final Thread m_qtThread = new Thread(new Runnable() { diff --git a/src/android/jar/src/org/qtproject/qt/android/extras/QtAndroidBinder.java b/src/android/jar/src/org/qtproject/qt/android/extras/QtAndroidBinder.java index 34aec22c03a..bd837570fe4 100644 --- a/src/android/jar/src/org/qtproject/qt/android/extras/QtAndroidBinder.java +++ b/src/android/jar/src/org/qtproject/qt/android/extras/QtAndroidBinder.java @@ -8,7 +8,7 @@ import android.os.Parcel; import org.qtproject.qt.android.UsedFromNativeCode; -public class QtAndroidBinder extends Binder +class QtAndroidBinder extends Binder { @UsedFromNativeCode public QtAndroidBinder(long id) diff --git a/src/android/jar/src/org/qtproject/qt/android/extras/QtAndroidServiceConnection.java b/src/android/jar/src/org/qtproject/qt/android/extras/QtAndroidServiceConnection.java index 5d6dc97b846..b70b64e3ac2 100644 --- a/src/android/jar/src/org/qtproject/qt/android/extras/QtAndroidServiceConnection.java +++ b/src/android/jar/src/org/qtproject/qt/android/extras/QtAndroidServiceConnection.java @@ -9,7 +9,7 @@ import android.os.IBinder; import org.qtproject.qt.android.UsedFromNativeCode; -public class QtAndroidServiceConnection implements ServiceConnection +class QtAndroidServiceConnection implements ServiceConnection { @UsedFromNativeCode public QtAndroidServiceConnection(long id) diff --git a/src/android/jar/src/org/qtproject/qt/android/extras/QtNative.java b/src/android/jar/src/org/qtproject/qt/android/extras/QtNative.java index 658eae87a10..f7ba8dd9b4e 100644 --- a/src/android/jar/src/org/qtproject/qt/android/extras/QtNative.java +++ b/src/android/jar/src/org/qtproject/qt/android/extras/QtNative.java @@ -6,7 +6,7 @@ package org.qtproject.qt.android.extras; import android.os.IBinder; import android.os.Parcel; -public class QtNative { +class QtNative { // Binder public static native boolean onTransact(long id, int code, Parcel data, Parcel reply, int flags); diff --git a/src/plugins/platforms/android/androidjniaccessibility.cpp b/src/plugins/platforms/android/androidjniaccessibility.cpp index 119e0c9dea0..8f1c76ca26b 100644 --- a/src/plugins/platforms/android/androidjniaccessibility.cpp +++ b/src/plugins/platforms/android/androidjniaccessibility.cpp @@ -569,7 +569,7 @@ namespace QtAndroidAccessibility bool registerNatives(QJniEnvironment &env) { - if (!env.registerNativeMethods("org/qtproject/qt/android/accessibility/QtNativeAccessibility", + if (!env.registerNativeMethods("org/qtproject/qt/android/QtNativeAccessibility", methods, sizeof(methods) / sizeof(methods[0]))) { __android_log_print(ANDROID_LOG_FATAL,"Qt A11y", "RegisterNatives failed"); return false;