Commit Graph

88 Commits

Author SHA1 Message Date
Julian Winkler
5f3f8a5e6c ProgressBar: use GtkSpinner for indeterminate mode 2024-02-18 10:08:44 +01:00
Julian Winkler
3486d59e81 ListView: observe dataset changes 2024-02-18 10:08:44 +01:00
Julian Winkler
9c684ee906 implement PopupWindow using GtkPopover 2024-02-18 10:08:43 +01:00
Julian Winkler
b9b28619dd AdapterView: implement setAdapter / getAdapter() properly 2024-02-18 10:08:43 +01:00
Julian Winkler
2d6694d695 implement CompoundButton using GtkSwitch 2024-02-16 20:46:55 +01:00
Julian Winkler
3aed86b83a implement ListView using GtkListView
There is not much difference between GTKs ListView and Androids
ListView. So, we use GTKs implementation instead of copying from AOSP
2024-02-16 15:28:04 +01:00
Julian Winkler
e2ff23080c TextView: enable tabular numbers by default
Some apps like Gravity Defied expect the default font to have monospaced
numbers
2024-02-10 10:28:48 +01:00
Julian Winkler
88254d822f replace LinearLayout with AOSPs implementation
Also update QuickHelp.md, as LinearLayout was the last custom
implemented ViewGroup
2024-02-10 10:28:48 +01:00
Julian Winkler
6eeb6b0232 move performClick implementation to WrapperWidget 2024-02-10 10:28:48 +01:00
Mis012
b40a76fcfb api-impl-jni: fix CheckJNI error for View.onClick 2024-01-29 00:37:32 +01:00
Julian Winkler
bf3f595a8c LinearLayout: set GtkBox to homogeneous if all child weights are equal
Real weighted allocation is not supported by GtkBox
2024-01-01 12:11:31 +01:00
Julian Winkler
c5b315cb38 LinearLayout: remove 1px spacing 2024-01-01 12:10:45 +01:00
Julian Winkler
790255f9ca ImageView: allow non bitmap Drawables
Also pass size of child paintable in DrawableContainer
2023-12-30 23:38:56 +01:00
Julian Winkler
8c7dbf6ceb start implementing Drawable using underlying GdkPaintable 2023-12-30 23:38:48 +01:00
Julian Winkler
0614e6c245 add some stubs needed since we now handle onMeasure() for more Views 2023-12-29 11:40:52 +01:00
Julian Winkler
b0fdf53f9b implement android.widget.ProgressBar using GtkProgressBar 2023-11-12 12:16:23 +01:00
Julian Winkler
c0804c3329 WrapperWidget: overwrite measured size if layout size is fixed 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
7bb5a1e33a computeScroll: move the allocation instead of only the snapshot 2023-11-04 23:32:29 +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
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
Julian Winkler
e23516ee43 fix invalid cast warning when calling setTextColor() on EditText
the implementation works fine for all kind of GtkWidgets no need to cast
to GtkLabel class
2023-10-29 15:28:06 +01:00
Julian Winkler
a2381f4721 fix compiler warnings in WrapperWidget and View 2023-10-29 15:23:11 +01:00