Commit Graph

443 Commits

Author SHA1 Message Date
Markuss Broks
24e8743cc1 Context: add the input service tag string 2024-04-01 19:41:06 +00:00
Markuss Broks
ad4de8edc4 ActivityManager: add a stub for MemoryInfo 2024-04-01 19:41:06 +00:00
Markuss Broks
4b2c1835f7 AudioManager: add a stub for isWiredHeadsetOn 2024-04-01 19:41:06 +00:00
Markuss Broks
46140d44e3 Window: stub setFormat() 2024-04-01 19:41:06 +00:00
Julian Winkler
654d551377 View.setTranslationY(): queue allocate when called on CoordinatorLayout
androidx adjusts the translation a little bit and immediately
reverts it to trigger a layout pass on the CoordinatorLayout.

Calling gtk_widget_queue_allocate here makes CoordinatorLayout behave
correctly, but it causes strange issues with other Views. Therefore, it is
done only for CoordinatorLayouts for now.
2024-03-28 20:50:05 +01:00
Julian Winkler
9b9e046d68 implement View.getLocationInWindow() and MotionEvent.offsetLocation()
This is needed for NestedScrollViews to detect and correct parent scroll offset
2024-03-28 20:50:05 +01:00
Julian Winkler
8f770d38d1 implement ViewGroup.removeViewInLayout() 2024-03-28 20:50:05 +01:00
Julian Winkler
2879e03120 hack: make GestureOverlayView measure 0 x 0
This restores the behavior before the "remove View.haveComplexMeasure"
commit. This hack is still needed as GTK doesn't allow unhandled events
to propagate to a sibling in the view hierarchy.

This fixes input events in Flappy Bird
2024-03-25 19:43:35 +01:00
Julian Winkler
c9ac8b162a increase java source level to 1.8
Java 8 is supported in art_standalone for quite some time now and recent
openJDK releases dropped Java 7 support
2024-03-24 23:41:06 +01:00
Julian Winkler
8eb0c0a3c1 implement ColorFilter in GskCanvas
This is needed to make icons follow night mode setting
2024-03-24 22:13:28 +01:00
Julian Winkler
ad266c7821 add support for custom Java Drawables
This is made possible, by adding a second Canvas implementation which
can be used to render directly to GdkSnapshot objects

For now the only implemented method is drawBitmap(), this is already
enough to make VectorDrawableCompat functional
2024-03-24 22:13:28 +01:00
Julian Winkler
0b78cbcc55 some graphics API stubs 2024-03-24 22:13:28 +01:00
Julian Winkler
3d9468aa9f implement android.graphics.Path using skia 2024-03-24 22:13:28 +01:00
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