• Po Lu's avatar
    Implement face stipples on Android · b9c191d6
    Po Lu authored
    * .gitignore:
    
    * java/Makefile.in: Fix typos.
    
    * java/org/gnu/emacs/EmacsFillRectangle.java (perform): Call
    blitOpaqueStipple if filling an unobscured rectangle with an
    opaque stipple.
    
    * java/org/gnu/emacs/EmacsGC.java (EmacsGC) <tileObject>: New
    field.
    (markDirty): Synchronize the current stipple with tileObject.
    (prepareStipple, blitOpaqueStipple): New functions.
    
    * java/org/gnu/emacs/EmacsService.java (EmacsService)
    <resources>: New static field.
    (onCreate): Set it.
    
    * src/android.c (android_create_bitmap_from_data): Correct order
    of arguments to android_create_pixmap_from_bitmap_data.
    (HAS_BUILTIN_TRAP): Delete macro.
    (emacs_abort): Always induce backtraces by means of a NULL
    pointer deference.
    
    * src/dispextern.h (Emacs_GC, Emacs_Rectangle, GCForeground)
    (GCBackground, GCFillStyle, GCStipple, FillOpaqueStipple)
    [HAVE_ANDROID]: Define to their Android counterparts rather
    than simulating their existence.
    
    * src/epaths.in: Set bitmap path to /assets/bitmaps on Android.
    
    * src/image.c (image_bitmap_pixmap): Also enable when
    HAVE_ANDROID.
    
    * src/sfntfont-android.c (sfntfont_android_put_glyphs): Assert
    that this is never called to draw a stippled background.
    * src/xfaces.c (x_create_gc) [HAVE_ANDROID]: Redefine as
    wrapper around android_create_gc.
    (prepare_face_for_display) [HAVE_ANDROID]: Enable stipples.
    b9c191d6