Julian Winkler
|
a67b973e67
|
MotionEvent: implement getRawX() / getRawY() properly
|
2024-03-15 18:57:49 +01:00 |
|
Julian Winkler
|
796742c0fc
|
implement android.graphics.Matrix and View.getMatrix()
This is needed for androidx CoordinatorLayout and will also be required
for VectorDrawables
|
2024-03-15 18:57:49 +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
|
75e42e6bff
|
onInterceptTouchEvent: don't self propagate cancel
This is needed, to make Gravity Defied keyboard work again
|
2024-03-12 17:56:17 +01:00 |
|
Julian Winkler
|
1a97841579
|
onInterceptTouchEvent: propagate ACTION_CANCEL to child widgets
|
2024-02-27 22:02:36 +01:00 |
|
Julian Winkler
|
efa61afc71
|
implement View.OnLongClickListener as GtkGestureLongPress
|
2024-02-27 22:02:36 +01:00 |
|
Julian Winkler
|
bcf252d3a6
|
implement MotionView.eventTime and VelocityTracker
This is needed to make androidx ViewPager work with touch input
|
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
|
72d6ad9914
|
Drawable: stub 'ripple' as transparent ColorDrawable, fix view.setBackgroundColor for buttons
|
2024-02-18 00:30:36 +01:00 |
|
Julian Winkler
|
50ba9b952a
|
make invisible widgets insensitive
Otherwise they would still intercept event handling
|
2024-02-10 10:28:48 +01:00 |
|
Julian Winkler
|
182c7cfb87
|
refactor View.native_measure()
It now respects gtk_widget_get_request_mode() when not specified
otherwise
|
2024-02-10 10:28:48 +01:00 |
|
Julian Winkler
|
eca365c60f
|
AndroidLayout: set minimum sizes correctly
This is needed for GtkScrolledWindow, which we still use for
implementing ScrollView
|
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
|
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 |
|
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
|
bff62a6e77
|
View: implement visibility and alpha properly
|
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
|
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
|
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
|
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 |
|