--- src/mythtv/libs/libmythui/mythmainwindow.cpp.orig 2016-03-15 17:30:19.608956780 +0000 +++ src/mythtv/libs/libmythui/mythmainwindow.cpp 2016-03-15 17:37:17.368720092 +0000 @@ -1458,6 +1458,7 @@ #endif if (currentWidget()) { +#ifdef Q_OS_MAC // don't disable the current widget, instead we disable all its children // on mac, disabling the current active widget entirely prevent keyboard to // work on the newly opened widget. @@ -1473,6 +1474,9 @@ } } } +#else + currentWidget()->setEnabled(false); +#endif #ifdef USE_OPENGL_QT5 else { @@ -1506,8 +1510,6 @@ if (!current) { current = this; - // We're be to the main window, enable it just in case - setEnabled(true); #ifdef USE_OPENGL_QT5 // Restore WA_PaintOnScreen, used by OpenGL GUI painter setAttribute(Qt::WA_PaintOnScreen, d->m_bSavedPOS); @@ -1515,6 +1517,7 @@ QTimer::singleShot(2, d->paintwin, SLOT(update())); #endif } +#ifdef Q_OS_MAC else { QList list = current->findChildren(); @@ -1529,6 +1532,8 @@ } } current->raise(); +#endif + current->setEnabled(true); current->setFocus(); current->setMouseTracking(true);