--- sourceforge.net/trunk/rdesktop/xwin.c 2003/10/31 04:29:57 536 +++ sourceforge.net/trunk/rdesktop/xwin.c 2003/11/10 15:09:49 547 @@ -20,6 +20,7 @@ #include #include +#include #include #include #include "rdesktop.h" @@ -310,8 +311,6 @@ } } -/* todo the remaining translate function might need some big endian check ?? */ - static void translate15to16(uint16 * data, uint8 * out, uint8 * end) { @@ -542,7 +541,7 @@ pixel |= *(data++); value = make_colour(split_colour24(pixel)); - + if (g_xserver_be) { *(out++) = value >> 16; @@ -776,7 +775,12 @@ /* * Determine desktop size */ - if (g_width < 0) + if (g_fullscreen) + { + g_width = WidthOfScreen(g_screen); + g_height = HeightOfScreen(g_screen); + } + else if (g_width < 0) { /* Percent of screen */ g_height = HeightOfScreen(g_screen) * (-g_width) / 100; @@ -799,11 +803,6 @@ g_height = 600; } } - else if (g_fullscreen) - { - g_width = WidthOfScreen(g_screen); - g_height = HeightOfScreen(g_screen); - } /* make sure width is a multiple of 4 */ g_width = (g_width + 3) & ~3; @@ -944,8 +943,6 @@ void ui_destroy_window(void) { - ui_destroy_cursor(g_null_cursor); - if (g_IC != NULL) XDestroyIC(g_IC); @@ -989,9 +986,6 @@ key_translation tr; char str[256]; Status status; - unsigned int state; - Window wdummy; - int dummy; while (XPending(g_display) > 0) { @@ -1164,9 +1158,7 @@ if (xevent.xfocus.mode == NotifyGrab) break; g_focused = True; - XQueryPointer(g_display, g_wnd, &wdummy, &wdummy, &dummy, &dummy, - &dummy, &dummy, &state); - reset_modifier_keys(state); + reset_modifier_keys(); if (g_grab_keyboard && g_mouse_in_wnd) XGrabKeyboard(g_display, g_wnd, True, GrabModeAsync, GrabModeAsync, CurrentTime);