Commit Graph

78 Commits

Author SHA1 Message Date
Mis012
fefd2f108b ImageView: handle setScaleType where it maps trivially to Gtk 2024-04-10 23:48:11 +02:00
Julian Winkler
ae58d2b319 implement TextView.setCompoundDrawables()
This adds an additional GtkBox for every TextView
2024-04-09 18:19:18 +02:00
Mis012
e94a78fd14 ImageView: remove 'broken image icon' hack
most drawables should work now, and we need to support empty drawables
2024-04-03 01:55:03 +02:00
Julian Winkler
e477b56dec OnTouchListener: attach event controllers to WrapperWidget
otherwise, the touch event positions would depend on the scroll offset.
This fixes the glitchy vertical scrolling in ViewPager
2024-03-25 19:50:29 +01:00
Julian Winkler
35f26faa90 ImageButton: implement setDrawable() 2024-03-24 22:13:28 +01:00
Julian Winkler
494605932c implement more APIs 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
Julian Winkler
14217e8724 simple implementation of PopupMenu using GtkPopoverMenu 2024-03-17 22:39:13 +01:00
Julian Winkler
276b5ca7ef add more APIs needed for NewPipe 2024-03-17 20:02:50 +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
Julian Winkler
9509289ee5 implement SeekBar using GtkScale 2024-03-10 23:00:42 +01:00
Julian Winkler
d22d083eb8 implement CheckBox and RadioButton using GtkCheckButton 2024-03-10 17:49:11 +01:00
Mis012
c430344bd7 TextView: implement more ways to obtain textColor, textSize; misc cleanup
also added a try/catch block to avoid regression
2024-02-28 01:49:23 +01:00
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