Class: Ruflet::UI::Controls::RufletComponents::VideoControl
- Inherits:
-
Control
- Object
- Control
- Ruflet::UI::Controls::RufletComponents::VideoControl
show all
- Defined in:
- lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb
Constant Summary
collapse
- TYPE =
"video".freeze
- WIRE =
"Video".freeze
- KEYWORDS =
[:alignment, :aspect_ratio, :autoplay, :configuration, :data, :fill_color, :filter_quality, :fit, :fullscreen, :height, :key, :muted, :opacity, :pause_upon_entering_background_mode, :pitch, :playlist, :playlist_mode, :playback_rate, :resume_upon_entering_foreground_mode, :rtl, :show_controls, :shuffle_playlist, :subtitle_configuration, :title, :tooltip, :visible, :volume, :wakelock, :width, :on_completed, :on_complete, :on_enter_fullscreen, :on_error, :on_exit_fullscreen, :on_load, :on_loaded, :on_state_change, :on_track_change, :on_track_changed].freeze
Constants inherited
from Control
Control::HOST_EXPANDED_TYPES, Control::SCHEMA_METADATA_CACHE
Instance Attribute Summary
Attributes inherited from Control
#children, #id, #props, #runtime_page, #type, #wire_id
Instance Method Summary
collapse
-
#get_current_position(timeout: 10, on_result: nil) ⇒ Object
-
#get_duration(timeout: 10, on_result: nil) ⇒ Object
-
#initialize(id: nil, **props) ⇒ VideoControl
constructor
A new instance of VideoControl.
-
#is_completed(timeout: 10, on_result: nil) ⇒ Object
-
#is_playing(timeout: 10, on_result: nil) ⇒ Object
-
#jump_to(media_index, timeout: 10, on_result: nil) ⇒ Object
-
#next(timeout: 10, on_result: nil) ⇒ Object
-
#pause(timeout: 10, on_result: nil) ⇒ Object
-
#play(timeout: 10, on_result: nil) ⇒ Object
-
#play_or_pause(timeout: 10, on_result: nil) ⇒ Object
-
#playlist_add(media = nil, timeout: 10, on_result: nil, **props) ⇒ Object
-
#playlist_remove(media_index, timeout: 10, on_result: nil) ⇒ Object
-
#previous(timeout: 10, on_result: nil) ⇒ Object
-
#seek(position_milliseconds, timeout: 10, on_result: nil) ⇒ Object
-
#stop(timeout: 10, on_result: nil) ⇒ Object
Methods inherited from Control
#attach_handler, #emit, generate_id, #has_handler?, #merge_props, #on, #to_patch
Constructor Details
#initialize(id: nil, **props) ⇒ VideoControl
Returns a new instance of VideoControl.
13
14
15
16
17
18
19
20
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 13
def initialize(id: nil, **props)
compact = {}
props.each do |key, value|
raise ArgumentError, "unknown keyword: :#{key}" unless KEYWORDS.include?(key)
compact[key] = value unless value.nil?
end
super(type: TYPE, id: id, **compact)
end
|
Instance Method Details
#get_current_position(timeout: 10, on_result: nil) ⇒ Object
22
23
24
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 22
def get_current_position(timeout: 10, on_result: nil)
runtime_page&.invoke(self, "get_current_position", timeout: timeout, on_result: on_result)
end
|
#get_duration(timeout: 10, on_result: nil) ⇒ Object
26
27
28
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 26
def get_duration(timeout: 10, on_result: nil)
runtime_page&.invoke(self, "get_duration", timeout: timeout, on_result: on_result)
end
|
#is_completed(timeout: 10, on_result: nil) ⇒ Object
30
31
32
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 30
def is_completed(timeout: 10, on_result: nil)
runtime_page&.invoke(self, "is_completed", timeout: timeout, on_result: on_result)
end
|
#is_playing(timeout: 10, on_result: nil) ⇒ Object
34
35
36
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 34
def is_playing(timeout: 10, on_result: nil)
runtime_page&.invoke(self, "is_playing", timeout: timeout, on_result: on_result)
end
|
#jump_to(media_index, timeout: 10, on_result: nil) ⇒ Object
38
39
40
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 38
def jump_to(media_index, timeout: 10, on_result: nil)
runtime_page&.invoke(self, "jump_to", args: { "media_index" => media_index }, timeout: timeout, on_result: on_result)
end
|
#next(timeout: 10, on_result: nil) ⇒ Object
42
43
44
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 42
def next(timeout: 10, on_result: nil)
runtime_page&.invoke(self, "next", timeout: timeout, on_result: on_result)
end
|
#pause(timeout: 10, on_result: nil) ⇒ Object
46
47
48
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 46
def pause(timeout: 10, on_result: nil)
runtime_page&.invoke(self, "pause", timeout: timeout, on_result: on_result)
end
|
#play(timeout: 10, on_result: nil) ⇒ Object
50
51
52
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 50
def play(timeout: 10, on_result: nil)
runtime_page&.invoke(self, "play", timeout: timeout, on_result: on_result)
end
|
#play_or_pause(timeout: 10, on_result: nil) ⇒ Object
54
55
56
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 54
def play_or_pause(timeout: 10, on_result: nil)
runtime_page&.invoke(self, "play_or_pause", timeout: timeout, on_result: on_result)
end
|
#playlist_add(media = nil, timeout: 10, on_result: nil, **props) ⇒ Object
58
59
60
61
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 58
def playlist_add(media = nil, timeout: 10, on_result: nil, **props)
item = media || props
runtime_page&.invoke(self, "playlist_add", args: { "media" => stringify_hash_keys(item) }, timeout: timeout, on_result: on_result)
end
|
#playlist_remove(media_index, timeout: 10, on_result: nil) ⇒ Object
63
64
65
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 63
def playlist_remove(media_index, timeout: 10, on_result: nil)
runtime_page&.invoke(self, "playlist_remove", args: { "media_index" => media_index }, timeout: timeout, on_result: on_result)
end
|
#previous(timeout: 10, on_result: nil) ⇒ Object
67
68
69
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 67
def previous(timeout: 10, on_result: nil)
runtime_page&.invoke(self, "previous", timeout: timeout, on_result: on_result)
end
|
#seek(position_milliseconds, timeout: 10, on_result: nil) ⇒ Object
71
72
73
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 71
def seek(position_milliseconds, timeout: 10, on_result: nil)
runtime_page&.invoke(self, "seek", args: { "position" => position_milliseconds }, timeout: timeout, on_result: on_result)
end
|
#stop(timeout: 10, on_result: nil) ⇒ Object
75
76
77
|
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 75
def stop(timeout: 10, on_result: nil)
runtime_page&.invoke(self, "stop", timeout: timeout, on_result: on_result)
end
|