From 838ffbd5cc19fe27f94db90665c5ab49ed41777e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Drahom=C3=ADr=20Karch=C5=88=C3=A1k?=
 <drahomir.karchnak@nic.cz>
Date: Mon, 7 Dec 2015 15:10:26 +0100
Subject: [PATCH] #58 Fixed a bug, which caused the intro music to stop playing
 everytime you scrolled.

---
 .../cz/nic/tablexia/screen/gamemenu/pages/WallPage.java    | 7 +++++++
 core/src/cz/nic/tablexia/util/ui/PagedScrollPane.java      | 7 +++++--
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/core/src/cz/nic/tablexia/screen/gamemenu/pages/WallPage.java b/core/src/cz/nic/tablexia/screen/gamemenu/pages/WallPage.java
index 90774d3b8..1e7ff60b0 100644
--- a/core/src/cz/nic/tablexia/screen/gamemenu/pages/WallPage.java
+++ b/core/src/cz/nic/tablexia/screen/gamemenu/pages/WallPage.java
@@ -9,6 +9,8 @@ import cz.nic.tablexia.screen.gamemenu.GameMenuAssets;
 import cz.nic.tablexia.screen.gamemenu.GameMenuScreen;
 
 /**
+ * This class represents the page between the office and game menu pages
+ * It works as a separator and PagedScrollPane can't snap to this page
  * Created by Drahomir Karchnak on 02/12/15.
  */
 public class WallPage extends MenuPage{
@@ -21,8 +23,10 @@ public class WallPage extends MenuPage{
     public WallPage(AbstractTablexiaScreen<int[][]> screen) {
         super(screen);
 
+        //offset of the pagedScrollPane
         pagedScrollPaneOffsetY = ((GameMenuScreen) screen).getPagedScrollPane().getY();
 
+        //Sets size and position of WallPage
         setSize(mid.getRegionWidth(), getScreen().getSceneOuterHeight());
         setPosition(getScreen().getSceneWidth(), getScreen().getSceneOuterBottomY() - getScreen().getSceneOuterBottomY());
     }
@@ -31,6 +35,7 @@ public class WallPage extends MenuPage{
     public void draw(Batch batch, float parentAlpha) {
         batch.setColor(batch.getColor().r, batch.getColor().g, batch.getColor().b, parentAlpha);
 
+        //Disables Blending, no need when drawing the background
         batch.disableBlending();
 
         //Just adjusting sourceX coordinate to get animated background/sky
@@ -48,6 +53,7 @@ public class WallPage extends MenuPage{
                 false);
 
 
+        //Enables Blending for foreground layer
         batch.enableBlending();
 
         batch.draw( mid,
@@ -62,6 +68,7 @@ public class WallPage extends MenuPage{
 
     @Override
     public boolean isSnapToAllowed() {
+        //PagedScrollPane can't snap to this page
         return false;
     }
 
diff --git a/core/src/cz/nic/tablexia/util/ui/PagedScrollPane.java b/core/src/cz/nic/tablexia/util/ui/PagedScrollPane.java
index e9dd92bc7..427f80d2c 100644
--- a/core/src/cz/nic/tablexia/util/ui/PagedScrollPane.java
+++ b/core/src/cz/nic/tablexia/util/ui/PagedScrollPane.java
@@ -181,8 +181,11 @@ public class PagedScrollPane extends ScrollPane {
                     setSmoothScrolling(smooth);
                     setScrollX(page.getX());
 
-                    MenuPage leavePage = (MenuPage) contentTable.getChildren().get(indexCurrentPage);
-                    leavePage.onScrollPageExit();
+                    //Is changing page ?
+                    if(indexCurrentPage != i) {
+                        MenuPage leavePage = (MenuPage) contentTable.getChildren().get(indexCurrentPage);
+                        leavePage.onScrollPageExit();
+                    }
 
                     //in case smooth scrolling is set to false, we need to update visual scroll
                     if (!smooth) {
-- 
GitLab