summaryrefslogtreecommitdiff
path: root/raveos-calamares/0006-raveos-lepesre-ugras.patch
diff options
context:
space:
mode:
Diffstat (limited to 'raveos-calamares/0006-raveos-lepesre-ugras.patch')
-rw-r--r--raveos-calamares/0006-raveos-lepesre-ugras.patch51
1 files changed, 51 insertions, 0 deletions
diff --git a/raveos-calamares/0006-raveos-lepesre-ugras.patch b/raveos-calamares/0006-raveos-lepesre-ugras.patch
new file mode 100644
index 0000000..820ead9
--- /dev/null
+++ b/raveos-calamares/0006-raveos-lepesre-ugras.patch
@@ -0,0 +1,51 @@
+--- a/src/libcalamaresui/ViewManager.h
++++ b/src/libcalamaresui/ViewManager.h
+@@ -146,6 +146,8 @@
+ * have any pages before the current one.
+ */
+ void back();
++
++ void goBackTo( int index );
+ bool backEnabled() const
+ {
+ return m_backEnabled; ///< Is the back-button to be enabled
+--- a/src/libcalamaresui/ViewManager.cpp
++++ b/src/libcalamaresui/ViewManager.cpp
+@@ -468,6 +468,37 @@
+ }
+
+ void
++ViewManager::goBackTo( int index )
++{
++ if ( !currentStepValid() || index < 0 || index >= m_currentStep )
++ {
++ return;
++ }
++ for ( int i = index; i <= m_currentStep; ++i )
++ {
++ if ( stepIsExecute( m_steps, i ) )
++ {
++ return;
++ }
++ }
++
++ ViewStep* step = m_steps.at( m_currentStep );
++ m_currentStep = index;
++ m_stack->setCurrentIndex( m_currentStep );
++ step->onLeave();
++ m_steps.at( m_currentStep )->onActivate();
++ emit currentStepChanged();
++
++ UPDATE_NEXT_BUTTON_PROPERTY( m_steps.at( m_currentStep ), m_steps.at( m_currentStep )->isNextEnabled() );
++ UPDATE_BUTTON_PROPERTY( backEnabled,
++ ( m_currentStep == 0 && m_steps.first()->isAtBeginning() )
++ ? false
++ : m_steps.at( m_currentStep )->isBackEnabled() );
++
++ updateButtonLabels();
++}
++
++void
+ ViewManager::back()
+ {
+ if ( !currentStepValid() )