Initial progress towards addressing the "multi-page sketch" requirement
(#2444). Added switches to Add State dialog which creates new state from
all visible or all selected widgets, and by default removes those
widgets from the base state.
Various fixes to new options in Add State dialog.
Initial coding for adding a highlighting feature for when user is in a
custom state. Highlighting shows the widgets that come from base state
rather than the custom state.
Move states highlighting logic from Context.js to States.js.
Fix bugs with state highlighting logic. Highlight background in addition
to borders.
Add icon on States palette toolbar to control highlight of base widgets
when a custom state is selected.
Initial implementation of update state feature. Refactored add state
dialog into separate JavaScript file. Various miscellaneous cosmetic
features.
Fix problem where Create button was enabled when Add State dialog first
appears.
More progress on sketching improvements and #2444
Fix various bugs with UpdateState logic. Make visual representation of
highlights opacity 0.5 instead of 0.08.
Fix a timing problem with rendering of the base-shine-through highlights
when a widget has SVG content and it's the first time that SVG content
is loaded. Browsers have deferred sizing logic in this case, so put the
highlighting logic in a setTimeout to fix. (Used same appraoch for
updateFocusAll())
Fix setTimeout logic to delay display of base widget highlights.
Fix bug when user tries to create an empty state - don't put
display:none for the new state on background widgets.
Merge branch 'master' into 2444-MultiPageSketching