]> git.sur5r.net Git - minitube/commitdiff
Ability to copy stream url
author <> <>
Sun, 11 Apr 2010 12:35:52 +0000 (14:35 +0200)
committerFlavio <flavio@Lauras-MacBook.local>
Sun, 11 Apr 2010 12:35:52 +0000 (14:35 +0200)
Fixed video title in status bar

src/MediaView.cpp
src/MediaView.h

index c1b1e3c1cfc5a35192f78b000a97889d51d9543e..1a14660582bf521df7f47735029af510504394c8 100644 (file)
@@ -179,17 +179,17 @@ void MediaView::stateChanged(Phonon::State newState, Phonon::State /*oldState*/)
 
     switch (newState) {
 
-         case Phonon::ErrorState:
+    case Phonon::ErrorState:
         qDebug() << "Phonon error:" << mediaObject->errorString() << mediaObject->errorType();
         handleError(mediaObject->errorString());
         break;
 
-         case Phonon::PlayingState:
+    case Phonon::PlayingState:
         //qDebug("playing");
         videoAreaWidget->showVideo();
         break;
 
-         case Phonon::StoppedState:
+    case Phonon::StoppedState:
         //qDebug("stopped");
         // play() has already been called when setting the source
         // but Phonon on Linux needs a little more help to start playback
@@ -273,7 +273,7 @@ void MediaView::activeRowChanged(int row) {
     timerPlayFlag = false;
 
     // video title in the statusbar
-    QMainWindow* mainWindow = dynamic_cast<QMainWindow*>(qApp->topLevelWidgets().first());
+    QMainWindow* mainWindow = dynamic_cast<QMainWindow*>(window());
     if (mainWindow) mainWindow->statusBar()->showMessage(video->title());
 
     // see you in gotStreamUrl...
@@ -361,6 +361,19 @@ void MediaView::openWebPage() {
     QDesktopServices::openUrl(video->webpage());
 }
 
+void MediaView::copyVideoLink() {
+    Video* video = listModel->activeVideo();
+    QString message;
+    if (video) {
+        QApplication::clipboard()->setText(video->getStreamUrl().toString());
+        message = tr("You can now paste the video link into another application. The link will be valid only for a limited time.");
+    } else {
+        message = tr("No video is playing. The link has not been copied.");
+    }
+    QMainWindow* mainWindow = dynamic_cast<QMainWindow*>(window());
+    if (mainWindow) mainWindow->statusBar()->showMessage(message);
+}
+
 void MediaView::removeSelected() {
     if (!listView->selectionModel()->hasSelection()) return;
     QModelIndexList indexes = listView->selectionModel()->selectedIndexes();
index 954540d3266656fdfaf2f60787e91650e267ed7f..c4ddd4cff0c1f34b1a1059ff69a9449571494e09 100644 (file)
@@ -42,6 +42,7 @@ public slots:
     void skip();
     void skipVideo();
     void openWebPage();
+    void copyVideoLink();
     void removeSelected();
     void moveUpSelected();
     void moveDownSelected();