Showing the changes to interface/src/Application.cpp (1 of 1 file). Show all
Unified · Split
| @@ -5669,13 +5669,22 @@ void Application::updateDisplayMode() { · 5668 unmodified lines | ||
| 5669 | 5669 | standard.insert(std::end(standard), std::begin(advanced), std::end(advanced)); |
| 5670 | 5670 | standard.insert(std::end(standard), std::begin(developer), std::end(developer)); |
| 5671 | 5671 | |
| 5672 | + DisplayPluginPointer defaultDisplayPlugin; | |
| 5673 | + | |
| 5674 | + // Default to the first HMD plugin, otherwise use the first in the list. | |
| 5675 | + auto hmdPluginIt = find_if(standard.begin(), standard.end(), [](DisplayPluginPointer& plugin) { return plugin->isHmd(); }); | |
| 5676 | + if (hmdPluginIt != standard.end()) { | |
| 5677 | + defaultDisplayPlugin = *hmdPluginIt; | |
| 5678 | + } else if (standard.size() > 0) { | |
| 5679 | + defaultDisplayPlugin = standard[0]; | |
| 5680 | + } | |
| 5681 | + | |
| 5672 | 5682 | foreach(auto displayPlugin, standard) { |
| 5673 | − addDisplayPluginToMenu(displayPlugin, first); | |
| 5683 | + addDisplayPluginToMenu(displayPlugin, displayPlugin.get() == defaultDisplayPlugin.get()); | |
| 5674 | 5684 | auto displayPluginName = displayPlugin->getName(); |
| 5675 | 5685 | QObject::connect(displayPlugin.get(), &DisplayPlugin::recommendedFramebufferSizeChanged, [this](const QSize & size) { |
| 5676 | 5686 | resizeGL(); |
| 5677 | 5687 | }); |
| 5678 | − first = false; | |
| 5679 | 5688 | } |
| 5680 | 5689 | |
| 5681 | 5690 | // after all plugins have been added to the menu, add a separator to the menu |