Values not updating on time frame change for custom indicator with graphics module

Just wanted to update, in case someone else runs into something like this, that I got it working. It updates when it should, the location doesn’t go wonky, all works as it should now. Here are the pieces that seemed to matter:

  • building the whole thing from functions didn’t seem to work, it immediately started behaving better when I moved it all into non-dynamically generated pieces (a big collection of js objects)
  • dynamic values for text that were decided at the point of printing were also a culprit. in other words, the text: key of the children objects had to not have any logic contained there for printing or not printing or formatting the value, etc. I think the same is true for the other object keys (including the key: one)
  • the global:true part was also a thing, but, it had to be done it seemed in a pretty specific structure for it to work. if I varied from the example I found in the “Volume Delta Grid” code, it started behaving badly again.
  • Not doing pixel/domain unit mix-and-matches on the horizontal alignment solved those issues. Instead, it just stays in domain units (bars), and it is consistent as long as the other pieces are in place (non-dynamic, etc)