diff -rupN original/mediaplayer-app/src/CMakeLists.txt new/mediaplayer-app/src/CMakeLists.txt --- original/mediaplayer-app/src/CMakeLists.txt 2016-05-17 10:21:58.662123000 +0200 +++ new/mediaplayer-app/src/CMakeLists.txt 2016-05-17 10:50:31.679672308 +0200 @@ -1,3 +1,4 @@ +pkg_check_modules(GSETTINGS_QT REQUIRED gsettings-qt) project(mediaplayer_src) set(MEDIAPLAYER mediaplayer-app) @@ -5,6 +6,7 @@ set(MEDIAPLAYER mediaplayer-app) include_directories( ${CMAKE_BINARY_DIR} ${sdkhelper_SOURCE_DIR} + ${GSETTINGS_QT_INCLUDE_DIRS} #${GSTLIB_INCLUDE_DIRS} ) @@ -28,6 +30,7 @@ qt5_use_modules(${MEDIAPLAYER} Gui Widge target_link_libraries(${MEDIAPLAYER} #${GSTLIB_LDFLAGS} + ${GSETTINGS_QT_LDFLAGS} ) install(TARGETS ${MEDIAPLAYER} diff -rupN original/mediaplayer-app/src/mediaplayer.cpp new/mediaplayer-app/src/mediaplayer.cpp --- original/mediaplayer-app/src/mediaplayer.cpp 2016-05-17 10:21:58.662123000 +0200 +++ new/mediaplayer-app/src/mediaplayer.cpp 2016-05-17 11:08:30.517935117 +0200 @@ -35,6 +35,7 @@ #include #include #include +#include #include "config.h" static void printUsage(const QStringList& arguments) @@ -180,6 +181,14 @@ MediaPlayer::onHeightChanged(int height) m_view->rootContext()->setContextProperty("screenHeight", height); } +bool MediaPlayer::isWindowedMode() const +{ + QGSettings *m_gSettings = new QGSettings("com.canonical.Unity8", "/com/canonical/unity8/"); + QString usage_mode = QString(m_gSettings->get("usage-mode").toString()); //default on phone is "Staged", desktop mode is "Windowed" + int x = QString::compare(usage_mode, "Windowed", Qt::CaseInsensitive); // if strings are equal x should return 0 + if(x==0){return 1;} //if running in windowed mode, return true +} + bool MediaPlayer::isDesktopMode() const { // Assume that platformName (QtUbuntu) with ubuntu diff -rupN original/mediaplayer-app/src/mediaplayer.h new/mediaplayer-app/src/mediaplayer.h --- original/mediaplayer-app/src/mediaplayer.h 2016-05-17 10:21:58.662123000 +0200 +++ new/mediaplayer-app/src/mediaplayer.h 2016-05-17 10:49:42.411937566 +0200 @@ -25,6 +25,7 @@ class MediaPlayer : public QApplication { Q_OBJECT + Q_PROPERTY(bool windowedMode READ isWindowedMode CONSTANT) Q_PROPERTY(bool desktopMode READ isDesktopMode CONSTANT) public: @@ -38,6 +39,7 @@ public Q_SLOTS: void leaveFullScreen(); void onWidthChanged(int); void onHeightChanged(int); + bool isWindowedMode() const; bool isDesktopMode() const; QUrl chooseFile(); QList copyFiles(const QList &urls); diff -rupN original/mediaplayer-app/src/qml/player.qml new/mediaplayer-app/src/qml/player.qml --- original/mediaplayer-app/src/qml/player.qml 2016-05-17 10:21:58.662123000 +0200 +++ new/mediaplayer-app/src/qml/player.qml 2016-05-17 10:46:31.985081198 +0200 @@ -41,6 +41,7 @@ Item { onAppActiveChanged: { if (!appActive && !mpApplication.desktopMode && + !mpApplication.windowedMode && playerLoader.item && playerLoader.item.playing) { playerLoader.item.pause()