Commit Graph

126 Commits

Author SHA1 Message Date
Mis012
2802aaa28d api-impl: add stubs / simple stuff for OsmAnd
without native libs present, launches and renders white square
in map view; with native libs present, segfaults in bundled skia
2024-04-13 15:22:38 +02:00
Julian Winkler
2f4cd3917f implement some APIs needed for OctoDroid 2024-04-09 18:19:13 +02:00
Mis012
1e64babfd4 borrow AnimationDrawable from AOSP 2024-04-03 01:55:03 +02: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
494605932c implement more APIs 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
6839f8b651 View: requestLayout: post with Looper to avoid stack exhaustion 2024-03-21 21:05:20 +01:00
Julian Winkler
276b5ca7ef add more APIs needed for NewPipe 2024-03-17 20:02:50 +01:00
Julian Winkler
c8e70d49be implement View.getLocationOnScreen() properly 2024-03-15 19:51:02 +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
4e3b180dd7 android/view/View: clean up retrieval of id 2024-03-07 15:48:53 +01:00
Julian Winkler
efa61afc71 implement View.OnLongClickListener as GtkGestureLongPress 2024-02-27 22:02:36 +01:00
Julian Winkler
dd839e5a04 View.isNestedScrollingEnabled() default to false
RecyclerView overrides this method to return true
2024-02-27 22:02:36 +01:00
Julian Winkler
ddc36f5ccc postOnAnimation: add minimum delay of 1/60 s
This fixes smooth animations like kinetic scrolling
2024-02-27 22:02:36 +01:00
Julian Winkler
8dafa41ea9 implement View.onInterceptTouchEvent() callback
This is needed to support nested scrolling

A second GtkEventControllerLegacy gets registerd with GTK_PHASE_CAPTURE
2024-02-25 18:18:45 +01:00
Julian Winkler
5dfadc9c59 Add some more methods needed by NewPipe. Mostly stubs 2024-02-18 10:08:43 +01:00
Julian Winkler
d2725a73c9 View: parse minWidth and minHeight attributes from XML 2024-02-16 15:28:04 +01:00
Julian Winkler
d253bfd24f findViewById(): only search among child views
also set default content view in Window
2024-02-16 15:28:04 +01:00
Julian Winkler
d2f28a5b21 add some methods needed for androidx dialogs 2024-02-16 15:28:04 +01:00
Julian Winkler
7b952c4336 View: set visibility attribute from XML 2024-02-10 10:28:48 +01:00
Julian Winkler
aa56f3fb81 Add some methods needed for androidx preferences 2024-02-10 10:28:48 +01:00
Julian Winkler
810886ca59 View: set background as Drawable 2024-02-06 16:41:49 +01:00