From bda569f2c6670278dd956e160852330e89cb0fef Mon Sep 17 00:00:00 2001 From: epitron Date: Sun, 28 Dec 2014 17:17:44 -0500 Subject: [PATCH 1/7] Add ctags-files to .gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 55f8f185..f2a0e28e 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ Makefile *.kdev4 *.qm *.out +.tags* From d3e8b5d6e78c797f53da602f42c8f5034b79267c Mon Sep 17 00:00:00 2001 From: epitron Date: Sun, 28 Dec 2014 17:18:05 -0500 Subject: [PATCH 2/7] Align equals signs --- src/mpvhandler.cpp | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/mpvhandler.cpp b/src/mpvhandler.cpp index 09e6df94..838ff0f8 100644 --- a/src/mpvhandler.cpp +++ b/src/mpvhandler.cpp @@ -563,16 +563,16 @@ void MpvHandler::LoadFileInfo() // get length double len; mpv_get_property(mpv, "length", MPV_FORMAT_DOUBLE, &len); - fileInfo.length = (int)len; - - fileInfo.video_params.codec = mpv_get_property_string(mpv, "video-codec"); - fileInfo.video_params.format = mpv_get_property_string(mpv, "video-format"); - fileInfo.video_params.bitrate = mpv_get_property_string(mpv, "video-bitrate"); - fileInfo.audio_params.codec = mpv_get_property_string(mpv, "audio-codec"); - fileInfo.audio_params.format = mpv_get_property_string(mpv, "audio-format"); - fileInfo.audio_params.bitrate = mpv_get_property_string(mpv, "audio-bitrate"); + fileInfo.length = (int)len; + + fileInfo.video_params.codec = mpv_get_property_string(mpv, "video-codec"); + fileInfo.video_params.format = mpv_get_property_string(mpv, "video-format"); + fileInfo.video_params.bitrate = mpv_get_property_string(mpv, "video-bitrate"); + fileInfo.audio_params.codec = mpv_get_property_string(mpv, "audio-codec"); + fileInfo.audio_params.format = mpv_get_property_string(mpv, "audio-format"); + fileInfo.audio_params.bitrate = mpv_get_property_string(mpv, "audio-bitrate"); fileInfo.audio_params.samplerate = mpv_get_property_string(mpv, "audio-samplerate"); - fileInfo.audio_params.channels = mpv_get_property_string(mpv, "audio-channels"); + fileInfo.audio_params.channels = mpv_get_property_string(mpv, "audio-channels"); LoadTracks(); LoadChapters(); @@ -689,10 +689,10 @@ void MpvHandler::LoadChapters() void MpvHandler::LoadVideoParams() { - mpv_get_property(mpv, "width", MPV_FORMAT_INT64, &fileInfo.video_params.width); - mpv_get_property(mpv, "height", MPV_FORMAT_INT64, &fileInfo.video_params.height); - mpv_get_property(mpv, "dwidth", MPV_FORMAT_INT64, &fileInfo.video_params.dwidth); - mpv_get_property(mpv, "dheight", MPV_FORMAT_INT64, &fileInfo.video_params.dheight); + mpv_get_property(mpv, "width", MPV_FORMAT_INT64, &fileInfo.video_params.width); + mpv_get_property(mpv, "height", MPV_FORMAT_INT64, &fileInfo.video_params.height); + mpv_get_property(mpv, "dwidth", MPV_FORMAT_INT64, &fileInfo.video_params.dwidth); + mpv_get_property(mpv, "dheight", MPV_FORMAT_INT64, &fileInfo.video_params.dheight); mpv_get_property(mpv, "video-aspect", MPV_FORMAT_INT64, &fileInfo.video_params.aspect); emit videoParamsChanged(fileInfo.video_params); From 8e1461f9fe8eb3bac5232dd2227dd31d98f113b9 Mon Sep 17 00:00:00 2001 From: epitron Date: Sun, 28 Dec 2014 17:19:46 -0500 Subject: [PATCH 3/7] Prevent the mouse wheel from changing the volume while trying to scroll the playlist. --- src/widgets/playlistwidget.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/widgets/playlistwidget.cpp b/src/widgets/playlistwidget.cpp index e2ec126e..78f30aa2 100644 --- a/src/widgets/playlistwidget.cpp +++ b/src/widgets/playlistwidget.cpp @@ -10,6 +10,7 @@ PlaylistWidget::PlaylistWidget(QWidget *parent) : QListWidget(parent), cItem() { + setAttribute(Qt::WA_NoMousePropagation); } QAction *PlaylistWidget::addAction(const QString &text) From e82d8e89a96cc821c406a17a07399283547c1b79 Mon Sep 17 00:00:00 2001 From: epitron Date: Sun, 28 Dec 2014 17:20:44 -0500 Subject: [PATCH 4/7] Added wrapper functions for "Toggle{Playlist,Subtitles,Play}". --- src/ui/mainwindow.cpp | 29 ++++++++++++++++++++++++----- src/ui/mainwindow.h | 4 ++++ 2 files changed, 28 insertions(+), 5 deletions(-) diff --git a/src/ui/mainwindow.cpp b/src/ui/mainwindow.cpp index faea255e..bb5e948b 100644 --- a/src/ui/mainwindow.cpp +++ b/src/ui/mainwindow.cpp @@ -125,7 +125,7 @@ MainWindow::MainWindow(QWidget *parent): else if(mpv->getPlayState() == Mpv::Paused) sysTrayIcon->showMessage("Baka MPlayer", tr("Paused"), QSystemTrayIcon::NoIcon, 4000); } - mpv->PlayPause(ui->playlistWidget->CurrentItem()); + TogglePlay(); } }); @@ -641,7 +641,7 @@ MainWindow::MainWindow(QWidget *parent): connect(ui->playButton, &QPushButton::clicked, // Playback: Play/pause button [=] { - mpv->PlayPause(ui->playlistWidget->CurrentItem()); + TogglePlay(); }); connect(ui->nextButton, &IndexButton::clicked, // Playback: Next button @@ -659,8 +659,7 @@ MainWindow::MainWindow(QWidget *parent): connect(ui->playlistButton, &QPushButton::clicked, // Playback: Clicked the playlist button [=] { - // if the position is 0, playlist is hidden so show it - ShowPlaylist(ui->splitter->position() == 0); + TogglePlaylist(); }); connect(ui->splitter, &CustomSplitter::positionChanged, // Splitter position changed @@ -962,7 +961,7 @@ MainWindow::MainWindow(QWidget *parent): connect(ui->action_Play, &QAction::triggered, // Playback -> (Play|Pause) [=] { - mpv->PlayPause(ui->playlistWidget->CurrentItem()); + TogglePlay(); }); connect(ui->action_Stop, &QAction::triggered, // Playback -> Stop @@ -1635,6 +1634,26 @@ void MainWindow::FullScreen(bool fs) } } +void MainWindow::TogglePlay() { + mpv->PlayPause(ui->playlistWidget->CurrentItem()); +} + +bool MainWindow::isPlaylistVisible() { + // if the position is 0, playlist is hidden + return ui->splitter->position() != 0; +} + +void MainWindow::TogglePlaylist() { + ShowPlaylist(!isPlaylistVisible()); +} + +void MainWindow::ToggleSubtitles() { + if(mpv->getSubtitleVisibility()) + mpv->ShowSubtitles(false); + else + mpv->ShowSubtitles(true); +} + void MainWindow::ShowPlaylist(bool visible) { if(visible) diff --git a/src/ui/mainwindow.h b/src/ui/mainwindow.h index 3efda4b5..8afc7bb3 100644 --- a/src/ui/mainwindow.h +++ b/src/ui/mainwindow.h @@ -48,6 +48,10 @@ class MainWindow : public QMainWindow void wheelEvent(QWheelEvent *event); // the mouse wheel is used void keyPressEvent(QKeyEvent *event); void SetPlaybackControls(bool enable); // macro to enable/disable playback controls + void TogglePlaylist(); // toggles playlist visibility + void TogglePlay(); // play/pause + void ToggleSubtitles(); // play/pause + bool isPlaylistVisible(); // is the playlist visible? private slots: void FullScreen(bool fs); // makes window fullscreen From 4c8e0923cbde543336bd54ecf33f2c30acf61a04 Mon Sep 17 00:00:00 2001 From: epitron Date: Sun, 28 Dec 2014 17:24:14 -0500 Subject: [PATCH 5/7] Added MPlayer-compatible shortcut keys. --- src/ui/mainwindow.cpp | 74 +++++++++++++++++++++++++++---------------- 1 file changed, 47 insertions(+), 27 deletions(-) diff --git a/src/ui/mainwindow.cpp b/src/ui/mainwindow.cpp index bb5e948b..63916459 100644 --- a/src/ui/mainwindow.cpp +++ b/src/ui/mainwindow.cpp @@ -1512,33 +1512,53 @@ void MainWindow::keyPressEvent(QKeyEvent *event) // keyboard shortcuts switch(event->key()) { - case Qt::Key_Left: - mpv->Seek(-5, true); - break; - case Qt::Key_Right: - mpv->Seek(5, true); - break; - case Qt::Key_Up: - if(ui->splitter->position() != 0) - ui->playlistWidget->SelectItem(ui->playlistWidget->PreviousItem()); - break; - case Qt::Key_Down: - if(ui->splitter->position() != 0) - ui->playlistWidget->SelectItem(ui->playlistWidget->NextItem()); - break; - case Qt::Key_Return: - if(ui->splitter->position() != 0) - mpv->PlayFile(ui->playlistWidget->CurrentItem()); - break; - case Qt::Key_Escape: - if(isFullScreen()) // in fullscreen mode, escape will exit fullscreen - FullScreen(false); - else - { - mpv->Pause(); - setWindowState(windowState() | Qt::WindowMinimized); - } - break; + // Playback/Seeking + case Qt::Key_Left: + mpv->Seek(-5, true); + break; + case Qt::Key_Right: + mpv->Seek(5, true); + break; + case Qt::Key_Space: + TogglePlay(); + break; + + // Playlist Control + case Qt::Key_Up: + if(ui->splitter->position() != 0) + ui->playlistWidget->SelectItem(ui->playlistWidget->PreviousItem()); + break; + case Qt::Key_Down: + if(ui->splitter->position() != 0) + ui->playlistWidget->SelectItem(ui->playlistWidget->NextItem()); + break; + case Qt::Key_Return: + if(ui->splitter->position() != 0) + mpv->PlayFile(ui->playlistWidget->CurrentItem()); + break; + case Qt::Key_Escape: + if(isFullScreen()) // in fullscreen mode, escape will exit fullscreen + FullScreen(false); + else + { + mpv->Pause(); + setWindowState(windowState() | Qt::WindowMinimized); + } + break; + + // MPlayer shortcuts + case Qt::Key_F: + FullScreen(!isFullScreen()); + break; + case Qt::Key_Q: + close(); + break; + case Qt::Key_V: + TogglePlaylist(); + break; + case Qt::Key_S: + ToggleSubtitles(); + break; } } From aecdbd31877d2a2cc77338468804e7f560dd3b6a Mon Sep 17 00:00:00 2001 From: godly-devotion Date: Sun, 28 Dec 2014 17:46:31 -0500 Subject: [PATCH 6/7] mainwindow.ui: swap Show in Folder and Show Command Line shortcut keys --- src/ui/mainwindow.ui | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ui/mainwindow.ui b/src/ui/mainwindow.ui index 4eb025d3..bcded3c2 100644 --- a/src/ui/mainwindow.ui +++ b/src/ui/mainwindow.ui @@ -976,7 +976,7 @@ QSlider::handle:horizontal { 0 0 580 - 26 + 23 @@ -1218,7 +1218,7 @@ QSlider::handle:horizontal { Show in &Folder - Ctrl+G + Ctrl+E @@ -1600,7 +1600,7 @@ QSlider::handle:horizontal { Show &Command Line - Ctrl+E + Ctrl+G From 087dbb060ba03d78037ed67bcb81c9b3acee4aa2 Mon Sep 17 00:00:00 2001 From: Daniel Clarke Date: Sun, 28 Dec 2014 17:49:13 -0500 Subject: [PATCH 7/7] Commented out space handling (already done elsewhere) --- src/ui/mainwindow.cpp | 7 ++++--- src/ui/mainwindow.ui | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/ui/mainwindow.cpp b/src/ui/mainwindow.cpp index 8daab5d1..b582c8fb 100644 --- a/src/ui/mainwindow.cpp +++ b/src/ui/mainwindow.cpp @@ -1519,9 +1519,10 @@ void MainWindow::keyPressEvent(QKeyEvent *event) case Qt::Key_Right: mpv->Seek(5, true); break; - case Qt::Key_Space: - TogglePlay(); - break; + // already exists as play/pause hotkey +// case Qt::Key_Space: +// TogglePlay(); +// break; // Playlist Control case Qt::Key_Up: diff --git a/src/ui/mainwindow.ui b/src/ui/mainwindow.ui index 4eb025d3..6420723d 100644 --- a/src/ui/mainwindow.ui +++ b/src/ui/mainwindow.ui @@ -976,7 +976,7 @@ QSlider::handle:horizontal { 0 0 580 - 26 + 24