diff --git a/ui/presentationwidget.h b/ui/presentationwidget.h --- a/ui/presentationwidget.h +++ b/ui/presentationwidget.h @@ -146,6 +146,7 @@ bool m_inBlackScreenMode; bool m_showSummaryView; bool m_advanceSlides; + bool m_goToPreviousPageOnRelease; bool m_goToNextPageOnRelease; private Q_SLOTS: diff --git a/ui/presentationwidget.cpp b/ui/presentationwidget.cpp --- a/ui/presentationwidget.cpp +++ b/ui/presentationwidget.cpp @@ -148,6 +148,7 @@ m_ac( collection ), m_screenSelect( nullptr ), m_isSetup( false ), m_blockNotifications( false ), m_inBlackScreenMode( false ), m_showSummaryView( Okular::Settings::slidesShowSummary() ), m_advanceSlides( Okular::SettingsCore::slidesAdvance() ), + m_goToPreviousPageOnRelease( false ), m_goToNextPageOnRelease( false ) { Q_UNUSED( parent ) @@ -702,7 +703,14 @@ return; } - m_goToNextPageOnRelease = true; + if ( e->x() < ( geometry().width()/2 ) ) + { + m_goToPreviousPageOnRelease = true; + } + else + { + m_goToNextPageOnRelease = true; + } } // pressing the "move forward" mouse button: unlike the left button this // always means "show next page", so we unconditionally delegate to that @@ -732,6 +740,11 @@ m_pressedLink = nullptr; } + if ( m_goToPreviousPageOnRelease ) { + slotPrevPage(); + m_goToPreviousPageOnRelease = false; + } + if ( m_goToNextPageOnRelease ) { slotNextPage(); m_goToNextPageOnRelease = false;