api-impl: misc stubs and trivial impls

This commit is contained in:
Mis012
2025-02-15 21:34:37 +01:00
parent df03617f13
commit 453224cf31
12 changed files with 123 additions and 6 deletions

View File

@@ -29,8 +29,12 @@ public class Notification implements Parcelable {
public int iconLevel; public int iconLevel;
public RemoteViews bigContentView;
public RemoteViews contentView; public RemoteViews contentView;
public RemoteViews headsUpContentView;
public long[] vibrate; public long[] vibrate;
public int ledARGB; public int ledARGB;

View File

@@ -32,6 +32,9 @@ public final class Bitmap {
public enum CompressFormat { public enum CompressFormat {
JPEG, JPEG,
PNG, PNG,
WEBP,
WEBP_LOSSY,
WEBP_LOSSLESS,
} }
private int width; private int width;

View File

@@ -207,7 +207,6 @@ public class Canvas {
* @param py The y-coord for the pivot point (unchanged by the scale) * @param py The y-coord for the pivot point (unchanged by the scale)
*/ */
public final void scale(float sx, float sy, float px, float py) { public final void scale(float sx, float sy, float px, float py) {
System.out.println("XXXXXXX scale(sx, sy, px, py)");
translate(px, py); translate(px, py);
scale(sx, sy); scale(sx, sy);
translate(-px, -py); translate(-px, -py);
@@ -466,6 +465,10 @@ public class Canvas {
return false; return false;
} }
public boolean clipRect(RectF rect) {
return false;
}
public boolean clipRect(float left, float top, float right, float bottom, Region.Op op) { public boolean clipRect(float left, float top, float right, float bottom, Region.Op op) {
return false; return false;
} }

View File

@@ -20,6 +20,7 @@ public class Paint {
public long paint; // native paint public long paint; // native paint
private Xfermode xfermode; private Xfermode xfermode;
private Shader shader; private Shader shader;
private Align align = Align.CENTER;
public Paint() { public Paint() {
paint = native_create(); paint = native_create();
@@ -322,6 +323,10 @@ public class Paint {
return Style.values[native_get_style(paint)]; return Style.values[native_get_style(paint)];
} }
public Align getTextAlign() {
return align;
}
private static native long native_create(); private static native long native_create();
private static native long native_clone(long paint); private static native long native_clone(long paint);
private static native void native_recycle(long paint); private static native void native_recycle(long paint);

View File

@@ -112,6 +112,10 @@ public class Path {
native_rel_quad_to(getBuilder(), x1, y1, x2, y2); native_rel_quad_to(getBuilder(), x1, y1, x2, y2);
} }
public void addArc (RectF oval, float startAngle, float sweepAngle) {}
public void addArc (float left, float top, float right, float bottom, float startAngle, float sweepAngle) {}
public void addPath(Path path, Matrix matrix) { public void addPath(Path path, Matrix matrix) {
native_add_path(getBuilder(), path.getGskPath(), matrix.ni()); native_add_path(getBuilder(), path.getGskPath(), matrix.ni());
} }
@@ -153,6 +157,13 @@ public class Path {
path = 0; path = 0;
} }
public void transform(Matrix matrix, Path out_path) {
if(out_path == null)
out_path = this;
out_path.transform(matrix);
}
public void computeBounds(RectF bounds, boolean exact) { public void computeBounds(RectF bounds, boolean exact) {
native_get_bounds(getGskPath(), bounds); native_get_bounds(getGskPath(), bounds);
} }

View File

@@ -8,7 +8,9 @@ public final class PowerManager {
public void release() {} public void release() {}
public boolean isHeld() { return false; } public boolean isHeld() {
return false;
}
public void acquire(long timeout) {} public void acquire(long timeout) {}
} }
@@ -21,7 +23,15 @@ public final class PowerManager {
public static final int FULL_WAKE_LOCK = 0x1a; public static final int FULL_WAKE_LOCK = 0x1a;
public boolean isPowerSaveMode() { return false; } public boolean isPowerSaveMode() {
return false;
}
public boolean isScreenOn() { return true; } public boolean isScreenOn() {
return true;
}
public boolean isIgnoringBatteryOptimizations(String packageName) {
return true;
}
} }

View File

@@ -0,0 +1,33 @@
package android.speech.tts;
import android.content.Context;
import android.os.Handler;
import android.os.Looper;
public class TextToSpeech {
public static final int ERROR = -1;
public TextToSpeech(Context context, TextToSpeech.OnInitListener listener) {
new Handler(Looper.getMainLooper()).post(new Runnable() {
@Override
public void run() {
listener.onInit(ERROR);
}
});
}
public int setOnUtteranceCompletedListener(TextToSpeech.OnUtteranceCompletedListener listener) {
return ERROR;
}
public void shutdown() {
}
public static interface OnInitListener {
abstract void onInit(int status);
}
public static interface OnUtteranceCompletedListener {
public abstract void onUtteranceCompleted(String utteranceId);
}
}

View File

@@ -1,3 +1,21 @@
/*
* most of this file:
*
* Copyright (C) 2006 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.text; package android.text;
import java.util.Locale; import java.util.Locale;
@@ -10,8 +28,6 @@ public class TextUtils {
return 0 /*LTR*/; // FIXME return 0 /*LTR*/; // FIXME
} }
// unchanged from android source
/* split */ /* split */
private static String[] EMPTY_STRING_ARRAY = new String[] {}; private static String[] EMPTY_STRING_ARRAY = new String[] {};
@@ -350,4 +366,15 @@ public class TextUtils {
public static String substring(CharSequence s, int start, int end) { public static String substring(CharSequence s, int start, int end) {
return s.subSequence(start, end).toString(); return s.subSequence(start, end).toString();
} }
public static boolean isDigitsOnly(CharSequence str) {
final int len = str.length();
for (int cp, i = 0; i < len; i += Character.charCount(cp)) {
cp = Character.codePointAt(str, i);
if (!Character.isDigit(cp)) {
return false;
}
}
return true;
}
} }

