I’d call this a bug. I think 16 should be interpreted as 384, and existing plugins would work without being changed.
Even better would of course be if the API from the starts had constants PAGE_HIDDEN, PAGE_CAMERA etc, and PAGE_HIDDEN being redefined from 16 to PAGE_HIDDEN_GEOMETRY & PAGE_HIDDEN_OBEJCTS in SketchUp 2020.
The answer was did not appear to be in the dialog in the “API Tracker”.
I gather that the discussion over there was about how Sketchup will distinguish between update calls that don’t honor the hidden object/geometry split in 2020. But I think that only would be an issue if you passed a bitcode as the argument to update?
I am assuming that using update without an argument would update EVERYTHING about a page, no?
EDIT: You are semi-correct … the answer is KIND OF.
A good lesson in not assuming things. A page object has update flags.
There are setters for these flags, such as #use_camera=,
… and boolean getters, such as use_camera?.
The #update method lets you update a scene page targeting specific flags as those flags are set.
But if you call #update without a numeric argument, then all the flags as set (ie, as you see them checked in the Scenes inspector) for that scene page, will be used.
This can be a bit confusing (as it just confused me.) If the #use_camera? flag is set false by unchecking the “Camera Location” box in the Scenes inspector, then no amount of calling page.update(1) will update the camera location for that scene.