]> git.sur5r.net Git - minitube/commitdiff
Better compact mode
authorFlavio <flavio@odisseo.local>
Sat, 27 Apr 2013 13:25:18 +0000 (15:25 +0200)
committerFlavio <flavio@odisseo.local>
Sat, 27 Apr 2013 13:25:18 +0000 (15:25 +0200)
src/mainwindow.cpp
src/mainwindow.h

index bb815c004378ff104587ac01db81e9cf5134a6b8..e65b6b0ce2487700567f2c247eaf7c6c11f36122 100644 (file)
@@ -60,7 +60,8 @@ MainWindow::MainWindow() :
     regionsView(0),
     mediaObject(0),
     audioOutput(0),
-    m_fullscreen(false) {
+    m_fullscreen(false),
+    m_compact(false) {
 
     singleton = this;
 
@@ -1139,7 +1140,18 @@ void MainWindow::updateUIForFullscreen() {
     }
 }
 
+bool MainWindow::isReallyFullScreen() {
+#ifdef Q_WS_MAC
+    WId handle = winId();
+    if (mac::CanGoFullScreen(handle)) return mac::IsFullScreen(handle);
+    else return isFullScreen();
+#else
+    return isFullScreen();
+#endif
+}
+
 void MainWindow::compactView(bool enable) {
+    m_compact = enable;
 
     static QList<QKeySequence> compactShortcuts;
     static QList<QKeySequence> stopShortcuts;
@@ -1152,7 +1164,7 @@ void MainWindow::compactView(bool enable) {
 #endif
 
     if (enable) {
-        setMinimumSize(160, 120);
+        setMinimumSize(320, 180);
 #ifdef Q_WS_MAC
         mac::RemoveFullScreenWindow(winId());
 #endif
@@ -1161,7 +1173,7 @@ void MainWindow::compactView(bool enable) {
         if (settings.contains(key))
             restoreGeometry(settings.value(key).toByteArray());
         else
-            resize(320, 240);
+            resize(320, 180);
 
         mainToolBar->setVisible(!enable);
         mediaView->setPlaylistVisible(!enable);
@@ -1197,6 +1209,10 @@ void MainWindow::compactView(bool enable) {
 
     // auto float on top
     floatOnTop(enable);
+
+#ifdef Q_WS_MAC
+    mac::compactMode(winId(), enable);
+#endif
 }
 
 void MainWindow::searchFocus() {
index 160274821ae8125588a86b6fbb198385421edbd5..7cfe7ad9c0ce77d2a18a4cbe689ad80dc7693e63 100644 (file)
@@ -49,6 +49,8 @@ public slots:
     void buy();
     void hideBuyAction();
 #endif
+    bool isReallyFullScreen();
+    bool isCompact() { return m_compact; }
 
 protected:
     void changeEvent(QEvent *);
@@ -179,6 +181,8 @@ private:
     bool m_fullscreen;
     bool m_maximized;
     QTimer *mouseTimer;
+    bool m_compact;
+
 };
 
 #endif