Commit Graph

947 Commits

Author SHA1 Message Date
Julian Winkler
36d7a1cc44 support layout margins
This makes the menu in Gravity Defied not get behind the keyboard.
Also makes the TabLayout in NewPipe not get behing the titlebar.
2023-11-12 12:16:23 +01:00
Julian Winkler
72a8b3a047 add more stubs 2023-11-12 12:16:23 +01:00
Julian Winkler
9f74ab811e LayoutInflater: support android:theme attribute 2023-11-08 22:44:39 +01:00
Julian Winkler
d025fd3ce3 FrameLayout: replace with AOSPs implementation
There are many Widgets extending FrameLayout and adding custom behaviour
on top. For example NavigationView. This didn't realy work with our
custom implementation
2023-11-08 22:44:39 +01:00
Julian Winkler
6ef1e523cc View: relayout on visibility changes 2023-11-08 22:44:39 +01:00
Julian Winkler
ac5a547360 AndroidLayout: provide default width and height
setLayoutParams()  will never be called on the contentView of the
Window. So make sure we have default values
2023-11-08 22:44:39 +01:00
Julian Winkler
603371ec9e ARCSlib: use defaultValue for non existing XML attributes 2023-11-08 22:44:39 +01:00
Julian Winkler
bcfb384ba4 implement EditText.setOnEditorActionListener()
This makes the NewPipe search work again
2023-11-08 22:44:39 +01:00
Julian Winkler
1aa1ee64c1 Context: handle getTargetSdkVersion() returning null 2023-11-04 23:32:29 +01:00
Julian Winkler
1cef28f086 Window: use content_view as DecorView if available 2023-11-04 23:32:29 +01:00
Julian Winkler
7bb5a1e33a computeScroll: move the allocation instead of only the snapshot 2023-11-04 23:32:29 +01:00
Julian Winkler
585d934483 View: use gdk_event_get_modifier_state() for onTouch handling
previous implementation did not update num_clicks, when the
mouse was released outside the widget
2023-11-04 23:31:40 +01:00
Julian Winkler
29e88b08d8 AndroidLayout: ignore exceptions during measure
This fixes a crash with the Flower Finder test apk, where
ActionBarContextView doesn't allow MEASURE_SPEC_UNSPECIFIED
2023-11-04 08:49:58 +01:00
Julian Winkler
5813f9741d AndroidLayout: implement get_request_mode
Also add stubs in Matrix and Paint class
2023-11-04 08:49:58 +01:00
Julian Winkler
385f6dcf0b android_layout_measure: reuse old MeasureSpec for missing dimension
This should fix the SurfaceView in NewPipe not resizing automatically
2023-11-04 08:49:58 +01:00
Mis012
837ad31c3f api-impl-jni/media/android_media_MediaCodec.c: resize the viewport in sync with the dummy widget 2023-11-03 23:21:43 +01:00
Julian Winkler
4bce3544dd WrapperWidget: handle View.computeScroll()
Currently the scrolling is purely visual.
2023-11-02 23:30:21 +01:00
Julian Winkler
0a8b8a3874 use AndroidLayout class also in View implementation
drop the onMeasure hack from WrapperWidget
2023-11-02 08:20:19 +01:00
Julian Winkler
3c03223085 android_layout_measure(): refactor to respect LayoutParams
This is needed when a Java widget gets measured from GTK
2023-11-02 08:20:13 +01:00
Julian Winkler
8b6de0e83a move AndroidLayout class to own file 2023-11-01 17:55:02 +01:00
Julian Winkler
3de842b1d8 enable onTouchEvent for ViewGroups and add some stubs 2023-11-01 17:54:59 +01:00
Mis012
065fd96308 api-impl-jni: make invalidate() work inside the draw callback
this lets us remove the tick callback, and only call onDraw
when it's actually necessary
2023-10-31 23:14:52 +01:00
Mis012
bcd588446d api-impl-jni/views/android_view_View.c: handle replacing existing onclick/ontouch listener 2023-10-31 16:00:35 +01:00
Mis012
0fc90e39c7 api-impl-jni/views/android_view_ViewGroup.c: set GTK_OVERFLOW_HIDDEN by default 2023-10-31 13:39:39 +01:00
Mis012
b714dad281 api-impl/android/view/View: apply background from attrs 2023-10-30 20:45:08 +01:00