Bug 15097 - replacing title group widget with a different group widget does not work
: replacing title group widget with a different group widget does not work
Status: CLOSED FIXED
Product: SqueezePlay
Classification: Unclassified
Component: UI Skin
: unspecified
: PC Other
: P1 normal (vote)
: 7.5.0
Assigned To: Ben Klaas
:
Depends on:
Blocks: 15098
  Show dependency treegraph
 
Reported: 2009-11-11 09:34 UTC by Ben Klaas
Modified: 2010-04-08 17:25 UTC (History)
3 users (show)

See Also:
Category: Bug


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Klaas 2009-11-11 09:34:17 UTC
Steps to reproduce:

1. Start a pandora stream on SB touch
2. go to NP screen, notice that a + button is displayed in upper right
3. Touch artwork/text to cycle through the NP views
4. Notice that in text only and text+art views, the + button is replaced (wrongly) with a playlist button

this section of _refreshRightButton() is correctly being hit, but the removeWidget/addWidget methods are not yielding any visible change on the window

    if not self.suppressTitlebar then
                        log:debug('changing rbutton to + button')
                        self.window:removeWidget(self.titleGroup)
                        self.window:addWidget(self.titleGroupOneTrackPlaylist)
                end
Comment 1 SVN Bot 2009-11-11 09:35:02 UTC
 == Auto-comment from SVN commit #8064 to the jive repo by bklaas ==
 == https://svn.slimdevices.com/jive?view=revision&revision=8064 ==

Bug: 15097
Description: one line change to make sure _refreshRightButton() is called when NP views are toggled
This is not a fix, but rather exposes the bug
Comment 2 Richard Titmuss 2009-11-13 05:00:52 UTC
This is probably related to Bug 15098.

With this change:

Index: squeezeplay/share/applets/NowPlaying/NowPlayingApplet.lua
===================================================================
--- squeezeplay/share/applets/NowPlaying/NowPlayingApplet.lua	(revision 8085)
+++ squeezeplay/share/applets/NowPlaying/NowPlayingApplet.lua	(working copy)
@@ -484,6 +484,7 @@
 	if playlistSize == 1 and self.rbutton == 'playlist' then
 		if not self.suppressTitlebar then
 			log:debug('changing rbutton to + button')
+log:warn("******************** changing rbutton to + button ", self.window:dump())
 			self.window:removeWidget(self.titleGroup)
 			self.window:addWidget(self.titleGroupOneTrackPlaylist)
 		end

The debug suggests that the removeWidget()/addWidget() calls are being performed on the previous NP window. window:dump() shows the the widget hierarchy in the window.

So when the full screen artwork is displayed, and then I click in the window I see:

20091113 11:34:56.843 WARN   applet.NowPlaying - NowPlayingApplet.lua:487 ******************** changing rbutton to + button Window() [0x92e4d80 0,0 480x272 3/2/2 ** true]
  Group(Icon(userdata: 0x86ba7e4)) [0x9352758 0,0 470x272 3/2/2 ** true]
    Icon(userdata: 0x86ba7e4) [0x91fd688 10,10 450x252 2/2/2 ** true]

This is clearly a window with just an icon widget, but I see the text only NP screen.

This patch seems to fix the problem, and also bug 15098:

Index: squeezeplay/share/applets/NowPlaying/NowPlayingApplet.lua
===================================================================
--- squeezeplay/share/applets/NowPlaying/NowPlayingApplet.lua	(revision 8085)
+++ squeezeplay/share/applets/NowPlaying/NowPlayingApplet.lua	(working copy)
@@ -916,10 +916,13 @@
 	end
 
 	log:debug('setting NP window style to: ', self.selectedStyle)
-	local newWindow = _createUI(self)
-	newWindow:replace(self.window, Window.transitionFadeIn)
-	self.window = newWindow
+
+	local oldWindow = self.window
+
+	self.window = _createUI(self)
 	self:_refreshRightButton()
+
+	self.window:replace(oldWindow, Window.transitionFadeIn)
 end
 

I really can't see why this makes a difference??
Comment 3 SVN Bot 2009-11-13 05:01:32 UTC
 == Auto-comment from SVN commit #8087 to the jive repo by richard ==
 == https://svn.slimdevices.com/jive?view=revision&revision=8087 ==

Bug #15097
Fix title bar in NP when changing skin styles.
Comment 4 Ben Klaas 2009-11-13 11:22:36 UTC
this is fixed with Richard's last checkin
Comment 5 Chris Owens 2010-04-08 17:25:58 UTC
This bug has been marked fixed in a released version of Squeezebox Server or the accompanying firmware or mysqueezebox.com release.

If you are still seeing this issue, please let us know!