You've already forked android_translation_layer
mirror of
https://gitlab.com/android_translation_layer/android_translation_layer.git
synced 2025-10-27 11:48:10 -07:00
add Java APIs needed for WhatsApp settings
This commit is contained in:
@@ -529,6 +529,10 @@ public class Activity extends ContextThemeWrapper implements Window.Callback {
|
|||||||
|
|
||||||
public void startPostponedEnterTransition() {}
|
public void startPostponedEnterTransition() {}
|
||||||
|
|
||||||
|
public boolean isChild() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
private native void nativeFinish(long native_window);
|
private native void nativeFinish(long native_window);
|
||||||
public static native void nativeRecreateActivity(Activity activity);
|
public static native void nativeRecreateActivity(Activity activity);
|
||||||
public static native void nativeStartActivity(Activity activity);
|
public static native void nativeStartActivity(Activity activity);
|
||||||
|
|||||||
@@ -240,6 +240,8 @@ public class Drawable {
|
|||||||
return drawable;
|
return drawable;
|
||||||
} else if ("nine-patch".equals(parser.getName())) {
|
} else if ("nine-patch".equals(parser.getName())) {
|
||||||
return new NinePatchDrawable(resources, null, null, null, null);
|
return new NinePatchDrawable(resources, null, null, null, null);
|
||||||
|
} else if ("animation-list".equals(parser.getName())) {
|
||||||
|
return new AnimationDrawable();
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
9
src/api-impl/android/media/Ringtone.java
Normal file
9
src/api-impl/android/media/Ringtone.java
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
package android.media;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
|
||||||
|
public class Ringtone{
|
||||||
|
public String getTitle(Context context) {
|
||||||
|
return "FIXME: Ringtone.getTitle()";
|
||||||
|
}
|
||||||
|
};
|
||||||
10
src/api-impl/android/media/RingtoneManager.java
Normal file
10
src/api-impl/android/media/RingtoneManager.java
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
package android.media;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.net.Uri;
|
||||||
|
|
||||||
|
public class RingtoneManager {
|
||||||
|
public static Ringtone getRingtone(Context context, Uri uri) {
|
||||||
|
return new Ringtone();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -896,6 +896,15 @@ public class View implements Drawable.Callback {
|
|||||||
minHeight = a.getDimensionPixelSize(com.android.internal.R.styleable.View_minHeight, 0);
|
minHeight = a.getDimensionPixelSize(com.android.internal.R.styleable.View_minHeight, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
onCreateDrawableState(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected int[] onCreateDrawableState(int extraSpace) {
|
||||||
|
return new int[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
protected static int[] mergeDrawableStates(int[] curState, int[] newState) {
|
||||||
|
return new int[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
public View findViewById(int id) {
|
public View findViewById(int id) {
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import android.util.AttributeSet;
|
|||||||
public class ViewStub extends View {
|
public class ViewStub extends View {
|
||||||
|
|
||||||
private int layoutResource;
|
private int layoutResource;
|
||||||
|
private int inflatedId = View.NO_ID;
|
||||||
|
|
||||||
public ViewStub(Context context) {
|
public ViewStub(Context context) {
|
||||||
this(context, null, 0);
|
this(context, null, 0);
|
||||||
@@ -28,6 +29,8 @@ public class ViewStub extends View {
|
|||||||
throw new IllegalStateException("ViewStub must have a valid layoutResource");
|
throw new IllegalStateException("ViewStub must have a valid layoutResource");
|
||||||
ViewGroup parent = (ViewGroup) getParent();
|
ViewGroup parent = (ViewGroup) getParent();
|
||||||
View view = LayoutInflater.from(getContext()).inflate(layoutResource, parent, false);
|
View view = LayoutInflater.from(getContext()).inflate(layoutResource, parent, false);
|
||||||
|
if (inflatedId != View.NO_ID)
|
||||||
|
view.setId(inflatedId);
|
||||||
int index = parent.indexOfChild(this);
|
int index = parent.indexOfChild(this);
|
||||||
parent.removeView(this);
|
parent.removeView(this);
|
||||||
parent.addView(view, index, getLayoutParams());
|
parent.addView(view, index, getLayoutParams());
|
||||||
@@ -43,4 +46,8 @@ public class ViewStub extends View {
|
|||||||
setMeasuredDimension(0, 0);
|
setMeasuredDimension(0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setInflatedId(int inflatedId) {
|
||||||
|
this.inflatedId = inflatedId;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,9 @@ package android.webkit;
|
|||||||
public class URLUtil {
|
public class URLUtil {
|
||||||
|
|
||||||
public static String guessFileName(String url, String contentDisposition, String mimeType) {
|
public static String guessFileName(String url, String contentDisposition, String mimeType) {
|
||||||
return url.substring(url.lastIndexOf('/') + 1);
|
String filename = url.substring(url.lastIndexOf('/') + 1);
|
||||||
|
if (filename.contains("?"))
|
||||||
|
filename = filename.substring(0, filename.indexOf('?'));
|
||||||
|
return filename;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -73,7 +73,10 @@ public abstract class AbsListView extends AdapterView {
|
|||||||
|
|
||||||
public void smoothScrollBy(int position, int duration) {}
|
public void smoothScrollBy(int position, int duration) {}
|
||||||
|
|
||||||
public void smoothScrollToPositionFromTop(int position, int offset) {}
|
@Override
|
||||||
|
public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs) {
|
||||||
|
return new LayoutParams(getContext(), attrs);
|
||||||
|
}
|
||||||
|
|
||||||
public interface OnScrollListener {}
|
public interface OnScrollListener {}
|
||||||
|
|
||||||
@@ -93,5 +96,8 @@ public abstract class AbsListView extends AdapterView {
|
|||||||
|
|
||||||
public class LayoutParams extends ViewGroup.LayoutParams {
|
public class LayoutParams extends ViewGroup.LayoutParams {
|
||||||
|
|
||||||
|
public LayoutParams(Context c, AttributeSet attrs) {
|
||||||
|
super(c, attrs);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package android.widget;
|
package android.widget;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.graphics.drawable.Drawable;
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
|
|
||||||
public class CheckedTextView extends TextView {
|
public class CheckedTextView extends TextView {
|
||||||
@@ -15,4 +16,6 @@ public class CheckedTextView extends TextView {
|
|||||||
|
|
||||||
public void setChecked(boolean checked) {}
|
public void setChecked(boolean checked) {}
|
||||||
|
|
||||||
|
public void setCheckMarkDrawable(Drawable d) {}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ public abstract class CursorAdapter extends BaseAdapter {
|
|||||||
|
|
||||||
public void changeCursor(Cursor cursor) {
|
public void changeCursor(Cursor cursor) {
|
||||||
this.cursor = cursor;
|
this.cursor = cursor;
|
||||||
|
notifyDataSetChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Cursor getCursor() {
|
public Cursor getCursor() {
|
||||||
|
|||||||
@@ -305,4 +305,6 @@ public class TextView extends View {
|
|||||||
public TextUtils.TruncateAt getEllipsize() {return null;}
|
public TextUtils.TruncateAt getEllipsize() {return null;}
|
||||||
|
|
||||||
public void setLines(int lines) {}
|
public void setLines(int lines) {}
|
||||||
|
|
||||||
|
public void setMinLines(int lines) {}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -242,6 +242,8 @@ hax_jar = jar('hax', [
|
|||||||
'android/media/MediaMetadata.java',
|
'android/media/MediaMetadata.java',
|
||||||
'android/media/MediaPlayer.java',
|
'android/media/MediaPlayer.java',
|
||||||
'android/media/MediaRouter.java',
|
'android/media/MediaRouter.java',
|
||||||
|
'android/media/Ringtone.java',
|
||||||
|
'android/media/RingtoneManager.java',
|
||||||
'android/media/SoundPool.java',
|
'android/media/SoundPool.java',
|
||||||
'android/media/projection/MediaProjectionManager.java',
|
'android/media/projection/MediaProjectionManager.java',
|
||||||
'android/media/session/MediaController.java',
|
'android/media/session/MediaController.java',
|
||||||
|
|||||||
Reference in New Issue
Block a user