]> git.eshelyaron.com Git - emacs.git/commit
Implement dots and dashes on Android
authorPo Lu <luangruo@yahoo.com>
Sun, 28 Apr 2024 08:58:58 +0000 (16:58 +0800)
committerEshel Yaron <me@eshelyaron.com>
Mon, 29 Apr 2024 15:05:42 +0000 (17:05 +0200)
commit886d506a6418ea39fc8b704b91671ff8edcced5a
treecbe020484a79f48d31a47cfbf9beb3c7e7e59da6
parent886f14ed9ff3548bf958800fe8a4509b0d9bc7c3
Implement dots and dashes on Android

* java/org/gnu/emacs/EmacsDrawLine.java (EmacsDrawLine)
(measureLine, polyDashPattern): New function.
(perform): Delegate to polyDashPattern if the line style is not
LineSolid.  Also simplify now that anti-aliasing need no longer
be taken into account.

* java/org/gnu/emacs/EmacsDrawRectangle.java (perform): Mention
omission in commentary.

* java/org/gnu/emacs/EmacsGC.java (EmacsGC): Disable
anti-aliasing in default paint object.
<line_style, line>: New fields.
(markDirty): Apply stroke width.

* src/android.c (android_init_emacs_gc_class): Initialize new
fields.
(android_create_gc, android_free_gc, android_change_gc)
(android_set_dashes, android_get_gc_values):

* src/androidgui.h (enum android_line_style)
(enum android_gc_value_mask, struct android_gc): Introduce line
style, width, dash offset and dash GC attributes.

* src/androidterm.c (android_draw_dash, android_fill_underline)
(android_draw_glyph_string): Port from X.

* src/xterm.c (x_draw_dash): Delete redundant code.

(cherry picked from commit e658a6938e3b7a8a7c0be8b74fbd885787c26df6)
java/org/gnu/emacs/EmacsDrawLine.java
java/org/gnu/emacs/EmacsDrawRectangle.java
java/org/gnu/emacs/EmacsGC.java
src/android.c
src/androidgui.h
src/androidterm.c
src/xterm.c