Add decompiled APK source code (JADX)

- 28,932 files
- Full Java source code
- Smali files
- Resources

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
2026-02-18 14:52:23 -08:00
parent cc210a65ea
commit f9d20bb3fc
26991 changed files with 2541449 additions and 0 deletions

View File

@@ -0,0 +1,502 @@
package com.firemonkeys.cloudcellapi;
import android.annotation.TargetApi;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.graphics.Typeface;
import android.util.DisplayMetrics;
import android.view.Display;
import android.view.MotionEvent;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.webkit.ValueCallback;
import android.webkit.WebChromeClient;
import android.webkit.WebResourceError;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.core.view.InputDeviceCompat;
import androidx.core.view.ViewCompat;
import java.io.File;
import org.apache.http.util.EncodingUtils;
/* loaded from: classes2.dex */
public class UserInterfaceManager {
private static final String CLASSNAME = "UserInterfaceManager";
static ScrollableWebView m_pStaticWebView;
/* JADX INFO: Access modifiers changed from: private */
public native void ClickableCallback(int i);
/* JADX INFO: Access modifiers changed from: private */
public native void WebBrowserEvaluateJavascriptCallback(int i, String str, long j);
/* JADX INFO: Access modifiers changed from: private */
public native void WebBrowserLoadFailCallback(long j);
/* JADX INFO: Access modifiers changed from: private */
public native void WebBrowserLoadFinishCallback(long j);
/* JADX INFO: Access modifiers changed from: private */
public native boolean WebBrowserLoadShouldStartCallback(String str, long j);
/* JADX INFO: Access modifiers changed from: private */
public native void WebBrowserLoadStartCallback(String str, long j);
public class ScrollableWebView extends WebView {
public int clamp(int i, int i2, int i3) {
return i < i2 ? i2 : i > i3 ? i3 : i;
}
public ScrollableWebView(Context context) {
super(context);
}
public void ScrollView(int i, int i2) {
scrollTo(clamp(getScrollX() + i, 0, computeHorizontalScrollRange() - getWidth()), clamp(getScrollY() + i2, 0, computeVerticalScrollRange() - getHeight()));
}
}
public class CrmClient extends WebChromeClient {
Activity m_activity;
RelativeLayout m_layout;
View m_view = null;
public CrmClient(Activity activity, RelativeLayout relativeLayout) {
this.m_activity = activity;
this.m_layout = relativeLayout;
}
@Override // android.webkit.WebChromeClient
public void onShowCustomView(View view, WebChromeClient.CustomViewCallback customViewCallback) {
super.onShowCustomView(view, customViewCallback);
view.setBackgroundColor(ViewCompat.MEASURED_STATE_MASK);
this.m_view = view;
this.m_layout.addView(view);
}
@Override // android.webkit.WebChromeClient
public void onHideCustomView() {
super.onHideCustomView();
this.m_layout.removeView(this.m_view);
}
}
@TargetApi(19)
public int GetScreenWidth() {
DisplayMetrics displayMetrics = new DisplayMetrics();
if (((CC_Component.GetActivity().getWindow().getDecorView().getSystemUiVisibility() & InputDeviceCompat.SOURCE_TOUCHSCREEN) == 4098) || CC_Component.getIsUsingImmersiveMode()) {
CC_Component.GetActivity().getWindowManager().getDefaultDisplay().getRealMetrics(displayMetrics);
} else {
CC_Component.GetActivity().getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
}
return (int) (displayMetrics.widthPixels / GetScreenScale());
}
public int GetScreenHeight() {
DisplayMetrics displayMetrics = new DisplayMetrics();
if (((CC_Component.GetActivity().getWindow().getDecorView().getSystemUiVisibility() & InputDeviceCompat.SOURCE_TOUCHSCREEN) == 4098) || CC_Component.getIsUsingImmersiveMode()) {
CC_Component.GetActivity().getWindowManager().getDefaultDisplay().getRealMetrics(displayMetrics);
} else {
CC_Component.GetActivity().getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
}
return (int) (displayMetrics.heightPixels / GetScreenScale());
}
public float GetScreenScale() {
Display defaultDisplay = CC_Component.GetActivity().getWindowManager().getDefaultDisplay();
DisplayMetrics displayMetrics = new DisplayMetrics();
defaultDisplay.getMetrics(displayMetrics);
return displayMetrics.density > 1.0f ? 2.0f : 1.0f;
}
public RelativeLayout WindowCreate(int i, int i2, final int i3, final int i4) {
final Activity GetActivity = CC_Component.GetActivity();
final RelativeLayout relativeLayout = new RelativeLayout(GetActivity);
GetActivity.runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.1
@Override // java.lang.Runnable
public void run() {
GetActivity.addContentView(relativeLayout, new RelativeLayout.LayoutParams(i3, i4));
}
});
return relativeLayout;
}
public void WindowShow(final RelativeLayout relativeLayout) {
Logging.CC_TRACE(CLASSNAME, "--- UserInterfaceManager WindowShow");
CC_Component.GetActivity().runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.2
@Override // java.lang.Runnable
public void run() {
Logging.CC_TRACE(UserInterfaceManager.CLASSNAME, "### UserInterfaceManager WindowShow");
relativeLayout.setVisibility(0);
}
});
}
public void WindowHide(final RelativeLayout relativeLayout) {
final Activity GetActivity = CC_Component.GetActivity();
GetActivity.runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.3
@Override // java.lang.Runnable
public void run() {
View currentFocus = GetActivity.getCurrentFocus();
if (currentFocus != null) {
((InputMethodManager) GetActivity.getSystemService("input_method")).hideSoftInputFromWindow(currentFocus.getApplicationWindowToken(), 0);
}
relativeLayout.setVisibility(8);
}
});
}
public ImageView ImageCreate(final RelativeLayout relativeLayout, final int i, final int i2, final int i3, final int i4, final String str, int i5, int i6) {
Activity GetActivity = CC_Component.GetActivity();
final ImageView imageView = new ImageView(GetActivity);
GetActivity.runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.4
@Override // java.lang.Runnable
public void run() {
imageView.setImageBitmap(BitmapFactory.decodeFile(str));
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(i3, i4);
layoutParams.leftMargin = i;
layoutParams.topMargin = i2;
imageView.setLayoutParams(layoutParams);
relativeLayout.addView(imageView);
}
});
return imageView;
}
public void ImageShow(final ImageView imageView) {
CC_Component.GetActivity().runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.5
@Override // java.lang.Runnable
public void run() {
imageView.setVisibility(0);
}
});
}
public void ImageHide(final ImageView imageView) {
CC_Component.GetActivity().runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.6
@Override // java.lang.Runnable
public void run() {
imageView.setVisibility(8);
}
});
}
public ImageView ImagePatchCreate(final RelativeLayout relativeLayout, final int i, final int i2, final int i3, final int i4, final String str, final int i5) {
Activity GetActivity = CC_Component.GetActivity();
final ImageView imageView = new ImageView(GetActivity);
GetActivity.runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.7
@Override // java.lang.Runnable
public void run() {
File file = new File(str);
Bitmap createBitmap = Bitmap.createBitmap(i3, i4, Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(createBitmap);
Paint paint = new Paint(1);
Bitmap decodeFile = BitmapFactory.decodeFile(file.getAbsolutePath());
int i6 = i5;
Rect rect = new Rect(0, 0, i6, i6);
int i7 = i5;
canvas.drawBitmap(decodeFile, rect, new Rect(0, 0, i7, i7), paint);
int i8 = i5;
int width = decodeFile.getWidth();
int i9 = i5;
Rect rect2 = new Rect(i8, 0, width - i9, i9);
int i10 = i5;
canvas.drawBitmap(decodeFile, rect2, new Rect(i10, 0, i3 - i10, i10), paint);
Rect rect3 = new Rect(decodeFile.getWidth() - i5, 0, decodeFile.getWidth(), i5);
int i11 = i3;
int i12 = i5;
canvas.drawBitmap(decodeFile, rect3, new Rect(i11 - i12, 0, i11, i12), paint);
int i13 = i5;
Rect rect4 = new Rect(0, i13, i13, decodeFile.getHeight() - i5);
int i14 = i5;
canvas.drawBitmap(decodeFile, rect4, new Rect(0, i14, i14, i4 - i14), paint);
int i15 = i5;
Rect rect5 = new Rect(i15, i15, decodeFile.getWidth() - i5, decodeFile.getHeight() - i5);
int i16 = i5;
canvas.drawBitmap(decodeFile, rect5, new Rect(i16, i16, i3 - i16, i4 - i16), paint);
int width2 = decodeFile.getWidth();
int i17 = i5;
Rect rect6 = new Rect(width2 - i17, i17, decodeFile.getWidth(), decodeFile.getHeight() - i5);
int i18 = i3;
int i19 = i5;
canvas.drawBitmap(decodeFile, rect6, new Rect(i18 - i19, i19, i18, i4 - i19), paint);
int height = decodeFile.getHeight();
int i20 = i5;
Rect rect7 = new Rect(0, height - i20, i20, decodeFile.getHeight());
int i21 = i4;
int i22 = i5;
canvas.drawBitmap(decodeFile, rect7, new Rect(0, i21 - i22, i22, i21), paint);
Rect rect8 = new Rect(i5, decodeFile.getHeight() - i5, decodeFile.getWidth() - i5, decodeFile.getHeight());
int i23 = i5;
int i24 = i4;
canvas.drawBitmap(decodeFile, rect8, new Rect(i23, i24 - i23, i3 - i23, i24), paint);
Rect rect9 = new Rect(decodeFile.getWidth() - i5, decodeFile.getHeight() - i5, decodeFile.getWidth(), decodeFile.getHeight());
int i25 = i3;
int i26 = i5;
int i27 = i4;
canvas.drawBitmap(decodeFile, rect9, new Rect(i25 - i26, i27 - i26, i25, i27), paint);
imageView.setImageBitmap(createBitmap);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(i3, i4);
layoutParams.leftMargin = i;
layoutParams.topMargin = i2;
imageView.setLayoutParams(layoutParams);
relativeLayout.addView(imageView);
}
});
return imageView;
}
public void ClickableCreate(final ImageView imageView, final int i) {
CC_Component.GetActivity().runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.8
@Override // java.lang.Runnable
public void run() {
imageView.setClickable(true);
imageView.setOnClickListener(new View.OnClickListener() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.8.1
@Override // android.view.View.OnClickListener
public void onClick(View view) {
Logging.CC_ERROR(UserInterfaceManager.CLASSNAME, "iElementId:" + i);
AnonymousClass8 anonymousClass8 = AnonymousClass8.this;
UserInterfaceManager.this.ClickableCallback(i);
}
});
}
});
}
public TextView LabelCreate(TextView textView, final RelativeLayout relativeLayout, final String str, final String str2, final int i, final float f, final float f2, final float f3, final int i2, final int i3, final int i4, final int i5) {
Activity GetActivity = CC_Component.GetActivity();
final boolean z = textView == null;
TextView textView2 = z ? new TextView(GetActivity) : textView;
final TextView textView3 = textView2;
TextView textView4 = textView2;
GetActivity.runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.9
@Override // java.lang.Runnable
public void run() {
textView3.setText(str);
textView3.setTextSize(0, i);
textView3.setTypeface(Typeface.create(str2, 0));
textView3.setTextColor(Color.rgb((int) (f * 255.0f), (int) (f2 * 255.0f), (int) (f3 * 255.0f)));
textView3.setGravity(17);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(i4, i5);
layoutParams.leftMargin = i2;
layoutParams.topMargin = i3;
textView3.setLayoutParams(layoutParams);
if (z) {
relativeLayout.addView(textView3);
}
}
});
return textView4;
}
public void LabelDelete(final TextView textView) {
CC_Component.GetActivity().runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.10
@Override // java.lang.Runnable
public void run() {
textView.setText("");
}
});
}
public void HandleScrollInput(float f, float f2) {
ScrollableWebView scrollableWebView = m_pStaticWebView;
if (scrollableWebView != null) {
final int i = (int) (f * 5.0f);
final int i2 = (int) (f2 * 5.0f);
scrollableWebView.post(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.11
@Override // java.lang.Runnable
public void run() {
UserInterfaceManager.m_pStaticWebView.ScrollView(i, i2);
}
});
}
}
public void AppSuspended() {
ScrollableWebView scrollableWebView = m_pStaticWebView;
if (scrollableWebView != null) {
scrollableWebView.post(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.12
@Override // java.lang.Runnable
public void run() {
UserInterfaceManager.m_pStaticWebView.onPause();
}
});
}
}
public void AppResumed() {
ScrollableWebView scrollableWebView = m_pStaticWebView;
if (scrollableWebView != null) {
scrollableWebView.post(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.13
@Override // java.lang.Runnable
public void run() {
UserInterfaceManager.m_pStaticWebView.onResume();
}
});
}
}
public WebView WebBrowserCreate(ScrollableWebView scrollableWebView, final RelativeLayout relativeLayout, final int i, final int i2, final int i3, final int i4, final long j) {
final Activity GetActivity = CC_Component.GetActivity();
m_pStaticWebView = scrollableWebView;
Runnable runnable = new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.14
@Override // java.lang.Runnable
public void run() {
synchronized (this) {
try {
boolean z = UserInterfaceManager.m_pStaticWebView == null;
if (z) {
UserInterfaceManager.m_pStaticWebView = UserInterfaceManager.this.new ScrollableWebView(GetActivity);
}
UserInterfaceManager.m_pStaticWebView.getSettings().setJavaScriptEnabled(true);
UserInterfaceManager.m_pStaticWebView.getSettings().setDomStorageEnabled(true);
UserInterfaceManager.m_pStaticWebView.getSettings().setAllowFileAccess(true);
UserInterfaceManager.m_pStaticWebView.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
UserInterfaceManager.m_pStaticWebView.setWebViewClient(new WebViewClient() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.14.1
@Override // android.webkit.WebViewClient
public boolean shouldOverrideUrlLoading(WebView webView, String str) {
AnonymousClass14 anonymousClass14 = AnonymousClass14.this;
return UserInterfaceManager.this.WebBrowserLoadShouldStartCallback(str, j);
}
@Override // android.webkit.WebViewClient
public void onPageStarted(WebView webView, String str, Bitmap bitmap) {
AnonymousClass14 anonymousClass14 = AnonymousClass14.this;
UserInterfaceManager.this.WebBrowserLoadStartCallback(str, j);
}
@Override // android.webkit.WebViewClient
public void onPageFinished(WebView webView, String str) {
AnonymousClass14 anonymousClass14 = AnonymousClass14.this;
UserInterfaceManager.this.WebBrowserLoadFinishCallback(j);
}
@Override // android.webkit.WebViewClient
public void onReceivedError(WebView webView, WebResourceRequest webResourceRequest, WebResourceError webResourceError) {
AnonymousClass14 anonymousClass14 = AnonymousClass14.this;
UserInterfaceManager.this.WebBrowserLoadFailCallback(j);
}
});
UserInterfaceManager.m_pStaticWebView.setWebChromeClient(UserInterfaceManager.this.new CrmClient(GetActivity, relativeLayout));
UserInterfaceManager.m_pStaticWebView.setOnTouchListener(new View.OnTouchListener() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.14.2
@Override // android.view.View.OnTouchListener
public boolean onTouch(View view, MotionEvent motionEvent) {
int action = motionEvent.getAction();
if ((action != 0 && action != 1) || view.hasFocus()) {
return false;
}
view.requestFocus();
return false;
}
});
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(i3, i4);
layoutParams.leftMargin = i;
layoutParams.topMargin = i2;
UserInterfaceManager.m_pStaticWebView.setLayoutParams(layoutParams);
if (z) {
relativeLayout.addView(UserInterfaceManager.m_pStaticWebView);
}
notify();
} catch (Throwable th) {
throw th;
}
}
}
};
synchronized (runnable) {
GetActivity.runOnUiThread(runnable);
try {
runnable.wait();
} catch (Exception unused) {
}
}
return m_pStaticWebView;
}
/* renamed from: com.firemonkeys.cloudcellapi.UserInterfaceManager$15, reason: invalid class name */
public class AnonymousClass15 implements Runnable {
final /* synthetic */ String val$javaScript;
final /* synthetic */ int val$nCallbackId;
final /* synthetic */ WebView val$pWebView;
final /* synthetic */ long val$userPointer;
public AnonymousClass15(WebView webView, String str, int i, long j) {
this.val$pWebView = webView;
this.val$javaScript = str;
this.val$nCallbackId = i;
this.val$userPointer = j;
}
@Override // java.lang.Runnable
public void run() {
this.val$pWebView.evaluateJavascript(this.val$javaScript, new ValueCallback<String>() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.15.1
@Override // android.webkit.ValueCallback
public void onReceiveValue(final String str) {
CC_Activity.runOnGLThreadonCloudell(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.15.1.1
@Override // java.lang.Runnable
public void run() {
AnonymousClass15 anonymousClass15 = AnonymousClass15.this;
UserInterfaceManager.this.WebBrowserEvaluateJavascriptCallback(anonymousClass15.val$nCallbackId, str, anonymousClass15.val$userPointer);
}
});
}
});
}
}
public void WebBrowserEvaluateJavascript(WebView webView, String str, int i, long j) {
CC_Component.GetActivity().runOnUiThread(new AnonymousClass15(webView, str, i, j));
}
public void WebBrowserOpenData(final WebView webView, final String str, String str2, boolean z, String str3) {
CC_Component.GetActivity().runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.16
@Override // java.lang.Runnable
public void run() {
webView.loadDataWithBaseURL(null, str, null, "UTF-8", null);
}
});
}
public void WebBrowserOpenUrl(final WebView webView, final String str, final String str2, boolean z, final String str3) {
CC_Component.GetActivity().runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.17
@Override // java.lang.Runnable
public void run() {
String str4 = str3;
if (str4 != null && str4.length() > 0) {
webView.postUrl(str + str2, EncodingUtils.getBytes(str3, "UTF-8"));
return;
}
webView.loadUrl(str + str2);
}
});
}
public void ShowDialogBox(final String str, final String str2, final String str3) {
final Activity GetActivity = CC_Component.GetActivity();
GetActivity.runOnUiThread(new Runnable() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.18
@Override // java.lang.Runnable
public void run() {
AlertDialog.Builder builder = new AlertDialog.Builder(GetActivity);
builder.setTitle(str).setMessage(str2).setNegativeButton(str3, new DialogInterface.OnClickListener() { // from class: com.firemonkeys.cloudcellapi.UserInterfaceManager.18.1
@Override // android.content.DialogInterface.OnClickListener
public void onClick(DialogInterface dialogInterface, int i) {
}
});
builder.show();
}
});
}
}