Yuuki Harano
d68633bfa1
* src/pgtkterm.c (pgtk_defined_color): support gtk special colors
...
Color functions take the frame
* src/gtkutil.c (xg_check_special_colors): pass frame as argument.
* src/pgtkfns.c (x_set_foreground_color, x_set_background_color,
x_set_cursor_color, pgtk_set_scroll_bar_foreground,
pgtk_set_scroll_bar_background, Fxw_color_defined_p,
Fxw_color_values): pass frame as argument.
* src/pgtkterm.c (pgtk_parse_color): take frame as argument.
(pgtk_lisp_to_color): take frame as argument, and pass it.
Remove pgtk_lisp_to_color
* src/pgtkfns.c (x_set_foreground_color, x_set_background_color,
x_set_cursor_color): use x_decode_color instead of pgtk_lisp_to_color.
(Fxw_color_defined_p, Fxw_color_values):
use pgtk_defined_color instead of pgtk_lisp_to_color.
* src/pgtkterm.c (pgtk_lisp_to_color): remove.
* src/gtkutil.c (xg_check_special_colors): change color format
* src/pgtkterm.h: remove pgtk_lisp_to_color declaration
2020-11-24 12:24:40 +11:00
Yuuki Harano
fe2297ce7a
* pgtkmenu.c (set_frame_menubar): fix empty menu.
2020-11-24 12:24:39 +11:00
Yuuki Harano
8669feb0c5
Make icons and titles work like on X
...
* pgtk-win.el (frame-title-format, icon-title-format): remove.
* pgtkfns.c (pgtk_set_name_as_filename): remove.
* pgtkfns.c (pgtk_set_name_internal): remove gtk_window_set_icon_name call.
* pgtkfns.c (pgtk_set_name): change value of update_mode_lines.
* pgtkfns.c (pgtk_explicitly_set_name):
prefer the symbol to an immediate value.
* pgtkfns.c (pgtk_implicitly_set_name): remove pgtk_set_name_as_filename call.
* pgtkfns.c (x_set_icon_type, x_set_icon_name): re-port from X code.
* pgtkfns.c (xg_set_icon, xg_set_icon_from_xpm_data): port from X code.
* pgtkterm.c (pgtk_bitmap_icon, pgtk_text_icon, pgtk_create_terminal):
port from X code.
* pgtkterm.h: add function declarations.
2020-11-24 12:24:39 +11:00
Yuuki Harano
5a72a07fa5
* pgtk-win.el: fix compile-time warnings.
2020-11-24 12:24:39 +11:00
Yuuki Harano
014d56fa13
* src/pgtkterm.c: Remove incorrect mark_object call.
2020-11-24 12:24:39 +11:00
Yuuki Harano
4de4d9ee7e
follow x_set_internal_border_width change.
...
* ../src/pgtkfns.c (x_set_internal_border_width):
2020-11-24 12:24:39 +11:00
Yuuki Harano
984f9cc7e5
restore frame_rehighlight_hook.
...
* src/frame.c (gui_set_border_width):
2020-11-24 12:24:39 +11:00
Yuuki Harano
de7b0daf2b
use pgtk_menu_set_in_use.
...
* ../src/pgtkfns.c:
(Fx_file_dialog, clean_up_dialog):
* src/pgtkmenu.c (pgtk_menu_wait_for_event):
2020-11-24 12:24:39 +11:00
Yuuki Harano
04bfe70138
implement popup/context menu
...
* ../src/pgtkterm.c (x_draw_glyph_string_background)
(x_draw_glyph_string_foreground)
(x_draw_composite_glyph_string_foreground)
(x_draw_glyphless_glyph_string_foreground, x_draw_relief_rect)
(x_draw_box_rect, x_draw_glyph_string_box, x_draw_image_relief)
(x_draw_image_foreground, x_draw_image_glyph_string)
(button_event):
* src/pgtkterm.h (struct pgtk_display_info):
* src/pgtkmenu.c (pgtk_menu_set_in_use)
(pgtk_menu_wait_for_event, Fx_menu_bar_open_internal)
(popup_widget_loop, pgtk_activate_menubar)
(popup_deactivate_callback, show_help_event): new functions
(menu_highlight_callback): remove
(update_frame_menubar, popup_selection_callback, pop_down_menu)
(create_and_show_popup_menu, cleanup_widget_value_tree)
(pgtk_menu_show, dialog_selection_callback): new
(create_and_show_dialog, pgtk_dialog_show, pgtk_popup_dialog)
(popup_activated, Fmenu_or_popup_active_p, syms_of_pgtkmenu):
2020-11-24 12:24:39 +11:00
Yuuki Harano
49645df52e
minimize gtkutil.c differences.
...
* src/pgtkterm.h: remove compiletime ifdefs
* src/gtkutil.h: block out unused decl
* src/gtkutil.c:
(xg_get_pixbuf_from_pix_and_mask, xg_height_or_width_changed)
(xg_create_frame_widgets, x_wm_set_size_hint)
(xg_event_is_for_menubar, update_frame_tool_bar):
resolve argument type mismatch.
fix compatibility.
2020-11-24 12:24:39 +11:00
Yuuki Harano
cbd28cddea
improve code readability.
...
* src/gtkutil.c (xg_create_frame_widgets):
2020-11-24 12:24:39 +11:00
Jeff Walsh
ef67659e98
Set screen/display dpi res to make broadway work as expected
...
* src/pgtkterm.c (pgtk_initialize_display_info)
(window_state_event, pgtk_term_init):
* src/gtkutil.c (xg_create_frame_widgets):
* src/pgtkterm.c (pgtk_initialize_display_info)
(window_state_event, pgtk_term_init):
* src/ftcrfont.c (ftcrfont_open):
2020-11-24 12:24:39 +11:00
Jeff Walsh
c9e6b4486b
Some work toward posframe on wayland
...
* src/pgtkterm.c (flip_cr_context, x_set_offset): update for new functionality
(pgtk_set_window_size): remove dead code
(x_set_parent_frame): cleanup trace code
(pgtk_cr_update_surface_desired_size): add comment
* src/pgtkmenu.c (Fmenu_or_popup_active_p):
* src/pgtkfns.c (pgtk_frame_parm_handlers, Fx_create_frame):
* src/gtkutil.c (xg_create_frame_widgets, x_wm_set_size_hint):
* src/gtkutil.c (xg_create_frame_widgets):
hacky GTK offsets taht will need better calculations
Get parent frame's editor widget allocation for the offset
Fix child-frame offsets for negative values
Add some function comments around the new double context handling
2020-11-24 12:24:39 +11:00
Jeff Walsh
e021e233b4
End Resize flickering by copying surface rather than just clearing
...
* src/pgtkterm.h (FRAME_NATIVE_WINDOW):
* src/pgtkterm.c (pgtk_set_window_size): cleanup traces
(x_draw_bar_cursor, pgtk_handle_draw, syms_of_pgtkterm):
2020-11-24 12:24:39 +11:00
Jeff Walsh
975289663f
Bring pgtk more inline with X11-cairo builds
...
* src/pgtkterm.h (struct pgtk_output):
* src/pgtkterm.c (FRAME_CR_ACTIVE_CONTEXT, flip_cr_context)
(x_draw_bar_cursor, pgtk_scroll_run, pgtk_update_end)
(pgtk_cr_draw_image, pgtk_flash, pgtk_handle_draw)
(pgtk_cr_update_surface_desired_size, pgtk_begin_cr_clip)
(pgtk_cr_destroy_frame_context):
* src/image.c (image_create_pattern_from_pixbuf):
- Don't create a context each time, just hold a reference
- Pull in a few cairo image changes from master
- Remove redundant code in pgtk_update_begin()
2020-11-24 12:24:39 +11:00
Yuuki Harano
992ef48300
update redisplay_interface.
...
* src/pgtkfns.c (Fx_create_frame, pgtk_default_font_parameter):
* src/pgtkterm.c (pgtk_redisplay_interface):
* src/pgtkterm.h:
2020-11-24 12:24:39 +11:00
Yuuki Harano
d2a29e883e
emacsclient should use both of DISPLAY and WAYLAND_DISPLAY.
...
* lisp/server.el (server-create-window-system-frame): error out when
not on a supported window
* lib-src/emacsclient.c (decode_options): handle WALAND_DISPLAY on PGTK
2020-11-24 12:24:31 +11:00
Andrea Corallo
7a8370ed0f
* Add SELECTOR parameter to `native-compile-async' (bug#44813)
...
* lisp/emacs-lisp/comp.el (native-compile-async-skip-p): New function
ripping out logic from `native--compile-async' and accounting for
SELECTOR.
(native--compile-async): Add SELECTOR parameter, make use of
`native-compile-async-skip-p' and move it with other private
functions.
(native-compile-async): Add SELECTOR parameter.
2020-11-23 20:26:00 +01:00
Andrea Corallo
6104ab0f35
* Rename two native compiler customize
...
* lisp/emacs-lisp/comp.el (comp-deferred-compilation-deny-list):
Rename from `comp-deferred-compilation-black-list'.
* lisp/emacs-lisp/comp.el (native--compile-async): Update to use
`comp-deferred-compilation-deny-list'.
(comp-bootstrap-deny-list): Rename.
(batch-native-compile): Update to use `comp-bootstrap-deny-list'.
2020-11-23 20:25:00 +01:00
Michael Albinus
e2acb8fef4
Adapt files-x-tests.el according to recent Tramp changes
...
* test/lisp/files-x-tests.el (tramp-connection-local-default-profile):
Don't declare.
(tramp-connection-local-default-shell-variables)
(tramp-connection-local-default-system-variables): Declare.
(files-x-test-with-connection-local-variables): Use them.
2020-11-23 19:54:09 +01:00
Glenn Morris
a19b29d22c
; Merge from origin/emacs-27
...
The following commits were skipped:
2b1cec5592 (origin/emacs-27) Sync latest SKK-JISYO.L
070c1f8cd7 Update publicsuffix.txt from upstream
2020-11-23 09:41:53 -08:00
Glenn Morris
593c262124
Merge from origin/emacs-27
...
3ceee39819 Fix Bug#44481
2020-11-23 09:41:53 -08:00
Glenn Morris
3401251744
; Merge from origin/emacs-27
...
The following commit was skipped:
a824888188 Minor Edebug manual keystroke clarifications
2020-11-23 09:41:53 -08:00
Glenn Morris
be17ee78c6
Merge from origin/emacs-27
...
86cbc9d216 Make ignoring modifiers on IME input optional
32b97bb9e0 Ignore modifiers when processing WM_IME_CHAR messages
f641ef1a07 Improve documentation of 'font-spec'
# Conflicts:
# etc/NEWS
2020-11-23 09:41:53 -08:00
Glenn Morris
a8c513b6f5
; Merge from origin/emacs-27
...
The following commit was skipped:
9d02e6c5ff Further doc fixes for dotimes about RESULT
2020-11-23 09:41:53 -08:00
Glenn Morris
a228b9dd56
Merge from origin/emacs-27
...
e66502fec1 ; * doc/misc/eshell.texi (Input/Output): Fix typo.
2020-11-23 09:41:53 -08:00
Glenn Morris
f583cae4cc
; Merge from origin/emacs-27
...
The following commit was skipped:
d5d3862c56 ; * INSTALL: Correct a recent change.
2020-11-23 09:41:53 -08:00
Alan Mackenzie
c3edaa5524
minibuffer code: restore original frame after using minibuffer-only frame, etc
...
* src/minibuf.c (read_minibuf): In the record_unwind_protect for the second
restore_window_configuration (separate minibuffer frame case) arrange for the
future switching back to the original frame by Fset_window_configuration.
2020-11-23 15:54:50 +00:00
Mattias Engdegård
d645b6f9ac
Fix 'See @xref{...}' (bug#44811)
...
Reported by 황병희.
* doc/lispref/edebug.texi (Printing in Edebug):
* doc/misc/ebrowse.texi (Marking Classes):
* doc/misc/gnus.texi (Ma Gnus):
* doc/misc/tramp.texi (Remote shell setup):
Don't stutter (@xref expands to 'See ...').
2020-11-23 15:42:08 +01:00
Stefan Kangas
613dd41769
Remove Emacs 19 and 20 compat code from table.el
...
* lisp/textmodes/table.el:
(table-recognize-cell, table--make-cell-map)
(*table--present-cell-popup-menu, table--update-cell)
(table--update-cell-widened, table--update-cell-heightened)
(table--cell-insert-char, table--warn-incompatibility): Remove
Emacs 19 and 20 compat code.
* lisp/textmodes/table.el (table-disable-menu)
(table--set-timer, table--get-last-command): Declare obsolete.
2020-11-23 13:46:21 +01:00
Stefan Kangas
2b1cec5592
Sync latest SKK-JISYO.L
...
* leim/SKK-DIC/SKK-JISYO.L: Sync to current upstream version.
(cherry picked from commit 6a5f970084 )
2020-11-23 13:11:16 +01:00
Stefan Kangas
070c1f8cd7
Update publicsuffix.txt from upstream
...
* etc/publicsuffix.txt: Update from
https://publicsuffix.org/list/public_suffix_list.dat
dated 2020-10-09 08:23:34 UTC.
(cherry picked from commit 5b13afab0a )
2020-11-23 13:10:14 +01:00
Stefan Kangas
781dd876e4
Use lexical-binding in most runtime leim lisp files
...
* lisp/leim/quail/arabic.el:
* lisp/leim/quail/croatian.el:
* lisp/leim/quail/cyril-jis.el:
* lisp/leim/quail/cyrillic.el:
* lisp/leim/quail/czech.el:
* lisp/leim/quail/ethiopic.el:
* lisp/leim/quail/georgian.el:
* lisp/leim/quail/greek.el:
* lisp/leim/quail/hanja-jis.el:
* lisp/leim/quail/hanja.el:
* lisp/leim/quail/hanja3.el:
* lisp/leim/quail/hebrew.el:
* lisp/leim/quail/ipa-praat.el:
* lisp/leim/quail/latin-alt.el:
* lisp/leim/quail/latin-post.el:
* lisp/leim/quail/latin-pre.el:
* lisp/leim/quail/persian.el:
* lisp/leim/quail/programmer-dvorak.el:
* lisp/leim/quail/py-punct.el:
* lisp/leim/quail/pypunct-b5.el:
* lisp/leim/quail/rfc1345.el:
* lisp/leim/quail/sami.el:
* lisp/leim/quail/sgml-input.el:
* lisp/leim/quail/slovak.el:
* lisp/leim/quail/symbol-ksc.el:
* lisp/leim/quail/tamil-dvorak.el:
* lisp/leim/quail/vntelex.el:
* lisp/leim/quail/vnvni.el:
* lisp/leim/quail/welsh.el: Use lexical-binding.
2020-11-23 12:12:58 +01:00
Eric Abrahamsen
8b7fa9e663
Small fixes to gnus-search output parsing of indexed engines
...
* lisp/gnus/gnus-search.el (gnus-search-indexed-parse-output): When
filtering for desired groups, accept any of [.\/] as potential segment
delimiters. Later on, filesystem path separators will be interpreted
as dots (".") when constructing group names. Also, make sure we use
`expand-file-name' on the prefix, and just use `string-remove-prefix'
to get rid of it.
2020-11-22 20:46:18 -08:00
Philipp Stephani
edd949a3eb
Unbreak compilation with CHECK_STRUCTS.
...
Commit 3963aea4f4 modified the ‘buffer’
structure, but didn’t adapt the hash.
* src/pdumper.c (dump_buffer): Update buffer hash.
2020-11-22 23:22:50 +01:00
Andrea Corallo
033e96055c
Merge remote-tracking branch 'savannah/master' into HEAD
2020-11-22 22:23:16 +01:00
Michael Albinus
9b6ad3107f
Replace /dev/null by remote null-device in Tramp.
...
* lisp/net/tramp-adb.el (tramp-adb-get-ls-command)
(tramp-adb-handle-set-file-times, tramp-adb-handle-process-file):
Use `tramp-get-remote-null-device'.
* lisp/net/tramp-compat.el (tramp-tramp-file-p): Declare.
(tramp-compat-null-device): New defalias.
* lisp/net/tramp-sh.el (tramp-methods) <telnet, nc>:
(tramp-perl-encode-with-module, tramp-perl-decode-with-module)
(tramp-perl-encode, tramp-perl-decode, tramp-awk-decode):
Use "%n" marker.
(tramp-do-directory-files-and-attributes-with-stat)
(tramp-sh-handle-file-name-all-completions)
(tramp-do-copy-or-rename-file-out-of-band)
(tramp-sh-handle-insert-directory, tramp-sh-handle-process-file)
(tramp-set-remote-path, tramp-open-connection-setup-interactive-shell)
(tramp-find-inline-encoding, tramp-send-command-and-check)
(tramp-get-remote-path, tramp-get-ls-command, tramp-get-ls-command-with)
(tramp-get-remote-awk, tramp-get-remote-hexdump, tramp-get-remote-od)
(tramp-get-env-with-u-option): Use `tramp-get-remote-null-device'.
(tramp-remote-coding-commands, tramp-call-local-coding-command):
Adapt docstring.
* lisp/net/tramp-smb.el (tramp-smb-conf): Use `null-device'.
(tramp-smb-handle-file-acl): Use `tramp-get-remote-null-device'.
* lisp/net/tramp.el (tramp-methods): Adapt docstring.
(tramp-get-remote-null-device): New defun.
(tramp-interrupt-process): Use it.
2020-11-22 19:56:23 +01:00
Stefan Kangas
9490f12c4d
Test for byte-compiler warning "variable lacks prefix"
...
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp--with-warning-test): New macro.
(bytecomp-warn-wrong-args, bytecomp-warn-wrong-args-subr):
Use above new macro.
(bytecomp-warn-variable-lacks-prefix): New test.
2020-11-22 07:19:11 +01:00
Yuuki Harano
806b7640c0
Before sleep, dispatch draw events.
...
* src/pgtkterm.c (pgtk_select): remove sigio signal
(pgtk_term_init): dispatch draw
2020-11-22 14:46:56 +11:00
Jeff Walsh
385e85c3dd
End Resize flickering by copying surface rather than just clearing
...
* src/pgtkterm.h (struct pgtk_output): store desired sizes
* src/pgtkterm.c (FRAME_CR_SURFACE_DESIRED_HEIGHT)
(FRAME_CR_SURFACE_DESIRED_WIDTH, size_allocate, configure_event)
(pgtk_cr_update_surface_desired_size): add "desired" size for handling
surface change
* src/gtkutil.c (xg_frame_resized, xg_create_frame_widgets): remove
surface destroy, turn off double buffer call
2020-11-22 14:46:56 +11:00
Yuuki Harano
b1cc62cac3
Add support for Jpeglib
...
configure.ac: enable jpeglib support for pgtk
jpeglib を使えるようにした。
imagemagick がうまく機能してるので気付かなかった…
2020-11-22 14:46:56 +11:00
Yuuki Harano
526f7277fc
Let gtk handle scaling.
...
* src/gtkutil.c (xg_get_scale):
2020-11-22 14:46:56 +11:00
Yuuki Harano
232c129fe4
implement pre-edit input method
...
* src/termhooks.h (enum event_kind): new pgtk value
* src/pgtkterm.h (struct pgtk_display_info):
* src/pgtkterm.c (x_free_frame_resources, pgtk_delete_terminal)
(pgtk_enqueue_string, pgtk_enqueue_preedit, key_press_event)
(focus_in_event, focus_out_event, pgtk_term_init): call pgtkim
* src/pgtkim.c: new file
(im_context_commit_cb, im_context_retrieve_surrounding_cb)
(make_color_string, im_context_preedit_changed_cb)
(im_context_preedit_end_cb, im_context_preedit_start_cb)
(pgtk_im_focus_in, pgtk_im_focus_out, pgtk_im_filter_keypress)
(pgtk_im_finish, Fpgtk_use_im_context, syms_of_pgtkim):
* src/pgtkfns.c (check_pgtk_display_info):
* src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
(keys_of_keyboard):
* src/emacs.c (main): add syms_of_pgtkim
* lisp/term/pgtk-win.el (pgtk-preedit-text): new defun
* configure.ac (XWIDGETS_OBJ): add pgtkim.o
input method 対応
preedit を overlay で表示するようにした。
preedit 表示後すぐに反映されなかったのを修正
この機能を ON/OFF できるようにした。
default off.
確定と同時に次の preedit が始まった場合に表示位置がおかしかったのを修正。
sample.
preedit をテキストで渡すようにした
2020-11-22 14:46:56 +11:00
Yuuki Harano
9e56fa9853
Support focus on click event
...
* src/pgtkterm.c (enter_notify_event, leave_notify_event)
(focus_in_event, focus_out_event): support focus on click
focus-on-click な環境に対応。
2020-11-22 14:46:56 +11:00
Yuuki Harano
9eb35f9996
experimental support of tab-bar.
...
* src/window.h: compile conditional
* src/pgtkterm.h: function decls
* src/pgtkterm.c (x_draw_image_relief, pgtk_create_terminal)
(motion_notify_event, button_event): tabbar support
* src/pgtkfns.c (x_set_tab_bar_lines, x_change_tab_bar_height)
(pgtk_frame_parm_handlers, Fx_create_frame, frame_geometry): tabbar support
余計なイベントが生成されていたのを修正。
2020-11-22 14:46:56 +11:00
Yuuki Harano
bc35a1e1d5
Make multipdisplay work by limiting selection while enabed
...
* src/pgtkterm.c (pgtk_mouse_position):
* src/pgtkselect.c (pgtk_selection_usable): new function
(Fpgtk_own_selection_internal, Fpgtk_disown_selection_internal)
(Fpgtk_selection_exists_p, Fpgtk_selection_owner_p)
(Fpgtk_get_selection_internal): check usable selection
multi-display で落ちる理由を一つ潰した。
まだまだありそう。
multi-display 時は selection を使えないようにした。
2020-11-22 14:46:56 +11:00
Yuuki Harano
24d82638bc
Improve drawing efficency by refactoring code
...
* ../src/pgtkterm.c (fill_background, fill_background_by_face)
(x_draw_glyph_string_background, x_draw_glyph_string_bg_rect)
(x_draw_image_glyph_string, x_draw_stretch_glyph_string)
(pgtk_clear_under_internal_border): Refator duplcate code
更に効率化。
2020-11-22 14:46:56 +11:00
Yuuki Harano
fd61a86ea5
improve some efficiency - simplify draws
...
* src/pgtkterm.h (struct pgtk_bitmap_record):
* src/pgtkterm.c (create_background_surface_by_face):
* src/image.c (image_create_pattern_from_pixbuf)
(image_create_bitmap_from_data, image_create_bitmap_from_file):
少し効率化。
2020-11-22 14:46:56 +11:00
Yuuki Harano
ae3bb14091
implement restacking and cleanup frame z order
...
src/pgtkfns.c:
(pgtk_frame_restack, Fpgtk_frame_restack, syms_of_pgtkfns):
pgtk-frame-restack を実装だけ。
ついでに、pgtk-frame-list-z-order は無意味なので削除した。
2020-11-22 14:46:56 +11:00
Yuuki Harano
fde74fa8b9
implement pgtk-frame-list-z-order same as frame-list.
...
* src/pgtkfns.c (Fpgtk_frame_list_z_order): return frame list as it's
the same
2020-11-22 14:46:55 +11:00