Patch from Eric Warmenhoven to with miscellaneous linux-fb fixes,
Sun Sep 22 18:22:37 2002 Owen Taylor <otaylor@redhat.com> * gdk/linux-fb/{gdkinput.c,gdkkeyboard-fb.c,gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h, gdk/linux-fb/gdkwindow-fb.c}: Patch from Eric Warmenhoven to with miscellaneous linux-fb fixes, including a fix for a crash in gdk_keymap_get_entries_for_keycode (#87420)
This commit is contained in:
10
ChangeLog
10
ChangeLog
@@ -1,3 +1,11 @@
|
||||
Sun Sep 22 18:22:37 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/{gdkinput.c,gdkkeyboard-fb.c,gdk/linux-fb/gdkmain-fb.c,
|
||||
gdk/linux-fb/gdkprivate-fb.h, gdk/linux-fb/gdkwindow-fb.c}:
|
||||
Patch from Eric Warmenhoven to with miscellaneous linux-fb
|
||||
fixes, including a fix for a crash in
|
||||
gdk_keymap_get_entries_for_keycode (#87420)
|
||||
|
||||
2002-09-22 Matthias Clasen <maclas@gmx.de>
|
||||
|
||||
* gdk/gdkdraw.c (gdk_drawable_get_type):
|
||||
@@ -204,7 +212,7 @@ Tue Sep 10 09:47:52 2002 HideToshi Tajima <hidetoshi.tajima@sun.com>
|
||||
|
||||
Tue Sep 10 11:11:09 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/*: Patch from Eric Warmonhoven to
|
||||
* gdk/linux-fb/*: Patch from Eric Warmenhoven to
|
||||
get linux-fb compiling with multihead changes.
|
||||
|
||||
Tue Sep 10 09:29:00 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
@@ -1,3 +1,11 @@
|
||||
Sun Sep 22 18:22:37 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/{gdkinput.c,gdkkeyboard-fb.c,gdk/linux-fb/gdkmain-fb.c,
|
||||
gdk/linux-fb/gdkprivate-fb.h, gdk/linux-fb/gdkwindow-fb.c}:
|
||||
Patch from Eric Warmenhoven to with miscellaneous linux-fb
|
||||
fixes, including a fix for a crash in
|
||||
gdk_keymap_get_entries_for_keycode (#87420)
|
||||
|
||||
2002-09-22 Matthias Clasen <maclas@gmx.de>
|
||||
|
||||
* gdk/gdkdraw.c (gdk_drawable_get_type):
|
||||
@@ -204,7 +212,7 @@ Tue Sep 10 09:47:52 2002 HideToshi Tajima <hidetoshi.tajima@sun.com>
|
||||
|
||||
Tue Sep 10 11:11:09 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/*: Patch from Eric Warmonhoven to
|
||||
* gdk/linux-fb/*: Patch from Eric Warmenhoven to
|
||||
get linux-fb compiling with multihead changes.
|
||||
|
||||
Tue Sep 10 09:29:00 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
@@ -1,3 +1,11 @@
|
||||
Sun Sep 22 18:22:37 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/{gdkinput.c,gdkkeyboard-fb.c,gdk/linux-fb/gdkmain-fb.c,
|
||||
gdk/linux-fb/gdkprivate-fb.h, gdk/linux-fb/gdkwindow-fb.c}:
|
||||
Patch from Eric Warmenhoven to with miscellaneous linux-fb
|
||||
fixes, including a fix for a crash in
|
||||
gdk_keymap_get_entries_for_keycode (#87420)
|
||||
|
||||
2002-09-22 Matthias Clasen <maclas@gmx.de>
|
||||
|
||||
* gdk/gdkdraw.c (gdk_drawable_get_type):
|
||||
@@ -204,7 +212,7 @@ Tue Sep 10 09:47:52 2002 HideToshi Tajima <hidetoshi.tajima@sun.com>
|
||||
|
||||
Tue Sep 10 11:11:09 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/*: Patch from Eric Warmonhoven to
|
||||
* gdk/linux-fb/*: Patch from Eric Warmenhoven to
|
||||
get linux-fb compiling with multihead changes.
|
||||
|
||||
Tue Sep 10 09:29:00 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
@@ -1,3 +1,11 @@
|
||||
Sun Sep 22 18:22:37 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/{gdkinput.c,gdkkeyboard-fb.c,gdk/linux-fb/gdkmain-fb.c,
|
||||
gdk/linux-fb/gdkprivate-fb.h, gdk/linux-fb/gdkwindow-fb.c}:
|
||||
Patch from Eric Warmenhoven to with miscellaneous linux-fb
|
||||
fixes, including a fix for a crash in
|
||||
gdk_keymap_get_entries_for_keycode (#87420)
|
||||
|
||||
2002-09-22 Matthias Clasen <maclas@gmx.de>
|
||||
|
||||
* gdk/gdkdraw.c (gdk_drawable_get_type):
|
||||
@@ -204,7 +212,7 @@ Tue Sep 10 09:47:52 2002 HideToshi Tajima <hidetoshi.tajima@sun.com>
|
||||
|
||||
Tue Sep 10 11:11:09 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/*: Patch from Eric Warmonhoven to
|
||||
* gdk/linux-fb/*: Patch from Eric Warmenhoven to
|
||||
get linux-fb compiling with multihead changes.
|
||||
|
||||
Tue Sep 10 09:29:00 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
@@ -1,3 +1,11 @@
|
||||
Sun Sep 22 18:22:37 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/{gdkinput.c,gdkkeyboard-fb.c,gdk/linux-fb/gdkmain-fb.c,
|
||||
gdk/linux-fb/gdkprivate-fb.h, gdk/linux-fb/gdkwindow-fb.c}:
|
||||
Patch from Eric Warmenhoven to with miscellaneous linux-fb
|
||||
fixes, including a fix for a crash in
|
||||
gdk_keymap_get_entries_for_keycode (#87420)
|
||||
|
||||
2002-09-22 Matthias Clasen <maclas@gmx.de>
|
||||
|
||||
* gdk/gdkdraw.c (gdk_drawable_get_type):
|
||||
@@ -204,7 +212,7 @@ Tue Sep 10 09:47:52 2002 HideToshi Tajima <hidetoshi.tajima@sun.com>
|
||||
|
||||
Tue Sep 10 11:11:09 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/*: Patch from Eric Warmonhoven to
|
||||
* gdk/linux-fb/*: Patch from Eric Warmenhoven to
|
||||
get linux-fb compiling with multihead changes.
|
||||
|
||||
Tue Sep 10 09:29:00 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
@@ -1,3 +1,11 @@
|
||||
Sun Sep 22 18:22:37 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/{gdkinput.c,gdkkeyboard-fb.c,gdk/linux-fb/gdkmain-fb.c,
|
||||
gdk/linux-fb/gdkprivate-fb.h, gdk/linux-fb/gdkwindow-fb.c}:
|
||||
Patch from Eric Warmenhoven to with miscellaneous linux-fb
|
||||
fixes, including a fix for a crash in
|
||||
gdk_keymap_get_entries_for_keycode (#87420)
|
||||
|
||||
2002-09-22 Matthias Clasen <maclas@gmx.de>
|
||||
|
||||
* gdk/gdkdraw.c (gdk_drawable_get_type):
|
||||
@@ -204,7 +212,7 @@ Tue Sep 10 09:47:52 2002 HideToshi Tajima <hidetoshi.tajima@sun.com>
|
||||
|
||||
Tue Sep 10 11:11:09 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gdk/linux-fb/*: Patch from Eric Warmonhoven to
|
||||
* gdk/linux-fb/*: Patch from Eric Warmenhoven to
|
||||
get linux-fb compiling with multihead changes.
|
||||
|
||||
Tue Sep 10 09:29:00 2002 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
@@ -8,6 +8,7 @@ _libs
|
||||
libgdk-*.la
|
||||
gdkcursors.h
|
||||
gdkenumtypes.[ch]
|
||||
gdkmarshalers.h
|
||||
libgdk.la
|
||||
gdkconfig.h
|
||||
stamp-gc-h
|
||||
|
||||
@@ -60,6 +60,8 @@ _gdk_init_input_core (void)
|
||||
_gdk_core_pointer->axes = gdk_input_core_axes;
|
||||
_gdk_core_pointer->num_keys = 0;
|
||||
_gdk_core_pointer->keys = NULL;
|
||||
|
||||
_gdk_display->core_pointer = _gdk_core_pointer;
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -323,6 +325,7 @@ _gdk_input_window_destroy (GdkWindow *window)
|
||||
void
|
||||
_gdk_input_init (void)
|
||||
{
|
||||
_gdk_init_input_core ();
|
||||
_gdk_input_devices = g_list_append (NULL, _gdk_core_pointer);
|
||||
_gdk_input_ignore_core = FALSE;
|
||||
}
|
||||
|
||||
@@ -935,7 +935,7 @@ static void
|
||||
xlate_close (GdkFBKeyboard *kb)
|
||||
{
|
||||
struct termios ts;
|
||||
const char cursoron_str[] = "\033c";
|
||||
const char cursoron_str[] = "\033c\033[3g\033]R";
|
||||
|
||||
write_string (gdk_display->tty_fd, cursoron_str);
|
||||
|
||||
@@ -953,8 +953,11 @@ static guint
|
||||
xlate_lookup (GdkFBKeyboard *kb,
|
||||
const GdkKeymapKey *key)
|
||||
{
|
||||
g_warning ("xlate_lookup() NIY");
|
||||
return FALSE;
|
||||
if (key->group != 0)
|
||||
return 0;
|
||||
if (key->level != 0)
|
||||
return 0;
|
||||
return key->keycode;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
@@ -967,8 +970,15 @@ xlate_translate (GdkFBKeyboard *kb,
|
||||
gint *level,
|
||||
GdkModifierType *consumed_modifiers)
|
||||
{
|
||||
g_warning ("xlate_translate() NIY");
|
||||
return FALSE;
|
||||
if (keyval)
|
||||
*keyval = hardware_keycode;
|
||||
if (effective_group)
|
||||
*effective_group = 0;
|
||||
if (level)
|
||||
*level = 0;
|
||||
if (consumed_modifiers)
|
||||
*consumed_modifiers = 0;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
@@ -977,10 +987,12 @@ xlate_get_for_keyval (GdkFBKeyboard *kb,
|
||||
GdkKeymapKey **keys,
|
||||
gint *n_keys)
|
||||
{
|
||||
g_warning ("xlate_get_for_keyval() NIY");
|
||||
if (keys) *keys=NULL;
|
||||
if (n_keys) *n_keys=0;
|
||||
return FALSE;
|
||||
*n_keys = 1;
|
||||
*keys = g_new (GdkKeymapKey, 1);
|
||||
(*keys)->keycode = keyval;
|
||||
(*keys)->group = 0;
|
||||
(*keys)->level = 0;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
@@ -990,10 +1002,22 @@ xlate_get_for_keycode (GdkFBKeyboard *kb,
|
||||
guint **keyvals,
|
||||
gint *n_entries)
|
||||
{
|
||||
g_warning ("xlate_get_for_keycode() NIY");
|
||||
if (keys) *keys=NULL;
|
||||
if (n_entries) *n_entries=0;
|
||||
return FALSE;
|
||||
if (keys)
|
||||
{
|
||||
*keys = g_new (GdkKeymapKey, 1);
|
||||
(*keys)->keycode = hardware_keycode;
|
||||
(*keys)->level = 0;
|
||||
(*keys)->group = 0;
|
||||
}
|
||||
if (keyvals)
|
||||
{
|
||||
*keyvals = g_new (guint, 1);
|
||||
**keyvals = hardware_keycode;
|
||||
}
|
||||
if (n_entries)
|
||||
*n_entries = 1;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* Raw keyboard support */
|
||||
|
||||
@@ -118,7 +118,8 @@ enum {
|
||||
FB_VSYNC,
|
||||
FB_CSYNC,
|
||||
FB_EXTSYNC,
|
||||
FB_DOUBLE
|
||||
FB_DOUBLE,
|
||||
FB_ACCEL
|
||||
};
|
||||
|
||||
char *fb_modes_keywords[] =
|
||||
@@ -132,7 +133,8 @@ char *fb_modes_keywords[] =
|
||||
"vsync",
|
||||
"csync",
|
||||
"extsync",
|
||||
"double"
|
||||
"double",
|
||||
"accel"
|
||||
};
|
||||
|
||||
static int
|
||||
@@ -146,7 +148,7 @@ fb_modes_parse_mode (GScanner *scanner,
|
||||
char *modename;
|
||||
int geometry[5];
|
||||
int timings[7];
|
||||
int vsync=0, hsync=0, csync=0, extsync=0, doublescan=0, laced=0;
|
||||
int vsync=0, hsync=0, csync=0, extsync=0, doublescan=0, laced=0, accel=1;
|
||||
int found_geometry = 0;
|
||||
int found_timings = 0;
|
||||
|
||||
@@ -302,6 +304,23 @@ fb_modes_parse_mode (GScanner *scanner,
|
||||
return -1;
|
||||
}
|
||||
break;
|
||||
case FB_ACCEL:
|
||||
token = g_scanner_get_next_token (scanner);
|
||||
if (token != G_TOKEN_IDENTIFIER)
|
||||
{
|
||||
g_free (modename);
|
||||
return -1;
|
||||
}
|
||||
if (g_strcasecmp (scanner->value.v_identifier, "false")==0)
|
||||
accel = 0;
|
||||
else if (g_strcasecmp (scanner->value.v_identifier, "true")==0)
|
||||
accel = 1;
|
||||
else
|
||||
{
|
||||
g_free (modename);
|
||||
return -1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
token = g_scanner_get_next_token (scanner);
|
||||
@@ -350,6 +369,10 @@ fb_modes_parse_mode (GScanner *scanner,
|
||||
modeinfo->sync |= FB_SYNC_HOR_HIGH_ACT;
|
||||
if (vsync)
|
||||
modeinfo->sync |= FB_SYNC_VERT_HIGH_ACT;
|
||||
if (accel)
|
||||
modeinfo->accel_flags = FB_ACCELF_TEXT;
|
||||
else
|
||||
modeinfo->accel_flags = 0;
|
||||
}
|
||||
|
||||
g_free (modename);
|
||||
@@ -834,6 +857,12 @@ _gdk_windowing_init (int *argc, char ***argv)
|
||||
return;
|
||||
}
|
||||
|
||||
/* Although atexit is evil, we need it here because otherwise the
|
||||
* keyboard is left in a bad state. you can still run 'reset' but
|
||||
* that gets annoying after running testgtk for the 20th time.
|
||||
*/
|
||||
g_atexit(_gdk_windowing_exit);
|
||||
|
||||
gdk_initialized = TRUE;
|
||||
|
||||
_gdk_selection_property = gdk_atom_intern ("GDK_SELECTION", FALSE);
|
||||
|
||||
@@ -458,4 +458,12 @@ void gdk_fb_mouse_get_info (gint *x,
|
||||
gint *y,
|
||||
GdkModifierType *mask);
|
||||
|
||||
/* Initialization */
|
||||
void _gdk_windowing_window_init (void);
|
||||
void _gdk_visual_init (void);
|
||||
void _gdk_dnd_init (void);
|
||||
void _gdk_windowing_image_init (void);
|
||||
void _gdk_events_init (void);
|
||||
void _gdk_input_init (void);
|
||||
|
||||
#endif /* __GDK_PRIVATE_FB_H__ */
|
||||
|
||||
@@ -1958,7 +1958,9 @@ gdk_window_shape_combine_mask (GdkWindow *window,
|
||||
_gdk_window_shape_combine_region (window,
|
||||
(mask == GDK_FB_USE_CHILD_SHAPE)?
|
||||
GDK_FB_USE_CHILD_SHAPE :
|
||||
gdk_fb_region_create_from_bitmap (mask),
|
||||
mask ?
|
||||
gdk_fb_region_create_from_bitmap (mask) :
|
||||
NULL,
|
||||
x, y);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user