aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog11
-rw-r--r--src/xmenu.c42
-rw-r--r--src/xrdb.c6
3 files changed, 34 insertions, 25 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 7f4e13b733f..54d9a32804d 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,14 @@
12011-02-14 Jan Djärv <jan.h.d@swipnet.se>
2
3 * xrdb.c (x_load_resources): For LUCID and XFT, don't put a
4 resource that specifies helvetica for menus and dialogs.
5
6 * xmenu.c (apply_systemfont_to_dialog): Apply to *dialog.font.
7 (apply_systemfont_to_menu): Set resources *menubar*font and
8 *popup*font. Remove defflt.
9 (set_frame_menubar, create_and_show_popup_menu): Call
10 apply_systemfont_to_menu before lw_create_widget.
11
12011-02-14 Tom Tromey <tromey@redhat.com> 122011-02-14 Tom Tromey <tromey@redhat.com>
2 13
3 * keyboard.h: Remove obsolete comment. 14 * keyboard.h: Remove obsolete comment.
diff --git a/src/xmenu.c b/src/xmenu.c
index ad1a764eab8..934db0f0406 100644
--- a/src/xmenu.c
+++ b/src/xmenu.c
@@ -887,31 +887,26 @@ apply_systemfont_to_dialog (Widget w)
887 { 887 {
888 XrmDatabase db = XtDatabase (XtDisplay (w)); 888 XrmDatabase db = XtDatabase (XtDisplay (w));
889 if (db) 889 if (db)
890 XrmPutStringResource (&db, "*dialog.faceName", fn); 890 XrmPutStringResource (&db, "*dialog.font", fn);
891 } 891 }
892} 892}
893 893
894static void 894static void
895apply_systemfont_to_menu (Widget w) 895apply_systemfont_to_menu (struct frame *f, Widget w)
896{ 896{
897 const char *fn = xsettings_get_system_normal_font (); 897 const char *fn = xsettings_get_system_normal_font ();
898 int defflt;
899 898
900 if (!fn) return; 899 if (fn)
901
902 if (XtIsShell (w)) /* popup menu */
903 { 900 {
904 Widget *childs = NULL; 901 XrmDatabase db = XtDatabase (XtDisplay (w));
905 902 if (db)
906 XtVaGetValues (w, XtNchildren, &childs, NULL); 903 {
907 if (*childs) w = *childs; 904 XrmPutStringResource (&db, "*menubar*font", fn);
905 XrmPutStringResource (&db, "*popup*font", fn);
906 }
908 } 907 }
909
910 /* Only use system font if the default is used for the menu. */
911 XtVaGetValues (w, XtNdefaultFace, &defflt, NULL);
912 if (defflt)
913 XtVaSetValues (w, XtNfaceName, fn, NULL);
914} 908}
909
915#endif 910#endif
916 911
917/* Set the contents of the menubar widgets of frame F. 912/* Set the contents of the menubar widgets of frame F.
@@ -1210,7 +1205,11 @@ set_frame_menubar (FRAME_PTR f, int first_time, int deep_p)
1210 char menuOverride[] = "Ctrl<KeyPress>g: MenuGadgetEscape()"; 1205 char menuOverride[] = "Ctrl<KeyPress>g: MenuGadgetEscape()";
1211 XtTranslations override = XtParseTranslationTable (menuOverride); 1206 XtTranslations override = XtParseTranslationTable (menuOverride);
1212 1207
1213 menubar_widget = lw_create_widget ("menubar", "menubar", id, first_wv, 1208#ifdef USE_LUCID
1209 apply_systemfont_to_menu (f, f->output_data.x->column_widget);
1210#endif
1211 menubar_widget = lw_create_widget ("menubar", "menubar", id,
1212 first_wv,
1214 f->output_data.x->column_widget, 1213 f->output_data.x->column_widget,
1215 0, 1214 0,
1216 popup_activate_callback, 1215 popup_activate_callback,
@@ -1221,9 +1220,6 @@ set_frame_menubar (FRAME_PTR f, int first_time, int deep_p)
1221 1220
1222 /* Make menu pop down on C-g. */ 1221 /* Make menu pop down on C-g. */
1223 XtOverrideTranslations (menubar_widget, override); 1222 XtOverrideTranslations (menubar_widget, override);
1224#ifdef USE_LUCID
1225 apply_systemfont_to_menu (menubar_widget);
1226#endif
1227 } 1223 }
1228 1224
1229 { 1225 {
@@ -1542,6 +1538,10 @@ create_and_show_popup_menu (FRAME_PTR f, widget_value *first_wv,
1542 if (! FRAME_X_P (f)) 1538 if (! FRAME_X_P (f))
1543 abort (); 1539 abort ();
1544 1540
1541#ifdef USE_LUCID
1542 apply_systemfont_to_menu (f, f->output_data.x->widget);
1543#endif
1544
1545 menu_id = widget_id_tick++; 1545 menu_id = widget_id_tick++;
1546 menu = lw_create_widget ("popup", first_wv->name, menu_id, first_wv, 1546 menu = lw_create_widget ("popup", first_wv->name, menu_id, first_wv,
1547 f->output_data.x->widget, 1, 0, 1547 f->output_data.x->widget, 1, 0,
@@ -1549,10 +1549,6 @@ create_and_show_popup_menu (FRAME_PTR f, widget_value *first_wv,
1549 popup_deactivate_callback, 1549 popup_deactivate_callback,
1550 menu_highlight_callback); 1550 menu_highlight_callback);
1551 1551
1552#ifdef USE_LUCID
1553 apply_systemfont_to_menu (menu);
1554#endif
1555
1556 dummy.type = ButtonPress; 1552 dummy.type = ButtonPress;
1557 dummy.serial = 0; 1553 dummy.serial = 0;
1558 dummy.send_event = 0; 1554 dummy.send_event = 0;
diff --git a/src/xrdb.c b/src/xrdb.c
index 90afe32bb66..01714900752 100644
--- a/src/xrdb.c
+++ b/src/xrdb.c
@@ -546,12 +546,14 @@ x_load_resources (Display *display, const char *xrm_string,
546 546
547#else /* not USE_MOTIF */ 547#else /* not USE_MOTIF */
548 548
549 sprintf (line, "Emacs.dialog*.font: %s", helv);
550 XrmPutLineResource (&rdb, line);
551 sprintf (line, "Emacs.dialog*.background: grey75"); 549 sprintf (line, "Emacs.dialog*.background: grey75");
552 XrmPutLineResource (&rdb, line); 550 XrmPutLineResource (&rdb, line);
551#if !defined (HAVE_XFT) || !defined (USE_LUCID)
552 sprintf (line, "Emacs.dialog*.font: %s", helv);
553 XrmPutLineResource (&rdb, line);
553 sprintf (line, "*XlwMenu*font: %s", helv); 554 sprintf (line, "*XlwMenu*font: %s", helv);
554 XrmPutLineResource (&rdb, line); 555 XrmPutLineResource (&rdb, line);
556#endif
555 sprintf (line, "*XlwMenu*background: grey75"); 557 sprintf (line, "*XlwMenu*background: grey75");
556 XrmPutLineResource (&rdb, line); 558 XrmPutLineResource (&rdb, line);
557 sprintf (line, "Emacs*verticalScrollBar.background: grey75"); 559 sprintf (line, "Emacs*verticalScrollBar.background: grey75");