multiple additions and fixes for the Java APIs

Stuff needed for WhatsApp support
This commit is contained in:
Julian Winkler
2024-06-24 18:44:31 +02:00
committed by Mis012
parent ef77bb287a
commit 3c5a21357d
53 changed files with 357 additions and 43 deletions

View File

@@ -27,7 +27,9 @@ import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Activity extends ContextThemeWrapper implements Window.Callback {
LayoutInflater layout_inflater;
@@ -337,8 +339,30 @@ public class Activity extends ContextThemeWrapper implements Window.Callback {
setResult(resultCode, null);
}
protected Dialog onCreateDialog(int id) {
System.out.println("Activity.onCreateDialog(" + id + ") called");
return null;
}
protected void onPrepareDialog(int id, Dialog dialog) {
System.out.println("Activity.onPrepareDialog(" + id + ") called");
}
private Map<Integer, Dialog> dialogs = new HashMap<Integer, Dialog>();
public final void showDialog(int id) {
System.out.println("Activity.showDialog(" + id + ") called");
Dialog dialog = dialogs.get(id);
if (dialog == null)
dialogs.put(id, dialog = onCreateDialog(id));
onPrepareDialog(id, dialog);
dialog.show();
}
public void removeDialog(int id) {
Dialog dialog = dialogs.remove(id);
if (dialog != null)
dialog.dismiss();
}
public void finish() {
@@ -501,6 +525,8 @@ public class Activity extends ContextThemeWrapper implements Window.Callback {
finish();
}
public void overridePendingTransition(int enterAnim, int exitAnim) {}
private native void nativeFinish(long native_window);
public static native void nativeRecreateActivity(Activity activity);
public static native void nativeStartActivity(Activity activity);