aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorYAMAMOTO Mitsuharu2008-03-29 00:48:15 +0000
committerYAMAMOTO Mitsuharu2008-03-29 00:48:15 +0000
commitf3aa14f9b6cd9c808010ed3b952ce1997e675b43 (patch)
tree6d172b96d36549b4d5130dfe700f6fd39ee2896d /src
parent153d35da2e1c3e56ca41cd24cb5c64ca60633bdb (diff)
downloademacs-f3aa14f9b6cd9c808010ed3b952ce1997e675b43.tar.gz
emacs-f3aa14f9b6cd9c808010ed3b952ce1997e675b43.zip
(update_tool_bar, redisplay_tool_bar, redisplay_window)
[USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog191
-rw-r--r--src/xdisp.c6
2 files changed, 194 insertions, 3 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index b0a940292e5..eec80f5b0de 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,194 @@
12008-03-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
3 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
4 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
5
6 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
7 [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
8 Use kCFAbsoluteTimeIntervalSince1970.
9 (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
10 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
11 Remove macros.
12 [MAC_OSX] (socket_callback): Do nothing.
13 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
14 ReceiveNextEvent.
15 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
16 socket_callback.
17 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
18
19 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
20 (mac_get_window_bounds): Move extern to macterm.h.
21 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
22 (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
23 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
24
25 * macgui.h: Replace WindowPtr with WindowRef.
26 (USE_MAC_TOOLBAR): New define.
27 (USE_CG_DRAWING): Don't require USE_ATSUI.
28
29 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
30 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
31 Replace ControlHandle with ControlRef.
32 [!TARGET_API_MAC_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
33 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
34 [TARGET_API_MAC_CARBON] (menu_target_item_handler): Don't call next
35 handler. Return immediately unless popup is activated.
36 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
37 Remove argument. Install handler to application.
38 (set_frame_menubar): Don't change deep_p.
39 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
40 FRAME_OUTER_TO_INNER_DIFF_Y.
41 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
42 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
43 [HAVE_DIALOGS]: New macros.
44 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
45 Use them.
46 (fill_menu) [TARGET_API_MAC_CARBON]: Use SetMenuItemHierarchicalMenu.
47 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
48 (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]: Put special
49 treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p in #if 0
50 as it is not compatible with y-or-n-p-with-timeout.
51 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
52 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
53 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
54 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
55 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
56 Run timers during dialog popup.
57 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
58 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: New variable.
59 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
60 event loop should be quit.
61 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Quit dialog event loop
62 if quit_dialog_event_loop is set.
63
64 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
65 [MAC_OSX] (install_service_handler): Rename from init_service_handler.
66 All callers changed. Return OSStatus value.
67 (Selection): New typedef. Use instead of ScrapRef.
68 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
69 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
70 (mac_clear_selection): Rename from clear_scrap.
71 (get_flavor_type_from_symbol): New argument SEL and subsume function of
72 scrap_has_target_type. All uses changed.
73 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
74 (mac_selection_has_target_p): New functions.
75 (mac_put_selection_value): Rename from put_scrap_string.
76 (mac_get_selection_value): Rename from get_scrap_string.
77 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
78 (put_scrap_private_timestamp, scrap_has_target_type)
79 (get_scrap_private_timestamp): Remove functions.
80 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
81 (x_own_selection, x_get_local_selection):
82 Use mac_valid_selection_value_p.
83 (x_own_selection): Don't use put_scrap_private_timestamp.
84 Record OWNERSHIP-INFO into Vselection_alist instead.
85 (x_get_local_selection): Don't check type if request is local.
86 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
87 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
88
89 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
90 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
91 Replace ControlHandle with ControlRef.
92 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
93 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
94 (mac_begin_cg_clip): New arg F. Call SetPortWindowPort. All callers
95 changed so as not to call SetPortWindowPort.
96 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
97 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
98 mac_draw_string_common.
99 (mac_draw_image_string_qd): Likewise.
100 (mac_draw_string_common): Use them. Add INLINE.
101 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
102 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
103 GetGlobalMouse.
104 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
105 and FRAME_OUTER_TO_INNER_DIFF_Y.
106 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
107 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
108 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
109 repositioning window to mac_handle_window_event.
110 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
111 saving window location to mac_handle_window_event
112 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
113 (install_menu_target_item_handler): Remove argument in extern.
114 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
115 Also accept command events.
116 (do_keystroke): New function created from XTread_socket.
117 (init_command_handler): Remove functions.
118 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
119 and save window location by kEventWindowShowing and kEventWindowHiding
120 handlers here. Don't call next handler for window state change and
121 focus events.
122 (mac_handle_keyboard_event) [TARGET_API_MAC_CARBON]: New function.
123 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
124 kEventWindowShowing and kEventWindowHiding events. Move installation
125 of mouse, font, text input and menu target item handlers to
126 install_application_handler.
127 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
128 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
129 New function.
130 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
131 Register it.
132 (XTread_socket) [TARGET_API_MAC_CARBON]:
133 Consolidate SendEventToEventTarget calls.
134 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
135 Move keyboard handler to mac_handle_keyboard_event.
136 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
137 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
138 init_command_handler. Call install_application_handler.
139 (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background to scroll
140 bar gap.
141 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
142 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
143 scroll bars on frame edge. Check fringe background extension.
144 Don't clear extended fringe background area.
145 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
146 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
147 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
148 [USE_MAC_TOOLBAR]: New macros.
149 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
150 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
151 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
152 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
153 [USE_MAC_TOOLBAR]: New functions.
154 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
155 manually if previous repositioning has failed.
156 (mac_handle_keyboard_event): Use precomputed event kind.
157 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
158 as tool bar item click. Handle mouse movement over tool bar items.
159 (frame_highlight, frame_unhighlight): Don't call
160 ActivateControl/DeactivateControl here.
161 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
162 frame-notice-user-settings is non-nil.
163 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
164 for kEventParamFMFontStyle.
165 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
166 mac_pass_command_to_system and mac_pass_control_to_system here.
167 (XTread_socket): Call ActivateControl/DeactivateControl here.
168 (XTread_socket) [TARGET_API_MAC_CARBON]:
169 Check mac_pass_command_to_system and mac_pass_control_to_system here.
170 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Don't use invisible
171 frame as parent window for repositioning.
172
173 * macterm.h (struct scroll_bar): Rename member control_handle_low
174 and control_handle_high to control_ref_low and control_ref_high.
175 All uses changed.
176 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
177 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
178 respectively. All uses changed.
179 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
180 (install_window_handler, remove_window_handler): Replace WindowPtr
181 with WindowRef in externs.
182 (mac_get_window_bounds): Move extern from macfns.c.
183 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
184 (struct mac_output) [USE_MAC_TOOLBAR]: New member toolbar_win_gravity.
185 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
186 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
187 Add externs.
188
189 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
190 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
191
12008-03-28 Jason Rumney <jasonr@gnu.org> 1922008-03-28 Jason Rumney <jasonr@gnu.org>
2 193
3 * image.c (pbm_load): Allow color values up to 65535. 194 * image.c (pbm_load): Allow color values up to 65535.
diff --git a/src/xdisp.c b/src/xdisp.c
index f362f2c352f..7a64b9743da 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -9444,7 +9444,7 @@ update_tool_bar (f, save_match_data)
9444 struct frame *f; 9444 struct frame *f;
9445 int save_match_data; 9445 int save_match_data;
9446{ 9446{
9447#ifdef USE_GTK 9447#if defined (USE_GTK) || USE_MAC_TOOLBAR
9448 int do_update = FRAME_EXTERNAL_TOOL_BAR (f); 9448 int do_update = FRAME_EXTERNAL_TOOL_BAR (f);
9449#else 9449#else
9450 int do_update = WINDOWP (f->tool_bar_window) 9450 int do_update = WINDOWP (f->tool_bar_window)
@@ -9910,7 +9910,7 @@ redisplay_tool_bar (f)
9910 struct it it; 9910 struct it it;
9911 struct glyph_row *row; 9911 struct glyph_row *row;
9912 9912
9913#ifdef USE_GTK 9913#if defined (USE_GTK) || USE_MAC_TOOLBAR
9914 if (FRAME_EXTERNAL_TOOL_BAR (f)) 9914 if (FRAME_EXTERNAL_TOOL_BAR (f))
9915 update_frame_tool_bar (f); 9915 update_frame_tool_bar (f);
9916 return 0; 9916 return 0;
@@ -13546,7 +13546,7 @@ redisplay_window (window, just_this_one_p)
13546 display_menu_bar (w); 13546 display_menu_bar (w);
13547 13547
13548#ifdef HAVE_WINDOW_SYSTEM 13548#ifdef HAVE_WINDOW_SYSTEM
13549#ifdef USE_GTK 13549#if defined (USE_GTK) || USE_MAC_TOOLBAR
13550 redisplay_tool_bar_p = FRAME_EXTERNAL_TOOL_BAR (f); 13550 redisplay_tool_bar_p = FRAME_EXTERNAL_TOOL_BAR (f);
13551#else 13551#else
13552 redisplay_tool_bar_p = WINDOWP (f->tool_bar_window) 13552 redisplay_tool_bar_p = WINDOWP (f->tool_bar_window)