Closed GoogleCodeExporter closed 9 years ago
What steps will reproduce the problem? 1. Open a window with an on_key_press handler which prints out the keys. 2. Press the A key without shift. pyglet.window.key.A (97) will get printed out. 3. Press the A key with shift. Reported keysim is not pyglet.window.key.A but a huge number. Paste in the traceback or error message: n/a pyglet 1.1 with Python 2.5: Paste in the output of `python -m pyglet.info` Other: Paste in the output of tools/gl_info.py (included in source distro): Python ------------------------------------------------------------------------------ sys.version: 2.5.2 (r252:60911, Jul 31 2008, 17:28:52) [GCC 4.2.3 (Ubuntu 4.2.3-2ubuntu7)] sys.platform: linux2 os.getcwd(): /home/es pyglet ------------------------------------------------------------------------------ pyglet.version: 1.1.1 pyglet.__file__: /usr/lib/python2.5/site-packages/pyglet/__init__.pyc pyglet.options['debug_trace_depth'] = 1 pyglet.options['audio'] = ('directsound', 'openal', 'alsa', 'silent') pyglet.options['xsync'] = True pyglet.options['debug_trace_flush'] = True pyglet.options['debug_win32'] = False pyglet.options['debug_gl_trace'] = False pyglet.options['debug_x11'] = False pyglet.options['shadow_window'] = True pyglet.options['debug_font'] = False pyglet.options['debug_media'] = False pyglet.options['debug_trace'] = False pyglet.options['debug_lib'] = False pyglet.options['graphics_vbo'] = True pyglet.options['vsync'] = None pyglet.options['debug_trace_args'] = False pyglet.options['debug_gl'] = True pyglet.options['debug_graphics_batch'] = False pyglet.options['font'] = ('gdiplus', 'win32') pyglet.options['debug_texture'] = False pyglet.options['debug_gl_trace_args'] = False pyglet.window ------------------------------------------------------------------------------ platform: <pyglet.window.xlib.XlibPlatform object at 0x83fba6c> display: <pyglet.window.xlib.XlibDisplayDevice object at 0x83fbf8c> screens[0]: XlibScreen(screen=0, x=0, y=0, width=1400, height=1050, xinerama=1) config['double_buffer'] = 1 config['stereo'] = 0 config['buffer_size'] = 32 config['aux_buffers'] = 0 config['sample_buffers'] = 0 config['samples'] = 0 config['red_size'] = 8 config['green_size'] = 8 config['blue_size'] = 8 config['alpha_size'] = 8 config['depth_size'] = 24 config['stencil_size'] = 0 config['accum_red_size'] = 0 config['accum_green_size'] = 0 config['accum_blue_size'] = 0 config['accum_alpha_size'] = 0 context: XlibGLContext() pyglet.gl.gl_info ------------------------------------------------------------------------------ gl_info.get_version(): 2.1.7412 Release gl_info.get_vendor(): ATI Technologies Inc. gl_info.get_renderer(): ATI Mobility Radeon X1400 gl_info.get_extensions(): GL_AMD_performance_monitor GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_fragment_program GL_ARB_fragment_shader GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_shadow GL_ARB_shadow_ambient GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_float GL_ARB_texture_mirrored_repeat GL_ARB_texture_rectangle GL_ARB_transpose_matrix GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_envmap_bumpmap GL_ATI_fragment_shader GL_ATI_meminfo GL_ATI_separate_stencil GL_ATI_texture_compression_3dc GL_ATI_texture_env_combine3 GL_ATI_texture_float GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_copy_texture GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_object GL_EXT_gpu_program_parameters GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_pixels GL_EXT_point_parameters GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_EXT_subtexture GL_EXT_texgen_reflection GL_EXT_texture3D GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_add GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_rectangle GL_EXT_texture_sRGB GL_EXT_vertex_array GL_KTX_buffer_region GL_NV_blend_square GL_NV_texgen_reflection GL_SGIS_generate_mipmap GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_WIN_swap_hint WGL_EXT_swap_control pyglet.gl.glu_info ------------------------------------------------------------------------------ glu_info.get_version(): 1.3 glu_info.get_extensions(): GLU_EXT_nurbs_tessellator GLU_EXT_object_space_tess pyglet.gl.glx_info ------------------------------------------------------------------------------ context.is_direct(): 1 glx_info.get_server_vendor(): SGI glx_info.get_server_version(): 1.2 glx_info.get_server_extensions(): GLX_ARB_multisample GLX_EXT_import_context GLX_EXT_texture_from_pixmap GLX_EXT_visual_info GLX_EXT_visual_rating GLX_OML_swap_method GLX_SGIS_multisample GLX_SGIX_fbconfig GLX_SGIX_visual_select_group glx_info.get_client_vendor(): SGI glx_info.get_client_version(): 1.4 glx_info.get_client_extensions(): GLX_ARB_get_proc_address GLX_ARB_multisample GLX_EXT_import_context GLX_EXT_visual_info GLX_EXT_visual_rating GLX_MESA_allocate_memory GLX_MESA_swap_control GLX_MESA_swap_frame_usage GLX_OML_swap_method GLX_OML_sync_control GLX_SGI_make_current_read GLX_SGI_swap_control GLX_SGI_video_sync GLX_SGIS_multisample GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGIX_visual_select_group GLX_EXT_texture_from_pixmap glx_info.get_extensions(): GLX_ARB_get_proc_address GLX_ARB_multisample GLX_EXT_import_context GLX_EXT_visual_info GLX_EXT_visual_rating GLX_OML_swap_method GLX_SGIS_multisample GLX_SGIX_fbconfig GLX_SGIX_visual_select_group pyglet.media ------------------------------------------------------------------------------ driver: pyglet.media.drivers.openal pyglet.media.avbin ------------------------------------------------------------------------------ Library: <CDLL 'libavbin.so', handle 8c5c5f0 at 8b47d0c> AVbin version: 7 FFmpeg revision: 13661 pyglet.media.drivers.openal ------------------------------------------------------------------------------ Library: <CDLL 'libopenal.so', handle 91369a0 at 8519a4c> Version: (1, 0) Extensions: weird vorbid_get Any additional info (platform/language/hardware) that may be relevant? * I have a Spanish keyboard. * In _event_text_symbol (pyglet/window/xlib/__init__.py:~1200), I observed that XLookupString populates the 'symbol' variable with the value 65, same as ord("A"), where pyglet.window.key.A happens to be 97, same as ord("a"). Since you don't recognize 65 as a pyglet keysym, you pass it to key.user_code(), which generates the big number. I didn't have this problem in pyglet 1.0. The old _event_symbol seems to work better in this respect.
Original issue reported on code.google.com by euccas...@gmail.com on 5 Oct 2008 at 2:28
euccas...@gmail.com
Thanks, turned out to be a non-international issue (affected my keyboard too). Fixed in r2338.
Original comment by Alex.Hol...@gmail.com on 5 Nov 2008 at 11:43
Alex.Hol...@gmail.com
Original issue reported on code.google.com by
euccas...@gmail.com
on 5 Oct 2008 at 2:28