Commit Graph

50 Commits

Author SHA1 Message Date
Julian Winkler
c492e1f03f add Java APIs needed for WhatsApp MainActivity and ConversationActivity 2024-10-03 15:57:44 +02:00
Julian Winkler
e3c0931714 prevent reference cycles between Java and native objects 2024-08-02 17:02:53 +02:00
Julian Winkler
3c5a21357d multiple additions and fixes for the Java APIs
Stuff needed for WhatsApp support
2024-08-01 19:57:12 +00:00
Julian Winkler
e8eabb2027 GskCanvas.drawBitmap(): reuse GdkTexture objects 2024-05-27 16:37:49 +00:00
Julian Winkler
6f02565920 GskCanavas: draw default content when custom View calls super.onDraw() 2024-05-27 16:37:49 +00:00
Julian Winkler
d941fd5a81 implement more GskCanvas methods 2024-05-27 16:37:49 +00:00
Julian Winkler
3d9eb9611f GskCanvas: implement drawPath, rotate, translate, save, restore
This is enough to make DrawerArrowDrawable functional.

drawPath() only draws line segments for now.
2024-04-09 18:19:18 +02:00
Julian Winkler
74bedcc93c implement Drawable.invalidateSelf() 2024-04-09 18:19:18 +02:00
Julian Winkler
ae58d2b319 implement TextView.setCompoundDrawables()
This adds an additional GtkBox for every TextView
2024-04-09 18:19:18 +02:00
Julian Winkler
849701c5c4 Drawable: call getIntrinsic{Width/Height} 2024-04-09 18:19:18 +02:00
Julian Winkler
2f4cd3917f implement some APIs needed for OctoDroid 2024-04-09 18:19:13 +02:00
Mis012
b229d83ad8 GskCanvas: implement drawRect 2024-04-07 23:23:30 +02:00
Mis012
df0b5bc1ca graphics: Path: implement (r)quadTo 2024-03-24 22:54:21 +01:00
Julian Winkler
8eb0c0a3c1 implement ColorFilter in GskCanvas
This is needed to make icons follow night mode setting
2024-03-24 22:13:28 +01:00
Julian Winkler
ad266c7821 add support for custom Java Drawables
This is made possible, by adding a second Canvas implementation which
can be used to render directly to GdkSnapshot objects

For now the only implemented method is drawBitmap(), this is already
enough to make VectorDrawableCompat functional
2024-03-24 22:13:28 +01:00
Julian Winkler
3d9468aa9f implement android.graphics.Path using skia 2024-03-24 22:13:28 +01:00
Julian Winkler
93b88ad0c3 implement more android.graphics.Matrix methods 2024-03-24 22:13:28 +01:00
Mis012
2e864adc0f implement drawing into Bitmaps with Canvas, make BitmapDrawable use use paintable, misc Bitmap improvements 2024-03-16 15:00:22 +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
790255f9ca ImageView: allow non bitmap Drawables
Also pass size of child paintable in DrawableContainer
2023-12-30 23:38:56 +01:00
Julian Winkler
176405ed45 NinePatchPaintable: new GdkPaintable class to render .9.png files 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
Mis012
24353378be api-impl: implement Canvas text drawing as used by Gravity Defied
implements android.graphics.Typeface (always uses default
typeface for now), one version of Canvas.drawText, one version
of Paint.measureText, and Paint.ascend
2023-09-12 19:30:29 +02:00
Julian Winkler
ceb5df9d39 implement BitmapFactory.decodeStream() using gdk_pixbuf_new_from_stream
The java InputStream is wrapped into a custom GInputStream
implementation
2023-09-01 16:05:26 +02:00