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

#__dommy_dump_event_failure__, #__internal_deliver_event__, #__internal_process_event_handler_return__, #add_event_listener, capture_flag, #deliver_at, #dispatch_event, #event_name_from_on, #invoke_listener_isolated, js_truthy?, #on_handler, #remove_event_listener, #set_on_handler

Constructor Details

#initialize(window, type) ⇒ WakeLockSentinel

Returns a new instance of WakeLockSentinel.



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

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

Instance Attribute Details

#typeObject (readonly)

Returns the value of attribute type.



487
488
489
# File 'lib/dommy/navigator.rb', line 487

def type
  @type
end

Instance Method Details

#__internal_event_parent__Object



527
528
529
# File 'lib/dommy/navigator.rb', line 527

def __internal_event_parent__
  nil
end

#__js_call__(method, _args) ⇒ Object



520
521
522
523
524
525
# File 'lib/dommy/navigator.rb', line 520

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

#__js_get__(key) ⇒ Object



507
508
509
510
511
512
513
514
515
516
# File 'lib/dommy/navigator.rb', line 507

def __js_get__(key)
  case key
  when "type"
    @type
  when "released"
    @released
  else
    Bridge::ABSENT
  end
end

#releaseObject



499
500
501
502
503
504
505
# File 'lib/dommy/navigator.rb', line 499

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

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

#releasedObject



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

def released
  @released
end