Commit Graph

191 Commits

Author SHA1 Message Date
Mis012
74f2e9f308 MediaPlayer: implement using GtkMediaStream 2025-03-04 18:10:32 +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
77fec3c9e6 Button: implement setCompoundDrawables() 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
c725bb32df copy AutoCompleteTextView from AOSP
copied from main branch (frameworks/base commit 72ea9148bc619515a649cec9029136e42b342d9b)
2025-02-13 06:56:26 +01:00
Julian Winkler
652715ee00 Canvas: add more Bitmap drawing methods 2025-02-10 21:55:14 +01:00
Julian Winkler
f69cff7113 implement Bitmap.compress() 2025-02-10 21:55:14 +01:00
Mis012
465b3ebbfe View: support multitouch properly
seems to work, but there might still be some edge cases
2025-01-15 00:06:06 +01:00
Julian Winkler
554b4d346a TextView: store text in the Java object
Some apps expect getText() to return a Spannable instead of a String.
2025-01-12 14:37:04 +01:00
Julian Winkler
785c24af62 implement View.setKeepScreenOn() 2025-01-11 23:23:53 +01:00
Julian Winkler
f2a32dae61 update android_content_res_AssetManager.h 2025-01-11 23:23:53 +01:00
Mis012
279c95becb borrow relevant parts of AOSP commit dbee9bb342cdfaa5155b1918f90262c05e2464cb
Our SVG-based VectorDrawable implementation still relies on `getDefaultColor`
but exceptions are no longer thrown when parsing VectorDrawable xml files
which use gradients as colors.
2025-01-02 22:25:13 +01:00
Mis012
7d59407138 AssetManager: implement resolveAttrs 2025-01-02 22:18:45 +01:00
Pierre-Hugues Husson
c81442321e api-impl: stubs and fixes for latest WhatsApp version 2025-01-01 11:33:16 +01:00
Julian Winkler
bf923cfcfa Bitmap: create Texture as GdkMemoryTexture if nothing has to be rendered
This improves OsmAnd V1 renderer performance.
2024-12-22 23:40:11 +01:00
Julian Winkler
260821d68c Bitmap: implement pixel buffer access
For GPU textures, the GdkTextureDownloader will take care of format
conversions, so the application never sees the actual format.

If the application calls AndroidBitmap_unlockPixels(), the texture is
converted into a GdkMemoryTexture and can be accessed zero copy.
2024-12-22 23:40:11 +01:00
Julian Winkler
7695aadf91 implement Paint as combination of GDK, GSK and Pango attributes 2024-12-22 23:40:11 +01:00
Julian Winkler
ba302d87ec add back graphics APIs for the previously working applications 2024-12-22 12:30:29 +01:00