JAL-3253: Refactor and prototype JalviewJS.Desktop to run embedded in page
CR-JAL-181 42
- Details
- Objectives
- General Comments 17
- Unresolved
- Resolved
- Number of files included: 329
-
jalview
0
-
Folder
doc
0
- File parameters.xlsx 1 Remove
-
Folder
libjs
0
- File VARNA-site.zip 0 Remove
-
Folder
resources/lang
0
- File Messages.properties 0 Remove
- File Messages_es.properties 0 Remove
-
Folder
site-resources
0
-
Folder
javascript
0
- File JalviewApplet.js 0 Remove
-
Folder
swingjs
0
- File JalviewApplet.js 0 Remove
- File applets-nocore.html 0 Remove
- File applets.html 0 Remove
-
Folder
javascript
0
-
Folder
src
0
-
Folder
com/stevesoft/pat
0
- File Regex.java 0 Remove
-
Folder
ext/vamsas
0
- File JpredSoapBindingStub.java 0 Remove
- File MuscleWSSoapBindingStub.java 0 Remove
- File RegistryServiceSoapBindingStub.java 0 Remove
- File SeqSearchServiceSoapBindingStub.java 0 Remove
- File ServiceHandle.java 0 Remove
-
Folder
intervalstore
0
-
Folder
api
0
- File IntervalI.java 0 Remove
- File IntervalStoreI.java 0 Remove
-
Folder
nonc
0
- File IntervalComparator.java 0 Remove
- File IntervalStore.java 0 Remove
-
Folder
api
0
-
Folder
jalview
0
-
Folder
analysis
0
-
Folder
scoremodels
0
- File FeatureDistanceModel.java 0 Remove
- File ScoreMatrix.java 0 Remove
- File ScoreModels.java 1 Remove
- File AlignmentSorter.java 3 Remove
- File CrossRef.java 0 Remove
- File Finder.java 0 Remove
- File GeneticCodes.java 1 Remove
- File ParseProperties.java 0 Remove
-
Folder
scoremodels
0
-
Folder
api
0
- File AlignFrameI.java 0 Remove
- File AlignmentColsCollectionI.java 0 Remove
- File AlignmentViewPanel.java 0 Remove
- File FeatureColourI.java 0 Remove
- File JalviewApp.java 0 Remove
-
Folder
appletgui
0
- File AlignFrame.java 0 Remove
- File AlignmentPanel.java 0 Remove
- File AnnotationColourChooser.java 0 Remove
- File OverviewCanvas.java 0 Remove
- File OverviewPanel.java 0 Remove
-
Folder
bin
0
- File AppletParams.java 4 Remove
- File ApplicationSingletonProvider.java 0 Remove
- File ArgsParser.java 0 Remove
- File Cache.java 0 Remove
- File Cache.java 0 Remove
- File Instance.java 2 Remove
- File Jalview.java 1 Remove
- File Jalview.java 0 Remove
- File JalviewAppLoader.java 0 Remove
- File JalviewJS2.java 0 Remove
- File JalviewJSApi.java 0 Remove
- File JalviewLite.java 0 Remove
-
Folder
commands
0
- File ChangeCaseCommand.java 0 Remove
-
Folder
datamodel
0
-
Folder
features
0
- File FeatureAttributes.java 0 Remove
- File FeatureSources.java 0 Remove
- File FeatureStore.java 0 Remove
- File FeatureStoreI.java 0 Remove
- File FeatureStoreImpl.java 0 Remove
- File FeatureStoreJS.java 0 Remove
- File SequenceFeatures.java 0 Remove
- File SequenceFeaturesI.java 0 Remove
- File Alignment.java 0 Remove
- File AlignmentI.java 0 Remove
- File AllColsCollection.java 0 Remove
- File DBRefEntry.java 0 Remove
- File DBRefSource.java 0 Remove
- File HiddenColumns.java 0 Remove
- File PDBEntry.java 0 Remove
- File ResidueCount.java 0 Remove
- File SecondaryStructureAnnotation.java 0 Remove
- File Sequence.java 0 Remove
- File SequenceFeature.java 0 Remove
- File SequenceI.java 0 Remove
- File VisibleColsCollection.java 0 Remove
-
Folder
features
0
-
Folder
ext
0
-
Folder
ensembl
0
- File EnsemblCdna.java 0 Remove
- File EnsemblCds.java 0 Remove
- File EnsemblGene.java 0 Remove
- File EnsemblInfo.java 0 Remove
- File EnsemblMap.java 0 Remove
- File EnsemblProtein.java 0 Remove
- File EnsemblRestClient.java 0 Remove
- File EnsemblSeqProxy.java 0 Remove
- File EnsemblSequenceFetcher.java 0 Remove
-
Folder
so
0
- File SequenceOntology.java 0 Remove
-
Folder
ensembl
0
-
Folder
fts
0
-
Folder
core
0
- File FTSRestRequest.java 0 Remove
-
Folder
service
0
-
Folder
pdb
0
- File PDBFTSRestClient.java 0 Remove
-
Folder
uniprot
0
- File UniProtFTSRestClient.java 0 Remove
-
Folder
pdb
0
-
Folder
core
0
-
Folder
gui
0
- File AlignExportOptions.java 0 Remove
- File AlignFrame.java 0 Remove
- File AlignViewport.java 0 Remove
- File AlignViewport.java 0 Remove
- File AlignmentPanel.java 0 Remove
- File AnnotationColourChooser.java 0 Remove
- File AnnotationColumnChooser.java 0 Remove
- File AnnotationLabels.java 0 Remove
- File AnnotationPanel.java 0 Remove
- File AppJmol.java 0 Remove
- File AppVarna.java 0 Remove
- File AppVarnaBinding.java 0 Remove
- File AssociatePdbFileWithSeq.java 0 Remove
- File AssociatePdbFileWithSeq.java 0 Remove
- File AssociatePdbFileWithSeq.java 0 Remove
- File CalculationChooser.java 0 Remove
- File ChimeraViewFrame.java 0 Remove
- File ColourMenuHelper.java 0 Remove
- File ComboBoxTooltipRenderer.java 0 Remove
- File Console.java 0 Remove
- File CrossRefAction.java 0 Remove
- File CrossRefAction.java 0 Remove
- File CutAndPasteTransfer.java 0 Remove
- File Desktop.java 0 Remove
- File Desktop.java 0 Remove
- File FeatureEditor.java 0 Remove
- File FeatureRenderer.java 0 Remove
- File Finder.java 0 Remove
- File FontChooser.java 0 Remove
- File IdCanvas.java 0 Remove
- File IdPanel.java 0 Remove
- File JalviewAppender.java 0 Remove
- File JalviewDialog.java 0 Remove
- File JvSwingUtils.java 0 Remove
- File LineartOptions.java 0 Remove
- File MenuChooser.java 0 Remove
- File OOMWarning.java 0 Remove
- File OverviewCanvas.java 0 Remove
- File OverviewPanel.java 0 Remove
- File PopupMenu.java 1 Remove
- File Preferences.java 1 Remove
- File PromptUserConfig.java 0 Remove
- File ScalePanel.java 0 Remove
- File SeqCanvas.java 0 Remove
- File SeqPanel.java 0 Remove
- File SequenceFetcher.java 0 Remove
- File SliderPanel.java 1 Remove
- File SplashScreen.java 0 Remove
- File SplitFrame.java 0 Remove
- File SplitFrame.java 0 Remove
- File StructureChooser.java 0 Remove
- File StructureViewer.java 0 Remove
- File StructureViewerBase.java 0 Remove
- File UserDefinedColours.java 0 Remove
- File UserQuestionnaireCheck.java 0 Remove
- File VamsasApplication.java 0 Remove
- File VamsasApplication.java 0 Remove
- File VamsasApplication.java 0 Remove
- File WebserviceInfo.java 0 Remove
- File WsJobParameters.java 0 Remove
- File WsParamSetManager.java 0 Remove
- File WsPreferences.java 0 Remove
-
Folder
httpserver
0
- File HttpServer.java 1 Remove
-
Folder
io
0
-
Folder
cache
0
- File AppCache.java 0 Remove
-
Folder
gff
0
- File Gff3Helper.java 0 Remove
- File InterProScanHelper.java 0 Remove
- File SequenceOntologyFactory.java 0 Remove
-
Folder
vamsas
0
- File Sequencefeature.java 0 Remove
- File Sequencemapping.java 0 Remove
- File Sequencemapping.java 0 Remove
- File AlignFile.java 0 Remove
- File BackupFiles.java 0 Remove
- File FeaturesFile.java 0 Remove
- File FeaturesFile.java 0 Remove
- File FileFormats.java 0 Remove
- File FileLoader.java 1 Remove
- File FileLoader.java 0 Remove
- File FormatAdapter.java 0 Remove
- File HTMLOutput.java 0 Remove
- File HtmlSvgOutput.java 0 Remove
- File IdentifyFile.java 0 Remove
- File JalviewFileFilter.java 1 Remove
- File ModellerDescription.java 0 Remove
- File NewickFile.java 0 Remove
- File PIRFile.java 0 Remove
- File RnamlFile.java 0 Remove
- File StockholmFile.java 0 Remove
- File TCoffeeScoreFile.java 0 Remove
- File VamsasAppDatastore.java 0 Remove
- File VamsasAppDatastore.java 0 Remove
- File WSWUBlastClient.java 0 Remove
-
Folder
cache
0
-
Folder
javascript
0
- File JSFunctionExec.java 0 Remove
- File JalviewLiteJsApi.java 0 Remove
- File JsSelectionSender.java 0 Remove
- File MouseOverListener.java 0 Remove
- File MouseOverStructureListener.java 0 Remove
-
Folder
jbgui
0
- File GAlignFrame.java 0 Remove
- File GAlignmentPanel.java 0 Remove
- File GDesktop.java 0 Remove
- File GPreferences.java 0 Remove
- File GSequenceLink.java 0 Remove
- File GSliderPanel.java 0 Remove
- File GSplitFrame.java 0 Remove
- File GStructureChooser.java 0 Remove
-
Folder
project
0
- File Jalview2XML.java 1 Remove
-
Folder
renderer
0
-
Folder
seqfeatures
0
- File FeatureColourFinder.java 0 Remove
- File FeatureRenderer.java 0 Remove
- File OverviewRenderer.java 0 Remove
- File OverviewResColourFinder.java 0 Remove
- File ResidueColourFinder.java 0 Remove
- File ResidueShader.java 0 Remove
- File ResidueShaderI.java 0 Remove
-
Folder
seqfeatures
0
-
Folder
rest
0
- File RestHandler.java 0 Remove
-
Folder
schemes
0
- File AnnotationColourGradient.java 0 Remove
- File ColourSchemeProperty.java 0 Remove
- File ColourSchemes.java 0 Remove
- File RNAHelicesColour.java 0 Remove
- File ResidueProperties.java 0 Remove
-
Folder
structure
0
- File StructureImportSettings.java 0 Remove
- File StructureSelectionManager.java 1 Remove
-
Folder
structures/models
0
- File AAStructureBindingModel.java 0 Remove
-
Folder
urls
0
- File IdOrgSettings.java 0 Remove
-
Folder
util
0
- File BrowserLauncher.java 0 Remove
- File ColorUtils.java 0 Remove
- File DBRefUtils.java 0 Remove
- File GroupUrlLink.java 0 Remove
- File MessageManager.java 0 Remove
- File Platform.java 1 Remove
- File UrlLink.java 0 Remove
-
Folder
viewmodel
0
-
Folder
seqfeatures
0
- File FeatureRendererModel.java 0 Remove
- File AlignmentViewport.java 0 Remove
- File OverviewDimensions.java 0 Remove
- File OverviewDimensionsHideHidden.java 0 Remove
- File OverviewDimensionsShowHidden.java 0 Remove
- File ViewportRanges.java 0 Remove
-
Folder
seqfeatures
0
-
Folder
ws
0
-
Folder
dbsources
0
- File EmblCdsSource.java 0 Remove
- File EmblSource.java 0 Remove
- File Pdb.java 0 Remove
- File PfamFull.java 0 Remove
- File PfamSeed.java 0 Remove
- File Uniprot.java 0 Remove
-
Folder
jws1
0
- File Discoverer.java 0 Remove
- File JPredClient.java 0 Remove
- File MsaWSClient.java 0 Remove
- File SeqSearchWSClient.java 0 Remove
-
Folder
jws2
0
-
Folder
jabaws2
0
- File Jws2Instance.java 0 Remove
- File Jws2InstanceFactory.java 0 Remove
- File AAConClient.java 0 Remove
- File AADisorderClient.java 0 Remove
- File Jws2Client.java 0 Remove
- File Jws2Discoverer.java 0 Remove
- File MsaWSClient.java 0 Remove
- File SequenceAnnotationWSClient.java 0 Remove
-
Folder
jabaws2
0
-
Folder
rest
0
- File RestClient.java 0 Remove
-
Folder
seqfetcher
0
- File ASequenceFetcher.java 0 Remove
- File DbSourceProxy.java 0 Remove
- File DbSourceProxyRoot.java 0 Remove
-
Folder
sifts
0
- File SiftsClient.java 0 Remove
- File SiftsSettings.java 1 Remove
- File DBRefFetcher.java 0 Remove
- File SequenceFetcher.java 0 Remove
- File SequenceFetcherFactory.java 1 Remove
-
Folder
dbsources
0
-
Folder
analysis
0
-
Folder
mc_view
0
- File PDBfile.java 0 Remove
-
Folder
com/stevesoft/pat
0
-
Folder
srcjar/fr/orsay/lri/varna
0
- File VARNAPanel.java 0 Remove
-
Folder
swingjs
0
-
Folder
ver/3.2.4
0
- File SwingJS-site.zip 0 Remove
- File SwingJS-site.zip 0 Remove
- File _j2sclasslist.txt 0 Remove
- File timestamp 0 Remove
- File timestamp 0 Remove
- File SwingJS-site.zip 0 Remove
- File SwingJS-site.zip 0 Remove
- File _j2sclasslist.txt 0 Remove
- File timestamp 0 Remove
- File timestamp 0 Remove
-
Folder
ver/3.2.4
0
-
Folder
temp
0
- File braf.jvp 0 Remove
- File timing-IntervalStore.txt 0 Remove
- File timing-noIntervalStore.txt 0 Remove
-
Folder
test
0
-
Folder
jalview
0
-
Folder
analysis
0
-
Folder
scoremodels
0
- File ScoreModelsTest.java 0 Remove
- File AlignmentSorterTest.java 0 Remove
- File CrossRefTest.java 0 Remove
- File DnaTest.java 0 Remove
- File FinderTest.java 0 Remove
- File GeneticCodesTest.java 0 Remove
-
Folder
scoremodels
0
-
Folder
bin
0
- File CommandLineOperations.java 0 Remove
- File CommandLineOperations.java 0 Remove
-
Folder
datamodel
0
-
Folder
features
0
- File FeatureStoreJSTest.java 0 Remove
- File FeatureStoreNoNCTest.java 0 Remove
- File FeatureStoreTest.java 0 Remove
- File SequenceFeaturesTest.java 0 Remove
- File SequenceTest.java 0 Remove
-
Folder
features
0
-
Folder
ext
0
-
Folder
ensembl
0
- File EnsemblCdnaTest.java 0 Remove
- File EnsemblCdsTest.java 0 Remove
- File EnsemblGeneTest.java 0 Remove
- File EnsemblGenomeTest.java 0 Remove
- File EnsemblSeqProxyTest.java 0 Remove
-
Folder
jmol
0
- File JmolCommandsTest.java 0 Remove
- File JmolParserTest.java 0 Remove
- File JmolViewerTest.java 0 Remove
-
Folder
rbvi/chimera
0
- File ChimeraCommandsTest.java 0 Remove
- File JalviewChimeraView.java 0 Remove
-
Folder
ensembl
0
-
Folder
gui
0
- File AlignFrameTest.java 0 Remove
- File AlignViewportTest.java 0 Remove
- File AlignViewportTest.java 0 Remove
- File AlignmentPanelTest.java 0 Remove
- File AnnotationChooserTest.java 0 Remove
- File AnnotationColumnChooserTest.java 0 Remove
- File AnnotationRowFilterTest.java 0 Remove
- File CalculationChooserTest.java 0 Remove
- File FreeUpMemoryTest.java 0 Remove
- File JvSwingUtilsTest.java 0 Remove
- File PairwiseAlignmentPanelTest.java 0 Remove
- File SeqCanvasTest.java 0 Remove
- File SeqPanelTest.java 0 Remove
-
Folder
io
0
- File AnnotatedPDBFileInputTest.java 0 Remove
- File BackupFilesTest.java 0 Remove
- File CrossRef2xmlTests.java 0 Remove
- File FeaturesFileTest.java 0 Remove
- File FeaturesFileTest.java 0 Remove
- File FileLoaderTest.java 0 Remove
- File Jalview2xmlBase.java 0 Remove
- File JalviewExportPropertiesTests.java 0 Remove
- File StockholmFileTest.java 0 Remove
-
Folder
project
0
- File Jalview2xmlTests.java 0 Remove
-
Folder
renderer
0
-
Folder
seqfeatures
0
- File FeatureColourFinderTest.java 0 Remove
- File FeatureColourFinderTest.java 0 Remove
- File OverviewRendererTest.java 0 Remove
- File OverviewResColourFinderTest.java 0 Remove
-
Folder
seqfeatures
0
-
Folder
schemes
0
- File ColourSchemesTest.java 0 Remove
-
Folder
structure
0
- File Mapping.java 0 Remove
- File StructureSelectionManagerTest.java 0 Remove
-
Folder
structures/models
0
- File AAStructureBindingModelTest.java 0 Remove
-
Folder
util
0
- File PlatformTest.java 0 Remove
-
Folder
ws
0
-
Folder
dbsources
0
- File RemoteFormatTest.java 0 Remove
-
Folder
jabaws
0
- File JalviewJabawsTestUtils.java 0 Remove
-
Folder
seqfetcher
0
- File DbRefFetcherTest.java 0 Remove
-
Folder
sifts
0
- File SiftsClientTest.java 1 Remove
- File PDBSequenceFetcherTest.java 0 Remove
- File SequenceFetcherTest.java 0 Remove
-
Folder
dbsources
0
-
Folder
analysis
0
-
Folder
mc_view
0
- File PDBfileTest.java 0 Remove
-
Folder
jalview
0
-
Folder
unused/nonc
0
- File IntervalI.java 0 Remove
- File IntervalStore.java 0 Remove
- File IntervalStoreI.java 0 Remove
- File _j2sclasslist.txt 0 Remove
- File _j2sclasslist_Jmol.txt 0 Remove
- File buildcore.xml 0 Remove
- File test-bh.png 0 Remove
-
Folder
doc
0
-
Filter
- Only show me content:
- Unfiltered files: dynamically added content
- Filtered files: dynamically added content
- Clear filters
Summarize the review outcomes (optional)
Details
Participant | Role | Time Spent | Comments | Latest Comment |
---|---|---|---|---|
Author | 56m | 5 | I suggest we close this. It's all ancient history now. | |
Reviewer - 12% reviewed | 5h 42m | 37 | I have added a large number of commits to this review whi... | |
Total | 6h 38m | 42 |
- Linked Issue:
-
Objectives
Major objectives:
- migrate all static Desktop. methods to 'instance'-safe methods
- port nascent JalviewLite API to JalviewJS (jalview.javascript.JalviewLiteJsApi)
Branches in review
Repository | Branch to review | Branched from |
---|
General Comments
Mungo Carstairs
May need some thought as to intended scope of the various singleton classes a...May need some thought as to intended scope of the various singleton classes affected.
For example ScoreModels : provides the built-in models including BLOSUM62, PAM250.
Additional models can be added by drag and drop (e.g. of resources/blosum80.scm).
Should doing this in one applet make it available to all? In which case true singleton scope is what is wanted for this class.
Bob Hanson
For sure. That is a conversation that I think this clean-up now enables. (I'm...For sure. That is a conversation that I think this clean-up now enables. (I'm out of that!)
Mungo Carstairs
Could the need for public fields in Instance be avoided by a modified pattern...Could the need for public fields in Instance be avoided by a modified pattern:
1) rename Instance as InstanceProvider
2) give it only static fields and methods
public class InstanceProvider { private static final String JAVA = "Java"; private static Map<Object, Map<Class, Object>> instances = new HashMap<>(); // 'singleton' for each class, per context private static Object getContext() { // returns JAVA for Java, currentThread.getThreadGroup() for JS } public static Object getInstance(Class c) { return instances.get(getContext()).get(c); // with check for null } public static void setInstance(Object o) { Map<Class, Object> map = instances.get(getContext()); // create new Map if null map.put(o.getClass(), o); }
Client code pattern:
public FeatureSources getInstance() { FeatureSources instance = (FeatureSources) InstanceProvider.getInstance(FeatureSources.class); if (instance == null) { InstanceProvider.setInstance(instance = new FeatureSources()); } return instance; }
Advantage: extensible without any code change (no need to add a field to Instance for every new singleton class).
-
Mungo Carstairs marked as
Resolved
21 May 19
Mungo Carstairs
Better? reduce client code to one line FeatureSources.getInstance() : retur...Better? reduce client code to one line
FeatureSources.getInstance() :
return (FeatureSources) InstanceProvider.getInstance(FeatureSources.class);
by using reflection to instantiate in InstanceProvider:
public static Object getInstance(Class c, Class<?>... args) { public static Object getInstance(Class c) { Map<Class, Object> map = instances.get(getContext()); if (map == null) { map = new HashMap<>(); instances.put(getContext(), map); } Object o = map.get(c); if (o == null) { Constructor con = c.getDeclaredConstructor(args); con.setAccessible(true); o = con.newInstance(); map.put(c, o); } return o; } }
(with about 6 exceptions declared throwable, or caught internally, by the method).
No longer requires a setInstance() method. Handles constructor arguments, or a simple no-args constructor.
Is that transpilable?
Mungo Carstairs
Jalview.main() would need to change from new Jalview().doMain(arg); to g...Jalview.main() would need to change from
new Jalview().doMain(arg);
to
getInstance().doMain(args);
and similarly the Desktop constructor called from Jalview.doMain() to Desktop.getInstance().
Bob Hanson
yes, I noticed those two as being unique. And for a few classes we need to al...yes, I noticed those two as being unique. And for a few classes we need to allow some sort of
newInstance()
call that can reset the singleton.
Mungo Carstairs
Hangout discussion points: *private constructors are accessible in Javascri...Hangout discussion points:
- private constructors are accessible in Javascript so that works
- need to be sure there is no memory leak e.g. if applets are repeatedly stopped and started on page
- like the convenience of being able to easily identify all classes that follow this singleton pattern
- StructureSelectionManager is a unique case - serves instance per application and class context - needs revision perhaps?
Proposed adjustments to the above design:
1) store the Map<Class, Object> in currentThread.threadGroup if JS - so references disappear when applet shuts down
2) define a tagging interface e.g.
public interface SingletonI {}
and restrict InstanceProvider to subclasses:
public static Object getInstance(Class<? extends SingletonI> c, Class<?>... args) { ...
Defining a callback method in the interface doesn't work as we are passing the Class, not an object, so we still need to use reflection to invoke the constructor.
Bob Hanson
One thing to think about is what would be the simplest and most natural way o...One thing to think about is what would be the simplest and most natural way of calling for the singleton from other classes. Right now it is set up so that if there is a singleton class, all references to that class go through the class's static getInstance() method:
findQuality(0, maxLength - 1, ScoreModels.getInstance().getBlosum62());
To me, that has a nice look to it, so I would hope we stick with that.
If it's OK with you, I would like to table this issue, make sure we have the tests successful, merge the branch, and then think about refining it. I need to make sure I have any applets running right now.
Mungo Carstairs
No problem, the call to ScoreModels.getInstance() is unchanged, only how it i...No problem, the call to ScoreModels.getInstance() is unchanged, only how it is implemented.
Mungo Carstairs
We will need clarity on behaviour of copy and paste. Jalview uses both Toolki...We will need clarity on behaviour of copy and paste. Jalview uses both
Toolkit.getDefaultToolkit().getSystemClipboard() // this has global scope
and
Desktop.getInstance().jalviewClipboard // this has per-applet scope
with the latter 'overriding' the former.
This may be fine as is, or may create some puzzling behaviour e.g. a "rich paste" (sequence + features) within an applet and a "text paste" (sequence only) across applications.
-
Mungo Carstairs marked as
Unresolved
20 May 19
Mungo Carstairs
I am seeing some odd z-plane behaviour, not sure if it is specific to this br...I am seeing some odd z-plane behaviour, not sure if it is specific to this branch. If the desktop is brought to front, I can't then bring any other panel to front.
-
Mungo Carstairs marked as
Resolved
11 Jun 19
Mungo Carstairs
Can't reproduce this now (can't "bring desktop to front"). Will resolve and r...Can't reproduce this now (can't "bring desktop to front"). Will resolve and reopen if it recurs.
Mungo Carstairs
Too much change around ASequenceFetcher, DbRoot etc to be able to review from...Too much change around ASequenceFetcher, DbRoot etc to be able to review from the diffs. They seem to work when testing!
(The code here may now be overcomplicated for the simplified (post-DAS) world.)
Mungo Carstairs
I have added a large number of commits to this review which were tagged "JAL-...I have added a large number of commits to this review which were tagged "JAL-3253-applet" or "Jalview-JS/develop-3253" or similar. This should be just the issue id for JIRA to associate the commit with the issue.
Bob Hanson
I suggest we close this. It's all ancient history now.I suggest we close this. It's all ancient history now.
Also covers some untagged commits including
425ed088 VARNAPanel change field _border (used by JSComponent) to _myBorder
b2f46d31 AppletParams
4b022090 JalviewAppLoader
08873667 Preferences and other classes