Mis012
340fae107e
PopupWindow: implement more stuff, mainly offset
2025-03-26 20:18:16 +01:00
Mis012
4d12ad5c90
View: add basic implemntation of dispatchTouchEvent
...
Some Views block all events going to their descendants, and
then synthesize new events themselves. Gtk doesn't allow event
synthesization, which makes this quite annoying to deal with.
This initial implementation definiely has some problems,
for example it seems to cause infinite loops in some cases,
however it surprisingly works well enough.
2025-03-26 20:06:15 +01:00
Mis012
b19f2c35d2
api-impl-jni: SoundPool: fix formatting
2025-03-26 19:44:06 +01:00
Mis012
6d73fd7a99
XmlBlock: implement nativeGetAttributeName, use getPooledString instead of mStrings.get
2025-03-26 19:42:49 +01:00
Julian Winkler
15a6432d01
Revert "View: call onLayout() only on size change or on request"
...
This reverts commit b33a470c7b .
This commit was added as fix for layout recreation loops, but this is no
longer a problem, since ViewGroup.detachViewFromParent() has been
improved. The first fix is no longer needed and it seems to cause some
minor regressions, so we revert it.
2025-03-25 23:34:56 +01:00
Julian Winkler
4a4b4a4722
api-impl: misc stubs and fixes for several apps including F-Droid and AuroraStore
2025-03-25 23:34:56 +01:00
Julian Winkler
506de2b807
fix Layout.getLineStart() / Layout.getLineEnd()
...
These methods are supposed to return the String index and not
coordinates as accidently assumed when originally implementing it.
2025-03-25 23:17:09 +01:00
Mis012
32a7846a9d
AssetManager: fix uses of long instead of jlong
2025-03-24 16:59:09 +01:00
Mis012
2e9099baed
AssetManager: use locking
2025-03-07 18:41:21 +01:00
Mis012
74f2e9f308
MediaPlayer: implement using GtkMediaStream
2025-03-04 18:10:32 +01:00
Julian Winkler
a9f377f754
Button: fix setText() overriding the compoundDrawable
2025-03-02 00:05:59 +01:00
Julian Winkler
b33a470c7b
View: call onLayout() only on size change or on request
...
GTK always wants us to call gtk_widget_allocate() on all children, so we
need to do it manually when not calling onLayout().
2025-03-02 00:05:59 +01:00
Mis012
f0fcd47c80
replace our implementation of applyStyle with a native function that calls into libandroidfw
...
also change a few things to work with latest libandroidfw, since we are now using
it's helper functions that need to agree on e.g STYLE_NUM_ENTRIES with the Java
code.
2025-02-27 22:44:55 +01:00
Mis012
d97c3ee048
AssetManager: update to use v2 of libandroidfw C api
2025-02-27 22:44:55 +01:00
Julian Winkler
19e91df8af
WrapperWidget: make sure onTouch listeners are called before onClick listeners
2025-02-24 21:49:46 +01:00
Julian Winkler
77fec3c9e6
Button: implement setCompoundDrawables()
2025-02-24 21:49:46 +01:00
Julian Winkler
161904c8a8
View: implement onKeyDown() callback
2025-02-24 21:49:46 +01:00
Julian Winkler
24f839f556
make android.text.Layout.draw() compatible custom Canvas classes
...
TextAndroidCanvas is a proxy canvas class which prevents us from
accessing the GtkSnapshot of the real canvas. To solve this problem, we
call Canvas.drawText() for each line.
2025-02-24 21:49:46 +01:00
Julian Winkler
4bb5dfd86e
Paint: implement textAlign and text bounds
2025-02-24 21:45:36 +01:00
Julian Winkler
f20bb6cb1c
ContentResolver: implement query() support for file:// URIs
...
This is needed for the subscription import feature in NewPipe.
2025-02-22 23:49:43 +01:00
Mis012
899805f23f
Canvas: add drawLines
2025-02-15 21:42:21 +01:00
Julian Winkler
4a7db70fbc
implement PopupWindow.update()
2025-02-15 10:42:30 +01:00
Julian Winkler
123de5f819
Dialog: some fixes for CTS
...
Most Dialog test still fail, because we don't handle KeyEvents
2025-02-13 07:01:17 +01:00
Julian Winkler
5375f4b5fd
implement android.text.Layout using PangoLayout
...
This is needed to have proper line wrapping in composeUI apps.
In the CTS, android.text.cts.StaticLayoutTest passes all checks now.
2025-02-13 07:01:17 +01:00
Julian Winkler
fb2cba8572
fix Matrix.getValues() being transposed
...
This makes more CTS tests pass
2025-02-13 06:56:31 +01:00