forked from MapComplete/MapComplete
		
	Fix 'stabilized'
This commit is contained in:
		
							parent
							
								
									36ac99c9ec
								
							
						
					
					
						commit
						a4916a9b6d
					
				
					 3 changed files with 6 additions and 6 deletions
				
			
		|  | @ -9,7 +9,10 @@ export class NewGeometryFromChangesFeatureSource implements FeatureSource { | ||||||
|     // This class name truly puts the 'Java' into 'Javascript'
 |     // This class name truly puts the 'Java' into 'Javascript'
 | ||||||
| 
 | 
 | ||||||
|     /** |     /** | ||||||
|      * A feature source containing exclusively new elements |      * A feature source containing exclusively new elements. | ||||||
|  |      *  | ||||||
|  |      * These elements are probably created by the 'SimpleAddUi' which generates a new point, but the import functionality might create a line or polygon too. | ||||||
|  |      * Other sources of new points are e.g. imports from nodes | ||||||
|      */ |      */ | ||||||
|     public readonly features: UIEventSource<{ feature: any; freshness: Date }[]> = new UIEventSource<{ feature: any; freshness: Date }[]>([]); |     public readonly features: UIEventSource<{ feature: any; freshness: Date }[]> = new UIEventSource<{ feature: any; freshness: Date }[]>([]); | ||||||
|     public readonly name: string = "newFeatures"; |     public readonly name: string = "newFeatures"; | ||||||
|  |  | ||||||
|  | @ -227,12 +227,9 @@ export abstract class Store<T> { | ||||||
| 
 | 
 | ||||||
|         const newSource = new UIEventSource<T>(this.data); |         const newSource = new UIEventSource<T>(this.data); | ||||||
| 
 | 
 | ||||||
|         let currentCallback = 0; |  | ||||||
|         this.addCallback(latestData => { |         this.addCallback(latestData => { | ||||||
|             currentCallback++; |  | ||||||
|             const thisCallback = currentCallback; |  | ||||||
|             window.setTimeout(() => { |             window.setTimeout(() => { | ||||||
|                 if (thisCallback === currentCallback) { |                 if (this.data == latestData) { // compare by reference
 | ||||||
|                     newSource.setData(latestData); |                     newSource.setData(latestData); | ||||||
|                 } |                 } | ||||||
|             }, millisToStabilize) |             }, millisToStabilize) | ||||||
|  |  | ||||||
|  | @ -81,7 +81,7 @@ export default class SimpleAddUI extends Toggle { | ||||||
|         const presetsOverview = SimpleAddUI.CreateAllPresetsPanel(selectedPreset, state) |         const presetsOverview = SimpleAddUI.CreateAllPresetsPanel(selectedPreset, state) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|         async function createNewPoint(tags: any[], location: { lat: number, lon: number }, snapOntoWay?: OsmWay) { |         async function createNewPoint(tags: any[], location: { lat: number, lon: number }, snapOntoWay?: OsmWay) : Promise<void>{ | ||||||
|             const newElementAction = new CreateNewNodeAction(tags, location.lat, location.lon, { |             const newElementAction = new CreateNewNodeAction(tags, location.lat, location.lon, { | ||||||
|                 theme: state.layoutToUse?.id ?? "unkown", |                 theme: state.layoutToUse?.id ?? "unkown", | ||||||
|                 changeType: "create", |                 changeType: "create", | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue