On a local mediawiki installation I extended the SkinTemplateContentActions to add a new Tab to the menu that adds/removes pages from a watchlist-esque table.
Unfortunately, the list of content actions seems to get cached on the page, requiring an action=purge to correctly toggle the contents of the tabs.
I can get around this by calling $this->mTitle->invalidateCache() but I can't see what it is that makes watch/unwatch (or protect/unprotect) not hit the same problem, so I'm not sure whether that's really the right way to do this.
Any pointers would be appreciated.
Thanks,
Tony