--- rxvt-unicode/src/main.C 2006/01/25 00:42:20 1.200 +++ rxvt-unicode/src/main.C 2006/01/25 02:53:13 1.204 @@ -273,10 +273,8 @@ free (selection.text); // TODO: manage env vars in child only(!) - free (env_windowid); free (env_display); free (env_term); - free (env_colorfgbg); free (locale); free (v_buffer); free (incr_buf); @@ -515,6 +513,16 @@ HOOK_INVOKE ((this, HOOK_START, DT_END)); +#if ENABLE_XEMBED + if (rs[Rs_embed]) + { + long info[2] = { 0, XEMBED_MAPPED }; + + XChangeProperty (display->display, parent[0], xa[XA_XEMBED_INFO], xa[XA_XEMBED_INFO], + 32, PropModeReplace, (unsigned char *)&info, 2); + } +#endif + XMapWindow (disp, vt); XMapWindow (disp, parent[0]); @@ -978,7 +986,6 @@ const char *xpmb = "\0"; char fstr[sizeof ("default") + 1], bstr[sizeof ("default") + 1]; - env_colorfgbg = (char *)rxvt_malloc (sizeof ("COLORFGBG=default;default;bg") + 1); strcpy (fstr, "default"); strcpy (bstr, "default"); for (i = Color_Black; i <= Color_White; i++) @@ -1213,7 +1220,7 @@ if (!Input_Context || !focus - || !(input_style & XIMPreeditPosition)) + || !(input_style & (XIMPreeditPosition | XIMPreeditCallbacks))) return; im_set_position (nspot); @@ -1302,6 +1309,7 @@ DT_END)); } +#if 0 static void xim_preedit_caret (XIC ic, XPointer client_data, XIMPreeditCaretCallbackStruct *call_data) { @@ -1312,6 +1320,7 @@ DT_INT, call_data->style, DT_END)); } +#endif #endif @@ -1481,16 +1490,23 @@ } else if (input_style & XIMPreeditCallbacks) { + im_set_position (spot); + xcb[0].client_data = (XPointer)this; xcb[0].callback = (XIMProc)xim_preedit_start; xcb[1].client_data = (XPointer)this; xcb[1].callback = (XIMProc)xim_preedit_done; xcb[2].client_data = (XPointer)this; xcb[2].callback = (XIMProc)xim_preedit_draw; +#if 0 xcb[3].client_data = (XPointer)this; xcb[3].callback = (XIMProc)xim_preedit_caret; +#endif preedit_attr = XVaCreateNestedList (0, + XNSpotLocation, &spot, XNPreeditStartCallback, &xcb[0], XNPreeditDoneCallback , &xcb[1], XNPreeditDrawCallback , &xcb[2], +#if 0 XNPreeditCaretCallback, &xcb[3], +#endif NULL); }