Forum Discussion

btpoole's avatar
btpoole
Channel Surfer
9 years ago

Disable or Change roSpringboard Overhang

I am using the videoplayer example code for the springboard in a simple channel. My main screen is a grid that goes to a springboard screen when a video is selected. My main screen has a particular company logo at the top left corner along with a overhang color. When I go to the springboard screen my logo and overhang is replaced by a  blue banner across the top. I have looked thru out the code of the springboard and see no where to set or change the element.  I am setting its attributes by the following

                                                     item= { 
                     
                                                      SDPosterUrl:logoName
                                                      HDPosterUrl:logoName
                                                     Stream: streamName
                                                     Title: chanName
                                                     exten: extName
                                                        }
                                                   showSpringboardScreen(item)

Once called it enters the following
Function showSpringboardScreen(item as object) As Boolean
    port = CreateObject("roMessagePort")
    screen = CreateObject("roSpringboardScreen")
    print "showSpringboardScreen"
    screen.SetMessagePort(port)
    screen.AllowUpdates(false)
    if item <> invalid and type(item) = "roAssociativeArray"
        screen.SetContent(item)
    endif
    screen.SetDescriptionStyle("generic") 
    screen.ClearButtons()
    screen.AddButton(1,"Play")
    screen.AddButton(2,"Go Back")
    screen.AddButton(3,"Add Favorite")
    screen.SetStaticRatingEnabled(false)
    screen.AllowUpdates(true)
    screen.Show()
downKey=3
    selectKey=6
    while true
        msg = wait(0, screen.GetMessagePort())
        if type(msg) = "roSpringboardScreenEvent"
            if msg.isScreenClosed()
print "Screen closed"
                exit while                
            else if msg.isButtonPressed()
                    print "Button pressed: "; msg.GetIndex(); " " msg.GetData()
                    if msg.GetIndex() = 1 'PLAY STREAM
                      playcontent (item.stream, item.chanName, item.exten)   'SEND INFO TO PLAYER
 
                    else if msg.GetIndex() = 2
return true
                         endif


                    
            else
closeout()
                print "Unknown event: "; msg.GetType(); " msg: "; msg.GetMessage()
            endif
        else 
            print "wrong type.... type=";msg.GetType(); " msg: "; msg.GetMessage()
        endif
    end while


    return true
End Function 

Not really seeing where the blue banner stripe across the top is coming from.

4 Replies

  • RokuKC's avatar
    RokuKC
    Roku Employee
    It sounds like GridScreenOverhangSlice[HD|SD] + GridScreenLogo[HD|SD] theme attributes are being set in the app to theme the roGridScreen, but not the corresponding OverhangSlice[HD|SD] and OverhangPrimaryLogo[HD|SD] theme attributes (which are used for roSpringboardScreen et al). Or the values don't point to valid/existing assets.
  • btpoole's avatar
    btpoole
    Channel Surfer
    Yes that's what it looks to be doing. My confusion is that my initial theme setup uses a black backgroud color and logo. I don't have the banner stripe or the blue color called anywhere.

    app = CreateObject("roAppManager")

        secondaryText    = "#FFED6D"
        primaryText      = "#FFED6D"
        buttonText       = "#C0C0C0"
        buttonHighlight  = "#ffffff"
        backgroundColor  = "#000000"

        theme = {
            BackgroundColor: backgroundColor
            GridScreenOverhangSliceHD: "pkg:/images/roku-app-overhang.png"
            GridScreenOverhangSliceSD: "pkg:/images/roku-app-overhang.png"
            GridScreenOverhangLogoHD: ""
            GridScreenOverhangLogoSD: ""
            GridScreenOverhangOffsetSD_X: "230"
            GridScreenOverhangOffsetSD_Y: "72"
            GridScreenOverhangOffsetHD_X: "230"
            GridScreenOverhangOffsetHD_Y: "72"
            BreadcrumbTextLeft: "#FFED6D"
            BreadcrumbTextRight: "#FFED6D"
            BreadcrumbDelimiter: "#FFED6D"
            ThemeType: "generic-dark"
            ListItemText: secondaryText
            ListItemHighlightText: primaryText
            ListScreenDescriptionText: secondaryText
            ListItemHighlightHD: "pkg:/images/selected-bg.png"
            ListItemHighlightSD: "pkg:/images/selected-bg.png"
            
        }
  • Must be some kind of default - did you try specifying the OverhangSlice[HD|SD] and OverhangPrimaryLogo[HD|SD] ?
    You can update your theme as the app enters and exits screens so that different screens have different themes.