diff --git a/data/graphical_restrictions.xml b/data/graphical_restrictions.xml
index 33ddc1366..a8cfaf94a 100644
--- a/data/graphical_restrictions.xml
+++ b/data/graphical_restrictions.xml
@@ -6,10 +6,12 @@
-
+
+
diff --git a/src/graphics/graphics_restrictions.cpp b/src/graphics/graphics_restrictions.cpp
index 1395e4b7f..c14201612 100644
--- a/src/graphics/graphics_restrictions.cpp
+++ b/src/graphics/graphics_restrictions.cpp
@@ -54,7 +54,8 @@ namespace GraphicsRestrictions
"BufferStorage",
"BindlessTexture",
"TextureCompressionS3TC",
- "AMDVertexShaderLayer"
+ "AMDVertexShaderLayer",
+ "DriverRecentEnough"
};
} // namespace Private
using namespace Private;
@@ -389,9 +390,9 @@ void unitTesting()
assert(Version("2.1 Mesa 10.5.0-devel (git-82e919d)",
"Gallium 0.4 on i915 (chipse)")
== Version("10.5.0") );
- assert(Version("1.4 (3.0 Mesa 10.1.0)",
- "Mesa DRI Intel(R) Ivybridge Mobile")
- == Version("10.1.0"));
+ assert(Version("1.4 (3.0 Mesa 10.1.0)",
+ "Mesa DRI Intel(R) Ivybridge Mobile")
+ == Version("10.1.0"));
} // unitTesting
diff --git a/src/graphics/graphics_restrictions.hpp b/src/graphics/graphics_restrictions.hpp
index 05c67bce4..294edaa5d 100644
--- a/src/graphics/graphics_restrictions.hpp
+++ b/src/graphics/graphics_restrictions.hpp
@@ -49,6 +49,7 @@ namespace GraphicsRestrictions
GR_BINDLESS_TEXTURE,
GR_EXT_TEXTURE_COMPRESSION_S3TC,
GR_AMD_VERTEX_SHADER_LAYER,
+ GR_DRIVER_RECENT_ENOUGH,
GR_COUNT /** MUST be last entry. */
} ;
diff --git a/src/main.cpp b/src/main.cpp
index c2eaaabe5..6ff7d73bd 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1143,8 +1143,8 @@ void askForInternetPermission()
"'User Interface', and edit \"Connect to the "
"Internet\" and \"Send anonymous HW statistics\")."),
MessageDialog::MESSAGE_DIALOG_YESNO,
- new ConfirmServer(), true);
-
+ new ConfirmServer(), true, true);
+ GUIEngine::DialogQueue::get()->pushDialog(dialog, false);
} // askForInternetPermission
//=============================================================================
@@ -1294,6 +1294,15 @@ int main(int argc, char *argv[] )
exit(0);
}
+ if (GraphicsRestrictions::isDisabled(GraphicsRestrictions::GR_DRIVER_RECENT_ENOUGH))
+ {
+ MessageDialog *dialog =
+ new MessageDialog(_("Your driver version is too old. Please install "
+ "the latest video drivers."),
+ /*from queue*/ true);
+ GUIEngine::DialogQueue::get()->pushDialog(dialog);
+ }
+
// Note that on the very first run of STK internet status is set to
// "not asked", so the report will only be sent in the next run.
if(UserConfigParams::m_internet_status==Online::RequestManager::IPERM_ALLOWED)