I've run into a problem trying to use Advanced Actions to turn on/off closed captions for a custom button I created. I'm using Advanced Actions because I am changing the state of the button (to a custom state). I did exactly the same thing with a "mute/sound on" button and it works perfectly.
Here's the script to be executed when someone clicks on the button:
cpCmndCC is equal to 0
Assign cpCmndCC equal to 1
Change state of ClosedCaption to CC_ON
Assign cpCmndCC equal to 0
Change state of ClosedCaption to Normal
Half of the script works fine. The button starts in "Normal" state and when you click it, it changes to the "CC_ON" state and the captions are turned on.
But the other part doesn't work. Once the captions are on and the button is the "CC_ON" state, you can't turn them off, etc. So apparently the action isn't resetting the cpCmndCC value to 0.
Like I said, I did this exact same thing with mute/unmute, and it works perfectly. I can't figure out why it's not working unless there's a bug.
I use the same shared action for all toggle buttons. Do not use Assign, but the Toggle command in both parts of the conditional action. Here is the post about that shared action:
Sorry, example movie is still SWF.
Just tested the action in 11.5.499, works perfectly.
I just tried that with captions and it's not working. I went back and did it with Mute/Sound On, and for sure, Toggle is working there, just as Assign did.
It's looking to me like there could be a bug with turning captions back off.
Which version are you using? Do you not believe me when I told that I hve tried it just now for HTML5 output, in the most recent version which is 11.5.499.
Which Browsers did you use for testing? Did you test after uploading to a webserver? Is something wrong with the setup of the CC? I can only testify that the shared action works perfectly in several browsers on my system. That means no bug is the cause, but the origin of your problems seem to be elsewhere...
Well, apparently it only "works" while captions are actually showing. Not sure how to explain that, but I created captions and generated speech and as long as the captions are displaying, I can turn them back off. Once the caption stops displaying, even though the caption window area is still there, I can't turn it off with the button. It retains the "on" state. Oh well, Guess that'll have to do. (Mute doesn't work that way..it'll go on and off whether there's audio playing or not.)
What you are describing started when they gave you the ability to resize captions, 2017 I believe.
I think you may be able to use a user variable instead, something like ccShowing, that what I use if someone shows the TOC sho the captions don't show over the top of the TOC.
I also use JS for most of that in most courses so I autoaticlly show the CC button disabled at the end of the slide.
It works exactly the same way as the CC button in the Skin (playbar). If you try to turn off CC while there is no longer text with that button, it will not turn it off. I cannot remember if that was also the case in previous version.
Just to throw another idea into the mix here. I have seen situations where some of the System Variables did not work well if used in the Conditional Statement of a Conditional Action.
Off hand I cannot remember which specific System Variables created the issue, but I remember having a conditional action that did not work as expected and the reason turned out to be that I had to replace the System Variable in the Condition with a Custom User Variable instead. Basically that User Variable had to mimic the value of the System Variable so that the toggle action worked. The same Condition Action allowed me to use Assign or Toggle actions to change the values of the System Variable (which was only a Boolean variable anyway) but I just wasn't able to use the System Variable inside the Condition statement itself.
Maybe that's something you can check.