Merge in latest from master branch into topic branch for
limits, WTD-1223.
Conflicts:
platform/commonUI/general/res/css/forms.css
platform/commonUI/general/res/css/plots.css
platform/commonUI/general/res/css/theme-espresso.css
platform/commonUI/general/res/css/tree.css
platform/commonUI/general/res/sass/_fixed-position.scss
platform/commonUI/general/res/sass/plots/_plots-main.scss
platform/features/scrolling/res/templates/scrolling.html
Refine positioning to behave correctly when mouse is on
right and/or lower part of screen; listen for scope
destruction to avoid cases where an element is removed
before mouseleave is ever called. WTD-884.
WTD-1172
Added stale CSS in _data-status.scss;
Added pulse animation in _effects.scss, not used;
Removed temp-limits directory and files;
Sanding and refining of limits styles and in .tabular;
WTD-1163
WTD-1114
Added CSS to give a border to all elements in Fixed Position view when in Edit mode.
Only applied to outer element, does not affect object border styling;
WTD-1163
WTD-1146
New CSS to hide non-functional elements, including browse.top-bar with search elements;
Adjusted spacing, mainly in .contents CSS class;
Set validity of selected location from locator control, to
disallow creation when no valid location is selected (which
is possible due to containment rules.) WTD-962.
Expose 'link' as 'compose'; this facilitates implementation of
drag-drop composition being deferred to actions which will
support move/copy/link options in the future. WTD-962.
Stub in specs for policies added for Edit mode which control
the availability of the Edit and/or Edit Properties actions
in the view-control area, WTD-1062.
Respond to route changes via mct-before-unload, in order to
show a prompt to allow the user to confirm navigation changes
which do not trigger onbeforeunload (such as using back to
change the hash route). WTD-1035.
Invoke persist calls when leaving Edit mode in a group, instead of
in-order, to allow these revision-checking to be handling for the
group as a whole. WTD-1033.
WTD-1048
Originally did a lot of this work in warp1048 by mistake
This commit pulls in all /platform-only changes from that branch
Mods are mostly related to WTD-1046 specifically, but also touch toolbar and buttons
Act as if the object being edited is the root object when
in Edit mode, except in the Library pane (which has its own
means of getting the real root object.) WTD-922.
Add directive for exposing expressions which should be
evaluated for the browser's onbeforeunload event, to
prevent user-initiated navigation from causing a loss
of unsaved changes. WTD-1035.
Merge in Fixed Position updates to reconcile conflicts
related to generalization of selection mechanism, WTD-929.
Conflicts:
platform/features/layout/src/FixedController.js
platform/features/layout/test/FixedControllerSpec.js
Rewrote some history as part of merge for WTD-940 to
remove non-open-source history; compiled CSS files did
not merge correctly in this process, so bringing over
compiled files from the original branch to replace these.
WTD-894
Changed image CSS from contain to cover
Modded default colors for text and telemetry elements to visibility;
Moved click handler position in menu-button.html for better clickability;
Conflicts:
platform/commonUI/general/res/css/theme-espresso.css
WTD-610
CSS and markup mods principally focused on selects, checkboxes and composite controls;
Cleaned up positioning and formatting in .l-result area of query form bottom;
Removed display of view type when only a single view available for an object in switcher.html
Conflicts:
platform/commonUI/general/res/css/theme-espresso.css
vista/query/res/templates/channel-query.html
vista/query/res/templates/channel-selector.html
vista/query/res/templates/evr-query.html
Update the root object (used to populate the Library pane)
less often, to avoid recreating the whole tree and thereby
causing the tree to collapse. WTD-788.
WTD-894
Significant migration of inline styles to CSS classes;
Changed telemetry component so that when title is hidden, telem element can take up 100% of the element width;
Static text elements now show scrollbars on overflow;
Added padding and box-sizing to text elements - this is throwing off the selected control because of the offset and should be fixed;
WTD-894
Added scss file for fixed position styles;
Mods in progress to fixed.html to remove inline styling and change grid method to background gradient approach;
Avoid rebuilding the toolbar in Edit mode whenever
any change occurs to avoid losing the binding to the
current selection state; needed for color picker to
work properly for WTD-881.
Repair/simplify state-watching in representer for toolbar
in edit mode; avoids issue where destroy calls detach
watches for state change in toolbar prematurely. WTD-881.
Merge fixed position view work and general toolbar
work to begin adding toolbars for fixed position view,
WTD-879."
Conflicts:
platform/commonUI/edit/res/templates/edit-object.html
Implement EditToolbar (sufficient to satisfy spec) which will
construct an mct-toolbar-friendly form structure based on both
the current selection and the view's defined toolbar structure.
WTD-878.
Merge in work-in-progress for WTD-615 (Fixed Position View)
into topic branch for WTD-889 (a sub-issue of WTD-615, which
has been broken down into discrete chunks to support
development.
Conflicts:
platform/telemetry/src/TelemetrySubscription.js
Remove unused container definition for split pane; this
turned out not to be a suitable quick-fix approach to
WTD-747 (implementation of this behavior directly from
the browse template turned out to be more convenient.)
Restrict actions which cause mutation of domain objects to
types of domain objects which can be created. (This does not
include Packet or Telemetry Point, WTD-723.)
Add tests for capabilities which have been updated to work
when only a model (and not whole objects) are cached; that
change was introduced to prevent misbehavior of the Remove
action in Edit mode, WTD-473.
Utilize model cache, permitting object models in edit mode to
be reused across multiple distinct instances with unique
contexts (unique contexts are necessary to avoid ambiguity in
the Remove action, WTD-473).
To avoid infinite digest cycles as a consequence of this,
refactor context/composition capability wrappers such that the
former is idempotent (since idempotence is no longer ensured
by the EditableDomainObjectCache) to avoid infinite digest
errors in Edit mode.
Implement a cache to store domain object models,
to allow the cache for individual objects to distinguish
objects based on their parentage and avoid ambiguous
Remove actions (WTD-473.)
Add a spec for an editable model cache; this will behave
similarly to the existing domain object cache, except
that it will cache only models. Use of this will permit
multiple instances of editable objects to be created with
unique contexts (that is, distinct parent objects accessible
via the context capability) which in turn will avoid the
ambiguous parentage which results in unexpected behavior of
the Remove action in Edit mode, WTD-473.
Add tests to verify that directives stop polling after their
scope is destroyed (to prevent resource leaks); those changes
address resource leaks identified in the context of WTD-717.
Deactive mct-resize when its containing scope is destroyed;
that is, don't go on polling for size changes indefinitely.
Issue discovered/addressed in the context of investigating
sluggishness of plotting in WTD-717.
Add tests and JSDoc to the style sheet loader introduced to
allow bundles to introduce their own CSS files through the
platform's regular extension mechanism; WTD-591.
Update tests for dialog/overlay services to match
changes introduced to simplify implementation of
information overlays, such as the About dialog, WTD-667.
For overlays that do not need to do special things when a
window is dismissed, provide a default cancel function.
This simplifies implementation of the information-only
dialogs, such as the About dialog, WTD-667.
Refactor overlay templates to separate out the overlay
container from the inner dialog containing the form;
this permits the easy reuse of that overlay container
to supply a non-form-like About dialog, WTD-667.
Don't pass a domainObject instance into mct-representation
until a view for that specific domainObject is available;
this avoids ordering issues where a new domainObject is
passed briefly to controllers in represented views before
a event is issued, which can result in undesired
behavior for views that need to manage resources (such as
the subscriptions used to support telemetry retrieved
from the WARP Server, WTD-644.
Restore wait spinner in tree (missed during Angular transition);
this feedback is important when waiting for the contents of
the Packets node (WTD-644) to load.
Work around issues in platform which manifest as bugs or
latency issues when attempting to visualize telemetry
from the WARP Server. Specifically:
* Handle the possibility that there is no matching
representation for an object from EditRepresenter.
* Don't attempt to look up colon-separated domain object
identifiers from persistence. This is a workaround to
avoid latency issues from excessive persistence calls;
filed WTD-659 to improve this solution.
Changes made to support resolution of WTD-644.
Complete test coverage for new scripts added to bundle
platform/commonUI/general in suport of autoflow
tabular views, WTD-614. Specifically, these provide a
directive to watch element sizes, and a controller to
help as an intermediary between getter-setter style
ngModels, and plain assignable ones.
Reorganize folder strucutre for tests in bundle
platform/commonUI/general; source folder structure
has been modified to accommodate additional classes
added to support autoflow tabular views, WTD-614,
so test folder needs to be reorganized accordingly
Reorganize sources for bundle platform/commonUI/general;
number of classes here has grown as a consequence of
additions for WTD-614 and so an additional layer of
organization is helpful.
Conflicts:
platform/commonUI/general/bundle.json
platform/commonUI/general/src/directives/MCTResize.js
Add a utility controller for interacting with
getter-setter style ngModels (similar to ng-model-options
with getterSetter: true, but support for that is not
present in the current version of Angular.) Specifically,
this is used to support the input filter control, which
in turn is used within the autoflow tabular view. WTD-614.
Repair tree node auto-expand/highlight behavior, to
address WTD-627. Specifically:
* Check the full path when deciding to highlight,
instead of just the parent. This avoids duplicate highlighting
in cases where the same parent is visible in two subtrees.
* Don't make a redundant getId call in path-checking;
domain object paths have already been mapped to identifier
paths at this point. This avoids erroneous auto-expansion of
the whole tree.
Add skeleton specs for the bottom bar controller (introduced
to handle display of indicators introduced as extensions)
and the Couch indicator (introduced to exercise the above,
and to report connection status relative to the Couch
database.) WTD-608.
Add a commit function to scope from the edit representer;
this avoids issues trying to transparently detect and
persist changes made during edit mode, while still requiring
only minimal action from individual views. WTD-535.
Add entries for new scripts to test suites, to ensure
tests fail until scripts added to support transition
of Layout object/view (WTD-535) have been completed.
WTD-535.
Get a reference to the body element at link-time,
instead of instantiation time, from the mct-drag
directive. Failure to do so causes the reference
to fall out of date when switching between Browse
and Edit mode.
Supports position/sizing interactions for Layout
view, WTD-535.
Auto-expand tree nodes on a timeout, instead of immediately.
This is necessary in cases where auto-expansion several
layers deep occurs; if done immediately, each expansion
will trigger a new digest cycle, which at a certain depth
will appear to Angular as unstable.
Done in the context of WTD-535.
Add an EditRepresenter which detects changes to domain
object model or view configuration and, when these
occur, triggers mutation and persistence of the domain
object. (Note that in Edit mode, 'persistence' only
flags an object as dirty; actual persistence does not
occur until the user chooses Save.)
This supports editing of position/size in Layout mode,
and the persistence of those changes. WTD-535
Properly reset the initial drag position tracked by the
mct-drag position so that multiple drags upon the same
element are correctly offset from an initial position.
Also, preventDefault from events to avoid selection
highlights during drag.
Supports editing Layout objects, for WTD-535.
Move spec for view switcher from bundle
platform/commonUI/browse to bundle
platform/commonUI/general to reflect refactoring
to simplify usage in other places (including in
Layouts, which are being transitioned for
WTD-535.)
Refactor view switcher to simplify it; treat it
as a representation of a domain object that modifies
an ng-model. This simplifies reuse, e.g. in frames
within a layout. WTD-535.
Add placeholder spec for the LocatorController, introduced
to support forms used from the Create menu. Part of ongoing
integration of forms bundle, WTD-593.
Use ng-model when communicating state to/from the
tree in browse mode. This will simplify implementation
of the Locator control, which also uses a tree, but
which should not set navigation state. WTD-593.
Reorganize templates associated with the Create menu in
preparation for adding the Locator control, used to
specify the destination folder for object creation.
WTD-593.
Fix FullscreenActionSpec such that it will execute on
command line; the global screenfull dependency behaves
differently during attempts to spy on methods from
the command line build, so replace it entirely.
Concludes work on WTD-574 in preparation to submit for
review.
Fix a defect in the Save/Cancel buttons in Edit mode
that was causing the first click to be missed; this
was due to Angular's inability to detect when a
native promise (as opposed to one from ) had been
resolved.
Since the Editor capability is introduced indirectly
and is a few degrees of separation removed from
the declared extension layer (where we would be able
to get a reference to ), and all we need to do is
make something look Promise-like, a convenience
function to do this is added.
Part of ongoing transition of common user interface
elements, WTD-574.
Fill in specs for CreationService, which supports the
Create action, which, in turn, is included to support
the Create button in Browse mode. Part of the transition
of common user interface elements for WTD-574.
Fill in spec for the controller which maintains a set of
applicable and selected view options to populate the
view switcher. Part of Browse mode and, in turn, part
of the common user interface elements that are being
transitioned for WTD-574.
Add in-line docs for bundle platform/commonUI/browse,
which implements Browse mode, one of the common user
interface bundles being transitioned in WTD-574.
Add JSDoc to Create-related classes and remove the
UUIDService (replaced by third-party lib) to reduce
amount of code to cover and prepare for code review,
as part of ongoing transition of common user interface
elements, WTD-574.
Fill in specs for bundle platform/commonUI/dialog,
which provides the ability to show dialogs. One
of the common user interface elements being transitioned
for WTD-574.
Skeleton specs for bundle platform/commonUI/dialog,
responsible for displaying dialog overlays. Part of
ongoing transition of common user interface elements
for WTD-574.
Refactor bundle platform/commonUI/dialog such that
the concerns of showing dialogs (including showing
a single instance thereof) and managing changes to
the DOM are more cleanly separated. This simplifies
testing and satisfies code style guidelines for
this bundle, in preparation for its inclusion among
common user interface bundles to be transitioned
in WTD-574.
Add in-line documentation to the dialog service,
exposed by bundle platform/commonUI/dialog, one
of the common user interface bundles being
transitioned for WTD-574.
Add in-line documentation for actions that are introduced
by the bundle platform/commonUI/edit, which introduces
Edit mode. One of the common user interface bundles being
transitioned for WTD-574.
Add specs for remaining capabilities and capability
wrappers employed by Edit mode. Completes coverage
for bundle platform/commonUI/edit, which is being
transitioned along with other commonUI bundles in
WTD-574.
Add specs for the save and cancel conclude-editing
actions, part of bundle platform/commonUI/edit
(Edit Mode) which is transitioned among the various
common UI bundles. WTD-574
Amend ActionGroupControllerSpec (introduced for WTD-574,
transition of common UI elements) such that it handles
the case where no action capability is defined.
Add in-line documentation to TreeNodeController, and update
glossary with some clarifying definition.
Additionally, change name from tree-item to tree-node for
consistency.
Part of ongoing transition of commonUI bundles, WTD-574.
When a dialog is already showing, act as if the
user input was cancelled and show a warning.
Part of ongoing transition of common user interface
bundles for WTD-574.
Add JSDoc and clarifying comments to the CreateMenuController,
which is responsible for maintaining an up-to-date set of
Create actions for a given domain object. WTD-574.
Add a general-purpose controller for UI elements which
have 'click-away' behavior; that is, they should be
deactivated on document clicks.
This generalizes existing behavior added for the Create
menu, such that it may be used on other, similar menus
and UI elements.
Part of ongoing transition of common user interface
components, WTD-574.
Add general structure for Open MCT Web, including
top-level and second-level directory structure.
README files are included to explain the role of
each directory; markdown is used to allow for
richer display when viewer support is present.
WTD-519.