Commit Graph

94 Commits

Author SHA1 Message Date
Julian Winkler
757d689689 unify View construction and measurement
No longer allow constructing Views without Context.
Lets have only one onMeasure() method to unify behaviour
2023-12-29 11:40:52 +01:00
Julian Winkler
878b957380 LinearLayout: remove default gravity 2023-11-12 12:16:23 +01:00
Julian Winkler
b0fdf53f9b implement android.widget.ProgressBar using GtkProgressBar 2023-11-12 12:16:23 +01:00
Julian Winkler
4bf4887244 copy OverScroller.java from AOSP 2023-11-12 12:16:23 +01:00
Julian Winkler
72a8b3a047 add more stubs 2023-11-12 12:16:23 +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
bcfb384ba4 implement EditText.setOnEditorActionListener()
This makes the NewPipe search work again
2023-11-08 22:44:39 +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
3de842b1d8 enable onTouchEvent for ViewGroups and add some stubs 2023-11-01 17:54:59 +01:00
Mis012
58fa4b5590 api-impl/android/widget/Toolbar: add a stub widget 2023-10-16 20:19:05 +02:00
Julian Winkler
4130e252cc fixes to make Picasso Image Loader work
This library is used by newer NewPipe versions
2023-10-14 18:29:33 +02:00
Julian Winkler
520d153c55 call View.onAttachedToWindow() method 2023-10-14 18:29:33 +02:00
Julian Winkler
b88707592a add more stubs to make exoplayer not crash 2023-10-14 18:29:33 +02:00
Julian Winkler
c830abc5f3 add more API stubs for NewPipe 2023-10-14 18:29:33 +02:00
Julian Winkler
f5fc993484 add APIs needed for non legacy NewPipe version 2023-10-14 18:29:33 +02:00
Julian Winkler
399cf87254 fix some NullPointerExceptions with Flower Finder test apk 2023-10-14 10:01:01 +00:00
Julian Winkler
37d9b13470 View.onMeasure: handle MEASURE_SPEC_AT_MOST properly
We decide between simple widgets which handles MEASURE_SPEC_AT_MOST the same way as
MEASURE_SPEC_EXACTLY, and complex widgets which handles MEASURE_SPEC_AT_MOST by measuring the content
2023-10-14 10:01:01 +00:00
Mis012
897a1e68a4 TextView: implement setTextColor
also uncomment Resources.getCachedColorStateList
2023-09-12 13:37:41 +02:00
Julian Winkler
255eed3e59 setLayoutParams(): better match Androids behaviour
View.setGravity() specifies gravity of children, not of the view itself
LayoutParams.weight > 0 should cause expansion of widget
2023-09-08 20:10:45 +02:00
Julian Winkler
a27cb27638 ScrollView: use GtkScrolledWindow for implementation 2023-09-08 18:31:02 +02:00
Julian Winkler
3b6e4dc217 Always use addView() and removeView() implementation from ViewGroup
This makes sure, that the index argument is handled correctly everywhere
2023-09-01 16:05:26 +02:00
Julian Winkler
a35879c633 RelativeLayout: copy AOSP implementation
As we already support custom ViewGroups, there is no need to reimplement
this highly complex class.
2023-09-01 16:05:26 +02:00
Julian Winkler
9ad77d5b62 ViewGroup: make sure all child views have valid LayoutParams 2023-09-01 16:05:26 +02:00
Julian Winkler
30b990f60a EditText: implement addTextChangedListener() 2023-09-01 16:05:26 +02:00
Julian Winkler
97f8c2ed0f Add some missing APIs.
android.widget.Filter and android.webkit.MimeTypeMap are copied from
AOSP. Other new classes are only stub implementations.
2023-09-01 16:05:26 +02:00