| 57 |
|
|
| 58 |
// Constants |
// Constants |
| 59 |
const char KEYCODE_FILE_NAME[] = DATADIR "/keycodes"; |
const char KEYCODE_FILE_NAME[] = DATADIR "/keycodes"; |
| 60 |
static const bool mac_cursor_enabled = false; // Flag: Enable MacOS to X11 copy of cursor? |
static const bool hw_mac_cursor_accl = true; // Flag: Enable MacOS to X11 copy of cursor? |
| 61 |
|
|
| 62 |
// Global variables |
// Global variables |
| 63 |
static int32 frame_skip; |
static int32 frame_skip; |
| 506 |
XSetState(x_display, the_gc, black_pixel, white_pixel, GXcopy, AllPlanes); |
XSetState(x_display, the_gc, black_pixel, white_pixel, GXcopy, AllPlanes); |
| 507 |
|
|
| 508 |
// Create cursor |
// Create cursor |
| 509 |
if (mac_cursor_enabled) { |
if (hw_mac_cursor_accl) { |
| 510 |
cursor_image = XCreateImage(x_display, vis, 1, XYPixmap, 0, (char *)MacCursor + 4, 16, 16, 16, 2); |
cursor_image = XCreateImage(x_display, vis, 1, XYPixmap, 0, (char *)MacCursor + 4, 16, 16, 16, 2); |
| 511 |
cursor_image->byte_order = MSBFirst; |
cursor_image->byte_order = MSBFirst; |
| 512 |
cursor_image->bitmap_bit_order = MSBFirst; |
cursor_image->bitmap_bit_order = MSBFirst; |
| 2092 |
|
|
| 2093 |
bool video_can_change_cursor(void) |
bool video_can_change_cursor(void) |
| 2094 |
{ |
{ |
| 2095 |
return mac_cursor_enabled && (display_type != DIS_SCREEN); |
return hw_mac_cursor_accl && (display_type != DIS_SCREEN); |
| 2096 |
} |
} |
| 2097 |
|
|
| 2098 |
|
|
| 2341 |
update_display(); |
update_display(); |
| 2342 |
|
|
| 2343 |
// Set new cursor image if it was changed |
// Set new cursor image if it was changed |
| 2344 |
if (mac_cursor_enabled && cursor_changed) { |
if (hw_mac_cursor_accl && cursor_changed) { |
| 2345 |
cursor_changed = false; |
cursor_changed = false; |
| 2346 |
memcpy(cursor_image->data, MacCursor + 4, 32); |
memcpy(cursor_image->data, MacCursor + 4, 32); |
| 2347 |
memcpy(cursor_mask_image->data, MacCursor + 36, 32); |
memcpy(cursor_mask_image->data, MacCursor + 36, 32); |