From 797fd5fe7aa905cfb4c58165c72c6e5800a001d6 Mon Sep 17 00:00:00 2001
From: Chad Parry <github@chad.parry.org>
Date: Thu, 23 Aug 2012 23:47:24 -0600
Subject: Disable the idle timer during a slideshow

---
 .../mythgallery/mythgallery/glsingleview.cpp       |    4 ++++
 mythplugins/mythgallery/mythgallery/singleview.cpp |    4 ++++
 2 files changed, 8 insertions(+)

diff --git a/mythplugins/mythgallery/mythgallery/glsingleview.cpp b/mythplugins/mythgallery/mythgallery/glsingleview.cpp
index 47a2ced..f0b0f3d 100644
--- a/mythplugins/mythgallery/mythgallery/glsingleview.cpp
+++ b/mythplugins/mythgallery/mythgallery/glsingleview.cpp
@@ -135,6 +135,7 @@ GLSingleView::GLSingleView(ThumbList itemList, int *pos, int slideShow,
 
     if (slideShow)
     {
+        GetMythMainWindow()->PauseIdleTimer(true);
         m_slideshow_running = true;
         m_slideshow_timer->stop();
         m_slideshow_timer->setSingleShot(true);
@@ -270,6 +271,8 @@ void GLSingleView::keyPressEvent(QKeyEvent *e)
 {
     bool handled    = false;
 
+    if (m_slideshow_running)
+        GetMythMainWindow()->PauseIdleTimer(false);
     bool wasRunning = m_slideshow_running;
     m_slideshow_timer->stop();
     m_slideshow_running = false;
@@ -473,6 +476,7 @@ void GLSingleView::keyPressEvent(QKeyEvent *e)
 
     if (m_slideshow_running)
     {
+        GetMythMainWindow()->PauseIdleTimer(true);
         GetMythUI()->DisableScreensaver();
     }
 
diff --git a/mythplugins/mythgallery/mythgallery/singleview.cpp b/mythplugins/mythgallery/mythgallery/singleview.cpp
index e7bcee7..e841201 100644
--- a/mythplugins/mythgallery/mythgallery/singleview.cpp
+++ b/mythplugins/mythgallery/mythgallery/singleview.cpp
@@ -137,6 +137,7 @@ SingleView::SingleView(
 
     if (slideShow)
     {
+        GetMythMainWindow()->PauseIdleTimer(true);
         m_slideshow_running = true;
         m_slideshow_timer->stop();
         m_slideshow_timer->setSingleShot(true);
@@ -333,6 +334,8 @@ void SingleView::keyPressEvent(QKeyEvent *e)
 {
     bool handled = false;
 
+    if (m_slideshow_running)
+        GetMythMainWindow()->PauseIdleTimer(false);
     bool wasRunning = m_slideshow_running;
     m_slideshow_timer->stop();
     m_caption_timer->stop();
@@ -524,6 +527,7 @@ void SingleView::keyPressEvent(QKeyEvent *e)
     }
     if (m_slideshow_running)
     {
+        GetMythMainWindow()->PauseIdleTimer(true);
         GetMythUI()->DisableScreensaver();
     }
 
-- 
1.7.9.5


From ebf093bafbf9a2a0dee81d762a79c8d865535136 Mon Sep 17 00:00:00 2001
From: Chad Parry <github@chad.parry.org>
Date: Fri, 24 Aug 2012 01:19:20 -0600
Subject: Restart the idle timer after escaping from a slideshow

---
 .../mythgallery/mythgallery/glsingleview.cpp       |    6 ++++++
 mythplugins/mythgallery/mythgallery/singleview.cpp |    6 ++++++
 2 files changed, 12 insertions(+)

diff --git a/mythplugins/mythgallery/mythgallery/glsingleview.cpp b/mythplugins/mythgallery/mythgallery/glsingleview.cpp
index f0b0f3d..e91f55e 100644
--- a/mythplugins/mythgallery/mythgallery/glsingleview.cpp
+++ b/mythplugins/mythgallery/mythgallery/glsingleview.cpp
@@ -155,6 +155,12 @@ void GLSingleView::CleanUp(void)
 {
     makeCurrent();
 
+    if (m_slideshow_running)
+    {  
+        GetMythMainWindow()->PauseIdleTimer(false);
+        GetMythUI()->RestoreScreensaver();
+    }
+
     if (m_slideshow_timer)
     {
         m_slideshow_timer->stop();
diff --git a/mythplugins/mythgallery/mythgallery/singleview.cpp b/mythplugins/mythgallery/mythgallery/singleview.cpp
index e841201..2005d12 100644
--- a/mythplugins/mythgallery/mythgallery/singleview.cpp
+++ b/mythplugins/mythgallery/mythgallery/singleview.cpp
@@ -148,6 +148,12 @@ SingleView::SingleView(
 
 SingleView::~SingleView()
 {
+    if (m_slideshow_running)
+    {
+        GetMythMainWindow()->PauseIdleTimer(false);
+        GetMythUI()->RestoreScreensaver();
+    }
+
     if (m_effect_painter)
     {
         if (m_effect_painter->isActive())
-- 
1.7.9.5

