aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/macterm.c342
1 files changed, 272 insertions, 70 deletions
diff --git a/src/macterm.c b/src/macterm.c
index 535d433bb37..5382f7f3160 100644
--- a/src/macterm.c
+++ b/src/macterm.c
@@ -4097,6 +4097,11 @@ x_new_focus_frame (dpyinfo, frame)
4097 pending_autoraise_frame = dpyinfo->x_focus_frame; 4097 pending_autoraise_frame = dpyinfo->x_focus_frame;
4098 else 4098 else
4099 pending_autoraise_frame = 0; 4099 pending_autoraise_frame = 0;
4100
4101#if USE_MAC_FONT_PANEL
4102 if (frame)
4103 mac_set_font_info_for_selection (frame);
4104#endif
4100 } 4105 }
4101 4106
4102 x_frame_rehighlight (dpyinfo); 4107 x_frame_rehighlight (dpyinfo);
@@ -6867,6 +6872,8 @@ static Lisp_Object fm_font_family_alist;
6867#if USE_ATSUI 6872#if USE_ATSUI
6868/* Hash table linking font family names to ATSU font IDs. */ 6873/* Hash table linking font family names to ATSU font IDs. */
6869static Lisp_Object atsu_font_id_hash; 6874static Lisp_Object atsu_font_id_hash;
6875static Lisp_Object Vmac_atsu_font_table;
6876extern Lisp_Object QCfamily, QCweight, QCslant, Qnormal, Qbold, Qitalic;
6870#endif 6877#endif
6871 6878
6872/* Alist linking character set strings to Mac text encoding and Emacs 6879/* Alist linking character set strings to Mac text encoding and Emacs
@@ -7162,8 +7169,21 @@ init_font_name_table ()
7162 NULL, NULL); 7169 NULL, NULL);
7163 if (err == noErr) 7170 if (err == noErr)
7164 { 7171 {
7172 FMFontFamily ff;
7173 FMFontStyle style = normal;
7174
7165 decode_mac_font_name (name, name_len + 1, Qnil); 7175 decode_mac_font_name (name, name_len + 1, Qnil);
7166 family = make_unibyte_string (name, name_len); 7176 family = make_unibyte_string (name, name_len);
7177 FMGetFontFamilyInstanceFromFont (font_ids[i], &ff, &style);
7178 Fputhash (make_unibyte_string ((char *)(font_ids + i),
7179 sizeof (ATSUFontID)),
7180 Fcons (QCfamily,
7181 list5 (family,
7182 QCweight,
7183 style & bold ? Qbold : Qnormal,
7184 QCslant,
7185 style & italic ? Qitalic : Qnormal)),
7186 Vmac_atsu_font_table);
7167 if (*name != '.' 7187 if (*name != '.'
7168 && hash_lookup (h, family, &hash_code) < 0) 7188 && hash_lookup (h, family, &hash_code) < 0)
7169 { 7189 {
@@ -7709,6 +7729,7 @@ XLoadQueryFont (Display *dpy, char *fontname)
7709 ATSUFontFeatureSelector selectors[] = {kAllTypeFeaturesOffSelector, 7729 ATSUFontFeatureSelector selectors[] = {kAllTypeFeaturesOffSelector,
7710 kDecomposeDiacriticsSelector}; 7730 kDecomposeDiacriticsSelector};
7711 Lisp_Object font_id_cons; 7731 Lisp_Object font_id_cons;
7732 FMFontStyle style;
7712 7733
7713 font_id_cons = Fgethash (make_unibyte_string (family, strlen (family)), 7734 font_id_cons = Fgethash (make_unibyte_string (family, strlen (family)),
7714 atsu_font_id_hash, Qnil); 7735 atsu_font_id_hash, Qnil);
@@ -7727,7 +7748,11 @@ XLoadQueryFont (Display *dpy, char *fontname)
7727 return NULL; 7748 return NULL;
7728 err = ATSUSetAttributes (mac_style, sizeof (tags) / sizeof (tags[0]), 7749 err = ATSUSetAttributes (mac_style, sizeof (tags) / sizeof (tags[0]),
7729 tags, sizes, values); 7750 tags, sizes, values);
7730 fontnum = -1; 7751 if (err != noErr)
7752 return NULL;
7753 err = FMGetFontFamilyInstanceFromFont (font_id, &fontnum, &style);
7754 if (err != noErr)
7755 fontnum = -1;
7731 scriptcode = kTextEncodingMacUnicode; 7756 scriptcode = kTextEncodingMacUnicode;
7732 } 7757 }
7733 else 7758 else
@@ -7787,22 +7812,20 @@ XLoadQueryFont (Display *dpy, char *fontname)
7787 pcm_init (font->bounds.rows[0], 0x100); 7812 pcm_init (font->bounds.rows[0], 0x100);
7788 7813
7789#if USE_CG_TEXT_DRAWING 7814#if USE_CG_TEXT_DRAWING
7790 { 7815 if (fontnum != -1)
7791 FMFontFamily font_family; 7816 {
7792 FMFontStyle style; 7817 FMFontStyle style;
7793 ATSFontRef ats_font; 7818 ATSFontRef ats_font;
7794 7819
7795 err = FMGetFontFamilyInstanceFromFont (font_id, &font_family, &style); 7820 err = FMGetFontFromFontFamilyInstance (fontnum, fontface,
7796 if (err == noErr)
7797 err = FMGetFontFromFontFamilyInstance (font_family, fontface,
7798 &font_id, &style); 7821 &font_id, &style);
7799 /* Use CG text drawing if italic/bold is not synthesized. */ 7822 /* Use CG text drawing if italic/bold is not synthesized. */
7800 if (err == noErr && style == fontface) 7823 if (err == noErr && style == fontface)
7801 { 7824 {
7802 ats_font = FMGetATSFontRefFromFont (font_id); 7825 ats_font = FMGetATSFontRefFromFont (font_id);
7803 font->cg_font = CGFontCreateWithPlatformFont (&ats_font); 7826 font->cg_font = CGFontCreateWithPlatformFont (&ats_font);
7804 } 7827 }
7805 } 7828 }
7806 7829
7807 if (font->cg_font) 7830 if (font->cg_font)
7808 { 7831 {
@@ -8291,6 +8314,42 @@ x_find_ccl_program (fontp)
8291 } 8314 }
8292} 8315}
8293 8316
8317#if USE_MAC_FONT_PANEL
8318OSStatus
8319mac_set_font_info_for_selection (f)
8320 struct frame *f;
8321{
8322 OSStatus err;
8323
8324 if (f == NULL)
8325 err = SetFontInfoForSelection (kFontSelectionATSUIType, 0, NULL, NULL);
8326 else
8327 {
8328 struct face *default_face = FACE_FROM_ID (f, DEFAULT_FACE_ID);
8329 XFontStruct *ascii_font = default_face->ascii_face->font;
8330 EventTargetRef target = GetWindowEventTarget (FRAME_MAC_WINDOW (f));
8331
8332 if (ascii_font->mac_fontnum != -1)
8333 {
8334 FontSelectionQDStyle qd_style;
8335
8336 qd_style.version = kFontSelectionQDStyleVersionZero;
8337 qd_style.instance.fontFamily = ascii_font->mac_fontnum;
8338 qd_style.instance.fontStyle = ascii_font->mac_fontface;
8339 qd_style.size = ascii_font->mac_fontsize;
8340 qd_style.hasColor = false;
8341
8342 err = SetFontInfoForSelection (kFontSelectionQDType,
8343 1, &qd_style, target);
8344 }
8345 else
8346 err = SetFontInfoForSelection (kFontSelectionATSUIType,
8347 1, &ascii_font->mac_style, target);
8348 }
8349
8350 return err;
8351}
8352#endif
8294 8353
8295 8354
8296/* The Mac Event loop code */ 8355/* The Mac Event loop code */
@@ -8378,6 +8437,14 @@ Point saved_menu_event_location;
8378/* Apple Events */ 8437/* Apple Events */
8379#if USE_CARBON_EVENTS 8438#if USE_CARBON_EVENTS
8380static Lisp_Object Qhicommand; 8439static Lisp_Object Qhicommand;
8440#ifdef MAC_OSX
8441extern Lisp_Object Qwindow;
8442static Lisp_Object Qtoolbar_switch_mode;
8443#endif
8444#if USE_MAC_FONT_PANEL
8445extern Lisp_Object Qfont;
8446static Lisp_Object Qpanel_closed, Qselection;
8447#endif
8381#endif 8448#endif
8382extern int mac_ready_for_apple_events; 8449extern int mac_ready_for_apple_events;
8383extern Lisp_Object Qundefined; 8450extern Lisp_Object Qundefined;
@@ -8966,6 +9033,42 @@ mac_store_apple_event (class, id, desc)
8966} 9033}
8967 9034
8968#if TARGET_API_MAC_CARBON 9035#if TARGET_API_MAC_CARBON
9036static OSStatus
9037mac_store_event_ref_as_apple_event (class, id, class_key, id_key,
9038 event, num_params, names, types)
9039 AEEventClass class;
9040 AEEventID id;
9041 Lisp_Object class_key, id_key;
9042 EventRef event;
9043 UInt32 num_params;
9044 EventParamName *names;
9045 EventParamType *types;
9046{
9047 OSStatus err = eventNotHandledErr;
9048 Lisp_Object binding;
9049
9050 mac_find_apple_event_spec (class, id, &class_key, &id_key, &binding);
9051 if (!NILP (binding) && !EQ (binding, Qundefined))
9052 {
9053 if (INTEGERP (binding))
9054 err = XINT (binding);
9055 else
9056 {
9057 AppleEvent apple_event;
9058 err = create_apple_event_from_event_ref (event, num_params,
9059 names, types,
9060 &apple_event);
9061 if (err == noErr)
9062 {
9063 mac_store_apple_event (class_key, id_key, &apple_event);
9064 AEDisposeDesc (&apple_event);
9065 }
9066 }
9067 }
9068
9069 return err;
9070}
9071
8969void 9072void
8970mac_store_drag_event (window, mouse_pos, modifiers, desc) 9073mac_store_drag_event (window, mouse_pos, modifiers, desc)
8971 WindowRef window; 9074 WindowRef window;
@@ -8997,7 +9100,11 @@ mac_handle_command_event (next_handler, event, data)
8997{ 9100{
8998 OSStatus result, err; 9101 OSStatus result, err;
8999 HICommand command; 9102 HICommand command;
9000 Lisp_Object class_key, id_key, binding; 9103 static EventParamName names[] = {kEventParamDirectObject,
9104 kEventParamKeyModifiers};
9105 static EventParamType types[] = {typeHICommand,
9106 typeUInt32};
9107 int num_params = sizeof (names) / sizeof (names[0]);
9001 9108
9002 result = CallNextEventHandler (next_handler, event); 9109 result = CallNextEventHandler (next_handler, event);
9003 if (result != eventNotHandledErr) 9110 if (result != eventNotHandledErr)
@@ -9011,32 +9118,10 @@ mac_handle_command_event (next_handler, event, data)
9011 9118
9012 /* A HICommand event is mapped to an Apple event whose event class 9119 /* A HICommand event is mapped to an Apple event whose event class
9013 symbol is `hicommand' and event ID is its command ID. */ 9120 symbol is `hicommand' and event ID is its command ID. */
9014 class_key = Qhicommand; 9121 err = mac_store_event_ref_as_apple_event (0, command.commandID,
9015 mac_find_apple_event_spec (0, command.commandID, 9122 Qhicommand, Qnil,
9016 &class_key, &id_key, &binding); 9123 event, num_params, names, types);
9017 if (!NILP (binding) && !EQ (binding, Qundefined)) 9124 return err == noErr ? noErr : eventNotHandledErr;
9018 {
9019 if (INTEGERP (binding))
9020 return XINT (binding);
9021 else
9022 {
9023 AppleEvent apple_event;
9024 static EventParamName names[] = {kEventParamDirectObject,
9025 kEventParamKeyModifiers};
9026 static EventParamType types[] = {typeHICommand,
9027 typeUInt32};
9028 err = create_apple_event_from_event_ref (event, 2, names, types,
9029 &apple_event);
9030 if (err == noErr)
9031 {
9032 mac_store_apple_event (class_key, id_key, &apple_event);
9033 AEDisposeDesc (&apple_event);
9034 return noErr;
9035 }
9036 }
9037 }
9038
9039 return eventNotHandledErr;
9040} 9125}
9041 9126
9042static OSErr 9127static OSErr
@@ -9139,6 +9224,33 @@ mac_handle_window_event (next_handler, event, data)
9139 return noErr; 9224 return noErr;
9140 9225
9141 break; 9226 break;
9227
9228#ifdef MAC_OSX
9229 case kEventWindowToolbarSwitchMode:
9230 result = CallNextEventHandler (next_handler, event);
9231 {
9232 static EventParamName names[] = {kEventParamDirectObject,
9233 kEventParamWindowMouseLocation,
9234 kEventParamKeyModifiers,
9235 kEventParamMouseButton,
9236 kEventParamClickCount,
9237 kEventParamMouseChord};
9238 static EventParamType types[] = {typeWindowRef,
9239 typeQDPoint,
9240 typeUInt32,
9241 typeMouseButton,
9242 typeUInt32,
9243 typeUInt32};
9244 int num_params = sizeof (names) / sizeof (names[0]);
9245
9246 err = mac_store_event_ref_as_apple_event (0, 0,
9247 Qwindow,
9248 Qtoolbar_switch_mode,
9249 event, num_params,
9250 names, types);
9251 }
9252 return err == noErr ? noErr : result;
9253#endif
9142 } 9254 }
9143 9255
9144 return eventNotHandledErr; 9256 return eventNotHandledErr;
@@ -9213,45 +9325,96 @@ mac_handle_mouse_event (next_handler, event, data)
9213 return eventNotHandledErr; 9325 return eventNotHandledErr;
9214} 9326}
9215 9327
9328#if USE_MAC_FONT_PANEL
9329static pascal OSStatus
9330mac_handle_font_event (next_handler, event, data)
9331 EventHandlerCallRef next_handler;
9332 EventRef event;
9333 void *data;
9334{
9335 OSStatus result, err;
9336 Lisp_Object id_key;
9337 int num_params;
9338 EventParamName *names;
9339 EventParamType *types;
9340 static EventParamName names_sel[] = {kEventParamATSUFontID,
9341 kEventParamATSUFontSize,
9342 kEventParamFMFontFamily,
9343 kEventParamFMFontSize,
9344 kEventParamFontColor};
9345 static EventParamType types_sel[] = {typeATSUFontID,
9346 typeATSUSize,
9347 typeFMFontFamily,
9348 typeFMFontSize,
9349 typeFontColor};
9350
9351 result = CallNextEventHandler (next_handler, event);
9352 if (result != eventNotHandledErr)
9353 return result;
9354
9355 switch (GetEventKind (event))
9356 {
9357 case kEventFontPanelClosed:
9358 id_key = Qpanel_closed;
9359 num_params = 0;
9360 names = NULL;
9361 types = NULL;
9362 break;
9363
9364 case kEventFontSelection:
9365 id_key = Qselection;
9366 num_params = sizeof (names_sel) / sizeof (names_sel[0]);
9367 names = names_sel;
9368 types = types_sel;
9369 break;
9370 }
9371
9372 err = mac_store_event_ref_as_apple_event (0, 0, Qfont, id_key,
9373 event, num_params,
9374 names, types);
9375
9376 return err == noErr ? noErr : eventNotHandledErr;
9377}
9378#endif
9379
9216#ifdef MAC_OSX 9380#ifdef MAC_OSX
9217OSErr 9381OSStatus
9218mac_store_services_event (event) 9382mac_store_services_event (event)
9219 EventRef event; 9383 EventRef event;
9220{ 9384{
9221 OSErr err; 9385 OSStatus err;
9222 AppleEvent apple_event;
9223 Lisp_Object id_key; 9386 Lisp_Object id_key;
9387 int num_params;
9388 EventParamName *names;
9389 EventParamType *types;
9390 static EventParamName names_pfm[] = {kEventParamServiceMessageName,
9391 kEventParamServiceUserData};
9392 static EventParamType types_pfm[] = {typeCFStringRef,
9393 typeCFStringRef};
9224 9394
9225 switch (GetEventKind (event)) 9395 switch (GetEventKind (event))
9226 { 9396 {
9227 case kEventServicePaste: 9397 case kEventServicePaste:
9228 id_key = Qpaste; 9398 id_key = Qpaste;
9229 err = create_apple_event_from_event_ref (event, 0, NULL, NULL, 9399 num_params = 0;
9230 &apple_event); 9400 names = NULL;
9401 types = NULL;
9231 break; 9402 break;
9232 9403
9233 case kEventServicePerform: 9404 case kEventServicePerform:
9234 { 9405 id_key = Qperform;
9235 static EventParamName names[] = {kEventParamServiceMessageName, 9406 num_params = sizeof (names_pfm) / sizeof (names_pfm[0]);
9236 kEventParamServiceUserData}; 9407 names = names_pfm;
9237 static EventParamType types[] = {typeCFStringRef, 9408 types = types_pfm;
9238 typeCFStringRef};
9239
9240 id_key = Qperform;
9241 err = create_apple_event_from_event_ref (event, 2, names, types,
9242 &apple_event);
9243 }
9244 break; 9409 break;
9245 9410
9246 default: 9411 default:
9247 abort (); 9412 abort ();
9248 } 9413 }
9249 9414
9250 if (err == noErr) 9415 err = mac_store_event_ref_as_apple_event (0, 0, Qservices, id_key,
9251 { 9416 event, num_params,
9252 mac_store_apple_event (Qservices, id_key, &apple_event); 9417 names, types);
9253 AEDisposeDesc (&apple_event);
9254 }
9255 9418
9256 return err; 9419 return err;
9257} 9420}
@@ -9271,15 +9434,28 @@ install_window_handler (window)
9271 {kEventClassWindow, kEventWindowShown}, 9434 {kEventClassWindow, kEventWindowShown},
9272 {kEventClassWindow, kEventWindowHidden}, 9435 {kEventClassWindow, kEventWindowHidden},
9273 {kEventClassWindow, kEventWindowExpanded}, 9436 {kEventClassWindow, kEventWindowExpanded},
9274 {kEventClassWindow, kEventWindowCollapsed}}; 9437 {kEventClassWindow, kEventWindowCollapsed},
9438#ifdef MAC_OSX
9439 {kEventClassWindow, kEventWindowToolbarSwitchMode},
9440#endif
9441 };
9275 EventTypeSpec specs_mouse[] = {{kEventClassMouse, kEventMouseWheelMoved}}; 9442 EventTypeSpec specs_mouse[] = {{kEventClassMouse, kEventMouseWheelMoved}};
9276 static EventHandlerUPP handle_window_eventUPP = NULL; 9443 static EventHandlerUPP handle_window_eventUPP = NULL;
9277 static EventHandlerUPP handle_mouse_eventUPP = NULL; 9444 static EventHandlerUPP handle_mouse_eventUPP = NULL;
9445#if USE_MAC_FONT_PANEL
9446 EventTypeSpec specs_font[] = {{kEventClassFont, kEventFontPanelClosed},
9447 {kEventClassFont, kEventFontSelection}};
9448 static EventHandlerUPP handle_font_eventUPP = NULL;
9449#endif
9278 9450
9279 if (handle_window_eventUPP == NULL) 9451 if (handle_window_eventUPP == NULL)
9280 handle_window_eventUPP = NewEventHandlerUPP (mac_handle_window_event); 9452 handle_window_eventUPP = NewEventHandlerUPP (mac_handle_window_event);
9281 if (handle_mouse_eventUPP == NULL) 9453 if (handle_mouse_eventUPP == NULL)
9282 handle_mouse_eventUPP = NewEventHandlerUPP (mac_handle_mouse_event); 9454 handle_mouse_eventUPP = NewEventHandlerUPP (mac_handle_mouse_event);
9455#if USE_MAC_FONT_PANEL
9456 if (handle_font_eventUPP == NULL)
9457 handle_font_eventUPP = NewEventHandlerUPP (mac_handle_font_event);
9458#endif
9283 err = InstallWindowEventHandler (window, handle_window_eventUPP, 9459 err = InstallWindowEventHandler (window, handle_window_eventUPP,
9284 GetEventTypeCount (specs_window), 9460 GetEventTypeCount (specs_window),
9285 specs_window, NULL, NULL); 9461 specs_window, NULL, NULL);
@@ -9287,6 +9463,12 @@ install_window_handler (window)
9287 err = InstallWindowEventHandler (window, handle_mouse_eventUPP, 9463 err = InstallWindowEventHandler (window, handle_mouse_eventUPP,
9288 GetEventTypeCount (specs_mouse), 9464 GetEventTypeCount (specs_mouse),
9289 specs_mouse, NULL, NULL); 9465 specs_mouse, NULL, NULL);
9466#if USE_MAC_FONT_PANEL
9467 if (err == noErr)
9468 err = InstallWindowEventHandler (window, handle_font_eventUPP,
9469 GetEventTypeCount (specs_font),
9470 specs_font, NULL, NULL);
9471#endif
9290#endif 9472#endif
9291 if (err == noErr) 9473 if (err == noErr)
9292 err = install_drag_handler (window); 9474 err = install_drag_handler (window);
@@ -9748,7 +9930,8 @@ XTread_socket (sd, expected, hold_quit)
9748 break; 9930 break;
9749 9931
9750 case inContent: 9932 case inContent:
9751 if (window_ptr != FRAME_MAC_WINDOW (mac_focus_frame (dpyinfo))) 9933 if (dpyinfo->x_focus_frame == NULL
9934 || window_ptr != FRAME_MAC_WINDOW (dpyinfo->x_focus_frame))
9752 SelectWindow (window_ptr); 9935 SelectWindow (window_ptr);
9753 else 9936 else
9754 { 9937 {
@@ -10844,6 +11027,13 @@ syms_of_macterm ()
10844#if USE_CARBON_EVENTS 11027#if USE_CARBON_EVENTS
10845 Qhicommand = intern ("hicommand"); staticpro (&Qhicommand); 11028 Qhicommand = intern ("hicommand"); staticpro (&Qhicommand);
10846#ifdef MAC_OSX 11029#ifdef MAC_OSX
11030 Qtoolbar_switch_mode = intern ("toolbar-switch-mode");
11031 staticpro (&Qtoolbar_switch_mode);
11032#if USE_MAC_FONT_PANEL
11033 Qpanel_closed = intern ("panel-closed"); staticpro (&Qpanel_closed);
11034 Qselection = intern ("selection"); staticpro (&Qselection);
11035#endif
11036
10847 Qservices = intern ("services"); staticpro (&Qservices); 11037 Qservices = intern ("services"); staticpro (&Qservices);
10848 Qpaste = intern ("paste"); staticpro (&Qpaste); 11038 Qpaste = intern ("paste"); staticpro (&Qpaste);
10849 Qperform = intern ("perform"); staticpro (&Qperform); 11039 Qperform = intern ("perform"); staticpro (&Qperform);
@@ -10884,7 +11074,7 @@ NOTE: Not supported on Mac yet. */);
10884 x_use_underline_position_properties = 0; 11074 x_use_underline_position_properties = 0;
10885 11075
10886 DEFVAR_LISP ("x-toolkit-scroll-bars", &Vx_toolkit_scroll_bars, 11076 DEFVAR_LISP ("x-toolkit-scroll-bars", &Vx_toolkit_scroll_bars,
10887 doc: /* If not nil, Emacs uses toolkit scroll bars. */); 11077 doc: /* If not nil, Emacs uses toolkit scroll bars. */);
10888#ifdef USE_TOOLKIT_SCROLL_BARS 11078#ifdef USE_TOOLKIT_SCROLL_BARS
10889 Vx_toolkit_scroll_bars = Qt; 11079 Vx_toolkit_scroll_bars = Qt;
10890#else 11080#else
@@ -10938,23 +11128,23 @@ mouse-3 and the command-key will register for mouse-2. */);
10938 11128
10939#if USE_CARBON_EVENTS 11129#if USE_CARBON_EVENTS
10940 DEFVAR_BOOL ("mac-wheel-button-is-mouse-2", &mac_wheel_button_is_mouse_2, 11130 DEFVAR_BOOL ("mac-wheel-button-is-mouse-2", &mac_wheel_button_is_mouse_2,
10941 doc: /* *Non-nil if the wheel button is mouse-2 and the right click mouse-3. 11131 doc: /* *Non-nil if the wheel button is mouse-2 and the right click mouse-3.
10942Otherwise, the right click will be treated as mouse-2 and the wheel 11132Otherwise, the right click will be treated as mouse-2 and the wheel
10943button will be mouse-3. */); 11133button will be mouse-3. */);
10944 mac_wheel_button_is_mouse_2 = 1; 11134 mac_wheel_button_is_mouse_2 = 1;
10945 11135
10946 DEFVAR_BOOL ("mac-pass-command-to-system", &mac_pass_command_to_system, 11136 DEFVAR_BOOL ("mac-pass-command-to-system", &mac_pass_command_to_system,
10947 doc: /* *Non-nil if command key presses are passed on to the Mac Toolbox. */); 11137 doc: /* *Non-nil if command key presses are passed on to the Mac Toolbox. */);
10948 mac_pass_command_to_system = 1; 11138 mac_pass_command_to_system = 1;
10949 11139
10950 DEFVAR_BOOL ("mac-pass-control-to-system", &mac_pass_control_to_system, 11140 DEFVAR_BOOL ("mac-pass-control-to-system", &mac_pass_control_to_system,
10951 doc: /* *Non-nil if control key presses are passed on to the Mac Toolbox. */); 11141 doc: /* *Non-nil if control key presses are passed on to the Mac Toolbox. */);
10952 mac_pass_control_to_system = 1; 11142 mac_pass_control_to_system = 1;
10953 11143
10954#endif 11144#endif
10955 11145
10956 DEFVAR_BOOL ("mac-allow-anti-aliasing", &mac_use_core_graphics, 11146 DEFVAR_BOOL ("mac-allow-anti-aliasing", &mac_use_core_graphics,
10957 doc: /* *If non-nil, allow anti-aliasing. 11147 doc: /* *If non-nil, allow anti-aliasing.
10958The text will be rendered using Core Graphics text rendering which 11148The text will be rendered using Core Graphics text rendering which
10959may anti-alias the text. */); 11149may anti-alias the text. */);
10960#if USE_CG_DRAWING 11150#if USE_CG_DRAWING
@@ -10967,7 +11157,7 @@ may anti-alias the text. */);
10967 creating the terminal frame on Mac OS 9 before loading 11157 creating the terminal frame on Mac OS 9 before loading
10968 term/mac-win.elc. */ 11158 term/mac-win.elc. */
10969 DEFVAR_LISP ("mac-charset-info-alist", &Vmac_charset_info_alist, 11159 DEFVAR_LISP ("mac-charset-info-alist", &Vmac_charset_info_alist,
10970 doc: /* Alist of Emacs character sets vs text encodings and coding systems. 11160 doc: /* Alist of Emacs character sets vs text encodings and coding systems.
10971Each entry should be of the form: 11161Each entry should be of the form:
10972 11162
10973 (CHARSET-NAME TEXT-ENCODING CODING-SYSTEM) 11163 (CHARSET-NAME TEXT-ENCODING CODING-SYSTEM)
@@ -10978,6 +11168,18 @@ CODING_SYSTEM is a coding system corresponding to TEXT-ENCODING. */);
10978 Vmac_charset_info_alist = 11168 Vmac_charset_info_alist =
10979 Fcons (list3 (build_string ("mac-roman"), 11169 Fcons (list3 (build_string ("mac-roman"),
10980 make_number (smRoman), Qnil), Qnil); 11170 make_number (smRoman), Qnil), Qnil);
11171
11172#if USE_ATSUI
11173 DEFVAR_LISP ("mac-atsu-font-table", &Vmac_atsu_font_table,
11174 doc: /* Hash table of ATSU font IDs vs plist of attributes and values.
11175Each font ID is represented as a four-byte string in native byte
11176order. */);
11177 Vmac_atsu_font_table =
11178 make_hash_table (Qequal, make_number (DEFAULT_HASH_SIZE),
11179 make_float (DEFAULT_REHASH_SIZE),
11180 make_float (DEFAULT_REHASH_THRESHOLD),
11181 Qnil, Qnil, Qnil);
11182#endif
10981} 11183}
10982 11184
10983/* arch-tag: f2259165-4454-4c04-a029-a133c8af7b5b 11185/* arch-tag: f2259165-4454-4c04-a029-a133c8af7b5b