347 lines
13 KiB
JavaScript
347 lines
13 KiB
JavaScript
|
// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
||
|
// Use of this source code is governed by a BSD-style license that can be
|
||
|
// found in the LICENSE file.
|
||
|
var commandLineFlags = ['--flag-switches-begin',
|
||
|
'--show-composited-layer-borders',
|
||
|
'--show-fps-counter',
|
||
|
'--flag-switches-end'];
|
||
|
var commandLineStr = './out/Debug/chrome ' + commandLineFlags.join(' ');
|
||
|
|
||
|
var glValueArray = ['GL_ARB_compatibility',
|
||
|
'GL_ARB_copy_buffer',
|
||
|
'GL_ARB_depth_buffer_float',
|
||
|
'GL_ARB_depth_clamp',
|
||
|
'GL_ARB_depth_texture',
|
||
|
'GL_ARB_draw_buffers',
|
||
|
'GL_ARB_draw_elements_base_vertex',
|
||
|
'GL_ARB_draw_instanced',
|
||
|
'GL_ARB_fragment_coord_conventions',
|
||
|
'GL_ARB_fragment_program',
|
||
|
'GL_ARB_fragment_program_shadow',
|
||
|
'GL_ARB_fragment_shader',
|
||
|
'GL_ARB_framebuffer_object',
|
||
|
'GL_ARB_framebuffer_sRGB',
|
||
|
'GL_ARB_geometry_shader4',
|
||
|
'GL_ARB_half_float_pixel',
|
||
|
'GL_ARB_half_float_vertex',
|
||
|
'GL_ARB_imaging',
|
||
|
'GL_ARB_map_buffer_range',
|
||
|
'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_provoking_vertex',
|
||
|
'GL_ARB_seamless_cube_map',
|
||
|
'GL_ARB_shader_objects',
|
||
|
'GL_ARB_shading_language_100',
|
||
|
'GL_ARB_shadow',
|
||
|
'GL_ARB_sync',
|
||
|
'GL_ARB_texture_border_clamp',
|
||
|
'GL_ARB_texture_buffer_object',
|
||
|
'GL_ARB_texture_compression',
|
||
|
'GL_ARB_texture_compression_rgtc',
|
||
|
'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_multisample',
|
||
|
'GL_ARB_texture_non_power_of_two',
|
||
|
'GL_ARB_texture_rectangle',
|
||
|
'GL_ARB_texture_rg',
|
||
|
'GL_ARB_transpose_matrix',
|
||
|
'GL_ARB_uniform_buffer_object',
|
||
|
'GL_ARB_vertex_array_bgra',
|
||
|
'GL_ARB_vertex_array_object',
|
||
|
'GL_ARB_vertex_buffer_object',
|
||
|
'GL_ARB_vertex_program',
|
||
|
'GL_ARB_vertex_shader',
|
||
|
'GL_ARB_window_pos',
|
||
|
'GL_ATI_draw_buffers',
|
||
|
'GL_ATI_texture_float',
|
||
|
'GL_ATI_texture_mirror_once',
|
||
|
'GL_S3_s3tc',
|
||
|
'GL_EXT_texture_env_add',
|
||
|
'GL_EXT_abgr',
|
||
|
'GL_EXT_bgra',
|
||
|
'GL_EXT_bindable_uniform',
|
||
|
'GL_EXT_blend_color',
|
||
|
'GL_EXT_blend_equation_separate',
|
||
|
'GL_EXT_blend_func_separate',
|
||
|
'GL_EXT_blend_minmax',
|
||
|
'GL_EXT_blend_subtract',
|
||
|
'GL_EXT_compiled_vertex_array',
|
||
|
'GL_EXT_Cg_shader',
|
||
|
'GL_EXT_depth_bounds_test',
|
||
|
'GL_EXT_direct_state_access',
|
||
|
'GL_EXT_draw_buffers2',
|
||
|
'GL_EXT_draw_instanced',
|
||
|
'GL_EXT_draw_range_elements',
|
||
|
'GL_EXT_fog_coord',
|
||
|
'GL_EXT_framebuffer_blit',
|
||
|
'GL_EXT_framebuffer_multisample',
|
||
|
'GL_EXTX_framebuffer_mixed_formats',
|
||
|
'GL_EXT_framebuffer_object',
|
||
|
'GL_EXT_framebuffer_sRGB',
|
||
|
'GL_EXT_geometry_shader4',
|
||
|
'GL_EXT_gpu_program_parameters',
|
||
|
'GL_EXT_gpu_shader4',
|
||
|
'GL_EXT_multi_draw_arrays',
|
||
|
'GL_EXT_packed_depth_stencil',
|
||
|
'GL_EXT_packed_float',
|
||
|
'GL_EXT_packed_pixels',
|
||
|
'GL_EXT_pixel_buffer_object',
|
||
|
'GL_EXT_point_parameters',
|
||
|
'GL_EXT_provoking_vertex',
|
||
|
'GL_EXT_rescale_normal',
|
||
|
'GL_EXT_secondary_color',
|
||
|
'GL_EXT_separate_shader_objects',
|
||
|
'GL_EXT_separate_specular_color',
|
||
|
'GL_EXT_shadow_funcs',
|
||
|
'GL_EXT_stencil_two_side',
|
||
|
'GL_EXT_stencil_wrap',
|
||
|
'GL_EXT_texture3D',
|
||
|
'GL_EXT_texture_array',
|
||
|
'GL_EXT_texture_buffer_object',
|
||
|
'GL_EXT_texture_compression_latc',
|
||
|
'GL_EXT_texture_compression_rgtc',
|
||
|
'GL_EXT_texture_compression_s3tc',
|
||
|
'GL_EXT_texture_cube_map',
|
||
|
'GL_EXT_texture_edge_clamp',
|
||
|
'GL_EXT_texture_env_combine',
|
||
|
'GL_EXT_texture_env_dot3',
|
||
|
'GL_EXT_texture_filter_anisotropic',
|
||
|
'GL_EXT_texture_integer',
|
||
|
'GL_EXT_texture_lod',
|
||
|
'GL_EXT_texture_lod_bias',
|
||
|
'GL_EXT_texture_mirror_clamp',
|
||
|
'GL_EXT_texture_object',
|
||
|
'GL_EXT_texture_shared_exponent',
|
||
|
'GL_EXT_texture_sRGB',
|
||
|
'GL_EXT_texture_swizzle',
|
||
|
'GL_EXT_timer_query',
|
||
|
'GL_EXT_vertex_array',
|
||
|
'GL_EXT_vertex_array_bgra',
|
||
|
'GL_IBM_rasterpos_clip',
|
||
|
'GL_IBM_texture_mirrored_repeat',
|
||
|
'GL_KTX_buffer_region',
|
||
|
'GL_NV_blend_square',
|
||
|
'GL_NV_conditional_render',
|
||
|
'GL_NV_copy_depth_to_color',
|
||
|
'GL_NV_copy_image',
|
||
|
'GL_NV_depth_buffer_float',
|
||
|
'GL_NV_depth_clamp',
|
||
|
'GL_NV_explicit_multisample',
|
||
|
'GL_NV_fence',
|
||
|
'GL_NV_float_buffer',
|
||
|
'GL_NV_fog_distance',
|
||
|
'GL_NV_fragment_program',
|
||
|
'GL_NV_fragment_program_option',
|
||
|
'GL_NV_fragment_program2',
|
||
|
'GL_NV_framebuffer_multisample_coverage',
|
||
|
'GL_NV_geometry_shader4',
|
||
|
'GL_NV_gpu_program4',
|
||
|
'GL_NV_half_float',
|
||
|
'GL_NV_light_max_exponent',
|
||
|
'GL_NV_multisample_coverage',
|
||
|
'GL_NV_multisample_filter_hint',
|
||
|
'GL_NV_occlusion_query',
|
||
|
'GL_NV_packed_depth_stencil',
|
||
|
'GL_NV_parameter_buffer_object',
|
||
|
'GL_NV_parameter_buffer_object2',
|
||
|
'GL_NV_pixel_data_range',
|
||
|
'GL_NV_point_sprite',
|
||
|
'GL_NV_primitive_restart',
|
||
|
'GL_NV_register_combiners',
|
||
|
'GL_NV_register_combiners2',
|
||
|
'GL_NV_shader_buffer_load',
|
||
|
'GL_NV_texgen_reflection',
|
||
|
'GL_NV_texture_barrier',
|
||
|
'GL_NV_texture_compression_vtc',
|
||
|
'GL_NV_texture_env_combine4',
|
||
|
'GL_NV_texture_expand_normal',
|
||
|
'GL_NV_texture_rectangle',
|
||
|
'GL_NV_texture_shader',
|
||
|
'GL_NV_texture_shader2',
|
||
|
'GL_NV_texture_shader3',
|
||
|
'GL_NV_transform_feedback',
|
||
|
'GL_NV_vertex_array_range',
|
||
|
'GL_NV_vertex_array_range2',
|
||
|
'GL_NV_vertex_buffer_unified_memory',
|
||
|
'GL_NV_vertex_program',
|
||
|
'GL_NV_vertex_program1_1',
|
||
|
'GL_NV_vertex_program2',
|
||
|
'GL_NV_vertex_program2_option',
|
||
|
'GL_NV_vertex_program3',
|
||
|
'GL_NVX_conditional_render',
|
||
|
'GL_NVX_gpu_memory_info',
|
||
|
'GL_SGIS_generate_mipmap',
|
||
|
'GL_SGIS_texture_lod',
|
||
|
'GL_SGIX_depth_texture',
|
||
|
'GL_SGIX_shadow',
|
||
|
'GL_SUN_slice_accum'];
|
||
|
(function() {
|
||
|
var dataSets = [
|
||
|
{
|
||
|
name: 'full_data_linux',
|
||
|
gpuInfo: {
|
||
|
basic_info: [
|
||
|
{
|
||
|
description: 'Initialization time',
|
||
|
value: '111'
|
||
|
},
|
||
|
{
|
||
|
description: 'Vendor Id',
|
||
|
value: '0x10de'
|
||
|
},
|
||
|
{
|
||
|
description: 'Device Id',
|
||
|
value: '0x0658'
|
||
|
},
|
||
|
{
|
||
|
description: 'Driver vendor',
|
||
|
value: 'NVIDIA'
|
||
|
},
|
||
|
{
|
||
|
description: 'Driver version',
|
||
|
value: '195.36.24'
|
||
|
},
|
||
|
{
|
||
|
description: 'Driver date',
|
||
|
value: ''
|
||
|
},
|
||
|
{
|
||
|
description: 'Pixel shader version',
|
||
|
value: '1.50'
|
||
|
},
|
||
|
{
|
||
|
description: 'Vertex shader version',
|
||
|
value: '1.50'
|
||
|
},
|
||
|
{
|
||
|
description: 'GL version',
|
||
|
value: '3.2'
|
||
|
},
|
||
|
{
|
||
|
description: 'GL_VENDOR',
|
||
|
value: 'NVIDIA Corporation'
|
||
|
},
|
||
|
{
|
||
|
description: 'GL_RENDERER',
|
||
|
value: 'Quadro FX 380/PCI/SSE2'
|
||
|
},
|
||
|
{
|
||
|
description: 'GL_VERSION',
|
||
|
value: '3.2.0 NVIDIA 195.36.24'
|
||
|
},
|
||
|
{
|
||
|
description: 'GL_EXTENSIONS',
|
||
|
value: glValueArray.join(' '),
|
||
|
}
|
||
|
],
|
||
|
featureStatus: {
|
||
|
featureStatus:
|
||
|
[
|
||
|
{'status': 'enabled', name: '2d_canvas'},
|
||
|
{'status': 'enabled', name: '3d_css'},
|
||
|
{'status': 'enabled', name: 'compositing'},
|
||
|
{'status': 'enabled', name: 'webgl'},
|
||
|
{'status': 'enabled', name: 'multisampling'}
|
||
|
],
|
||
|
problems: []
|
||
|
}
|
||
|
},
|
||
|
clientInfo: {
|
||
|
blacklist_version: '1.10',
|
||
|
command_line: commandLineStr,
|
||
|
version: 'Chrome/12.0.729.0',
|
||
|
},
|
||
|
logMessages: []
|
||
|
},
|
||
|
{
|
||
|
name: 'no_data',
|
||
|
gpuInfo: undefined,
|
||
|
clientInfo: undefined,
|
||
|
logMessages: undefined
|
||
|
},
|
||
|
{
|
||
|
name: 'logs',
|
||
|
gpuInfo: undefined,
|
||
|
clientInfo: undefined,
|
||
|
logMessages: [
|
||
|
{header: 'foo', message: 'Bar'}
|
||
|
]
|
||
|
},
|
||
|
|
||
|
// tests for 'status'
|
||
|
{
|
||
|
name: 'feature_states',
|
||
|
gpuInfo: {
|
||
|
basic_info: undefined,
|
||
|
featureStatus: {
|
||
|
featureStatus: [
|
||
|
{'status': 'disabled_off', name: '2d_canvas'},
|
||
|
{'status': 'unavailable_software', name: '3d_css'},
|
||
|
{'status': 'disabled_software', name: 'compositing'},
|
||
|
{'status': 'software', name: 'compositing'},
|
||
|
{'status': 'unavailable_off', name: 'webgl'},
|
||
|
{'status': 'enabled', name: 'multisampling'}
|
||
|
],
|
||
|
problems: [
|
||
|
{
|
||
|
description: 'Something wrong',
|
||
|
crBugs: [],
|
||
|
webkitBugs: []
|
||
|
},
|
||
|
{
|
||
|
description: 'SomethingElse',
|
||
|
crBugs: [],
|
||
|
webkitBugs: []
|
||
|
},
|
||
|
{
|
||
|
description: 'WebKit and Chrome bug',
|
||
|
crBugs: [23456],
|
||
|
webkitBugs: [789, 2123]
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
},
|
||
|
clientInfo: undefined,
|
||
|
logMessages: []
|
||
|
}
|
||
|
|
||
|
];
|
||
|
|
||
|
var selectEl = document.createElement('select');
|
||
|
for (var i = 0; i < dataSets.length; ++i) {
|
||
|
var optionEl = document.createElement('option');
|
||
|
optionEl.textContent = dataSets[i].name;
|
||
|
optionEl.dataSet = dataSets[i];
|
||
|
selectEl.add(optionEl);
|
||
|
}
|
||
|
selectEl.addEventListener('change', function() {
|
||
|
browserBridge.applySimulatedData_(dataSets[selectEl.selectedIndex]);
|
||
|
});
|
||
|
selectEl.addEventListener('keydown', function() {
|
||
|
window.setTimeout(function() {
|
||
|
browserBridge.applySimulatedData_(dataSets[selectEl.selectedIndex]);
|
||
|
}, 0);
|
||
|
});
|
||
|
|
||
|
var controlEl = document.createElement('div');
|
||
|
var textEl = document.createElement('span');
|
||
|
textEl.textContent = 'GPU Info:';
|
||
|
controlEl.appendChild(textEl);
|
||
|
controlEl.appendChild(selectEl);
|
||
|
|
||
|
// document.querySelector('#debug-div').appendChild(controlEl, document.body.firstChild);
|
||
|
console.log("hello from browser stuff.js");
|
||
|
|
||
|
browserBridge.applySimulatedData_(dataSets[0]);
|
||
|
|
||
|
})();
|