Don't use visible property in procedural code to determine state
It can be invisible not just because something is disabled but because it's not shown yet. But load() is only run once. Instead replace with a binding.
Rather than toggling the checked state when invisible, the evaluation is moved into the sync method.
Obviously this whole code needs a tidy up. FWICT rightclickMethodClickFinger is always disabled - and all of this load()/sync() is probably a bad workaround for QQC1 change signals, but that's probably code for master.