Draft
Conversation
This reverts commit 5594ef2.
When the user pages left or right, the new image item becomes available instantly on the template. However, the imgops optimisedImage URL is not directly available on the image item seen by the template. The image item optimisedImage field is a template with placeholders which can be used to build a full imgops URL. When the image item changes after a page change, the controller uses getFullScreenUri function to calculare an imgops URL and passes it to the template on the optimisiedImage observable To prevent the user seeing an inconsistent view of the new images description overlaid over the previous image, the controller and template instantly hide the image using the ctrl.loading flag The controller watches for the optimisiedImage observable to emit the updated imgops URL before releasing the ctrl.loading flag to reveal the image. The getFullScreenUri call does not need to be debounced because it's not actually loading the optimised image; it's only calculating the URL and is operation is probably zero cost and nearly instant. This nearly instance return, coupled with the debounce (which would make sense if we were loading the image) probably contributes to a race condition (which I don't fully understand) whereby the optimisedImage observable never emits an event and the ctrl.loading flag never resets. The updated image is never revealed and the preview screen appears to stick when paging. To complicate the situation, the entire RxJS graph driving this is plugged into the regular polling for new images on the main Grid view which happens every 15 seconds. When the preview UI gets stuck it will be nudged within at least 15 seconds by this polling and will reveal the new image. Because 10-15s has traditionally been the same order of magnitude for a particularly slow impops load, this bug has been assumed to be an imgops issue. It is not imgops related; imgops is never actually called from the stuck page.
…te when the preview image changes.
…select check box is clobbered by click through to single image screen.
…selects from preview. Attach the onImageClick behaviour from results so the entire image toggles the selection when in selection mode and the click is handled by the range selection aware code.
90bdab3 to
42eb96e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this change?
Restore the Show Preview view and fix the historic stickiness.
Then make selection mode consistent with search view.
How should a reviewer test this change?
How can success be measured?
Who should look at this?
Tested? Documented?