2023-07-10 Po Lu <luangruo@yahoo.com>
- Update Android port
* java/org/gnu/emacs/EmacsService.java (browseUrl): New argument
SEND. Choose from a list of applications that want to share the
URL if true.
+
* lisp/net/browse-url.el (browse-url-android-share): New user
option.
(browse-url-default-android-browser): Respect said user option.
- * src/android.c (android_init_emacs_service)
- (android_browse_url): Expose new option.
+
+ * src/android.c (android_init_emacs_service, android_browse_url):
+ Expose new option.
+
* src/android.h: Update prototypes.
- * src/androidselect.c (Fandroid_browse_url): Likewise.
- ; Update from Gnulib
- * lib/vasnprintf.c (VASNPRINTF):
- * m4/printf.m4 (gl_SWPRINTF_WORKS):
- (gl_SWPRINTF_DIRECTIVE_LA):
- * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE):
+ * src/androidselect.c (Fandroid_browse_url): Likewise.
- Merge remote-tracking branch 'origin/master' into feature/android
+ * lib/vasnprintf.c:
+ * m4/printf.m4:
+ * m4/vasnprintf.m4: Update from Gnulib.
2023-07-09 Po Lu <luangruo@yahoo.com>
- Update Android port
* java/org/gnu/emacs/EmacsWindow.java (eventModifiers)
(motionEventModifiers): New functions.
(onKeyDown, onKeyUp, onFocusChanged, onSomeKindOfMotionEvent):
Don't record the previous modifier mask; instead, always use the
modifier state specified in the event.
+
* src/androidterm.c (handle_one_android_event): Don't dispatch
button release events when a popup is active.
- Update Android port
- * java/org/gnu/emacs/EmacsService.java (onStartCommand): Fix
- typo in notification message.
- * java/org/gnu/emacs/EmacsWindow.java (onFocusChanged): Reset
- the recorded modifier state upon a change to the window focus.
+ * java/org/gnu/emacs/EmacsService.java (onStartCommand): Fix typo
+ in notification message.
+ * java/org/gnu/emacs/EmacsWindow.java (onFocusChanged): Reset the
+ recorded modifier state upon a change to the window focus.
* java/org/gnu/emacs/EmacsService.java (onCreate): Fix typo.
- Update Android port
- * java/org/gnu/emacs/EmacsDrawPoint.java (perform): Don't fill
- an extra pixel.
+ * java/org/gnu/emacs/EmacsDrawPoint.java (perform): Don't fill an
+ extra pixel.
* java/org/gnu/emacs/EmacsService.java (onCreate): Make sure
scaledDensity is always at least 160 dpi.
- Merge remote-tracking branch 'origin/master' into feature/android
-
2023-07-08 Po Lu <luangruo@yahoo.com>
- Fix EmacsDrawLine again
* java/org/gnu/emacs/EmacsDrawLine.java (perform): Symmetrically
adjust coordinates to cover the last pixel. Then, fill the left
most pixel of the line.
- Update Android port
* java/org/gnu/emacs/EmacsService.java (DEBUG_IC)
(DEBUG_THREADS): Improve commentary.
- * src/androidterm.c (handle_one_android_event): Signal
- completion of IME events that have lost their frames.
+
+ * src/androidterm.c (handle_one_android_event): Signal completion
+ of IME events that have lost their frames.
(requestCursorUpdates): Don't set an edit counter as this event
won't be passed to the text conversion machinery.
- ; Fix whitespace
- * src/android.c (android_blit_xor):
- (android_check_query_urgent):
- (android_run_in_emacs_thread):
- (android_update_extracted_text): Fix whitespace.
-
- Merge remote-tracking branch 'origin/master' into feature/android
+ * src/android.c (android_blit_xor, android_check_query_urgent)
+ (android_run_in_emacs_thread, android_update_extracted_text): Fix
+ whitespace.
2023-07-07 Po Lu <luangruo@yahoo.com>
- Update Android port
* java/org/gnu/emacs/EmacsSurfaceView.java (copyToFrontBuffer):
- Use fallback bit blit function on Android 7.0 as well, as
- crashes have been observed in drawBitmap.
+ Use fallback bit blit function on Android 7.0 as well, as crashes
+ have been observed in drawBitmap.
2023-07-07 Po Lu <luangruo@yahoo.com>
- Update Android port
* lisp/tool-bar.el (modifier-bar-modifier-list): New variable.
(modifier-bar-button): New function.
(tool-bar-event-apply-alt-modifier)
(modifier-bar-mode): Disable tool bar items corresponding to
modifier keys that've already been pressed.
- * etc/images/shift.pbm: Regenerate from correct font.
-
-2023-07-07 Po Lu <luangruo@yahoo.com>
-
- Merge remote-tracking branch 'origin/master' into feature/android
+ * etc/images/shift.pbm: Regenerate using the same font as the
+ other modifier button bitmaps.
2023-07-06 Po Lu <luangruo@yahoo.com>
- Update Android port
* java/org/gnu/emacs/EmacsNative.java (scaledDensity): Announce
new argument `scaledDensity'.
- * java/org/gnu/emacs/EmacsNoninteractive.java (main): Specify
- new argument.
+
+ * java/org/gnu/emacs/EmacsNoninteractive.java (main): Specify new
+ argument.
+
* java/org/gnu/emacs/EmacsService.java (onCreate): Compute an
- adjusted DPI for the font size based on the ratio between
- density and scaledDensity.
+ adjusted DPI for the font size based on the ratio between density
+ and scaledDensity.
(run): Specify that adjusted density.
+
* src/android.c (setEmacsParams): Set
`android_scaled_pixel_density'.
- * src/android.h: (android_scaled_pixel_density: New variable.
+
+ * src/android.h (android_scaled_pixel_density) New variable.
+
* src/androidterm.c (android_term_init): Set `font_resolution'.
+
* src/androidterm.h (struct android_display_info): New field.
+
* src/font.c (font_pixel_size, font_find_for_lface)
(font_open_for_lface, Ffont_face_attributes, Fopen_font): Use
FRAME_RES instead of FRAME_RES_Y.
- * src/frame.h (FRAME_RES): New macro. Use this to convert
- between font point and pixel sizes as opposed to FRAME_RES_Y.
+
+ * src/frame.h (FRAME_RES): New macro. Use this to convert between
+ font point and pixel sizes as opposed to FRAME_RES_Y.
+
* src/w32font.c (fill_in_logfont):
* src/xfaces.c (Fx_family_fonts, set_lface_from_font): Use
FRAME_RES instead of FRAME_RES_Y. (bug#64444)
- Merge remote-tracking branch 'origin/master' into feature/android
-
2023-07-05 Po Lu <luangruo@yahoo.com>
- Fix bug#64445
* doc/emacs/android.texi (Android Environment): Document that
Emacs also receives READ_EXTERNAL_STORAGE by default on old
versions of Android.
* doc/emacs/emacs.texi (Emacs and Android): Fix menu.
- ; Update Android port
- * doc/emacs/android.texi (Android): Fix discrepancies between
- menu and sectioning.
+ * doc/emacs/android.texi (Android): Fix discrepancies between menu
+ and sectioning.
- Fix crash between Android 4.0 and Android 5.1
* java/org/gnu/emacs/EmacsService.java (detectMouse): Don't use
function that is not present on Android 4.0.
- Update Android port
* doc/lispref/commands.texi (Misc Events): Correctly index
`set-text-conversion-style'.
+
* lisp/tool-bar.el (tool-bar-event-apply-alt-modifier)
(tool-bar-event-apply-super-modifier)
(tool-bar-event-apply-hyper-modifier)
(tool-bar-event-apply-control-modifier)
(tool-bar-event-apply-meta-modifier): Pass t when restoring text
conversion style.
+
* src/keyboard.c (restore_reading_key_sequence): New function.
(read_key_sequence): Set `reading_key_sequence' where necessary.
+
* src/keyboard.h: Declare variable.
+
* src/textconv.c (check_postponed_buffers): New function.
(Fset_text_conversion_style): New argument. If set, and a key
sequence is being read, postpone resetting the IME until the key
sequence is read.
(syms_of_textconv): Clear new variable and add staticpro.
- * src/textconv.h: Update prototypes.
- Merge remote-tracking branch 'origin/master' into feature/android
+ * src/textconv.h: Update prototypes.
2023-07-04 Po Lu <luangruo@yahoo.com>
- Implement a tool bar containing modifier keys
* doc/emacs/frames.texi (Tool Bars): Describe modifier bars.
+
* doc/lispref/keymaps.texi (Extended Menu Items, Tool Bar):
- Document changes to tool bar menu item handling and secondary
- tool bars.
+ Document changes to tool bar menu item handling and secondary tool
+ bars.
+
* etc/NEWS: Announce changes.
- * lisp/simple.el (event-apply-modifier): Correctly apply Ctrl
- and Shift modifiers to lower case ASCII key events that already
- have other modifiers applied.
+
+ * lisp/simple.el (event-apply-modifier): Correctly apply Ctrl and
+ Shift modifiers to lower case ASCII key events that already have
+ other modifiers applied.
+
* lisp/tool-bar.el (tool-bar--cache-key)
(tool-bar--secondary-cache-key): New defsubsts.
(tool-bar--flush-cache): Flush secondary tool bar cache.
(tool-bar-make-keymap): Include secondary tool bar if necessary.
- (tool-bar-make-keymap-1): New arg MAP. Generate a keymap for
- that map if specified, else default to tool-bar-map.
+ (tool-bar-make-keymap-1): New arg MAP. Generate a keymap for that
+ map if specified, else default to tool-bar-map.
(set-text-conversion-style, tool-bar-apply-modifiers)
(overriding-text-conversion-style)
(tool-bar-event-apply-alt-modifier)
(tool-bar-event-apply-control-modifier)
(tool-bar-event-apply-meta-modifier, modifier-bar-mode): New
functions.
+
* src/dispextern.h (enum tool_bar_item_idx): Add
TOOL_BAR_ITEM_WRAP.
+
* src/frame.c (make_frame): Clear new field `tool_bar_wraps_p'.
+
* src/frame.h (struct frame): New field `tool_bar_wraps_p'.
+
* src/keyboard.c (parse_tool_bar_item): Handle QCwrap properties
in tool bar menu items.
(syms_of_keyboard): New defsym QCwrap.
+
* src/xdisp.c (build_desired_tool_bar_string): Clear
f->tool_bar_wraps_p and set it appropriately. Insert new line
characters in the tool bar string upon encountering a wrap
character.
- (display_tool_bar_line): Stop at EOB, not line end. Reseat on
- the next line upon encountering EOL characters.
+ (display_tool_bar_line): Stop at EOB, not line end. Reseat on the
+ next line upon encountering EOL characters.
(redisplay_tool_bar): Allow rows to be different heights if
explicit new lines are present upon the tool bar string.
* src/sfnt.c (sfnt_decompose_compound_glyph): Pacify warning.
- Merge remote-tracking branch 'origin/master' into feature/android
-
-2023-07-03 Po Lu <luangruo@yahoo.com>
-
- Merge remote-tracking branch 'origin/master' into feature/android
-
- Merge remote-tracking branch 'origin/master' into feature/android
-
-2023-07-02 Po Lu <luangruo@yahoo.com>
-
- Merge remote-tracking branch 'origin/master' into feature/android
-
-2023-07-01 Po Lu <luangruo@yahoo.com>
-
- Merge remote-tracking branch 'origin/master' into feature/android
-
2023-06-30 Po Lu <luangruo@yahoo.com>
* src/android.c (android_query_tree): Correctly return children.
- Merge remote-tracking branch 'origin/master' into feature/android
-
-2023-06-29 Po Lu <luangruo@yahoo.com>
-
- Merge remote-tracking branch 'origin/master' into feature/android
-
-2023-06-28 Po Lu <luangruo@yahoo.com>
-
- Merge remote-tracking branch 'origin/master' into feature/android
-
2023-06-27 Po Lu <luangruo@yahoo.com>
* doc/emacs/android.texi (Android Environment): Improve wording.
* doc/emacs/android.texi (Android Environment): Fix typos.
- Update Android port
* src/android.c (android_exception_check)
(android_exception_check_1)
(android_exception_check_2)
(android_exception_check_nonnull)
(android_exception_check_nonnull_1): Tell the compiler to expect
- that the object is non-NULL, or that no exception has been
- thrown.
+ that the object is non-NULL, or that no exception has been thrown.
* exec/loader-mips64el.s (rest_of_exec): Fix typo in comment.
- Merge remote-tracking branch 'origin/master' into feature/android
-
2023-06-26 Po Lu <luangruo@yahoo.com>
* doc/lispref/commands.texi (Touchscreen Events): Fix typo.
2023-06-26 Po Lu <luangruo@yahoo.com>
- Update Android port
* lisp/calc/calc.el (calc-mode, calc): Make sure the on-screen
keyboard is not hidden when a Calc buffer is created or a Calc
Trail window is being created for the first time.
+
* lisp/touch-screen.el (touch-screen-window-selection-changed):
Take touch-screen-display-keyboard in to account.
(sfnt_lerp_half): Avoid undefined shift of negative value.
(sfnt_compute_tuple_scale): Pacify compiler warning.
-2023-06-26 Po Lu <luangruo@yahoo.com>
-
- Merge remote-tracking branch 'origin/master' into feature/android
-
-2023-06-25 Po Lu <luangruo@yahoo.com>
-
- Merge remote-tracking branch 'origin/master' into feature/android
-
-2023-06-24 Po Lu <luangruo@yahoo.com>
-
- Merge remote-tracking branch 'origin/master' into feature/android
-
2023-06-23 Po Lu <luangruo@yahoo.com>
* java/org/gnu/emacs/EmacsDrawRectangle.java (perform):
variables precious. Rename ANDROID_CFLAGS substitution to
ANDROID_BUILD_CFLAGS.
- * nt/mingw-cfg.site: Suppress build of gnulib printf.
+ * nt/mingw-cfg.site: Suppress build of Gnulib printf.
* java/org/gnu/emacs/EmacsDocumentsProvider.java (queryRoots): Add
icon to document root.
* lisp/loadup.el (current-load-list): Set to empty load list after
startup.
+
* src/lread.c (build_load_history): Revert earlier changes.
2023-03-15 Po Lu <luangruo@yahoo.com>
places at once. Build android-emacs separately from libemacs.so.
* cross/Makefile.in ($(top_builddir)/lib/libgnu.a):
- * java/Makefile.in (CROSS_LIBS): Explicitly depend on gnulib to
+ * java/Makefile.in (CROSS_LIBS): Explicitly depend on Gnulib to
prevent it from being built at the same time from different jobs.
* src/sfntfont.c (sfntfont_close): Don't unlink font if mmap is
* m4/ndk-build.m4 (ndk_INIT): Accept cflags.
(ndk_CONFIG_FILES): Export NDK_BUILD_CFLAGS.
- Update Android port
* java/AndroidManifest.xml.in: Prevent the Emacs activity from
being overlayed by the emacsclient wrapper.
* java/org/gnu/emacs/EmacsOpenActivity.java (run): Likewise.
2023-01-29 Po Lu <luangruo@yahoo.com>
- * .gitignore: Add missing gnulib files.
+ * .gitignore: Add missing Gnulib files.
* INSTALL.android (module_target): Clarify documentation.
2023-01-08 Po Lu <luangruo@yahoo.com>
- Merge remote-tracking branch 'origin/master' into feature/android
-
* configure.ac (ANDROID_OBJS): Add sfntfont files.
- Check in new files
* src/sfnt.h:
* src/sfntfont-android.c:
* src/sfntfont.c:
2023-01-08 Po Lu <luangruo@yahoo.com>
- Update Android port
- Note that the port currently does not work as of this check-in.
-
* src/android.c (android_change_gc): Fix situations where clip
rects are cleared.
(android_create_pixmap_from_bitmap_data): Fix bitmap data
iteration.
+
* src/androidfns.c (Fx_show_tip, Fx_hide_tip): Remove annoying
errors.
- * src/androidgui.h (enum android_event_type):
- (struct android_crossing_event):
- (struct android_motion_event):
- (struct android_button_event):
- (union android_event): New crossing, motion and button events.
+ * src/androidgui.h (enum android_event_type)
+ (struct android_crossing_event)
+ (struct android_motion_event)
+ (struct android_button_event, union android_event): New crossing,
+ motion and button events.
* src/androidterm.c (android_note_mouse_movement)
(mouse_or_wdesc_frame, android_construct_mouse_click)
(handle_one_android_event, android_mouse_position)
(android_wait_for_event, android_set_window_size_1)
(android_bitmap_icon, android_free_frame_resources)
- (syms_of_androidterm): New functions. Handle crossing, motion
- and button events.
+ (syms_of_androidterm): New functions. Handle crossing, motion and
+ button events.
* src/androidterm.h (struct android_display_info): New field
`last_mouse_movement_time'.
(struct android_output): Remove unused `need_buffer_flip' field.
* src/emacs.c (android_emacs_init): Initialize sfntfont.
+
* src/frame.c (syms_of_frame): Set frame_inhibit_implied_resize
to some reasonable value.
- * src/frame.h (GCALIGNED_STRUCT): Set wait_event_type on
- Android.
- * src/sfnt.c (eassert):
- (TEST_STATIC):
- (available):
- (enum sfnt_table):
- (sfnt_table_names):
- (SFNT_ENDOF):
- (struct sfnt_table_directory):
- (enum sfnt_scaler_type):
- (sfnt_coerce_fixed):
- (struct sfnt_hhea_table):
- (struct sfnt_cmap_table):
- (enum sfnt_platform_id):
- (enum sfnt_unicode_platform_specific_id):
- (enum sfnt_macintosh_platform_specific_id):
- (enum sfnt_microsoft_platform_specific_id):
- (struct sfnt_cmap_encoding_subtable):
- (struct sfnt_cmap_encoding_subtable_data):
- (struct sfnt_cmap_format_0):
- (struct sfnt_cmap_format_2_subheader):
- (struct sfnt_cmap_format_2):
- (struct sfnt_cmap_format_4):
- (struct sfnt_cmap_format_6):
- (struct sfnt_cmap_format_8_or_12_group):
- (struct sfnt_cmap_format_8):
- (struct sfnt_cmap_format_12):
- (struct sfnt_maxp_table):
- (struct sfnt_loca_table_short):
- (struct sfnt_loca_table_long):
- (struct sfnt_glyf_table):
- (struct sfnt_simple_glyph):
- (struct sfnt_compound_glyph_component):
- (struct sfnt_compound_glyph):
- (struct sfnt_glyph):
- (sfnt_read_table_directory):
- (file):
- (sfnt_read_cmap_table):
- (sfnt_read_head_table):
- (success):
- (sfnt_read_hhea_table):
- (sfnt_read_loca_table_short):
- (sfnt_read_loca_table_long):
- (sfnt_read_maxp_table):
- (sfnt_read_glyf_table):
- (sfnt_read_compound_glyph):
- (sfnt_read_glyph):
- (struct sfnt_point):
- (sfnt_expand_compound_glyph_context):
- (sfnt_decompose_compound_glyph):
- (struct sfnt_glyph_outline):
- (enum sfnt_glyph_outline_flags):
- (struct sfnt_build_glyph_outline_context):
- (sfnt_build_append):
- (sfnt_build_glyph_outline):
- (struct sfnt_raster):
- (struct sfnt_edge):
- (sfnt_prepare_raster):
- (sfnt_build_outline_edges):
- (sfnt_raster_glyph_outline): Move structures to sfnt.h.
+ * src/frame.h (GCALIGNED_STRUCT): Set wait_event_type on Android.
- (struct sfnt_long_hor_metric):
- (struct sfnt_hmtx_table):
- (struct sfnt_glyph_metrics):
- (sfnt_read_hmtx_table):
- (sfnt_lookup_glyph_metrics):
- (sfnt_read_name_table):
- (sfnt_find_name):
- (sfnt_read_meta_table):
- (sfnt_find_metadata):
- (sfnt_test_edge_ignore): New functions.
+ * src/sfnt.c (eassert, TEST_STATIC, available, enum sfnt_table)
+ (sfnt_table_names, SFNT_ENDOF, struct sfnt_table_directory)
+ (sfnt_scaler_type, sfnt_coerce_fixed, struct sfnt_hhea_table)
+ (struct sfnt_cmap_table, enum sfnt_platform_id)
+ (enum sfnt_unicode_platform_specific_id)
+ (enum sfnt_macintosh_platform_specific_id)
+ (enum sfnt_microsoft_platform_specific_id)
+ (struct sfnt_cmap_encoding_subtable)
+ (struct sfnt_cmap_encoding_subtable_data)
+ (struct sfnt_cmap_format_0)
+ (struct sfnt_cmap_format_2_subheader, struct sfnt_cmap_format_2)
+ (struct sfnt_cmap_format_4, struct sfnt_cmap_format_6)
+ (struct sfnt_cmap_format_8_or_12_group, struct sfnt_cmap_format_8)
+ (struct sfnt_cmap_format_12, struct sfnt_maxp_table)
+ (struct sfnt_loca_table_short, struct sfnt_loca_table_long)
+ (struct sfnt_glyf_table, struct sfnt_simple_glyph)
+ (struct sfnt_compound_glyph_component, struct sfnt_compound_glyph)
+ (struct sfnt_glyph, sfnt_read_table_directory, file)
+ (sfnt_read_cmap_table)
+ (sfnt_read_head_table, success, sfnt_read_hhea_table)
+ (sfnt_read_loca_table_short, sfnt_read_loca_table_long)
+ (sfnt_read_maxp_table, sfnt_read_glyf_table)
+ (sfnt_read_compound_glyph, sfnt_read_glyph, struct sfnt_point)
+ (sfnt_expand_compound_glyph_context)
+ (sfnt_decompose_compound_glyph, struct sfnt_glyph_outline)
+ (enum sfnt_glyph_outline_flags)
+ (struct sfnt_build_glyph_outline_context)
+ (sfnt_build_append, sfnt_build_glyph_outline, struct sfnt_raster)
+ (struct sfnt_edge, sfnt_prepare_raster, sfnt_build_outline_edges)
+ (sfnt_raster_glyph_outline): Move structures to sfnt.h.
+ (struct sfnt_long_hor_metric, sfnt_read_hmtx_table)
+ (sfnt_lookup_glyph_metrics, sfnt_read_name_table, sfnt_find_name)
+ (sfnt_read_meta_table, sfnt_find_metadata, sfnt_test_edge_ignore):
+ New functions.
(main): Add new tests.
- * src/xdisp.c (redisplay_tool_bar):
2023-01-08 Po Lu <luangruo@yahoo.com>
- Delete unused files
* java/org/gnu/emacs/EmacsPaintQueue.java
* java/org/gnu/emacs/EmacsPaintReq.java: Remove files.
- Update Java part of Android port
- * java/org/gnu/emacs/EmacsCopyArea.java (EmacsCopyArea, perform)
- (paintTo):
- * java/org/gnu/emacs/EmacsDrawLine.java (EmacsDrawLine):
- * java/org/gnu/emacs/EmacsDrawPoint.java (EmacsDrawPoint):
- * java/org/gnu/emacs/EmacsDrawRectangle.java (EmacsDrawRectangle)
- (paintTo):
- * java/org/gnu/emacs/EmacsDrawable.java (EmacsDrawable):
- * java/org/gnu/emacs/EmacsFillPolygon.java (EmacsFillPolygon):
- * java/org/gnu/emacs/EmacsFillRectangle.java
- (EmacsFillRectangle):
- * java/org/gnu/emacs/EmacsFontDriver.java (EmacsFontDriver):
- * java/org/gnu/emacs/EmacsGC.java (EmacsGC):
- * java/org/gnu/emacs/EmacsNative.java (EmacsNative):
- * java/org/gnu/emacs/EmacsPixmap.java (EmacsPixmap):
- * java/org/gnu/emacs/EmacsSdk23FontDriver.java
- (EmacsSdk23FontDriver):
- * java/org/gnu/emacs/EmacsSdk7FontDriver.java
- (EmacsSdk7FontDriver, textExtents1, textExtents, draw):
- * java/org/gnu/emacs/EmacsService.java (EmacsService, copyArea):
- * java/org/gnu/emacs/EmacsSurfaceView.java (EmacsSurfaceView):
- * java/org/gnu/emacs/EmacsView.java (EmacsView, onLayout)
- (onFocusChanged):
- * java/org/gnu/emacs/EmacsWindow.java (EmacsWindow, run)
- (resizeWindow, lockCanvas, getBitmap, onKeyDown, onKeyUp)
+ * java/org/gnu/emacs/EmacsCopyArea.java (perform, paintTo):
+ * java/org/gnu/emacs/EmacsDrawLine.java:
+ * java/org/gnu/emacs/EmacsDrawPoint.java:
+ * java/org/gnu/emacs/EmacsDrawRectangle.java (paintTo):
+ * java/org/gnu/emacs/EmacsDrawable.java:
+ * java/org/gnu/emacs/EmacsFillPolygon.java:
+ * java/org/gnu/emacs/EmacsFillRectangle.java:
+ * java/org/gnu/emacs/EmacsFontDriver.java:
+ * java/org/gnu/emacs/EmacsGC.java:
+ * java/org/gnu/emacs/EmacsNative.java:
+ * java/org/gnu/emacs/EmacsPixmap.java:
+ * java/org/gnu/emacs/EmacsSdk23FontDriver.java:
+ * java/org/gnu/emacs/EmacsSdk7FontDriver.java (textExtents1)
+ (textExtents, draw):
+ * java/org/gnu/emacs/EmacsService.java (copyArea):
+ * java/org/gnu/emacs/EmacsSurfaceView.java:
+ * java/org/gnu/emacs/EmacsView.java (onLayout, onFocusChanged):
+ * java/org/gnu/emacs/EmacsWindow.java (run, resizeWindow)
+ (lockCanvas, getBitmap, onKeyDown, onKeyUp)
(onActivityDetached): Move rendering to main thread. Make
drawing operations completely static.
- Check in new file androidmenu.c
* src/androidmenu.c: New file.
2023-01-07 Po Lu <luangruo@yahoo.com>
- Check in new file sfnt.c
* src/sfnt.c (xmalloc, xrealloc, xfree, eassert, MIN)
(sfnt_table_names, SFNT_ENDOF, struct sfnt_table_directory)
(enum sfnt_scaler_type, sfnt_coerce_fixed, struct sfnt_hhea_table)
(sfnt_read_cmap_format_0, sfnt_read_cmap_format_2)
(sfnt_read_cmap_format_4, sfnt_read_cmap_format_6)
(sfnt_read_cmap_format_8, sfnt_read_cmap_format_12)
- (sfnt_read_cmap_table_1, sfnt_read_cmap_table, sfnt_lookup_glyph_0)
+ (sfnt_read_cmap_table_1, sfnt_read_cmap_table)
+ (sfnt_lookup_glyph_0)
(sfnt_lookup_glyph_2, sfnt_bsearch_above, sfnt_compare_uint16)
(sfnt_lookup_glyph_4, sfnt_lookup_glyph_6, sfnt_lookup_glyph_8)
(sfnt_lookup_glyph_12, sfnt_lookup_glyph, sfnt_read_head_table)
(sfnt_lookup_glyph_metrics, struct sfnt_test_dcontext)
(sfnt_test_move_to, sfnt_test_line_to, sfnt_test_curve_to)
(sfnt_test_get_glyph, sfnt_test_free_glyph, sfnt_test_span)
- (sfnt_test_edge, sfnt_test_raster, main): Check in
- 5000-line-long file written by me for reading TrueType and
- OpenType fonts with TrueType outlines.
-
-2023-01-02 Po Lu <luangruo@yahoo.com>
-
- Merge remote-tracking branch 'origin/master' into feature/android
+ (sfnt_test_edge, sfnt_test_raster, main): New file, meant to read
+ TrueType fonts and OpenType fonts using TrueType outlines.
2023-01-02 Po Lu <luangruo@yahoo.com>
- Update Android port
* Makefile.in (java): Depend on info.
- (MAKEFILE_NAME):
- (config.status): Remove unneeded changes.
+ (MAKEFILE_NAME, config.status): Remove unneeded changes.
+
* configure.ac (BUILD_DETAILS, ANDROID_STUBIFY): Don't require a
C++ compiler on Android.
- * java/AndroidManifest.xml: <EmacsActivity>: Set launchMode
- appropriately. <EmacsMultitaskActivity>: New activity.
- * java/Makefile.in (CROSS_BINS): Add EmacsClient.
- * java/org/gnu/emacs/EmacsActivity.java (EmacsActivity)
- (onCreate): Use the window attachment manager.
- * java/org/gnu/emacs/EmacsCopyArea.java (EmacsCopyArea)
- (paintTo): Implement clip masks correctly.
+
+ * java/AndroidManifest.xml <EmacsActivity>: Set launchMode
+ appropriately.
+ <EmacsMultitaskActivity>: New activity.
+
+ * java/Makefile.in (CROSS_BINS): Add Emacsclient to the list of
+ binaries that will be copied into the app package.
+
+ * java/org/gnu/emacs/EmacsActivity.java (onCreate): Use the window
+ attachment manager.
+
+ * java/org/gnu/emacs/EmacsCopyArea.java (paintTo): Implement clip
+ masks correctly.
+
* java/org/gnu/emacs/EmacsDrawRectangle.java (getRect, paintTo):
Fix damage tracking rectangles.
- * java/org/gnu/emacs/EmacsFontDriver.java (FontSpec, toString):
- New function.
- (FontMetrics, EmacsFontDriver): Fix signature of textExtents.
- * java/org/gnu/emacs/EmacsMultitaskActivity.java
- (EmacsMultitaskActivity): New file.
- * java/org/gnu/emacs/EmacsNative.java (EmacsNative): New
- functions sendFocusIn, sendFocusOut, sendWindowAction.
- * java/org/gnu/emacs/EmacsPaintQueue.java (run): Fix clipping
- handling.
- * java/org/gnu/emacs/EmacsPixmap.java (EmacsPixmap): Add
- constructor for mutable pixmaps.
- * java/org/gnu/emacs/EmacsSdk23FontDriver.java
- (EmacsSdk23FontDriver): New file.
- * java/org/gnu/emacs/EmacsSdk7FontDriver.java
- (EmacsSdk7FontDriver, Sdk7Typeface, Sdk7FontEntity, Sdk7FontObject)
- (checkMatch, hasChar, encodeChar): Implement text display and
- fix font metrics semantics.
+
+ * java/org/gnu/emacs/EmacsFontDriver.java (toString): New
+ function.
+ (FontMetrics): Fix signature of textExtents.
+
+ * java/org/gnu/emacs/EmacsMultitaskActivity.java: New file.
+
+ * java/org/gnu/emacs/EmacsNative.java (sendFocusIn, sendFocusOut)
+ (sendWindowAction): New functions.
+
+ * java/org/gnu/emacs/EmacsPaintQueue.java (run): Correct treatment
+ of the clip rectangle list.
+
+ * java/org/gnu/emacs/EmacsPixmap.java: Add constructor for mutable
+ pixmaps.
+
+ * java/org/gnu/emacs/EmacsSdk23FontDriver.java: New file.
+
+ * java/org/gnu/emacs/EmacsSdk7FontDriver.java (Sdk7Typeface)
+ (Sdk7FontEntity, Sdk7FontObject, checkMatch, hasChar, encodeChar):
+ Implement text display and fix font metrics semantics.
* java/org/gnu/emacs/EmacsService.java (EmacsService): Remove
availableChildren.
(getLibraryDirectory, onCreate): Pass pixel density to Emacs.
- (clearArea): Fix arguments. Switch to using the window
- attachment manager.
+ (clearArea): Fix arguments. Switch to using the window attachment
+ manager.
+
* java/org/gnu/emacs/EmacsSurfaceView.java (surfaceChanged)
(surfaceCreated): Flip buffers on surface attachment.
- * java/org/gnu/emacs/EmacsView.java (EmacsView, swapBuffers):
- New argument FORCE. Always swap if it is true.
+
+ * java/org/gnu/emacs/EmacsView.java (swapBuffers): New argument
+ FORCE. Always swap if it is true.
(onKeyMultiple, onFocusChanged): New functions.
- * java/org/gnu/emacs/EmacsWindow.java (EmacsWindow, destroyHandle)
- (run): Switch to using the window attachment manager.
- * java/org/gnu/emacs/EmacsWindowAttachmentManager.java
- (EmacsWindowAttachmentManager): New file.
+ * java/org/gnu/emacs/EmacsWindow.java (destroyHandle, run): Switch
+ to using the window attachment manager.
+
+ * java/org/gnu/emacs/EmacsWindowAttachmentManager.java: New file.
* lisp/cus-edit.el (custom-button, custom-button-mouse)
(custom-button-pressed):
+
* lisp/faces.el (tool-bar): Define faces correctly on Android.
+
* src/android.c (struct android_emacs_pixmap): Add mutable
constructor.
(struct android_emacs_drawable): New structure.
(android_select): Set errno to EINTR if pselect fails.
(android_close): Remove unused debugging code.
(android_get_home_directory): New function.
- (Java_org_gnu_emacs_EmacsNative_setEmacsParams): Set pixel
- density and compute game path.
+ (Java_org_gnu_emacs_EmacsNative_setEmacsParams): Set pixel density
+ and compute game path.
(android_init_emacs_drawable): New function.
(Java_org_gnu_emacs_EmacsNative_sendKeyPress): New argument
`unicode_char'. Pass it in events.
(Java_org_gnu_emacs_EmacsNative_sendKeyRelease): Likewise.
(Java_org_gnu_emacs_EmacsNative_sendFocusIn)
(Java_org_gnu_emacs_EmacsNative_sendFocusOut)
- (Java_org_gnu_emacs_EmacsNative_sendWindowAction): New
- functions.
+ (Java_org_gnu_emacs_EmacsNative_sendWindowAction): New functions.
(android_resolve_handle): Export function.
(android_change_gc): Clear clip rects under the right
circumstances. Set right clip mask field.
(android_create_pixmap_from_bitmap_data): Use correct alpha
channels.
- (android_create_pixmap): Create mutable pixmap and avoid
- redundant color array allocation.
+ (android_create_pixmap): Create mutable pixmap and avoid redundant
+ color array allocation.
(android_create_bitmap_from_data, android_create_image)
(android_destroy_image, android_put_pixel, android_get_pixel)
- (android_get_image, android_put_image, faccessat): New
- functions.
+ (android_get_image, android_put_image, faccessat): New functions.
* src/android.h: Update prototypes.
* src/androidfns.c (android_default_font_parameter): Prefer
monospace to Droid Sans Mono.
- * src/androidfont.c (struct android_emacs_font_driver): New
- method `draw'.
+
+ * src/androidfont.c (struct android_emacs_font_driver): New method
+ `draw'.
(struct android_emacs_font_spec): New field `dpi'.
(struct androidfont_info): Add font metrics cache.
(android_init_font_driver, android_init_font_spec): Adjust
accordingly.
- (androidfont_from_lisp, androidfont_from_java): Handle new
- fields.
+ (androidfont_from_lisp, androidfont_from_java): Handle new fields.
(androidfont_draw): Implement function.
(androidfont_open_font): Set pixel size correctly.
(androidfont_close_font): Free metrics cache.
future use.
(androidfont_list_family): Implement function.
- * src/androidgui.h (enum android_event_type): New focus and
- window action events.
+ * src/androidgui.h (enum android_event_type): New focus and window
+ action events.
(enum android_modifier_mask): New masks.
(struct android_key_event): New field `unicode_char'.
(ANDROID_IS_MODIFIER_KEY): Newmacro.
- (struct android_focus_event, struct
- android_window_action_event): New structs.
+ (struct android_focus_event, struct android_window_action_event):
+ New structs.
(union android_event): Add new fields.
(enum android_image_format, struct android_image): New enums and
structs.
handling.
(android_frame_rehighlight): New function.
(android_frame_raise_lower): Implement accordingly.
- (android_make_frame_invisible): Clear highlight_frame if
- required.
+ (android_make_frame_invisible): Clear highlight_frame if required.
(android_free_frame_resources): Clear x_focus_event_frame if
required.
(android_draw_fringe_bitmap, android_draw_image_foreground)
(android_draw_image_foreground_1)
(android_draw_image_glyph_string): Remove unnecessary code.
- (android_create_terminal, android_term_init): Set the baud rate
- to something sensible.
- * src/androidterm.h (struct android_bitmap_record): Make
- structure the same as on X.
+ (android_create_terminal, android_term_init): Set the baud rate to
+ something sensible.
+
+ * src/androidterm.h (struct android_bitmap_record): Make structure
+ the same as on X.
(struct android_display_info): New focus tracking fields.
(struct android_output): Likewise.
+
* src/dispextern.h (struct image): Add ximg and mask_img on
Android.
* src/emacs.c (android_emacs_init): Fix argc sorting iteration.
- * src/fileio.c (user_homedir):
- (get_homedir): Implement correctly on Android.
+ * src/fileio.c (user_homedir, get_homedir): Implement correctly on
+ Android.
* src/font.h (PT_PER_INCH): Define correctly on Android.
(image_destroy_x_image, gui_put_x_image, image_put_x_image)
(image_get_x_image, image_unget_x_image)
(Create_Pixmap_From_Bitmap_Data, image_pixmap_draw_cross)
- (MaskForeground, image_types, syms_of_image): Implement all of
- the above on Android in terms of an API very similar to X.
+ (MaskForeground, image_types, syms_of_image): Implement all of the
+ above on Android in terms of an API very similar to X.
* src/keyboard.c (FUNCTION_KEY_OFFSET, lispy_function_keys):
- Define on Android to something sensible.
+ Define to something sensible under Android.
* src/lread.c (build_load_history): Fix problem.
2022-12-31 Po Lu <luangruo@yahoo.com>
- Merge remote-tracking branch 'origin/master' into feature/android
-
-2022-12-31 Po Lu <luangruo@yahoo.com>
-
- Bring up the Android operating system and its window system
* .dir-locals.el (c-mode): Add ANDROID_EXPORT noise macro.
+
* .gitignore: Add new files to ignore.
+
* Makefile.in: Adjust for Android.
+
* admin/merge-gnulib: Add new warning.
+
* configure.ac: Detect Android. Run cross-configuration for
Android when appropriate.
* java/Makefile.in:
* java/README:
* java/debug.sh:
- * java/org/gnu/emacs/EmacsActivity.java (EmacsActivity):
- * java/org/gnu/emacs/EmacsApplication.java (EmacsApplication):
- * java/org/gnu/emacs/EmacsCopyArea.java (EmacsCopyArea):
- * java/org/gnu/emacs/EmacsDrawLine.java (EmacsDrawLine):
- * java/org/gnu/emacs/EmacsDrawPoint.java (EmacsDrawPoint):
- * java/org/gnu/emacs/EmacsDrawRectangle.java
- (EmacsDrawRectangle):
- * java/org/gnu/emacs/EmacsDrawable.java (EmacsDrawable):
- * java/org/gnu/emacs/EmacsFillPolygon.java (EmacsFillPolygon):
- * java/org/gnu/emacs/EmacsFillRectangle.java
- (EmacsFillRectangle):
- * java/org/gnu/emacs/EmacsFontDriver.java (EmacsFontDriver):
- * java/org/gnu/emacs/EmacsGC.java (EmacsGC):
- * java/org/gnu/emacs/EmacsHandleObject.java (EmacsHandleObject):
- * java/org/gnu/emacs/EmacsNative.java (EmacsNative):
- * java/org/gnu/emacs/EmacsPaintQueue.java (EmacsPaintQueue):
- * java/org/gnu/emacs/EmacsPaintReq.java (EmacsPaintReq):
- * java/org/gnu/emacs/EmacsPixmap.java (EmacsPixmap):
- * java/org/gnu/emacs/EmacsSdk7FontDriver.java
- (EmacsSdk7FontDriver):
- * java/org/gnu/emacs/EmacsService.java (class Holder<T>)
- (EmacsService):
- * java/org/gnu/emacs/EmacsSurfaceView.java (EmacsSurfaceView):
- * java/org/gnu/emacs/EmacsThread.java (EmacsThread):
- * java/org/gnu/emacs/EmacsView.java (EmacsView):
- * java/org/gnu/emacs/EmacsWindow.java (EmacsWindow): New files
- and classes.
+ * java/org/gnu/emacs/EmacsActivity.java:
+ * java/org/gnu/emacs/EmacsApplication.java:
+ * java/org/gnu/emacs/EmacsCopyArea.java:
+ * java/org/gnu/emacs/EmacsDrawLine.java:
+ * java/org/gnu/emacs/EmacsDrawPoint.java:
+ * java/org/gnu/emacs/EmacsDrawRectangle.java:
+ * java/org/gnu/emacs/EmacsDrawable.java:
+ * java/org/gnu/emacs/EmacsFillPolygon.java:
+ * java/org/gnu/emacs/EmacsFillRectangle.java:
+ * java/org/gnu/emacs/EmacsFontDriver.java:
+ * java/org/gnu/emacs/EmacsGC.java:
+ * java/org/gnu/emacs/EmacsHandleObject.java:
+ * java/org/gnu/emacs/EmacsNative.java:
+ * java/org/gnu/emacs/EmacsPaintQueue.java:
+ * java/org/gnu/emacs/EmacsPaintReq.java:
+ * java/org/gnu/emacs/EmacsPixmap.java:
+ * java/org/gnu/emacs/EmacsSdk7FontDriver.java:
+ * java/org/gnu/emacs/EmacsService.java:
+ * java/org/gnu/emacs/EmacsSurfaceView.java:
+ * java/org/gnu/emacs/EmacsThread.java:
+ * java/org/gnu/emacs/EmacsView.java:
+ * java/org/gnu/emacs/EmacsWindow.java: New files and classes.
* lib-src/Makefile.in (srcdir):
- * lib/Makefile.in (VPATH):
- (HAVE_NATIVE_COMP):
- (libgnu_a_SOURCES):
+
+ * lib/Makefile.in (VPATH, HAVE_NATIVE_COMP, libgnu_a_SOURCES):
(DEPFLAGS): Configure correctly for cross-compiling.
* lib/faccessat.c:
+
* lib/fpending.c (__fpending):
+
* lib/open.c:
+
* lib/unistd.c (_GL_UNISTD_INLINE): Temporary adjustments to
- gnulib.
-
- * lisp/frame.el (display-graphic-p):
- (display-screens):
- (display-pixel-height):
- (display-pixel-width):
- (display-mm-height):
- (display-mm-width):
- (display-backing-store):
- (display-save-under):
- (display-planes):
- (display-color-cells):
- (display-visual-class): Adjust for new window system `android'.
+ Gnulib.
+
+ * lisp/frame.el (display-graphic-p, display-screens)
+ (display-pixel-height, display-pixel-width, display-mm-height)
+ (display-mm-width, display-backing-store, display-save-under)
+ (display-planes, display-color-cells, display-visual-class):
+ Adjust for new window system `android'.
* lisp/image/wallpaper.el (x-open-connection): Add declaration.
- * lisp/loadup.el (featurep): Load up files for Android.
+
+ * lisp/loadup.el (featurep): Load files for Android.
+
* lisp/net/eww.el (eww-form-submit, eww-form-file)
(eww-form-checkbox, eww-form-select): Adjust faces for android.
+
* lisp/term/android-win.el: New file.
+
* src/Makefile.in: Add new targets emacs.so and android-emacs,
then adjust for cross compilation.
+
* src/alloc.c (cleanup_vector): Clean up Android font entities
as well.
(garbage_collect): Mark androidterm.
+
* src/android-emacs.c (main):
+
* src/android.c (ANDROID_THROW, enum android_fd_table_entry_flags)
(struct android_emacs_service, struct android_emacs_pixmap)
(struct android_graphics_point, struct android_event_container)
(android_get_gc_values, android_set_foreground)
(android_fill_rectangle, android_create_pixmap_from_bitmap_data)
(android_set_clip_mask, android_set_fill_style, android_copy_area)
- (android_free_pixmap, android_set_background, android_fill_polygon)
+ (android_free_pixmap, android_set_background)
+ (android_fill_polygon)
(android_draw_rectangle, android_draw_point, android_draw_line)
- (android_create_pixmap, android_set_ts_origin, android_clear_area):
+ (android_create_pixmap, android_set_ts_origin)
+ (android_clear_area):
+
* src/android.h (ANDROID_EXPORT):
+
* src/androidfns.c (android_display_info_for_name)
(check_android_display_info, check_x_display_info, gamma_correct)
(android_defined_color, android_decode_color)
(android_set_internal_border_width, android_set_menu_bar_lines)
(android_set_mouse_color, android_set_title, android_set_alpha)
(android_frame_parm_handlers, syms_of_androidfns):
+
* src/androidfont.c (struct android_emacs_font_driver)
- (struct android_emacs_font_spec, struct android_emacs_font_metrics)
+ (struct android_emacs_font_spec)
+ (struct android_emacs_font_metrics)
(struct android_emacs_font_object, struct android_integer)
(struct androidfont_info, struct androidfont_entity)
(android_init_font_driver, android_init_font_spec)
(androidfont_list_family, androidfont_driver)
(syms_of_androidfont_for_pdumper, syms_of_androidfont)
(init_androidfont, android_finalize_font_entity):
+
* src/androidgui.h (_ANDROID_GUI_H_, struct android_rectangle)
(struct android_point, enum android_gc_function)
(enum android_gc_value_mask, enum android_fill_style)
(NativeRectangle, struct android_any_event)
(struct android_key_event, struct android_configure_event)
(union android_event):
+
* src/androidterm.c (android_window_to_frame, android_clear_frame)
(android_ring_bell, android_toggle_invisible_pointer)
(android_update_begin, android_update_end, show_back_buffer)
(frame_set_mouse_pixel_position, get_keysym_name)
(android_create_terminal, android_term_init, syms_of_androidterm)
(mark_androidterm):
- * src/androidterm.h (_ANDROID_TERM_H_, struct android_display_info)
+
+ * src/androidterm.h (_ANDROID_TERM_H_)
+ (struct android_display_info)
(struct android_output, FRAME_ANDROID_OUTPUT, XSCROLL_BAR): New
files.
+
* src/dired.c (file_attributes): Do not use openat on Android.
+
* src/dispextern.h (No_Cursor): Define appropriately on Android.
(struct glyph_string, struct face): Make gc field of type struct
android_gc on Android.
+
* src/dispnew.c (clear_current_matrices, clear_desired_matrices)
(adjust_frame_glyphs_for_window_redisplay, free_glyphs)
(update_frame, scrolling, char_ins_del_cost, update_frame_line)
(init_display_interactive): Disable text terminal support
completely on Android. Fix non-toolkit menus for non-X systems.
+
* src/editfns.c (Fuser_full_name): Call android_user_full_name.
+
* src/emacs.c (android_emacs_init): Make main this on Android.
Prohibit argv sorting from exceeding end of argv.
+
* src/epaths.in: Add path definitions for Android.
* src/fileio.c (file_access_p): Call android_file_access_p.
(file_name_directory): Avoid using openat on Android.
(Fcopy_file): Adjust to call sys_fstat instead.
- (file_directory_p):
- (Finsert_file_contents):
- (write_region): Likewise.
+ (file_directory_p, Finsert_file_contents, write_region): Likewise.
+
* src/filelock.c:
+
* src/fns.c (Flocale_info): Pacify warning on Android.
+
* src/font.c (font_make_entity_android): New function.
+
* src/font.h:
- * src/frame.c (Fframep):
- (Fwindow_system): Handle new window system `android'. Update doc strings.
+
+ * src/frame.c (Fframep, Fwindow_system): Handle new window system
+ `android'. Update doc strings.
(Fmake_terminal_frame): Disable on Android.
- (gui_display_get_resource): Disable get_string_resource_hook on Android.
+ (gui_display_get_resource): Disable get_string_resource_hook on
+ Android.
(syms_of_frame): New defsym `android'.
- * src/frame.h (GCALIGNED_STRUCT): Add new output data for
- Android.
+ * src/frame.h (GCALIGNED_STRUCT): Add new output data for Android.
(ENUM_BF): Expand enumerator size.
- (FRAME_ANDROID_P, FRAME_WINDOW_P, MOUSE_HL_INFO): Add
- definitions for Android.
-
- * src/image.c (GET_PIXEL):
- (image_create_bitmap_from_file):
- (image_create_x_image_and_pixmap_1):
- (image_get_x_image):
- (slurp_file):
- (lookup_rgb_color):
- (image_to_emacs_colors):
- (image_from_emacs_colors):
- (image_pixmap_draw_cross):
- (image_disable_image):
- (MaskForeground):
+ (FRAME_ANDROID_P, FRAME_WINDOW_P, MOUSE_HL_INFO): Add definitions
+ for Android.
+
+ * src/image.c (GET_PIXEL, image_create_bitmap_from_file)
+ (image_create_x_image_and_pixmap_1, image_get_x_image, slurp_file)
+ (lookup_rgb_color, image_to_emacs_colors, image_from_emacs_colors)
+ (image_pixmap_draw_cross, image_disable_image, MaskForeground)
(gif_load): Add stubs for Android.
* src/lisp.h:
+
* src/lread.c (safe_to_load_version, maybe_swap_for_eln1, openp):
+
* src/pdumper.c (pdumper_load): Call sys_fstat instead of fstat.
- * src/process.c (wait_reading_process_output): Use
- android_select instead of pselect.
+
+ * src/process.c (wait_reading_process_output): Use android_select
+ instead of pselect.
+
* src/scroll.c: Disable on Android.
+
* src/sysdep.c (widen_foreground_group, reset_sys_modes)
(init_signals, emacs_fstatat, sys_fstat): New function.
(emacs_open, emacs_open_noquit, emacs_close): Implement
(maybe_fatal, syms_of_term): Disable text terminal support on
Android.
- * src/termhooks.h (enum output_method): Add android output
- method.
+ * src/termhooks.h (enum output_method): Add android output method.
(GCALIGNED_STRUCT, TERMINAL_FONT_CACHE): Define for Android.
* src/terminal.c (Fterminal_live_p): Implement for Android.
* src/verbose.mk.in (AM_V_GLOBALS): Add JAVAC and DX.
- * src/xdisp.c (redisplay_internal): Disable text terminals on Android.
- (display_menu_bar):
- (display_tty_menu_item):
- (draw_row_with_mouse_face):
- (expose_frame): Make the non toolkit menu bar work on Android.
-
- * src/xfaces.c (GCGraphicsExposures):
- (x_create_gc):
- (x_free_gc):
+ * src/xdisp.c (redisplay_internal): Disable text terminals on
+ Android.
+ (display_menu_bar, display_tty_menu_item)
+ (draw_row_with_mouse_face, expose_frame): Make the non toolkit
+ menu bar work on Android.
+
+ * src/xfaces.c (GCGraphicsExposures, x_create_gc, x_free_gc)
(Fx_load_color_file): Define for Android.
- * xcompile/Makefile.in (top_srcdir):
- (top_builddir):
+ * xcompile/Makefile.in:
* xcompile/README:
* xcompile/langinfo.h (nl_langinfo): New files.
+2022-12-29 Po Lu <luangruo@yahoo.com>
+
+ Development of the Android port starts...
+
This ChangeLog only chronicles changes constituting the initial
development of the Android port. Refer to other ChangeLog files for a
narrative of unrelated modifications made to Emacs during that time,