-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove time context switching from views #4226
Comments
Listeners (for For example:
Listeners are registered on these context objects View2 -> add independent time context View1 -> add independent time context |
Testing instructions: |
Testathon 12-13-21 NOT fixed, using a Time Strip view with this plan: https://banner.ndc.nasa.gov/testathon/#/browse/couch-search:couch-search/ab3471f6-928d-4858-a114-1e7c1a981cc5?tc.mode=local&tc.startDelta=900000&tc.endDelta=15000&tc.timeSystem=utc&view=plan.view
|
|
Fix verified in Testathon 2021-12-16. |
Closed. @michaelrogers can you file a visual bug for this one |
Verified Fixed. |
Is your feature request related to a problem? Please describe.
Open MCT now supports independent time control in some views. Yay! The change that enables this introduces the concept of "time contexts". A view can be following either an independent time context (that is configured for the specific view) or the global time context (which is controlled by the time conductor).
The current implementation requires views to handle switching between independent and global time contexts when it occurs.
Views should not need to care whether they are following an independent or global time context if all they care about is what the current time bounds are. Some views may want to know this information, but we should not be pushing a requirement on views to track this.
Describe the solution you'd like
When a view requests a time context, they should receive a context that is valid for the lifetime of the view. They should not need to listen for context changes, because this is additional boilerplate that all views will need to add. It adds risk of memory leaks if listeners are not cleaned up, and it also introduces risk that the view could get out of sync with the active time context.
Instead, the independent time context could switch between tracking its own state internally, and tracking the global time context. So, in the case that the view is following the global time context (which is the default case), then the independent time context is basically just a thin wrapper over the global time context.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
The text was updated successfully, but these errors were encountered: