Class: Dommy::WakeLockSentinel

Inherits:
Object
  • Object
show all
Includes:
EventTarget
Defined in:
lib/dommy/navigator.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from EventTarget

#__deliver_event__, #add_event_listener, #dispatch_event, #invoke_listener, #remove_event_listener

Constructor Details

#initialize(window, type) ⇒ WakeLockSentinel

Returns a new instance of WakeLockSentinel.



455
456
457
458
459
# File 'lib/dommy/navigator.rb', line 455

def initialize(window, type)
  @window = window
  @type = type
  @released = false
end

Instance Attribute Details

#typeObject (readonly)

Returns the value of attribute type.



453
454
455
# File 'lib/dommy/navigator.rb', line 453

def type
  @type
end

Instance Method Details

#__event_parent__Object



489
490
491
# File 'lib/dommy/navigator.rb', line 489

def __event_parent__
  nil
end

#__js_call__(method, _args) ⇒ Object



482
483
484
485
486
487
# File 'lib/dommy/navigator.rb', line 482

def __js_call__(method, _args)
  case method
  when "release"
    release
  end
end

#__js_get__(key) ⇒ Object



473
474
475
476
477
478
479
480
# File 'lib/dommy/navigator.rb', line 473

def __js_get__(key)
  case key
  when "type"
    @type
  when "released"
    @released
  end
end

#releaseObject



465
466
467
468
469
470
471
# File 'lib/dommy/navigator.rb', line 465

def release
  return PromiseValue.resolve(@window, nil) if @released

  @released = true
  dispatch_event(Event.new("release"))
  PromiseValue.resolve(@window, nil)
end

#releasedObject



461
462
463
# File 'lib/dommy/navigator.rb', line 461

def released
  @released
end