rsence-pre 2.1.0.11 → 2.1.0.12

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.1.0.11.pre
1
+ 2.1.0.12.pre
@@ -81,6 +81,9 @@
81
81
  #
82
82
  # The HApplication priority of the client, when actively polling.
83
83
  :client_poll_priority: 60
84
+ #
85
+ # Reload the client after any plugins are reloaded:
86
+ :client_autoreload: false
84
87
  #
85
88
  #
86
89
  # Session-related settings
@@ -292,6 +292,9 @@ HSystem = {
292
292
  if(this._updateZIndexOfChildrenBuffer.indexOf(_viewId)===-1){
293
293
  this._updateZIndexOfChildrenBuffer.push(_viewId);
294
294
  }
295
+ if((_viewId !== undefined && _viewId !== null) && (this.views[_viewId].app === this.views[_viewId].parent)){
296
+ (this._updateZIndexOfChildrenBuffer.indexOf(null)===-1) && this._updateZIndexOfChildrenBuffer.push(null);
297
+ }
295
298
  },
296
299
 
297
300
  /** Flushes the z-indexes. This is a fairly expensive operation,
@@ -305,7 +308,7 @@ HSystem = {
305
308
  _this = HSystem,
306
309
 
307
310
  // reference to the buffer
308
- _buffer = this._updateZIndexOfChildrenBuffer,
311
+ _buffer = _this._updateZIndexOfChildrenBuffer,
309
312
 
310
313
  // the length of the buffer
311
314
  _bufLen = _buffer.length;
@@ -315,40 +318,40 @@ HSystem = {
315
318
 
316
319
 
317
320
  // get and remove view the view id from the z-index flush status buffer:
318
- var _viewId = _buffer.shift(),
319
-
320
- // reference to the view's z-index array or the system root-level views if _viewId is 0
321
- _views = ((_viewId === null)?(_this.viewsZOrder):(_this.views[ _viewId ].viewsZOrder)),
322
-
323
- // the length of the view's z-index array
324
- _viewLen = _views.length,
325
-
326
- // reference to the setStyle method of the element manager
327
- _setStyl = ELEM.setStyle,
328
-
329
- // reference to HSystem.views (collection of all views, by index)
330
- _sysViews = _this.views,
331
-
332
-
321
+ var
322
+ _viewId = _buffer.shift(),
323
+
324
+ // reference to the view's z-index array or the system root-level views if _viewId is null
325
+ _views = ((_viewId === null)?(_this.viewsZOrder):(_this.views[ _viewId ].viewsZOrder)),
326
+
327
+ // the length of the view's z-index array
328
+ _viewLen = _views.length,
329
+
330
+ // reference to the setStyle method of the element manager
331
+ _setStyl = ELEM.setStyle,
332
+
333
+ // reference to HSystem.views (collection of all views, by index)
334
+ _sysViews = _this.views,
335
+
333
336
  // assign variables for use inside the inner loop:
334
337
 
335
- // the viewId of the view to be updated
336
- _subViewId,
337
-
338
- // the view itself with the viewId above
339
- _view,
340
-
341
- // the elemId property, used as a [] -lookup in the loop
342
- _elemIdStr = 'elemId',
343
-
344
- // the css property name
345
- _zIdxStr = 'z-index',
346
-
347
- // the loop index
348
- i=0,
349
-
350
- // the element id of the view
351
- _elemId;
338
+ // the viewId of the view to be updated
339
+ _subViewId,
340
+
341
+ // the view itself with the viewId above
342
+ _view,
343
+
344
+ // the elemId property, used as a [] -lookup in the loop
345
+ _elemIdStr = 'elemId',
346
+
347
+ // the css property name
348
+ _zIdxStr = 'z-index',
349
+
350
+ // the loop index
351
+ i=0,
352
+
353
+ // the element id of the view
354
+ _elemId;
352
355
 
353
356
  // end of var declarations
354
357
 
@@ -657,7 +657,7 @@ HView = HClass.extend({
657
657
  }
658
658
  _styl(_elemId,_key,_value,true);
659
659
  }
660
- _this._updateZIndex();
660
+ (this.drown === false) && _this._updateZIndex();
661
661
 
662
662
  if ( _this._cachedLeft !== _rect.left || _this._cachedTop !== _rect.top) {
663
663
  _this.invalidatePositionCache();
@@ -413,8 +413,16 @@ module RSence
413
413
  # file is defined in the bundle directory and loaded in +#init_values+.
414
414
  def init_ses_values( msg )
415
415
  return unless @values
416
- @values.each do | value_name, value_properties |
417
- init_ses_value( msg, value_name, value_properties )
416
+ if @values.class == Array
417
+ @values.each do | value_item |
418
+ value_item.each do | value_name, value_properties |
419
+ init_ses_value( msg, value_name, value_properties )
420
+ end
421
+ end
422
+ elsif @values.class == Hash
423
+ @values.each do | value_name, value_properties |
424
+ init_ses_value( msg, value_name, value_properties )
425
+ end
418
426
  end
419
427
  end
420
428
 
@@ -470,31 +478,44 @@ module RSence
470
478
  end
471
479
  end
472
480
 
481
+ def restore_ses_value( msg, value_name, value_properties )
482
+ ses = get_ses( msg )
483
+ if ses.has_key?( value_name ) and ses[ value_name ].class == HValue
484
+ if value_properties.has_key?(:responders)
485
+ init_responders( msg, ses[value_name], value_properties[:responders] )
486
+ else
487
+ release_responders( msg, ses[value_name] )
488
+ end
489
+ unless value_properties[:restore_default] == false
490
+ if value_properties.has_key?(:value_call)
491
+ default_value = init_value_call( msg, value_properties[:value_call] )
492
+ elsif value_properties.has_key?(:value)
493
+ default_value = value_properties[:value]
494
+ else
495
+ default_value = 0
496
+ end
497
+ ses[value_name].set( msg, default_value )
498
+ end
499
+ else
500
+ init_ses_value( msg, value_name, value_properties )
501
+ end
502
+ end
503
+
473
504
  # @private Restores session values to default, unless specified otherwise.
474
505
  #
475
506
  # Called from +#restore_ses+
476
507
  def restore_ses_values( msg )
477
508
  return unless @values
478
509
  ses = get_ses( msg )
479
- @values.each do | value_name, value_properties |
480
- if ses.has_key?( value_name ) and ses[ value_name ].class == HValue
481
- if value_properties.has_key?(:responders)
482
- init_responders( msg, ses[value_name], value_properties[:responders] )
483
- else
484
- release_responders( msg, ses[value_name] )
510
+ if @values.class == Array
511
+ @values.each do | value_item |
512
+ value_item.each do | value_name, value_properties |
513
+ restore_ses_value( msg, value_name, value_properties )
485
514
  end
486
- unless value_properties[:restore_default] == false
487
- if value_properties.has_key?(:value_call)
488
- default_value = init_value_call( msg, value_properties[:value_call] )
489
- elsif value_properties.has_key?(:value)
490
- default_value = value_properties[:value]
491
- else
492
- default_value = 0
493
- end
494
- ses[value_name].set( msg, default_value )
495
- end
496
- else
497
- init_ses_value( msg, value_name, value_properties )
515
+ end
516
+ elsif @values.class == Hash
517
+ @values.each do | value_name, value_properties |
518
+ restore_ses_value( msg, value_name, value_properties )
498
519
  end
499
520
  end
500
521
  end
@@ -221,7 +221,7 @@ module RSence
221
221
  xhr_traceback_handler( e, "Transporter::PluginDelegateClonedSourceError: @plugins.delegate 'cloned_source' failed." )
222
222
  end
223
223
 
224
- elsif msg.refresh_page?( @plugins.incr )
224
+ elsif msg.refresh_page?( @plugins.incr ) and @config[:client_autoreload]
225
225
  # Forces the client to reload, if plugins are incremented
226
226
  msg.reply("window.location.reload( true );")
227
227
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rsence-pre
3
3
  version: !ruby/object:Gem::Version
4
- hash: 113
4
+ hash: 127
5
5
  prerelease: false
6
6
  segments:
7
7
  - 2
8
8
  - 1
9
9
  - 0
10
- - 11
11
- version: 2.1.0.11
10
+ - 12
11
+ version: 2.1.0.12
12
12
  platform: ruby
13
13
  authors:
14
14
  - Riassence Inc.
@@ -16,7 +16,7 @@ autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
18
 
19
- date: 2010-10-25 00:00:00 +03:00
19
+ date: 2010-10-27 00:00:00 +03:00
20
20
  default_executable: rsence-pre
21
21
  dependencies:
22
22
  - !ruby/object:Gem::Dependency