Julian Winkler
35f26faa90
ImageButton: implement setDrawable()
2024-03-24 22:13:28 +01:00
Julian Winkler
f4a0191b1c
implement VectorDrawable, by loading tmp SVG with gdkpixbuf
...
This won't work for Apps using VectorDrawableCompat
2024-03-24 21:26:38 +01:00
Julian Winkler
26b6da2c9c
fix for atl_test_apks/views_widgets_samples_flower_finder.apk
...
This was broken since the automatic night mode commit. The sdkVersion
configuration for the AssetManager needs to be at least 24, as some
image resources of the APK are only in res/drawable-v24 subfolder
2024-03-24 15:11:38 +01:00
Julian Winkler
494605932c
implement more APIs
2024-03-22 21:02:22 +01:00
Julian Winkler
e8dc6e2f0d
implement Uri.Builder with hack for content:// URIs
2024-03-22 21:02:22 +01:00
Julian Winkler
e0b3975eb7
implement PackageManager.resolveContentProvider()
2024-03-22 21:02:22 +01:00
Julian Winkler
7d6eae5fa5
hack: call OnGlobalLayoutListener immediately
...
The NewPipe DownloadActivity waits for this callback
2024-03-22 21:02:22 +01:00
Julian Winkler
7ee4effb86
implement android.widget.Spinner using GtkDropDown
...
Helper classes from ListView implementation are reused. The declarations
have been moved to a new header file AdaperView.h
2024-03-22 21:02:22 +01:00
Julian Winkler
dda3063e79
PopupMenu: use AOSP MenuInflater and support item visibility
2024-03-22 21:02:22 +01:00
Mis012
0592b71489
View: basic implementation for performHapticFeedback
...
we currently ignore the feedbackConstant and simply vibrate for 10ms
2024-03-22 14:04:17 +01:00
Mis012
d122b2a528
api-impl: implement vibrator using evdev
...
we use the first vibrator that is marked for use with feedbackd in udev
2024-03-22 13:17:29 +01:00
Mis012
3022350844
SensorManager: accel: implement accelerometer data polling via /sys/bus/iio
...
for simplicity, we currently just take the first device in `/sys/bus/iio/devices`
that looks like an accelerometer.
2024-03-21 21:13:44 +01:00
Mis012
6839f8b651
View: requestLayout: post with Looper to avoid stack exhaustion
2024-03-21 21:05:20 +01:00
Mis012
5af3fa9e79
api-impl: add TableLayout from AOSP
2024-03-21 16:19:19 +01:00
Julian Winkler
50fa760c63
NoitficationManager: implement cancel
2024-03-18 23:12:04 +01:00
Julian Winkler
cdcc3411aa
NotificationManager: delete ongoing and MediaStyle notifications on exit
...
The XDG Portal API doesn't have a concept of ongoing notifications.
MediaStyle notifications could be changed to MPRIS in the future.
2024-03-18 15:41:44 +01:00
Julian Winkler
acb00a8beb
NotificationManager: add support for icons
2024-03-18 14:37:56 +01:00
Julian Winkler
45de09a191
notification support using libportal
2024-03-18 07:26:25 +01:00
Julian Winkler
b14549e639
implement ConnectivityManager using GNetworkMonitor
2024-03-17 22:39:13 +01:00
Julian Winkler
14217e8724
simple implementation of PopupMenu using GtkPopoverMenu
2024-03-17 22:39:13 +01:00
Julian Winkler
6513195b9e
implement file chooser using GtkFileChooserNative
2024-03-17 22:39:13 +01:00
Julian Winkler
276b5ca7ef
add more APIs needed for NewPipe
2024-03-17 20:02:50 +01:00
Mis012
ab7c6cf834
api-impl: add stubs to make AnimationDrawable and Animation not cause lockups
...
apps may (ab)use AnimationDrawable.run and Animation.setAnimationListener
to time transitions between states; even though we don't currently implement
the animations, state transitions are still desirable (otherwise the app may
lock up)
2024-03-16 23:37:16 +01:00
Mis012
20b179387b
api-impl: implement accelerometer support, no backend yet
...
currently x,y,z values are hardcoded and can only be changed with gdb
2024-03-16 15:06:06 +01:00
Mis012
6443e3977c
api-impl: quick&dirty implementations and stubing
2024-03-16 15:03:06 +01:00
Mis012
2e864adc0f
implement drawing into Bitmaps with Canvas, make BitmapDrawable use use paintable, misc Bitmap improvements
2024-03-16 15:00:22 +01:00
Mis012
fa1aa36f6b
api-impl: add stubs, put Vibrator.java in meson.build (oops), sort sources with LC_ALL=C sort -h
2024-03-16 10:13:55 +01:00
Julian Winkler
c8e70d49be
implement View.getLocationOnScreen() properly
2024-03-15 19:51:02 +01:00
Julian Winkler
a67b973e67
MotionEvent: implement getRawX() / getRawY() properly
2024-03-15 18:57:49 +01:00
Julian Winkler
796742c0fc
implement android.graphics.Matrix and View.getMatrix()
...
This is needed for androidx CoordinatorLayout and will also be required
for VectorDrawables
2024-03-15 18:57:49 +01:00
Julian Winkler
f852c2bbc9
remove View.haveComplexMeasure as it is redundant with haveCustomMeasure
...
Makes haveCustomMeasure true by default. And disable it for widgets
which previously set haveComplexMeasure
2024-03-15 18:57:49 +01:00
Julian Winkler
c0bc875c11
ScrollView: implement custom onMeasure()
2024-03-15 18:57:49 +01:00
Mis012
9fbfe9dea1
api-impl: remove hacky overrides for android.support
...
These were originally needed because the official android.support classes
required APIs that we didn't support and it didn't seem worth the effort
to make them happy when the actual apps using these compat classes
were comparatively trivial.
We now support all the necessary APIs, so we can remove the overrides
and let the apps use their bundled android.support classes.
2024-03-14 21:31:48 +01:00
Mis012
b55bbd8a6f
add android/widget/AbsoluteLayout from AOSP
2024-03-14 12:50:49 +01:00
Mis012
a7e89b816b
graphics/drawable/AnimationDrawable: subclass Drawable instead of Object
2024-03-14 12:50:49 +01:00
Mis012
c0d3e679ac
ViewGroup: implement measureChildren
2024-03-14 12:50:49 +01:00
Mis012
8ad7359941
ViewGroup.java: fix code style
2024-03-14 12:50:49 +01:00
Julian Winkler
9509289ee5
implement SeekBar using GtkScale
2024-03-10 23:00:42 +01:00
Julian Winkler
aef5d5ad23
Html.fromHtml(): replace as well
2024-03-10 23:00:42 +01:00
Julian Winkler
d22d083eb8
implement CheckBox and RadioButton using GtkCheckButton
2024-03-10 17:49:11 +01:00
Julian Winkler
1d0ad8132d
regenerate R.java and Manifest.java to match framework-res.apk
2024-03-10 14:36:27 +00:00
Julian Winkler
005e2299bd
automatically enable UI_MODE_NIGHT when gtk-theme-name contains "dark"
...
gtk-theme-name is only checked once at start up
2024-03-10 12:05:33 +01:00
Mis012
4e3b180dd7
android/view/View: clean up retrieval of id
2024-03-07 15:48:53 +01:00
Mis012
7207587b2f
add some stubs, borrow ListActivity and SimpleAdapter from AOSP
2024-03-07 15:47:10 +01:00
Mis012
ecaf968da1
treat application/activity names in AndroidManifest.xml as dot-prefixed when they don't contain any dots
2024-03-07 15:44:21 +01:00
Mis012
6d587a19e5
misc stuff to make glmark2 run
2024-03-05 17:07:21 +01:00
Mis012
a9c72d58fd
api-impl: android/os/Process: handle self-kill
...
We don't currently implement sendSignal, however Unity uses killProcess to kill
its own process, which we can hadle with simple System.exit(0) and have Unity
games close cleanly
2024-03-01 15:38:46 +01:00
Mis012
60714ebf45
add PathInterpolator stub
2024-02-29 12:33:48 +01:00
Mis012
c430344bd7
TextView: implement more ways to obtain textColor, textSize; misc cleanup
...
also added a try/catch block to avoid regression
2024-02-28 01:49:23 +01:00
Julian Winkler
efa61afc71
implement View.OnLongClickListener as GtkGestureLongPress
2024-02-27 22:02:36 +01:00