neo.mjs 5.4.10 → 5.4.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='5.4.10'
23
+ * @member {String} version='5.4.11'
24
24
  */
25
- version: '5.4.10'
25
+ version: '5.4.11'
26
26
  }
27
27
 
28
28
  /**
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='5.4.10'
23
+ * @member {String} version='5.4.11'
24
24
  */
25
- version: '5.4.10'
25
+ version: '5.4.11'
26
26
  }
27
27
 
28
28
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neo.mjs",
3
- "version": "5.4.10",
3
+ "version": "5.4.11",
4
4
  "description": "The webworkers driven UI framework",
5
5
  "type": "module",
6
6
  "repository": {
@@ -237,12 +237,12 @@ const DefaultConfig = {
237
237
  useVdomWorker: true,
238
238
  /**
239
239
  * buildScripts/injectPackageVersion.mjs will update this value
240
- * @default '5.4.10'
240
+ * @default '5.4.11'
241
241
  * @memberOf! module:Neo
242
242
  * @name config.version
243
243
  * @type String
244
244
  */
245
- version: '5.4.10'
245
+ version: '5.4.11'
246
246
  };
247
247
 
248
248
  Object.assign(DefaultConfig, {
@@ -93,6 +93,13 @@ class Picker extends Text {
93
93
  }]
94
94
  }
95
95
 
96
+ /**
97
+ * Internal flag to prevent showing a picker multiple times
98
+ * @member {Boolean} pickerIsMounting=false
99
+ * @protected
100
+ */
101
+ pickerIsMounting = false
102
+
96
103
  /**
97
104
  * @param {Object} config
98
105
  */
@@ -267,7 +274,7 @@ class Picker extends Text {
267
274
  * @param {Object} data
268
275
  * @protected
269
276
  */
270
- onFocusEnter(data) {
277
+ onFocusEnter(data) {console.log('onFocusEnter')
271
278
  super.onFocusEnter(data);
272
279
 
273
280
  let me = this;
@@ -279,7 +286,7 @@ class Picker extends Text {
279
286
  * @param {Object} data
280
287
  * @protected
281
288
  */
282
- onFocusLeave(data) {
289
+ onFocusLeave(data) {console.log('onFocusLeave')
283
290
  let me = this,
284
291
  insidePicker = false,
285
292
  item;
@@ -300,7 +307,7 @@ class Picker extends Text {
300
307
  /**
301
308
  * @param {Object} data
302
309
  */
303
- onInputClick(data) {
310
+ onInputClick(data) {console.log('onInputClick')
304
311
  let me = this;
305
312
 
306
313
  if (!me.editable) {
@@ -346,16 +353,21 @@ class Picker extends Text {
346
353
  picker = me.getPicker(),
347
354
  listenerId;
348
355
 
349
- me.applyClientRects(true);
356
+ if (!me.pickerIsMounting) {
357
+ me.pickerIsMounting = true;
350
358
 
351
- listenerId = picker.on('mounted', () => {
352
- picker.un('mounted', listenerId);
359
+ me.applyClientRects(true);
353
360
 
354
- me.pickerIsMounted = true;
355
- callback?.apply(callbackScope || me);
356
- });
361
+ listenerId = picker.on('mounted', () => {
362
+ picker.un('mounted', listenerId);
363
+
364
+ me.pickerIsMounting = false;
365
+ me.pickerIsMounted = true;
366
+ callback?.apply(callbackScope || me);
367
+ });
357
368
 
358
- picker.render(true);
369
+ picker.render(true);
370
+ }
359
371
  }
360
372
 
361
373
  /**