Ticket Created
over 3 years ago

ACROPOLIS-2993

Unable to dynamically update Menu2 title - works in sim, not on device

I modded the SDK's Menu2Sample to fire a timer every second which calls both setTitle() and updateItem(), followed by WatchUi.requestUpdate(), to cycle through 3 values for the title and an item sublabel. In the sim, both the title and the item sublabel are updated. For a real 935, only the item sublabel is updated.

The presence of the title as an option in the Menu2 constructor, as well as the availability of a separate setTitle() method, seems to imply that setTitle() should be able to work dynamically. (Otherwise what's the purpose of setTitle()?) Not to mention the fact that it does work dynamically in the sim.

If it's intentional that the title can't be updated dynamically, it would be nice to:

1) Update the docs to make this clear

2) Update the behavior in the sim

It would also be nice if the docs explicitly called out the fact that Menu2.onUpdate can't be overridden due to the fact that it's a native view. (Same with any other views which may have this restriction, such as ProgressBar.)

Sim:

https://ibb.co/qp7vX7Y

FR935:

https://ibb.co/4gkYkJH

Environment:

- Windows 10

- VS Code 1.54.1

- Monkey C extension 0.1.9

- CIQ SDK 3.2.5

- FR935 firmware 21.00

Parents
  • So is it bug again? SmileyRolling eyes Guys, you must be really smoking something... 

    Explain what exactly you failed to reproduce and where or send us your code used for it. Otherwise I don't believe you even tried, taking into account post from Travis above - under which simply doesn't make sense to write such response. 

Comment
  • So is it bug again? SmileyRolling eyes Guys, you must be really smoking something... 

    Explain what exactly you failed to reproduce and where or send us your code used for it. Otherwise I don't believe you even tried, taking into account post from Travis above - under which simply doesn't make sense to write such response. 

Children
  • Jan,

    Travis' comments indicate that the product is exhibiting the expected behavior, but when you initially raised this issue, it wasn't clear to my team which was correct. We reported this to the product team after Brad was able to reproduce the issue exactly as you described on devices. Based on the comments from one of the product teams, it looks like they were also unclear about the desired behavior, so they mistakenly claimed they were unable to reproduce the issue using the test app and reproduction steps provided by Brad (even though they actually were reproducing it). As a result, they asked Brad whether you could try with updated firmware since they believed this issue had already be addressed.

    So here's where we're at:

    1. We can confirm there's a difference between the behavior in the simulator and products
    2. We can reproduce the issue on products exactly as you've described
    3. It appears there is work that has been done for another product to allow this behavior, but it depends on additional work in the Connect IQ VM (this may be the change Travis had referred to)

    From here, we'll need to ensure all products make the changes mentioned in #3 for consistent behavior, assuming that's the ultimate goal. We must also confirm that the sim matches new product behavior, and it's probably worth revisiting the API docs to clarify anything accordingly.