History

Merge branch 'master' of https://github.com/highfidelity/hifi into controllers

AlessandroSigna committed 11 years ago

Commit fdd4a552 parents 6d3a79a 5d80dc030 files · +869 −33Browse files

Showing the changes to interface/src/Application.cpp (1 of 30 files). Show all

Unified · Split

interface/src/Application.cpp+12−13
@@ -1030,10 +1030,7 @@ void Application::initializeUi() { · 1029 unmodified lines
10301030 foreach(auto inputPlugin, PluginManager::getInstance()->getInputPlugins()) {
10311031 QString name = inputPlugin->getName();
10321032 if (name == KeyboardMouseDevice::NAME) {
1033− auto kbm = static_cast<KeyboardMouseDevice*>(inputPlugin.data());
1034− // FIXME incredibly evil.... _keyboardMouseDevice is now owned by
1035− // both a QSharedPointer and a std::shared_ptr
1036− _keyboardMouseDevice = std::shared_ptr<KeyboardMouseDevice>(kbm);
1033+ _keyboardMouseDevice = std::dynamic_pointer_cast<KeyboardMouseDevice>(inputPlugin);
10371034 }
10381035 }
10391036 updateInputModes();
@@ -4648,7 +4645,7 @@ DisplayPlugin* Application::getActiveDisplayPlugin() { · 3608 unmodified lines
46484645 updateDisplayMode();
46494646 Q_ASSERT(_displayPlugin);
46504647 }
4651− return _displayPlugin.data();
4648+ return _displayPlugin.get();
46524649 }
46534650
46544651 const DisplayPlugin* Application::getActiveDisplayPlugin() const {
@@ -4688,10 +4685,10 @@ void Application::updateDisplayMode() { · 33 unmodified lines
46884685 bool first = true;
46894686 foreach(auto displayPlugin, displayPlugins) {
46904687 addDisplayPluginToMenu(displayPlugin, first);
4691− QObject::connect(displayPlugin.data(), &DisplayPlugin::requestRender, [this] {
4688+ QObject::connect(displayPlugin.get(), &DisplayPlugin::requestRender, [this] {
46924689 paintGL();
46934690 });
4694− QObject::connect(displayPlugin.data(), &DisplayPlugin::recommendedFramebufferSizeChanged, [this](const QSize & size) {
4691+ QObject::connect(displayPlugin.get(), &DisplayPlugin::recommendedFramebufferSizeChanged, [this](const QSize & size) {
46954692 resizeGL();
46964693 });
46974694
@@ -4817,12 +4814,14 @@ void Application::updateInputModes() { · 119 unmodified lines
48174814 foreach(auto inputPlugin, inputPlugins) {
48184815 QString name = inputPlugin->getName();
48194816 QAction* action = menu->getActionForOption(name);
4820− if (action->isChecked() && !_activeInputPlugins.contains(inputPlugin)) {
4821− _activeInputPlugins.append(inputPlugin);
4822− newInputPlugins.append(inputPlugin);
4823− } else if (!action->isChecked() && _activeInputPlugins.contains(inputPlugin)) {
4824− _activeInputPlugins.removeOne(inputPlugin);
4825− removedInputPlugins.append(inputPlugin);
4817+
4818+ auto it = std::find(std::begin(_activeInputPlugins), std::end(_activeInputPlugins), inputPlugin);
4819+ if (action->isChecked() && it == std::end(_activeInputPlugins)) {
4820+ _activeInputPlugins.push_back(inputPlugin);
4821+ newInputPlugins.push_back(inputPlugin);
4822+ } else if (!action->isChecked() && it != std::end(_activeInputPlugins)) {
4823+ _activeInputPlugins.erase(it);
4824+ removedInputPlugins.push_back(inputPlugin);
48264825 }
48274826 }
48284827