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
0dfcb9324f
drop GTK < 4.14 ifdefs
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
Julian Winkler
f3bc468a1c
drop Skia dependency
...
Everything is implementede using GTK Scene Graph now. Skia is no longer
needed.
2024-12-22 12:30:29 +01:00
Julian Winkler
cd2c69cf73
reimplement Bitmap and Path using GdkTexture and GskPath
...
This allows us to use GskCanvas for Bitmap rendering
This increases the required GTK version to >= 4.14.
2024-12-22 12:30:29 +01:00
Julian Winkler
c076c1e545
implement DateUtils.formatDateTime()
2024-12-22 12:30:29 +01:00
Julian Winkler
2f122cbad7
SurfaceView.unlockCanvasAndPost(): create GSK renderer without surface
...
This is needed to allow using the renderer on non UI threads.
2024-12-22 10:24:55 +01:00
Julian Winkler
ae58d29336
BitmapDrawable: support intrinsic sizes
2024-12-22 10:24:55 +01:00
Julian Winkler
e8a08f3d28
implement HtcAlertDialog for Teeter
2024-12-22 10:24:55 +01:00
Julian Winkler
bf610d3504
implement Activity.isInMultiWindowMode()
2024-12-22 10:24:54 +01:00
Julian Winkler
f9db8faebd
ImageButton: set the defStyleAttr
2024-12-22 10:24:54 +01:00
Julian Winkler
2e11934bcf
Animator: add delay before calling onAnimationEnd()
...
This fixes a crash in NewPipe's Download Activity
2024-12-20 08:12:48 +01:00
Mis012
078006f7fb
LayoutInflater: prettyprint debug messages
2024-12-20 00:14:30 +01:00
Mis012
060ea72f94
AssetManager: use AndroidManifest.xml to identify apks
...
resources.arsc may be missing in rare cases
2024-12-20 00:12:01 +01:00
Mis012
58745f23ea
api-impl: misc stubs, additions and fixes
2024-12-20 00:11:06 +01:00
Mis012
df5390db5e
main-executable: don't crash on NULL app_icon_path
2024-12-20 00:02:18 +01:00
Mis012
4acd99f1e2
GridView: import from AOSP
2024-12-20 00:00:19 +01:00
Julian Winkler
42fad0cfa6
WindowManagerImpl: set view.parent
2024-12-17 22:41:51 +01:00
Julian Winkler
167d3856e9
HACK: prevent window height of 0
...
For some reason some apps like LibreSudoku try to create Dialog and
Popup windows with height = 0. Prevent this on the window side until the
measurement error is fixed.
2024-12-17 22:41:51 +01:00
Julian Winkler
47fc749018
implement WindowManager for composeUI popups
...
currently everything is created as GtkPopover which is not ideal for
toplevel windows, so print a warning in that case.
2024-12-17 22:38:09 +01:00
Julian Winkler
c8ed103516
implement Canvas.scale() for skia and GtkSnapshot
2024-12-16 17:54:15 +01:00
Julian Winkler
597c73f334
GskCanvas: implement RoundedRect filling
2024-12-16 17:54:15 +01:00
Julian Winkler
0e078894ce
make K-9 Mail launch
2024-12-16 17:54:15 +01:00