Author: mherger
Date: Thu Feb 25 08:06:13 2010
New Revision: 8574

URL: http://svn.slimdevices.com/jive?rev=8574&view=rev
Log:
Fixed Bug: 14326
Description: ImageViewer screensavers relying on a remote server would get 
stuck if the server it's connected to went away for whatever reason. IV 
wouldn't recover once the server was back.

- show message about the failed update of the picture list
- make sure the update is tried again, not only when we're displaying the last 
element of that list, but when we've failed before
- make sure the "Loading..." screen is hidden when the download fails during 
the initialization

I really hope this is fixed now...

Modified:
    
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/ImageSourceServer.lua
    
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/ImageViewerApplet.lua
    7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/strings.txt

Modified: 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/ImageSourceServer.lua
URL: 
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/ImageSourceServer.lua?rev=8574&r1=8573&r2=8574&view=diff
==============================================================================
--- 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/ImageSourceServer.lua
 (original)
+++ 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/ImageSourceServer.lua
 Thu Feb 25 08:06:13 2010
@@ -65,15 +65,22 @@
        local cmd = self.serverData.cmd
        local playerId = self.serverData.playerId
        local server = self.serverData.server
-       log:debug("readImageList: server:", server, " id: ", 
self.serverData.id, " playerId: ", playerId)
 
        self.lstReady = false
        
-       server:request(
-               imgFilesSink(self),
-               playerId,
-               cmd
-       )
+       if server and server:isConnected() then
+               log:debug("readImageList: server:", server, " id: ", 
self.serverData.id, " playerId: ", playerId)
+       
+               server:request(
+                       imgFilesSink(self),
+                       playerId,
+                       cmd
+               )
+       else
+               self.imgReady = false
+               log:warn("readImageList: server ", server, " is not available - 
exiting screensaver")
+               self:listNotReadyError()
+       end
 end
 
 function imgFilesSink(self)
@@ -124,7 +131,7 @@
        end
        --else might exceed if connection is down, if so don't try to reload 
another pic, just keep retrying until success
 
-       if self.currentImageIndex == #self.imgFiles then
+       if self.currentImageIndex >= #self.imgFiles then
                --queue up next list
                self:readImageList()
        end
@@ -285,6 +292,9 @@
        return self.error or 
oo.superclass(ImageSourceServer).getErrorMessage(self)
 end
 
+function listNotReadyError(self)
+       self:popupMessage(self.applet:string("IMAGE_VIEWER_ERROR"), 
self.applet:string("IMAGE_VIEWER_LIST_NOT_READY_SERVER"))
+end
 
 --[[
 

Modified: 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/ImageViewerApplet.lua
URL: 
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/ImageViewerApplet.lua?rev=8574&r1=8573&r2=8574&view=diff
==============================================================================
--- 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/ImageViewerApplet.lua
 (original)
+++ 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/ImageViewerApplet.lua
 Thu Feb 25 08:06:13 2010
@@ -183,8 +183,9 @@
                                return EVENT_CONSUME
                        end)
                        
+       self.initWindow = popup
+                       
        self:tieAndShowWindow(popup, Window.transitionFadeIn)
-
 end
 
 function startSlideshowWhenReady(self)
@@ -455,10 +456,16 @@
 
 function closeRemoteScreensaver(self)
        self:_stopTimers()
+       
+       if self.initWindow then
+               self.initWindow:hide()
+               self.initWindow = nil
+       end
+
        if self.window then
                self.window:hide()
-       end
-       self.window = nil
+               self.window = nil
+       end
 end
 
 function free(self)

Modified: 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/strings.txt
URL: 
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/strings.txt?rev=8574&r1=8573&r2=8574&view=diff
==============================================================================
--- 7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/strings.txt 
(original)
+++ 7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ImageViewer/strings.txt 
Thu Feb 25 08:06:13 2010
@@ -61,6 +61,21 @@
        PL      Nie powiodło się kilka kolejnych prób odczytu/utworzenia 
listy obrazów.  Sprawdź ustawienia przeglądarki obrazów.
        RU      Попытки чтения / создания списка 
изображений оказались неудачными. 
Проверьте настройки средства просмотра 
изображений.
        SV      Flera försök att läsa/skapa bildlistan misslyckades. 
Kontrollera inställningarna för Bildvisaren.
+
+IMAGE_VIEWER_LIST_NOT_READY_SERVER
+       CS      Několik pokusů o čtení / vytvoření seznamu obrázků 
selhalo.
+       DA      Forsøgene på at læse/oprette billedlisten mislykkedes.
+       DE      Mehrere Versuche, die Bilderliste zu öffnen / zu erstellen, 
sind fehlgeschlagen.  Überprüfen Sie die Netzwerkverbindung.
+       EN      Several attempts at reading / creating the image list failed.  
Please check the network connection.
+       ES      Tras varios intentos, no se ha podido leer/crear la lista de 
imágenes.
+       FI      Yritykset lukea tai luoda kuvaluettelo epäonnistuivat.
+       FR      Plusieurs tentatives de lecture/création de la liste d'images 
ont échoué.
+       IT      Numerosi tentativi di leggere/creare l'immagine non sono 
riusciti.
+       NL      Lezen/aanmaken van de beeldenlijst is meermaals mislukt.
+       NO      Flere forsøk på å lese/opprette bildelisten, mislyktes.
+       PL      Nie powiodło się kilka kolejnych prób odczytu/utworzenia 
listy obrazów.
+       RU      Попытки чтения / создания списка 
изображений оказались неудачными.
+       SV      Flera försök att läsa/skapa bildlistan misslyckades.
 
 IMAGE_VIEWER_SETTINGS
        CS      Nastavení prohlížeče obrázků

_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/jive-checkins

Reply via email to