1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-08 16:52:40 -08:00
Commit graph

116 commits

Author SHA1 Message Date
Jan Djärv
1b0fc0ce61 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
non-static.
2005-06-06 20:23:56 +00:00
YAMAMOTO Mitsuharu
b0241f69c9 (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
resolution fields for scalable fonts to 0.
2005-06-01 08:20:50 +00:00
YAMAMOTO Mitsuharu
e6bdfa32e4 [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
Rename from get_control_part_bound.  All callers changed.
(x_scroll_bar_clear): New function.
(x_clear_frame): Use it.
(XTset_vertical_scroll_bar): Don't call Draw1Control.
(x_scroll_bar_handle_click): Change type of second argument from
int to ControlPartCode.
(check_alarm): Remove declaration.
(XTread_Socket) [!TARGET_API_MAC_CARBON]: Don't call it.
(XTread_Socket): Use ControlPartCode instead of SInt16.
2005-05-13 08:42:38 +00:00
YAMAMOTO Mitsuharu
5b8b73ff90 (toolkit_scroll_bar_interaction): Remove unused
variable.
(mac_handle_tool_bar_click): Remove unused function and
declaration.
[USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
(install_scroll_bar_timer, set_scroll_bar_timer)
(control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
(get_control_part_bound, x_scroll_bar_handle_press)
(x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
(x_set_toolkit_scroll_bar_thumb): New functions and declarations.
[USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
(scroll_bar_timer_event_posted_p): New variables.
[USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
(SCROLL_BAR_CONTINUOUS_DELAY): New macros.
(x_scroll_bar_create): Set control reference with NewControl.
(x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]: Initialize
track_top and track_height to nil.
(x_scroll_bar_set_handle, x_scroll_bar_note_movement): Put
functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
(XTset_vertical_scroll_bar): Don't make space between scroll bar
and associated window.
(XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
from window config.
(XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: Set
track_top and track_height to nil when scroll bar size is changed.
Recalculate them if they are nil.
(XTread_socket) [MAC_OSX]: Use control kind to determine if the
clicked control is a scroll bar.
(XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
event handler functions.  Don't add modifiers to scroll bar click
events.  Call scroll bar release handler when window is
deactivated.
(mac_initialize): Remove unused code for X toolkit.
(syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]: Initialize
Vx_toolkit_scroll_bars to nil.
2005-05-06 08:03:24 +00:00
YAMAMOTO Mitsuharu
1c05c15b46 (handling_window_update, terminate_flag): Remove variables.
(do_window_update, do_ae_quit_application, XTread_socket): Don't
use them.
(WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
[USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
(init_service_handler): Move to macselect.c.  Remove declarations.
[USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
(Qapplication, Qabout): New variables.
(syms_of_mac): Initialize them.
[USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
(Qperform): New variables.
(syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
(do_get_menus) [!TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
(do_menu_choice): Unhighlight menu bar also when menu_id is 0.
(mac_store_application_menu_event, init_menu_bar): New functions.
[USE_CARBON_EVENTS] (mac_handle_command_event)
(init_command_handler): New functions.
(mac_handle_window_event): Return noErr on window update event.
(do_ae_quit_application): Call mac_store_application_menu_event.
(mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
and init_menu_bar.
2005-04-24 06:06:39 +00:00
YAMAMOTO Mitsuharu
94d0e8065e (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
(syms_of_mac): Don't initialize them.
(Vmac_charset_info_alist): New variable.
(syms_of_mac): Defvar it.
(create_text_encoding_info_alist): New function.
(decode_mac_font_name, mac_to_x_fontname)
(x_font_name_to_mac_font_name, init_font_name_table): Don't hard
code the correspondence among XLFD charsets, Mac script codes, and
Emacs coding systems.  Use Vmac_charset_info_alist and result of
create_text_encoding_info_alist instead.
(init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
routines also on Mac OS Classic.
(init_font_name_table) [!TARGET_API_MAC_CARBON]: Use
add_font_name_table_entry.
(mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
specified.  Derive unspecified scalable fields from specified one.
(x_list_fonts): Consider Valternate_fontname_alist.
(kDefaultFontSize): Change value from 9 to 12.
(XLoadQueryFont): Get decoded font family, font face, and charset
from x_font_name_to_mac_font_name.  Set full name of loaded font.
(mac_unload_font): Free `full_name' member.
(x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
NULL.  Copy full_name member of struct MacFontStruct to that of
struct font_info.
2005-04-19 12:04:09 +00:00
YAMAMOTO Mitsuharu
2f29e60d2a (XTread_socket): Don't beep on keyboard input even if no frame is
visible.
2005-04-18 07:44:54 +00:00
YAMAMOTO Mitsuharu
7ca7ccd511 (x_autoselect_window_p): Remove variable.
(last_window): New variable.
(XTreassert_line_highlight, x_change_line_highlight): Remove
declarations.
(mac_focus_changed, x_detect_focus_change): New functions and
declarations.
(XTextExtents16, front_emacs_window): Remove function.
(mac_focus_frame): New function.
(XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
(mac_check_for_quit_char): Use it instead of front_emacs_window.
(x_scroll_bar_report_motion): Obtain window from control owner.
(x_make_frame_invisible): Set window manager size hint.
(do_mouse_moved): Remove function.
(XTread_socket): Move its contents here.  Generate select-window
event on mouse movement if needed.  Use x_detect_focus_change on
activate/deactivate events.  Don't deiconify frame or invalidate
window rectangle when dnd items are dropped.  Don't
activate/deactivate root control.
(frame_highlight, frame_unhighlight): Activate/deactivate root
control here.
(syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
2005-04-16 03:05:15 +00:00
YAMAMOTO Mitsuharu
0ed0babf88 [!TARGET_API_MAC_CARBON]: Don't include TextEncodingConverter.h. 2005-04-14 09:26:22 +00:00
Steven Tamm
0614c57585 macterm.c (syms_of_macterm): Removing redundant definition of
mac-pass-control-to-system
2005-04-14 04:22:48 +00:00
YAMAMOTO Mitsuharu
778f445523 (mac_keyboard_text_encoding, current_mac_keyboard_text_encoding):
Remove variables.
(XTread_socket): Store language-change event if keyboard script change
is detected.  Don't convert input to `mac_keyboard_text_encoding'.
(syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
2005-04-12 10:26:08 +00:00
YAMAMOTO Mitsuharu
b298e813e5 (x_list_fonts): FONT-LIST-CACHE is now cadr part of name_list_element.
(mac_make_rdb): Create resource database from preferences and argument
string.
(mac_term_init): Save resource database to cddr part of
name_list_element.
2005-03-16 08:08:06 +00:00
YAMAMOTO Mitsuharu
b69efa2333 (activate_scroll_bars, deactivate_scroll_bars): Remove functions and
declarations.
(mac_set_colors): Take argument for saving background color.  All
callers changed.
(XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
(mac_draw_rectangle, mac_draw_string_common): Save and Restore
background color.
(x_update_end, mac_do_track_drag): Don't reset background color.
(mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]: Use
SetThemeCursor.
(x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress indicator
control to the upper-right corner of the window.
(arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
(do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
(do_window_update): Update controls after updating content area.
(mac_handle_window_event): Remove unused extern.
(XTread_socket): Check both control handle and control part code to
determine whether a scroll bar is clicked.  Activate/deactivate root
control instead of contained scroll bar controls.
(make_mac_terminal_frame): Use ThemeCursor constants.
2005-03-16 03:29:13 +00:00
YAMAMOTO Mitsuharu
2d88aa31a3 (keycode_to_xkeysym_table): Change mapping so that it coincide with
that in Apple X11 except `clear', `enter' on laptops, and fn + `enter'
on laptops.
2005-03-15 07:47:25 +00:00
YAMAMOTO Mitsuharu
25c9622b81 [TARGET_API_MAC_CARBON && !MAC_OSX]: Define USE_CARBON_EVENTS to 1.
[__MRC__ && TARGET_API_MAC_CARBON]: Don't declare `qd'.
(x_free_frame_resources): Call remove_window_handler for non-tooltip
windows.
[TARGET_API_MAC_CARBON]: Don't include headers that are included via
Carbon.h.
[TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
(mac_do_receive_dragUPP): New variables.
(mac_handle_service_event, init_service_handler): Put declarations and
definitions in #ifdef MAC_OSX.
(install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
drag-and-drop handler functions and register them.
(remove_window_handler): New function.
(do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]: Use
fsspec_to_posix_pathname.
(main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
(XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
[MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]: Set
default cursors.
(mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
init_service_handler or init_quit_char_handler.
(mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
2005-03-04 11:11:16 +00:00
YAMAMOTO Mitsuharu
e9859e269b (mac_draw_string_common, x_make_frame_visible): Use
MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by the compiling OS
version.
2005-02-03 11:58:25 +00:00
Jesper Harder
7bf72fa6f6 (syms_of_macterm) <mac-reverse-ctrl-meta>: Fix docstring indentation.
(syms_of_macterm) <mac-emulate-three-button-mouse>: do.
2005-01-30 16:39:16 +00:00
Kim F. Storm
4d91ce74c7 (x_draw_hollow_cursor): Use get_phys_cursor_geometry. 2005-01-27 22:33:39 +00:00
Steven Tamm
8c2da0fa6c * dispextern.h (struct glyph_string): New members clip_head and
clip_tail.
* xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
	region to the area between clip_head and clip_tail.
	(draw_glyphs): Record the area that need to be actually redrawn to
	the new variables clip_head and clip_tail when there are
	overhangs.  Set values of these variables to the corresponding
	members in struct glyph_string.  Refine x coordinates for
* macgui.h (STORE_XCHARSETSTRUCT): New macro.
* macterm.c (mac_compute_glyph_string_overhangs): Implement with
	QDTextBounds.
	(x_draw_glyph_string): Don't fill the background of the successor
	of a glyph with a right overhang if the successor will draw a
	cursor.
	(XLoadQueryFont): Obtain font metrics using QDTextBounds.
	(x_redisplay_interface): Add entry for
	compute_glyph_string_overhangs.
2005-01-24 17:59:36 +00:00
Kim F. Storm
82ead4b142 (x_draw_glyph_string_box): Fix last_x for full width rows. 2005-01-20 15:23:22 +00:00
Kim F. Storm
e24531b776 (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix. 2005-01-16 19:18:31 +00:00
Steven Tamm
5ddd7664e9 * macterm.c (mac_to_x_fontname): Removed spurious argument. 2005-01-16 17:52:09 +00:00
Andreas Schwab
fc2ff44b47 (mac_draw_string_common): Fix compilation on OSX 10.1. 2005-01-16 16:18:12 +00:00
Steven Tamm
0530c67988 Changed name from mac-use-core-graphics to mac-allow-anti-aliasing 2005-01-16 00:39:04 +00:00
Steven Tamm
743d069681 * macterm.c (Vmac_use_core_graphics): defined
(syms_of_macterm): Added mac-use-core-graphics
	(mac_draw_string_common): Use core graphics text rendering if
	mac-use-core-graphics is enabled.
2005-01-16 00:31:53 +00:00
Steven Tamm
9cdd488421 * macfns.c (x_set_foreground_color, x_set_background_color): Sync
with xfns.c.
	(mac_window, x_create_tip_frame): Use XSetWindowBackground.
* macterm.c (XSetBackground, XSetWindowBackground): New functions.
* macterm.h (XSetBackground, XSetWindowBackground): Add externs.
2005-01-16 00:10:18 +00:00
Steven Tamm
a6fffcdcb7 * macterm.c (XLoadQueryFont): Correctly handle 0 size
font widths that are returned from some Japanese fonts.
2005-01-07 07:11:24 +00:00
Steven Tamm
e0e76ab914 * macfns.c: Include sys/param.h.
[TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
	and function.
	[TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
	of filename string.  Set event callback function when creating
	dialog boxes.  Add code conversions for filenames.  Don't dispose
	apple event descriptor record if failed to create it.
* macterm.c: Include sys/param.h.
	[USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
	kEventWindowUpdate.
	(install_window_handler) [USE_CARBON_EVENTS]: Register it.
	(do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
	of FSSpec from apple event descriptor record.
	(do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
	size of filename string.
	[TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
	[TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
	file dialog is in action.
	[TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.  Reject
	only when there are no filename items.  Set background color
	before (un)highlighting the window below the dragged items.
	(XTread_socket) [!USE_CARBON_EVENTS]: Don't call do_window_update.
2005-01-06 02:53:39 +00:00
Steven Tamm
e169f939a5 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
(x_font_min_bounds, XLoadQueryFont): Use the correct font width
	metrics for max and min bounds.
	(x_load_font): Correctly calculate average font width metrics.
2005-01-03 16:49:35 +00:00
Steven Tamm
456e761bec * macterm.c (SelectionRange): Add Xcode position apple event struct.
(do_ae_open_documents): Handle Xcode-style file position open
	events.
* term/mac-win.el (mac-drag-n-drop): Handle drag-n-drop events
	that include line numbers.
2004-12-30 02:04:31 +00:00
Steven Tamm
30c92fab79 * term/mac-win.el: Require x-dnd.
(mac-drag-n-drop): Sync with W32 version.  Use x-dnd.el functions.
* macfns.c (install_window_handler): Modify extern to return OSErr
	value.
	(mac_window): Handle return value of install_window_handler.
* macterm.c (reflect_byte): Remove function.
	(mac_create_bitmap_from_bitmap_data): Don't call it.  Lookup table
	instead.
	(mac_do_font_lists): Simplify calculation of the longest
	nonspecial string.
	[TARGET_API_MAC_CARBON] (init_mac_drag_n_drop): Remove function
	and declaration.
	(mac_initialize) [TARGET_API_MAC_CARBON]: Don't call it.
	[TARGET_API_MAC_CARBON] (mac_do_track_drag): New function and
	declaration.
	(install_window_handler): Return OSErr value.
	(install_window_handler) [TARGET_API_MAC_CARBON]: Register
	handlers for tracking/receiving drag-and-drop items.
	(do_ae_open_documents): Generate unibyte strings for filenames.
	[TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.  Reject
	only non-filename items.  Set event modifiers.  Set return value.
2004-12-29 17:25:02 +00:00
Steven Tamm
b15325b22a * dispextern.h: Change HAVE_CARBON to MAC_OS.
(struct glyph_string): Likewise.
* emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
	mac_initialize.
* fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
	Change TARGET_API_MAC_CARBON to HAVE_CARBON.
* fns.c (vector): Change MAC_OSX to MAC_OS.
* frame.c (x_set_frame_parameters, x_report_frame_params)
	(x_set_fullscreen): Remove #ifndef HAVE_CARBON.
	(x_set_border_width, Vdefault_frame_scroll_bars): Change
	HAVE_CARBON to MAC_OS.
* image.c [MAC_OS]: Include sys/stat.h.
	[MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
	QuickTimeComponents.h.
* mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
	[!MAC_OSX] (select): Use mac_wait_next_event.
	[!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to
	Vexec_suffixes.
	[!MAC_OSX] (select, run_mac_command): Change `#ifdef
	TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
	(mac_clear_font_name_table): Add extern.
	(Fmac_clear_font_name_table): New defun.
	(syms_of_mac): Defsubr it.
	[MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
	[MAC_OSX] (select_and_poll_event): New function.
	[MAC_OSX] (sys_select): Use it.
	[MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
	[MAC_OSX && SELECT_USE_CFSOCKET]
	(SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
	[MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
	RunLoop for simultaneously monitoring two kinds of inputs, window
	events and process outputs, without periodically polling.
* macfns.c (mac_initialized): Remove extern.
	(stricmp): Put in #if 0.  All callers changed to use xstricmp in
	xfaces.c.
	(strnicmp): Decrement `n' at the end of each loop, not the
	beginning.
	(check_mac): Use the term "Mac native windows" instead of "Mac
	OS".
	(check_x_display_info, x_display_info_for_name): Sync with xfns.c.
	(mac_get_rdb_resource): New function (from w32reg.c).
	(x_get_string_resource): Use it.
	(install_window_handler): Add extern.
	(mac_window): New function.
	(Fx_create_frame): Use it instead of make_mac_frame.  Set
	parameter for Qfullscreen.  Call x_wm_set_size_hint.
	(Fx_open_connection, Fx_close_connection): New defuns.
	(syms_of_macfns): Defsubr them.
	(x_create_tip_frame) [TARGET_API_MAC_CARBON]: Add
	kWindowNoUpdatesAttribute to the window attribute.
	(x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
	(x_create_tip_frame): Don't call ShowWindow.
	(Fx_show_tip): Call ShowWindow.
	(Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
	TARGET_API_MAC_CARBON'.
	(mac_frame_parm_handlers): Set handlers for Qfullscreen.
	(syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
* macgui.h [!MAC_OSX]: Don't include Controls.h.  Include
	Windows.h.
	(Window): Typedef to WindowPtr and move outside `#if
	TARGET_API_MAC_CARBON'.
	(XSizeHints): New struct.
* macterm.c (x_update_begin, x_update_end)
	[TARGET_API_MAC_CARBON]: Disable screen updates during update of a
	frame.
	(x_draw_glyph_string_background, x_draw_glyph_string_foreground)
	[MAC_OS8]: Use XDrawImageString/XDrawImageString16.
	(construct_mouse_click): Put in #if 0.
	(x_check_fullscreen, x_check_fullscreen_move): Remove decls.
	(x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
	TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
	(activate_scroll_bars, deactivate_scroll_bars)
	[!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
	(x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
	if the position is neither user-specified nor program-specified.
	(x_free_frame_resources): Free size_hints.
	(x_wm_set_size_hint): Allocate size_hints if needed.  Set
	size_hints.
	(mac_clear_font_name_table): New function.
	(mac_do_list_fonts): Initialize font_name_table if needed.
	(x_list_fonts): Don't initialize font_name_table.  Add BLOCK_INPUT
	around mac_do_list_fonts.
	(mac_unload_font): New function.
	(x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
	(init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
	and definitions with #if TARGET_API_MAC_CARBON.
	[USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
	(install_window_handler): Add decl.
	(do_window_update): Add BeginUpdate/EndUpdate for the tooltip
	window.  Use UpdateControls.  Get the rectangle that should be
	updated and restrict the target of expose_frame to it.
	(do_grow_window): Set minimum height/width according to
	size_hints.
	(do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
	(do_zoom_window): Don't use x_set_window_size.
	[USE_CARBON_EVENTS] (mac_handle_window_event): New function.
	(install_window_handler): New function.
	[!USE_CARBON_EVENTS] (mouse_region): New variable.
	[!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
	(XTread_socket) [USE_CARBON_EVENTS]: Move call to
	GetEventDispatcherTarget inside BLOCK_INPUT.
	(XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
	Update mouse_region when mouse is moved.
	(make_mac_frame): Remove.
	(make_mac_terminal_frame): Put in #ifdef MAC_OS8.  Initialize
	mouse pointer shapes.  Change values of f->left_pos and
	f->top_pos.  Don't use make_mac_frame.  Use NewCWindow.  Don't
	call ShowWindow.
	(mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
	Vinvocation_name and Vsystem_name.
	(mac_make_rdb): New function (from w32term.c).
	(mac_term_init): Use it.  Add BLOCK_INPUT.  Error if display has
	already been opened.  Don't pass argument to
	mac_initialize_display_info.  Don't set dpyinfo->height/width.
	Add entries to x_display_list and x_display_name_list.
	(x_delete_display): New function.
	(mac_initialize): Don't call mac_initialize_display_info.
	(syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
* macterm.h (check_mac): Add extern.
	(struct mac_output): New member size_hints.
	(FRAME_SIZE_HINTS): New macro.
	(mac_unload_font): Add extern.
* xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
* xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.
2004-12-27 17:27:30 +00:00
Steven Tamm
68c690279c (mac_do_list_fonts): Fix memory leak 2004-12-20 16:46:17 +00:00
Steven Tamm
fbe6152fad * term/mac-win.el (encoding-vector, mac-font-encoder-list)
(ccl-encode-mac-centraleurroman-font): Use centraleurroman
instead of centraleuropean as the name
* macterm.c (endif, x_font_name_to_mac_font_name): Use
maccentraleurroman instead of maccentraleuropean
(mac_c_string_match, mac_do_list_fonts): Speed up font search by
quickly finding a specific font without needing regexps.
2004-12-18 16:36:31 +00:00
Steven Tamm
fc7a70ccda * keyboard.c: Don't undef SIGIO
* s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
* Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
       (macfns.o): Don't depend on ccl.h.
* macfns.c (mac_frame_parm_handlers): Set handlers for
Qleft_fringe and Qright_fringe.
* macterm.c (mac_fill_rectangle_to_pixmap)
(mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
(mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
Put in #if 0.
(mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
(x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
(XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
(x_draw_glyph_string_background, x_draw_glyph_string_foreground)
[!MAC_OS8]: Added ifdef'd out code for os8.  Don't use
XDrawImageString.  Always draw background and foreground separately.
(x_draw_image_foreground): Use clipping instead of computing the
intersection rectangle.
(x_draw_image_glyph_string): Don't draw an image with mask to a
pixmap.
(x_redisplay_interface): Set flush_display_optional member to 0.
(XTread_socket): Correctly reset the TEConverter
object.
2004-11-30 05:57:27 +00:00
Kim F. Storm
08f6668226 (x_clip_to_row): Add area arg. Callers changed.
(x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
2004-11-21 15:49:12 +00:00
John Wiegley
a36f168006 2004-10-28 Will <will@glozer.net>
* macterm.c: allow user to assign key modifiers to the Mac Option
	key via a 'mac-option-modifier' variable.
2004-10-29 00:00:43 +00:00
Steven Tamm
c3f4c690b6 macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow
(x_lower_frame): Add BLOCK_INPUT around SendBehind
  (make_mac_frame): Add BLOCK_INPUT around the making of a
  terminal frame
  (mac_initialize): Add BLOCK_INPUT around carbon initialization
macgui.h (mktime): Use emacs_mktime
macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
  Make a cancel file-open dialog be like C-g.
mac.c (mktime): Use emacs_mktime
  (Fdo_applescript): Add BLOCK_INPUT around do_applescript
  (Fmac_paste_function): Add better error handling for carbon
  cut/paste
2004-10-10 16:56:21 +00:00
Kim F. Storm
f94a2622a0 (x_update_window_end): Fix flicker on vertical line between
windows.  Update vertical line after drawing window fringes, but
only if actually drawing any bitmaps--or there is no fringe.
2004-10-07 21:59:39 +00:00
Steven Tamm
bf06c82f4b macfns.c (mac_get_window_bounds): Add extern.
(x_real_positions): Use mac_get_window_bounds.

macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
xmenu.c (YAILOM).

macterm.c [!MAC_OSX]: Include Windows.h.
(front_emacs_window): Rename from mac_front_window.  All uses
changed.  Return the frontmost non-tooltip emacs window.
(mac_get_window_bounds): New function.
(x_calc_absolute_position): Use the difference of width and height
between the inner and outer window.
(x_set_offset): Specify window position by the coordinae of the
outer window.  Adjust the position if the title bar is completely
outside the screen.
(app_is_suspended, app_sleep_time): Remove unused variables.
(do_app_resume, do_app_suspend): Remove their contents because
window-activate/deactivate events will do the job.
(do_zoom_window): Remove unused variables.  Make compliant to the
standard way of zooming.  Set f->left_pos and f->top_pos.
(XTread_socket): Don't use argument `expected'.  Don't use
FrontWindow to determine the clicked window.  Exclude unprocessed
mouseUp cases in the early stage.  Add parentheses to fix operator
precedence.
(XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
2004-10-06 15:38:53 +00:00
Steven Tamm
404e4b841e (x_update_end): Move SetPortWindowPort to inside
BLOCK_INPUT.
(x_set_offset): Use FRAME_MAC_WINDOW.
2004-09-02 17:00:55 +00:00
Steven Tamm
e082ac9deb Fixes for Ctrl-G support on carbon, replacing old timeout based polling
with alarm based polling.
mac.c (sys_select): Redo sys_select to use alarm-based
polling instead of 1 sec timeouts (like solaris).
macterm.c (x_make_frame_visible): Comment in polling on
frame creation.
keyboard.c: Undef SIGIO on Carbon
atimer.c (alarm_signal_handler): Call alarm handlers after
scheduling.
eval.c (Feval): Remove quit_char test
process.c (wait_reading_process_input): Remove clearing
stdin for select call on process input
2004-07-19 04:42:43 +00:00
Jan Djärv
2bac9bb1c6 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
instead of CGMainDisplayID (only in OSX 10.2 and later).
2004-07-05 07:01:02 +00:00
Steven Tamm
59feca74b2 macterm.c (do_window_activate, do_window_deactivate): Remove.
(XTread_socket): Fix activation/focus problems by only handling
emacs windows and passing mouse events to the event chain regardless.
2004-06-29 06:39:03 +00:00
Steven Tamm
c61278bbde macterm.c (mac_get_emulated_btn)
(mac_event_to_emacs_modifiers): Fix emulated mouse button
support to correctly mask out modifiers.
2004-06-29 06:23:08 +00:00
Steven Tamm
e439b9255d macterm.c (XTread_socket): Correctly set the frame position
after the window is moved.
2004-06-28 16:20:41 +00:00
Jan Djärv
f303762dc1 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
* macterm.c (mac_initialize_display_info): Initialize n_planes correctly
on Mac OSX.
2004-06-17 13:04:25 +00:00
Steven Tamm
50bf76732b Support Tooltips with the Carbon emacs port.
Some code cleanup using helper macros.
2004-05-30 00:18:41 +00:00
Steven Tamm
a433994a5a Various fixes to support USE_LSB_TAG with carbon emacs. Mostly fixing
prototypes and confusions between pointers and lisp objects
2004-05-14 03:07:12 +00:00
Steven Tamm
fe97e8dfe1 macterm.c (x_flush, XTframe_up_to_date): use FRAME_MAC_P
instead of FRAME_X_P
2004-05-12 01:40:05 +00:00