-
Notifications
You must be signed in to change notification settings - Fork 13
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
Expand all for Screens #39
base: master
Are you sure you want to change the base?
Conversation
First pass. New Axios data loading infrastructure now applies to all data types. You should definitely have a nicer, cleaner and more visible status when working with PDI. I'll be working on adjusting the filter and data loading stack to support Screens now. /cc @emilroz |
In
since we get url like |
if (selectedNode.type === "acquisition") { | ||
const plateNode = this.props.jstree.get_node(selectedNode.parent); | ||
nodes = [plateNode]; | ||
fieldId = Math.min( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Math.min(array)
returns NaN
annoyingly!
Need something like .reduce((p, i) => Math.min(p, i))
Testing locally with development server, I see some slightly strange sequence when clicking on a Screen (with 4 Plates) which already viewing a Screen (with 2 Plates, displayed in centre): Basically, the selection change event in the tree triggers re-loading of thumbnails for the 2 Plates already displayed (even though a different Screen has just been selected) so I see thumbnail spinners and thumbnails loading right before the old 2 Plates are replaced by the 4 new Plates (when those AJAX calls return) Sequence is hard to read as URLs are not shown, but after I'll maybe hold off more testing for now until deployed on web-dev-merge. |
There is definitely some weird stuff happening when you switch back and forth. Especially when running on a server where there is a single thread, Chrome is making 6 requests in parallel, and a lot of cancellation needs to happen. Let me finish up making the filtering and data loading Screen aware and I'll switch back to looking at that. |
Should now be much more solid and ready for tomorrow's testing on web-dev-merge. |
Testing the heatmaps on Dataset, it took me a while to see the SETTINGS control at the bottom. I only found it on the UI after first reading the code to see that it's in the footer. I think it needs to be at the top somewhere otherwise it will be missed. Possibly at the right of the "Add Table Data" row? I'm not sure what the "Normal" option is for? Not loading thumbnails or heatmap. Is this to turn thumbnails off so we don't load too many for big plates? It sounds like "Normal" should be the default setting. But actually "Thumbnails" is the default, right? On the List view, the SETTINGS menu doesn't work, but I'm still not seeing thumbnails (no way to turn them back on in this view) It feels like the HeatMap options should allow me to choose from the same list as "Add Table data..." dropdown (to choose from options that I haven't yet loaded, but would be loaded when I request them). I'm trying to think of how to have heat-maps not behave so differently in List view vv Thumbnails view. It seems wrong that I can choose a column in the List view and check the checkbox to show Heatmap, but when I go to Thumbnails view I don't see that heatmap - then I go back to List view and the Heatmap has gone. I like the numbers in the thumbnails for heatmap, although this also needs formatting to 2 decimal places for floats (not necessarily in this PR). |
Minor point: The spinners while loading Filters or Table data are shown to the left of the Filter label and "Add Table data..." chooser, so when the spinner is shown/hidden, these elements jump to the side. |
Not related to this PR (except wrt trying to improve UI clarity): |
Based on the feedback above:
Also, when loading data from the server I had a subtle bug, which is now fixed, where I was not specifying the field when doing We will have to be very careful with all of this going foward when we start bringing selectable fields into Parade. Especially if the field counts of Plates that are in a Screen differ. I also had a lapse in logic where asynchronous calls for all thumbnails were being queued in the browser. On some of our test cases this could easily be >100. Exactly what I was previously afraid would happen did, promises stacked up and performance really suffered. The number of thumbnail batches that can load at one time is now limited to 6. |
As discussed - there is probably too much here to try and get in to the first 0.0.1 release, so we'll exclude so we can test the release candidate build. Note: J-M removed the exclude on 25/07 |
First round:
|
@chris-allan what is the status of this PR? |
@jburel: I haven't had time to get back to this fully based on the strategy of removing some of the more technically dangerous conditions that we discussed a while back. The contents of #53 are a bit troublesome with how much of the package lock file has changed. Let's get together some time today to go over some options. |
Discussed this am with @chris-allan. The plan is:
|
Conflicting PR. Removed from build OMERO-plugins-push#26. See the console output for more details.
--conflicts |
--exclude |
Loads the metadata for all relevant metadata when an SPW container
is selected.
All of the AJAX calls have been converted to Axios, follow an
asynchronous paradigm, are cancellable, and where appropriate now
have loading spinners.
/cc @emilroz