mirror of https://github.com/PCSX2/pcsx2.git
gsdx (Linux): fallback to opengl SW when SDL is selected but disabled
pcsx2: don't print window title in fullscreen because it create a white frame flickering. Seem like a wx regression git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5199 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
504490263e
commit
6e1643392c
|
@ -516,6 +516,12 @@ GSPanel* GSFrame::GetViewport()
|
||||||
|
|
||||||
void GSFrame::OnUpdateTitle( wxTimerEvent& evt )
|
void GSFrame::OnUpdateTitle( wxTimerEvent& evt )
|
||||||
{
|
{
|
||||||
|
#ifdef __LINUX__
|
||||||
|
// Important Linux note: When the title is set in fullscreen the window is redrawn. Unfortunately
|
||||||
|
// an intermediate white screen appears too which leads to a very annoying flickering.
|
||||||
|
if (IsFullScreen()) return;
|
||||||
|
#endif
|
||||||
|
|
||||||
double fps = wxGetApp().FpsManager.GetFramerate();
|
double fps = wxGetApp().FpsManager.GetFramerate();
|
||||||
|
|
||||||
char gsDest[128];
|
char gsDest[128];
|
||||||
|
|
|
@ -67,11 +67,15 @@ GtkWidget* CreateRenderComboBox()
|
||||||
switch (i) {
|
switch (i) {
|
||||||
// better use opengl instead of SDL
|
// better use opengl instead of SDL
|
||||||
case 6:
|
case 6:
|
||||||
|
case 7:
|
||||||
|
#ifdef ENABLE_SDL_DEV
|
||||||
label += " (deprecated)";
|
label += " (deprecated)";
|
||||||
|
#else
|
||||||
|
label += " (removed)";
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// (dev only) for any NULL stuff
|
// (dev only) for any NULL stuff
|
||||||
case 7:
|
|
||||||
case 8:
|
case 8:
|
||||||
case 9:
|
case 9:
|
||||||
label += " (debug only)";
|
label += " (debug only)";
|
||||||
|
@ -90,12 +94,17 @@ GtkWidget* CreateRenderComboBox()
|
||||||
|
|
||||||
switch (theApp.GetConfig("renderer", 0)) {
|
switch (theApp.GetConfig("renderer", 0)) {
|
||||||
// Note the value are based on m_gs_renderers vector on GSdx.cpp
|
// Note the value are based on m_gs_renderers vector on GSdx.cpp
|
||||||
|
#ifdef ENABLE_SDL_DEV
|
||||||
case 7 : renderer_box_position = 0; break;
|
case 7 : renderer_box_position = 0; break;
|
||||||
case 8 : renderer_box_position = 1; break;
|
case 8 : renderer_box_position = 1; break;
|
||||||
|
#endif
|
||||||
case 10: renderer_box_position = 2; break;
|
case 10: renderer_box_position = 2; break;
|
||||||
case 11: renderer_box_position = 3; break;
|
case 11: renderer_box_position = 3; break;
|
||||||
case 12: renderer_box_position = 4; break;
|
case 12: renderer_box_position = 4; break;
|
||||||
case 13: renderer_box_position = 5; break;
|
case 13: renderer_box_position = 5; break;
|
||||||
|
|
||||||
|
// Fallback to openGL SW
|
||||||
|
default: renderer_box_position = 5; break;
|
||||||
}
|
}
|
||||||
gtk_combo_box_set_active(GTK_COMBO_BOX(render_combo_box), renderer_box_position);
|
gtk_combo_box_set_active(GTK_COMBO_BOX(render_combo_box), renderer_box_position);
|
||||||
return render_combo_box;
|
return render_combo_box;
|
||||||
|
@ -157,7 +166,7 @@ void toggle_widget_states( GtkWidget *widget, gpointer callback_data )
|
||||||
bool hardware_render = false, software_render = false, sdl_render = false, null_render = false;
|
bool hardware_render = false, software_render = false, sdl_render = false, null_render = false;
|
||||||
|
|
||||||
render_type = gtk_combo_box_get_active(GTK_COMBO_BOX(render_combo_box));
|
render_type = gtk_combo_box_get_active(GTK_COMBO_BOX(render_combo_box));
|
||||||
hardware_render = (render_type == 1 || render_type == 4 || render_type == 7 || render_type == 13);
|
hardware_render = ((render_type % 3) == 1);
|
||||||
|
|
||||||
if (hardware_render)
|
if (hardware_render)
|
||||||
{
|
{
|
||||||
|
@ -432,16 +441,19 @@ bool RunLinuxDialog()
|
||||||
|
|
||||||
// Get all the settings from the dialog box.
|
// Get all the settings from the dialog box.
|
||||||
if (gtk_combo_box_get_active(GTK_COMBO_BOX(render_combo_box)) != -1) {
|
if (gtk_combo_box_get_active(GTK_COMBO_BOX(render_combo_box)) != -1) {
|
||||||
// FIXME test current opengl version supported through glxinfo (OpenGL version string:)
|
|
||||||
// Warn the user if 4.2 is not supported and switch back to basic SDL renderer
|
|
||||||
switch (gtk_combo_box_get_active(GTK_COMBO_BOX(render_combo_box))) {
|
|
||||||
// Note the value are based on m_gs_renderers vector on GSdx.cpp
|
// Note the value are based on m_gs_renderers vector on GSdx.cpp
|
||||||
|
switch (gtk_combo_box_get_active(GTK_COMBO_BOX(render_combo_box))) {
|
||||||
|
#ifdef ENABLE_SDL_DEV
|
||||||
case 0: theApp.SetConfig("renderer", 7); break;
|
case 0: theApp.SetConfig("renderer", 7); break;
|
||||||
case 1: theApp.SetConfig("renderer", 8); break;
|
case 1: theApp.SetConfig("renderer", 8); break;
|
||||||
|
#endif
|
||||||
case 2: theApp.SetConfig("renderer", 10); break;
|
case 2: theApp.SetConfig("renderer", 10); break;
|
||||||
case 3: theApp.SetConfig("renderer", 11); break;
|
case 3: theApp.SetConfig("renderer", 11); break;
|
||||||
case 4: theApp.SetConfig("renderer", 12); break;
|
case 4: theApp.SetConfig("renderer", 12); break;
|
||||||
case 5: theApp.SetConfig("renderer", 13); break;
|
case 5: theApp.SetConfig("renderer", 13); break;
|
||||||
|
|
||||||
|
// Fallback to SW opengl
|
||||||
|
default: theApp.SetConfig("renderer", 13); break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue