Class: Dommy::WakeLockSentinel

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Bridge::Methods

included

Methods included from EventTarget

#__internal_deliver_event__, #add_event_listener, capture_flag, #deliver_at, #dispatch_event, js_truthy?, #remove_event_listener

Constructor Details

#initialize(window, type) ⇒ WakeLockSentinel

Returns a new instance of WakeLockSentinel.



463
464
465
466
467
# File 'lib/dommy/navigator.rb', line 463

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

Instance Attribute Details

#typeObject (readonly)

Returns the value of attribute type.



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

def type
  @type
end

Instance Method Details

#__internal_event_parent__Object



499
500
501
# File 'lib/dommy/navigator.rb', line 499

def __internal_event_parent__
  nil
end

#__js_call__(method, _args) ⇒ Object



492
493
494
495
496
497
# File 'lib/dommy/navigator.rb', line 492

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

#__js_get__(key) ⇒ Object



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

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

#releaseObject



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

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

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

#releasedObject



469
470
471
# File 'lib/dommy/navigator.rb', line 469

def released
  @released
end