[openHAB Docker] after upgrade to OH 3.3.0 - Custom Widget: actionPage: ='page:pagename' not working

  • Platform information:
    • Hardware: Intel(R) Celeron(R) CPU J3455 @ 1.50GHz / 16 GB RAM
    • OS: TrueNAS-SCALE-22.02.2-MASTER-20220617-041230
    • openHAB version: 3.3.0 Release (Docker Alpine)

Hello,
i successfully upgraded to OH 3.3.0 from OH 3.2.0.
Below the code of one of my custom widgets im now using for a long long time.

I did not change anything but if i now click at the big widget, i do not open the target OH-page anymore.
The button gets animated (white blink) if i click it.

Should be this line:
actionPage: ='page:' + props.link

Is it a bug or do i not know of changes?
Ive got another Widget where the page name does not come from props → This one is still working

uid: cLink
tags:
  - card
  - link
  - page
props:
  parameters:
    - description: Text, to be shown as Link
      label: Title
      name: title
      required: false
      type: TEXT
    - description: "example: cPowerConsumption"
      label: Page
      name: link
      required: true
      type: TEXT
    - description: "example: /static/livingroom.jpg"
      label: Background-Image
      name: backgroundurl
      required: false
      type: TEXT
    - description: "example: Off_office;Focus_office;Cinema_office;Chill_office;Party_office;"
      label: Scene List
      name: scene
      required: false
      type: TEXT
    - description: "example: Fernseher;SleepTimer;"
      label: Badge Text List
      name: badgetxt
      required: false
      type: TEXT
    - description: "example: tv;wifi;"
      label: Badge Icon List
      name: badgeico
      required: false
      type: TEXT
    - description: "example: dSckBedRoomTv_Swt;dSckLvngRoomTv_Swt;"
      label: Badge Item List
      name: badgeitm
      required: false
      type: TEXT
    - description: "example: ON;ON;"
      label: Badge Condition List
      name: badgecond
      required: false
      type: TEXT
    - description: "example: green;orange;"
      label: Badge Color List
      name: badgecol
      required: false
      type: TEXT
  parameterGroups: []
timestamp: Apr 17, 2022, 5:07:36 PM
component: f7-card
config:
  outline: true
  style:
    border-color: rgba(0,0,0, 0.2)
    border-radius: 7px
    border-width: 1px
    box-shadow: 0px 0px 8px 4px rgba(255, 255, 255, 0.1)
    padding: 0px
slots:
  default:
    - component: f7-card-content
      config:
        style:
          background-image: ='url(' + props.backgroundurl + ')'
          background-postion: center
          background-size: cover
          border-radius: inherit
          height: 100px
          padding: 0px
      slots:
        default:
          - component: oh-button
            config:
              action: navigate
              actionPage: ='page:' + props.link
              actionPageTransition: f7-circle
              border-radius: inherit
              position: absolute
              style:
                --f7-button-bg-color: rgba(0,0,0,0.3)
                --f7-button-hover-bg-color: transparent
                --f7-button-pressed-bg-color: white
                border-radius: inherit
                height: 100%
                left: 0px
                padding: 0px
                top: 0px
                width: 100%
            slots:
              default:
                - component: oh-button
                  config:
                    style:
                      background: linear-gradient(2deg, rgba(255,255,255,0.3) 0%, rgba(255,255,255,0.1)10%, rgba(255,255,255,0) 30%,rgba(255,255,255,0) 70%,rgba(255,255,255,0.1) 90%, rgba(255,255,255,0.3) 100%)
                      height: 100%
                      width: 100%
          - component: Label
            config:
              style:
                bottom: 0px
                color: rgba(255,255,255,0.6)
                font-size: 40px
                font-weight: bold
                left: 10px
                no-shadow: false
                pointer-events: none
                position: absolute
                text-shadow: 0px 0px 10px rgba(0, 0, 0, 1)
              text: "=(props.title) ? props.title : props.link"
          - component: oh-button
            config:
              action: popup
              actionModal: widget:listScenes
              actionModalConfig:
                scenestr: =props.scene
              style:
                --f7-button-hover-bg-color: rgba(255,255,255,0.2)
                display: flex
                flex-wrap: wrap
                height: 50px
                justify-content: center
                padding: 0px
                position: absolute
                right: 5px
                top: 5px
                width: 50px
              visible: =props.scene != NULL
            slots:
              default:
                - component: f7-icon
                  config:
                    f7: slider_horizontal_3
                    size: 30px
    - component: oh-repeater
      config:
        filter: loop.int != ""
        for: int
        fragment: false
        in: =props.badgetxt.split(";")
        sourceType: array
      slots:
        default:
          - component: f7-badge
            config:
              color: =props.badgecol.split(";")[loop.int_idx]
              style:
                justify-content: center
              textColor: black
              visible: =items[props.badgeitm.split(";")[loop.int_idx]].state == props.badgecond.split(";")[loop.int_idx]
            slots:
              default:
                - component: f7-icon
                  config:
                    color: black
                    f7: =props.badgeico.split(";")[loop.int_idx]
                    size: 15px
                - component: Label
                  config:
                    text: =loop.int

OK i also tried those two variants

actionPage: ='page:wohnzimmer'

actionPage: page:wohnzimmer

So i tried to test if “direct coding” without props was the problem.
But both variants also do not work …

I fear the way my widget is written does not work anymore because of some “under-the-hood” changes?

OK seems that i solved it by my own.
I just added the same action to the overlaying oh-button which only creates the linear-gradient.

Seems that something may changed the arrangement of my components in z-direction, that means i was not able to directly hit the button with navigation-action.

Thanks

This topic was automatically closed 41 days after the last reply. New replies are no longer allowed.