Commit Graph

184 Commits

Author SHA1 Message Date
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
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
Julian Winkler
005e2299bd automatically enable UI_MODE_NIGHT when gtk-theme-name contains "dark"
gtk-theme-name is only checked once at start up
2024-03-10 12:05:33 +01:00
Julian Winkler
efa61afc71 implement View.OnLongClickListener as GtkGestureLongPress 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
Mis012
da0971e88f Activity: implement Activity.recreate 2024-02-19 16:29:09 +01:00
Julian Winkler
5f3f8a5e6c ProgressBar: use GtkSpinner for indeterminate mode 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
b7f06e41c1 implement release() methods in MediaCodec and related classes 2024-02-18 10:08:43 +01:00
Julian Winkler
5dfadc9c59 Add some more methods needed by NewPipe. Mostly stubs 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
bc8443e542 Dialog: add dismiss(), hide() and onCreate() methods 2024-02-16 15:28:04 +01:00
Mis012
056b911637 handle 'SEND' intent by copying to clipboard, make Activity subclass ContextWrapper, code style fixes 2024-02-10 20:58:38 +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
c1d8956309 AssetManager: use libandroidfw for everything except XML parsing
binary XML parsing still relies on ARSClib for now
2024-02-06 16:41:49 +01:00
Julian Winkler
8d4d0021b3 use libandroidfw also for themes 2024-02-06 16:41:49 +01:00
Julian Winkler
3284518418 AssetManager: use libandroidfw instead of ARSClib for resources.arsc parsing
This reduces startup time and RAM usage. Not yet feature complete with
the ARSClib based implementation, but Gravity Defied runs already
2024-02-06 16:41:48 +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
790255f9ca ImageView: allow non bitmap Drawables
Also pass size of child paintable in DrawableContainer
2023-12-30 23:38:56 +01:00
Julian Winkler
ca3c17d773 implement DrawableContainer and copy StateListDrawable from AOSP 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
1b03fa6e1a merge View and ViewGroup constructor
Introduce empy JavaWidget to replace confusing usage of GtkBox and GtkDrawingArea.
gtk_widget_set_name() is called with the Java class name
2023-12-29 12:16:10 +01:00