View File

@@ -1,4 +1,6 @@
package android.text.style; package android.text.style;
public class AbsoluteSizeSpan { public class AbsoluteSizeSpan {
public AbsoluteSizeSpan() {}
public AbsoluteSizeSpan(int dummy) {}
} }

View File

@@ -30,11 +30,20 @@ public class VelocityTracker {
public void computeCurrentVelocity(int units, float maxVelocity) {} public void computeCurrentVelocity(int units, float maxVelocity) {}
public void computeCurrentVelocity(int units) {} public void computeCurrentVelocity(int units) {}
public float getXVelocity() {
return getXVelocity(-1);
}
public float getXVelocity(int id) { public float getXVelocity(int id) {
if (currentEventTime == startEventTime) if (currentEventTime == startEventTime)
return 0.f; return 0.f;
return (currentX - startX) / (currentEventTime - startEventTime) * 1000; return (currentX - startX) / (currentEventTime - startEventTime) * 1000;
} }
public float getYVelocity() {
return getYVelocity();
}
public float getYVelocity(int id) { public float getYVelocity(int id) {
if (currentEventTime == startEventTime) if (currentEventTime == startEventTime)
return 0.f; return 0.f;

View File

@@ -5,4 +5,6 @@ import android.graphics.drawable.Drawable;
public class ViewOverlay { public class ViewOverlay {
public void add(Drawable drawable) {} public void add(Drawable drawable) {}
public void clear() {}
public void remove(Drawable drawable) {}
} }

View File

@@ -42,6 +42,14 @@ public class ViewPropertyAnimator {
return this; return this;
} }
public ViewPropertyAnimator x(float rotation) {
return this;
}
public ViewPropertyAnimator y(float rotation) {
return this;
}
public ViewPropertyAnimator rotation(float rotation) { public ViewPropertyAnimator rotation(float rotation) {
return this; return this;
} }