comparison src/xterm.c @ 27991:cf10555b8ce0

(x_term_init): Create a colormap if not using the default visual.
author Gerd Moellmann <gerd@gnu.org>
date Sun, 05 Mar 2000 10:23:14 +0000
parents 4ba445af210b
children c5b68e855d56
comparison
equal deleted inserted replaced
27990:723662ab7db4 27991:cf10555b8ce0
12986 all versions. */ 12986 all versions. */
12987 dpyinfo->xrdb = xrdb; 12987 dpyinfo->xrdb = xrdb;
12988 12988
12989 dpyinfo->screen = ScreenOfDisplay (dpyinfo->display, 12989 dpyinfo->screen = ScreenOfDisplay (dpyinfo->display,
12990 DefaultScreen (dpyinfo->display)); 12990 DefaultScreen (dpyinfo->display));
12991 dpyinfo->visual = select_visual (dpyinfo->display, dpyinfo->screen, 12991 select_visual (dpyinfo);
12992 &dpyinfo->n_planes);
12993 dpyinfo->cmap = DefaultColormapOfScreen (dpyinfo->screen); 12992 dpyinfo->cmap = DefaultColormapOfScreen (dpyinfo->screen);
12994 dpyinfo->height = HeightOfScreen (dpyinfo->screen); 12993 dpyinfo->height = HeightOfScreen (dpyinfo->screen);
12995 dpyinfo->width = WidthOfScreen (dpyinfo->screen); 12994 dpyinfo->width = WidthOfScreen (dpyinfo->screen);
12996 dpyinfo->root_window = RootWindowOfScreen (dpyinfo->screen); 12995 dpyinfo->root_window = RootWindowOfScreen (dpyinfo->screen);
12997 dpyinfo->grabbed = 0; 12996 dpyinfo->grabbed = 0;
13016 dpyinfo->x_focus_event_frame = 0; 13015 dpyinfo->x_focus_event_frame = 0;
13017 dpyinfo->x_highlight_frame = 0; 13016 dpyinfo->x_highlight_frame = 0;
13018 dpyinfo->image_cache = make_image_cache (); 13017 dpyinfo->image_cache = make_image_cache ();
13019 13018
13020 /* See if a private colormap is requested. */ 13019 /* See if a private colormap is requested. */
13021 if (dpyinfo->visual == DefaultVisualOfScreen (dpyinfo->screen) 13020 if (dpyinfo->visual == DefaultVisualOfScreen (dpyinfo->screen))
13022 && dpyinfo->visual->class == PseudoColor) 13021 {
13023 { 13022 if (dpyinfo->visual->class == PseudoColor)
13024 Lisp_Object value; 13023 {
13025 value = display_x_get_resource (dpyinfo, 13024 Lisp_Object value;
13026 build_string ("privateColormap"), 13025 value = display_x_get_resource (dpyinfo,
13027 build_string ("PrivateColormap"), 13026 build_string ("privateColormap"),
13028 Qnil, Qnil); 13027 build_string ("PrivateColormap"),
13029 if (STRINGP (value) 13028 Qnil, Qnil);
13030 && (!strcmp (XSTRING (value)->data, "true") 13029 if (STRINGP (value)
13031 || !strcmp (XSTRING (value)->data, "on"))) 13030 && (!strcmp (XSTRING (value)->data, "true")
13032 dpyinfo->cmap = XCopyColormapAndFree (dpyinfo->display, dpyinfo->cmap); 13031 || !strcmp (XSTRING (value)->data, "on")))
13033 } 13032 dpyinfo->cmap = XCopyColormapAndFree (dpyinfo->display, dpyinfo->cmap);
13033 }
13034 }
13035 else
13036 dpyinfo->cmap = XCreateColormap (dpyinfo->display, dpyinfo->root_window,
13037 dpyinfo->visual, AllocNone);
13034 13038
13035 { 13039 {
13036 int screen_number = XScreenNumberOfScreen (dpyinfo->screen); 13040 int screen_number = XScreenNumberOfScreen (dpyinfo->screen);
13037 double pixels = DisplayHeight (dpyinfo->display, screen_number); 13041 double pixels = DisplayHeight (dpyinfo->display, screen_number);
13038 double mm = DisplayHeightMM (dpyinfo->display, screen_number); 13042 double mm = DisplayHeightMM (dpyinfo->display, screen_number);