diff -urN xvkbd-2.7a/xvkbd.c xvkbd-2.7a-ark/xvkbd.c --- xvkbd-2.7a/xvkbd.c 2005-05-06 22:46:02.000000000 +0000 +++ xvkbd-2.7a-ark/xvkbd.c 2005-06-09 16:54:10.000000000 +0000 @@ -44,6 +44,7 @@ #include <X11/Xaw/Viewport.h> #include <X11/Xaw/List.h> #include <X11/Xmu/WinUtil.h> +#include <X11/xpm.h> #ifdef USE_I18N # include <X11/Xlocale.h> @@ -430,6 +431,8 @@ static Window focused_subwindow = None; static Pixmap xvkbd_pixmap = None; +static Pixmap shape; +static XpmAttributes attributes; static int AddKeysym(KeySym keysym, Boolean top); /* forward */ static void SendString(const unsigned char *str); @@ -2348,7 +2351,7 @@ Widget menu_entry; int i; -#include "xvkbd.xbm" +#include "xvkbd.xpm" #include "iconify.xbm" if (remake) { @@ -2385,8 +2388,7 @@ XtAddCallback(iconify_button, XtNcallback, (XtCallbackProc)IconifyWindow, (void *)TRUE); } - xvkbd_pixmap = XCreateBitmapFromData(dpy, RootWindow(dpy, DefaultScreen(dpy)), - (char *)xvkbd_bits, xvkbd_width, xvkbd_height); + XpmCreatePixmapFromData(dpy, RootWindow(dpy, DefaultScreen(dpy)), xvkbd, &xvkbd_pixmap, &shape, &attributes); key = XtVaCreateManagedWidget("MainMenu", menuButtonWidgetClass, key_box[row], XtNbitmap, xvkbd_pixmap, XtNfromHoriz, iconify_button, NULL); main_menu = XtVaCreatePopupShell("menu", simpleMenuWidgetClass, key, NULL);