Browse Source

ign4 new modules

master
jfinn 4 years ago
parent
commit
44add942aa

+ 34
- 1
i4/lobby.js View File

@@ -120,8 +120,12 @@ var mtx_2 ={
120 120
 	// `${mod_path}m0.js`,
121 121
 	`${mod_path}${n}.js`,
122 122
 	`${mod_path}${n}1.js`,
123
+	`${mod_path}${n}2.js`,
124
+	],
125
+	css:[
126
+	`${mod_path}${n}.css`,
127
+	`${mod_path}${n}2.css`,
123 128
 	],
124
-	css:[`${mod_path}${n}.css`],
125 129
 	html:[
126 130
 	{url:`${mod_path}${n}.html`,diffH:get_cui_html,success:html_rld_cb4,success_js:"html_js_handler_ui_msg"},
127 131
 	// C:\bspace\repos\jc4\ign4\rf\img\full-frame.svg
@@ -193,8 +197,36 @@ var mtx_2 ={
193 197
 
194 198
 
195 199
 }
200
+function ytsv() {
201
+	// body...
202
+	// clog("This is lobby2")
203
+var mod_path ="ign/rf/ytsv/"
204
+var n ="y"
205
+
206
+var mtx_2 ={	
207
+	// js:["ign/m/timer/m.js","ign/m/timer/m0.js"],
208
+	js:[
209
+	// `${mod_path}m0.js`,
210
+	`${mod_path}${n}.js`,
211
+	`${mod_path}vid_utils.js`,
212
+	// `${mod_path}${n}1.js`,
213
+	],
214
+	css:[`${mod_path}${n}.css`],
215
+	html:[
216
+	// {url:`${mod_path}${n}.html`,diffH:get_cui_html,success:html_rld_cb4,success_js:"html_js_handler_dev_ov"},
217
+	// C:\bspace\repos\jc4\ign4\rf\img\full-frame.svg
218
+	// {url:`ign/rf/img/full-frame.svg`,diffH:get_cui_html,success:html_rld_cb4,success_js:"svg_icon_handler"},
219
+	// {url:`ign/rf/img/full-frame_24.svg`,diffH:get_cui_html,success:html_rld_cb4,success_js:"svg_icon_handler2"},
220
+	]
221
+	}
222
+	mtx_2.name = "ytsv"
223
+
224
+	setTimeout(add_module,300,mtx_2)
196 225
 
197 226
 
227
+
228
+}
229
+
198 230
 if (location.pathname.endsWith("/")){
199 231
 insert_lobby()
200 232
 } else {
@@ -202,6 +234,7 @@ not_lobby()
202 234
 ui_msg()
203 235
 ovf_vid()
204 236
 dev_ov()
237
+ytsv()
205 238
 }
206 239
 svg_dev()
207 240
 

+ 67
- 0
rf/coninc/coninc.css View File

@@ -0,0 +1,67 @@
1
+
2
+
3
+.inactive_vid {
4
+	/*outline: 5px solid #ff0 !important;*/
5
+}
6
+
7
+
8
+
9
+
10
+/*.inactive_vid.display-avatar-only video{*/
11
+.inactive_vid video{
12
+    /*opacity: 1 !important;*/
13
+    filter: grayscale(1);
14
+
15
+    /*z-index: 200;*/
16
+    visibility: visible !important;
17
+}
18
+.display-avatar-only video{
19
+    /*opacity: 1 !important;*/
20
+    /*visibility: visible !important;*/
21
+/*.inactive_vid.display-avatar-only video{*/
22
+	/*filter: sepia(1);*/
23
+}
24
+
25
+
26
+
27
+
28
+.indicator-container {
29
+	/*transform: translate(0%,0%);*/
30
+	/*z-index: 500;*/
31
+	/*outline: 2px solid red;*/
32
+	/*outline-offset: -5px;*/
33
+	/*background-color: red !important;*/
34
+	/*opacity: .5;*/
35
+}
36
+
37
+
38
+/*
39
+.display-name-on-black:not(:hover) video {
40
+    opacity: 1 !important;
41
+}
42
+.display-name-on-black video {
43
+    opacity: .2;
44
+    visibility: visible;
45
+*/
46
+
47
+/*
48
+.display-avatar-with-name video, .display-name-on-black .avatar-container {
49
+    visibility: hidden;
50
+}
51
+*/
52
+
53
+/*.display-name-on-black .avatar-container {*/
54
+	/*
55
+.display-avatar-only .avatar-container {
56
+    visibility: hidden !important;
57
+    background-color: red !important;
58
+}
59
+	*/
60
+/*.display-avatar-with-name video{*/
61
+/*
62
+.display-avatar-only video{
63
+    opacity: 1 !important;
64
+    z-index: 200;
65
+    visibility: visible !important;
66
+}
67
+*/

+ 32
- 2
rf/coninc/coninc.js View File

@@ -124,6 +124,27 @@ function prune_smallvids(){
124 124
 
125 125
 
126 126
 
127
+
128
+
129
+function conn_stat(o){
130
+	var id,connection_status
131
+	id = o.action.participant.id
132
+	connection_status = o.action.participant.connectionStatus
133
+	if (window.glob_mx.local_id == id){
134
+		clog("connectionStatus local",id)
135
+	}
136
+	// clog("conic~",connection_status,glob_mx.participants[id],id)
137
+	// if (connection_status == "inactive" || glob_mx.participants[id] == "inactive"){
138
+	if (connection_status == "inactive"){
139
+		$("#participant_"+id).addClass("inactive_vid")
140
+
141
+	} else if (glob_mx.participants[id] == "inactive" && connection_status && connection_status != "inactive") {
142
+		$("#participant_"+id).removeClass("inactive_vid")
143
+
144
+	}
145
+	glob_mx.participants[id] = connection_status
146
+}
147
+
127 148
 function coninc_conection_event(o){
128 149
 
129 150
 	// clog("PARTICIPANT_UPDATED",o,get_participants())
@@ -135,14 +156,23 @@ function coninc_conection_event(o){
135 156
 	}
136 157
 	var ret = deep_prop_v2(o,"action.participant.connectionStatus".split("."))
137 158
 	if (ret.v_exist){
138
-		clog("conic +",ret,o)
159
+		// clog("conic +",ret,o)
160
+		try{
161
+		conn_stat(o)
139 162
 
163
+		}catch(err){
164
+			clog("conn_stat err:",err,o)
165
+		}
166
+		
140 167
 	} else {
141
-		clog("conic !",ret,o)
168
+		// clog("conic !",ret,o)
142 169
 		// clog(ret)
143 170
 	}
144 171
 	// clog("PARTICIPANT_UPDATED",o)
145 172
 }
173
+
174
+
175
+
146 176
 function discard_participant(o){
147 177
 	// o.action.participant.id
148 178
 	delete window.glob_mx.participants[o.action.participant.id]

+ 0
- 27
rf/dev_ov/t.css View File

@@ -18,30 +18,3 @@
18 18
 
19 19
 	/*text-align:center;*/
20 20
 }
21
-
22
-.indicator-container{
23
-	display: block !important;
24
-}
25
-
26
-/*.connection_full {*/
27
-.connection_empty {
28
-	/*position: absolute;*/
29
-	/*top :2px;*/
30
-	width: 8px !important;
31
-	/*opacity: 0;*/
32
-	/*display: none;*/
33
-	/*display: block !important;*/
34
-}
35
-.connection_full {
36
-/*.connection_empty {*/
37
-		position: absolute;
38
-		/*position: relative;*/
39
-	/*top :2px;*/
40
-	transform: rotate(90deg);
41
-	transform: rotate(180deg);
42
-	transform: translate(-50%,-50%) rotate(180deg);
43
-	transform: translate(-50%,0%) rotate(180deg);
44
-	transform: translate(0%,-50%) rotate(180deg);
45
-	/*display: none;*/
46
-	/*opacity: 0;*/
47
-}

+ 4
- 1
rf/exp_api/exp_api.js View File

@@ -48,6 +48,8 @@ fn_name_template = {
48 48
 function dev_fn(fn_arg,o){
49 49
 	var fn
50 50
 	// clog("coninc...")
51
+	try{
52
+
51 53
 
52 54
 	if (typeof(fn_arg)=="object"){
53 55
 		if (Array.isArray(fn_arg)) {
@@ -60,8 +62,9 @@ function dev_fn(fn_arg,o){
60 62
 	}
61 63
 	// clog("coninc...",fn,fn_arg)
62 64
 	if (fn){
63
-		fn(o,fn_arg)
65
+		return fn(o,fn_arg)
64 66
 	}
67
+	} catch (err) {	clog("dev_fn err:",err)}
65 68
 	// fn_arg = 
66 69
 
67 70
 }

+ 32
- 12
rf/filmstrip_mod/m.js View File

@@ -122,10 +122,12 @@ function refresh_toolbars(){
122 122
 
123 123
     html_hooks.create_new_toolbox_hook(n)
124 124
 
125
+    // <span class="toggle_ff lvov">enter fullframe${window.full_frame_svg || ""}</span>
126
+
125 127
         n = `
126 128
     <div class="plugin_top tbar">
127 129
     <span class="lvov_container">
128
-    <span class="toggle_ff lvov">enter fullframe</span>
130
+    <span class="toggle_ff lvov"><span class="toggle_ff_filter"></span><span class="toggle_ff_txt">enter fullframe</span></span>
129 131
 
130 132
     <span class="lv_info lvov">
131 133
     <span class="autoplay_msg lvov">
@@ -146,6 +148,14 @@ function refresh_toolbars(){
146 148
         <div class="tbox_slide_indicator2"></div>
147 149
     </div>`
148 150
     n = $(n)
151
+    try {
152
+        var full_frame_svg_node
153
+        full_frame_svg_node = $(plugin_icon_template)
154
+        add_node(full_frame_svg,full_frame_svg_node.find(".jitsi-icon"),"prepend")
155
+        // add_node(full_frame_svg_node,n.find(".toggle_ff"),"prepend")
156
+        add_node(full_frame_svg_node,n.find(".toggle_ff"),"append")
157
+
158
+    } catch (err){}
149 159
 
150 160
     // <span class="lv_info lvov"></span>
151 161
     add_node(n,`.lvc_overlay`,"append")
@@ -156,7 +166,9 @@ function refresh_toolbars(){
156 166
     v.onmouseenter= ff_me
157 167
     v.onmouseleave =ff_ml
158 168
     try {
159
-    n.find(".toggle_ff")[0].onclick = toggle_ff
169
+    // n.find(".toggle_ff")[0].onclick = toggle_ff
170
+    $(".toggle_ff").find(".toggle_ff_txt,.toolbox-button").off("click")
171
+$(".toggle_ff").find(".toggle_ff_txt,.toolbox-button").on("click",toggle_ff)
160 172
     n.find(".force_enable")[0].onclick = allow_autoplay
161 173
     // n.find(".allow_autoplay")[0].onclick = allow_autoplay
162 174
 
@@ -243,7 +255,8 @@ function init_api6(){
243 255
     if (nt.length){
244 256
         n = $(nt[0].outerHTML)
245 257
          
246
-        nt = mod_templates.find(".pseudo_vid_avatar.named")
258
+        // nt = mod_templates.find(".pseudo_vid_avatar.named")
259
+        nt = templates.find(".pseudo_vid_avatar.named")
247 260
         // nt = templates.find(".pseudo_vid_avatar.anon")
248 261
         add_node(nt,n,"append")
249 262
         n = n[0].outerHTML
@@ -287,7 +300,7 @@ function init_api6(){
287 300
 
288 301
 
289 302
 function ff_me(){
290
-clog("ff_me")
303
+// clog("ff_me")
291 304
     // $(".lvov").removeClass("_hide")
292 305
     $(".lvov_container").removeClass("_hide")
293 306
     // $(".lvov").removeClass("hide")
@@ -299,7 +312,7 @@ clog("ff_me")
299 312
     // dev_raf()
300 313
 }
301 314
 function ff_ml(){
302
-clog("ff_ml")
315
+// clog("ff_ml")
303 316
     $(".lvov_container").addClass("_hide")
304 317
     // glob_dbg.ff.stop = 1
305 318
 
@@ -316,11 +329,15 @@ function toggle_ff_dflt(){
316 329
     glob_mx.dims.fullframe = !glob_mx.dims.fullframe
317 330
     if (glob_mx.dims.fullframe){
318 331
         $(".vspace").addClass("_hide")
319
-        $(".toggle_ff")[0].innerHTML = "shrink"
320
-        $(".toggle_ff")[0].innerHTML = "exit fullframe"
332
+        $(".toggle_ff").addClass("isff")
333
+        // $(".toggle_ff")[0].innerHTML = "shrink"
334
+        // $(".toggle_ff")[0].innerHTML = "exit fullframe"
335
+        $(".toggle_ff > .toggle_ff_txt").text("exit fullframe")
321 336
         // ._hide
322 337
     } else {
323
-        $(".toggle_ff")[0].innerHTML = "enter fullframe"
338
+        // $(".toggle_ff")[0].innerHTML = "enter fullframe"
339
+        $(".toggle_ff > .toggle_ff_txt").text("enter fullframe")
340
+        $(".toggle_ff").removeClass("isff")
324 341
         $(".vspace").removeClass("_hide")
325 342
     }
326 343
     dispatch_resize()
@@ -376,14 +393,17 @@ function ff_set_ev(){
376 393
     // v.onmousemove=  ff_mm
377 394
     v.onmouseenter= ff_me
378 395
     v.onmouseleave =ff_ml
379
-    $(".toggle_ff")[0].onclick = toggle_ff
396
+    // $(".toggle_ff")[0].onclick = toggle_ff
397
+    $(".toggle_ff").find(".toggle_ff_txt,.toolbox-button").off("click")
398
+$(".toggle_ff").find(".toggle_ff_txt,.toolbox-button").on("click",toggle_ff)
380 399
     $(".allow_autoplay")[0].onclick = allow_autoplay
381 400
 
382 401
 }
383 402
 
384
-
385
-
386
-
403
+// $(".toggle_ff").find(".toggle_ff_txt,.toolbox-button").off("click")
404
+// $(".toggle_ff").find(".toggle_ff_txt,.toolbox-button").on("click",toggle_ff)
405
+// toggle_ff_txt
406
+// toolbox-button
387 407
 
388 408
 
389 409
 

+ 8
- 2
rf/filmstrip_mod/m0.js View File

@@ -65,15 +65,15 @@ function resize_thumbs_horizontal(cont){
65 65
   var height = Math.round(width/aspect)
66 66
   computed_css.height = height
67 67
   computed_css.width = width
68
-  clog("RTH",cont)
68
+  // clog("RTH",cont)
69 69
   computed_css["min-width"] = width
70 70
   var k,v
71 71
   for ([k,v] of Object.entries(computed_css)){
72 72
     Number(v) ? computed_css[k] = v + "px" : 0
73 73
   }
74 74
   // clog("RTHUMBS")
75
-  fix_avatar(thumbs)
76 75
   thumbs.css(computed_css)
76
+  fix_avatar(thumbs)
77 77
 
78 78
 
79 79
 }
@@ -376,6 +376,12 @@ resize_thumbs_proto($("#sharedVideoIFrame"),{
376 376
 })
377 377
 clog("top",top_margin_flag)
378 378
 resize_thumbs_proto($("#largeVideoContainer.z,#sharedVideoIFrame"),{position:"",})
379
+
380
+
381
+
382
+
383
+
384
+
379 385
 }
380 386
 
381 387
 function fullframe(){

+ 76
- 0
rf/filmstrip_mod/svg_src.js View File

@@ -0,0 +1,76 @@
1
+full_frame_svg = `<svg class="full_frame_svg"
2
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
3
+   xmlns:cc="http://creativecommons.org/ns#"
4
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
5
+   xmlns:svg="http://www.w3.org/2000/svg"
6
+   xmlns="http://www.w3.org/2000/svg"
7
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
8
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
9
+   version="1.1"
10
+   width="32"
11
+   height="32"
12
+   viewBox="0 0 32 32"
13
+   id="svg6"
14
+   sodipodi:docname="full-frame.svg"
15
+   inkscape:version="0.92.4 (5da689c313, 2019-01-14)">
16
+  <metadata
17
+     id="metadata12">
18
+    <rdf:RDF>
19
+      <cc:Work
20
+         rdf:about="">
21
+        <dc:format>image/svg+xml</dc:format>
22
+        <dc:type
23
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
24
+      </cc:Work>
25
+    </rdf:RDF>
26
+  </metadata>
27
+  <defs
28
+     id="defs10" />
29
+  <sodipodi:namedview
30
+     pagecolor="#ffffff"
31
+     bordercolor="#666666"
32
+     borderopacity="1"
33
+     objecttolerance="10"
34
+     gridtolerance="10"
35
+     guidetolerance="10"
36
+     inkscape:pageopacity="0"
37
+     inkscape:pageshadow="2"
38
+     inkscape:window-width="1280"
39
+     inkscape:window-height="971"
40
+     id="namedview8"
41
+     showgrid="true"
42
+     inkscape:zoom="11.313709"
43
+     inkscape:cx="6.1318021"
44
+     inkscape:cy="20.336523"
45
+     inkscape:window-x="1272"
46
+     inkscape:window-y="-6"
47
+     inkscape:window-maximized="1"
48
+     inkscape:current-layer="g826">
49
+    <inkscape:grid
50
+       type="xygrid"
51
+       id="grid816" />
52
+  </sodipodi:namedview>
53
+  <title
54
+     id="title2">full-frame</title>
55
+  <g
56
+     id="g826"
57
+     transform="matrix(1.0516432,0,0,1.0738255,-0.82681685,-1.1817449)">
58
+    <path
59
+       sodipodi:nodetypes="ccccccccccccccccccccccccccc"
60
+       inkscape:connector-curvature="0"
61
+       id="path4"
62
+       d="m 20.754964,6.688 8.558036,0 0,6.51875 h -2.852679 v -3.725 h -5.705357 z m 5.705357,15.83125 v -3.725 H 29.313 l 0,6.51875 -8.558036,0 -4e-6,-2.79375 z M 2.688,6.688 l 8.558036,0 4e-6,2.79375 H 5.5406785 v 3.725 H 2.6879999 m 2.8526786,5.5875 v 3.725 H 11.246036 V 25.313 H 2.688 l -1e-7,-6.51875 z" />
63
+  </g>
64
+</svg>`
65
+
66
+
67
+
68
+
69
+
70
+
71
+
72
+plugin_icon_template = `<div aria-label="Toggle tile view" class="plugin_top_cls plugin_icon_template toolbox-button tb otb"><div><div class="toolbox-icon  "><div class="jitsi-icon ">
73
+</div></div></div></div>`
74
+
75
+
76
+

+ 4
- 1
rf/fs.css View File

@@ -164,7 +164,7 @@ pointer-events: none;
164 164
 }
165 165
 .videocontainer__background {
166 166
 	outline: 1px solid #8C8C8C;
167
-	
167
+
168 168
 }
169 169
 
170 170
 
@@ -333,6 +333,9 @@ pointer-events: none;
333 333
 #sharedVideo.z{
334 334
 	pointer-events: unset !important;
335 335
 }
336
+#sharedVideo{
337
+	/*z-index: -1;*/
338
+}
336 339
 #etherpad.z{
337 340
 	outline: 2px solid red;
338 341
 	outline-offset: -5px;

+ 4
- 2
rf/fs_hook.js View File

@@ -14,9 +14,10 @@ glob_mx.filmstrip_handlers = glob_mx.filmstrip_handlers || {}
14 14
 glob_mx.filmstrip_tile_handlers = glob_mx.filmstrip_tile_handlers || {}
15 15
 
16 16
 
17
-
17
+// window.mvyt_helper ? mvyt_helper():0
18 18
 // run callbacks for all filmstrips on resize
19 19
 function resizeThumbnailsForCustomView(that,fn_name,args=[]){
20
+
20 21
     const thumbs = glob_react.Filmstrip._getThumbs()
21 22
     const all_thumbs = $(".small_vid")
22 23
     const custom_thumbs = all_thumbs.not(thumbs.remlocThumbs)
@@ -73,7 +74,8 @@ function resizeThumbnailsForCustomView(that,fn_name,args=[]){
73 74
       height: `${height}px`,
74 75
     })
75 76
 
76
-    clog("rtscv",fn_name,[that,...args])
77
+    window.mvyt_helper ? mvyt_helper():0
78
+    // clog("rtscv",fn_name,[that,...args])
77 79
 
78 80
 
79 81
 }

+ 280
- 0
rf/i4n/m.2.css View File

@@ -0,0 +1,280 @@
1
+ 
2
+.popup_root {
3
+	top: 0;
4
+	left: 0;
5
+	right: 0;
6
+	bottom: 0;
7
+	position: absolute;
8
+	/*background-color: #0ff8;*/
9
+}
10
+
11
+.popup_body {
12
+	width: 500px;
13
+	height: 300px;
14
+	position: relative;
15
+	top: 50%;
16
+	left: 50%;
17
+	z-index: 30;
18
+	transform: translate(-50%,-50%);
19
+	align-content: center;
20
+	/*font-size: 1.6em;*/
21
+
22
+
23
+	background-color: #222;
24
+	/*background-color: #000;*/
25
+}
26
+
27
+.uname_email_pop{
28
+	--vback: #111;
29
+	--vback: #f00;
30
+	--vtxt: #fff;
31
+	--vtxt: #00f;
32
+	background-color: #777;
33
+	background-color: var(--vback);
34
+	/*background-color: var(--vback,unset);*/
35
+	/*background-color: var(--vback,initial);*/
36
+
37
+}
38
+
39
+.popup_txt {
40
+	/*plese*/
41
+	/*margin: auto;*/
42
+	font-size: 1.6em;
43
+	/*margin: 3px;*/
44
+	padding-top: 20px;
45
+	text-align: center;
46
+	color: #eee;
47
+	/*font-size: 1.6em;*/
48
+	/*color: #fff;*/
49
+	/*background-color: #0ff;*/
50
+
51
+}
52
+.text_input_template{
53
+	/*width: 100%;*/
54
+	left: 50%; 
55
+	transform: translate(-50%,50%);
56
+	background-color: #0ff;
57
+	margin: auto;
58
+
59
+	/*display: block;*/
60
+	display: inline-block;
61
+	/*align-content: center;*/
62
+	font-size: 1.4em;
63
+	position: relative;
64
+}
65
+
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+/*.ti_container {*/
80
+.text_input_template_v2{
81
+	/*position: relative;*/
82
+	/*position: absolute;*/
83
+	/*width: 100%;*/
84
+	/*background-color: red;*/
85
+	/*height: 100%;*/
86
+	/*height: 2em;*/
87
+
88
+	left: 50%; 
89
+	transform: translate(-50%,50%);
90
+	/*background-color: #0ff;*/
91
+	margin: auto;
92
+
93
+	/*display: block;*/
94
+	display: inline-block;
95
+	/*align-content: center;*/
96
+	font-size: 1.4em;
97
+	position: relative;
98
+	/*outline: 2px solid red;*/
99
+	display: flex;
100
+	display: inline-flex;
101
+	width: 306px; 
102
+	border: 2px solid var(--vtxt,#fff);
103
+	/*border: 2px solid #0ff;*/
104
+	/*background-color: #fff;*/
105
+	/*background-color: #0f0;*/
106
+	margin:  5px;
107
+	padding: 4px;
108
+	border-radius: 50px;
109
+	overflow: hidden;
110
+	position: relative;
111
+	box-sizing: content-box;
112
+	box-sizing: border-box;
113
+
114
+	/*top: 0px; left: 0px; right: 0px; bottom: 0px;*/
115
+}
116
+
117
+
118
+
119
+.ti_container{
120
+/*.text_input_template_v2{*/
121
+	/*width: 100%;*/
122
+	/*left: 50%; */
123
+	/*transform: translate(-50%,50%);*/
124
+	/*background-color: #0ff;*/
125
+	/*margin: auto;*/
126
+
127
+	/*display: block;*/
128
+	/*display: inline-block;*/
129
+	/*align-content: center;*/
130
+	/*font-size: 1.4em;*/
131
+	/*position: relative;*/
132
+	/*outline: 2px solid red;*/
133
+	/*display: flex;*/
134
+	display: inline-flex;
135
+	width: 300px; 
136
+	/*border: 2px solid var(--vtxt,#fff);*/
137
+	border: 3px solid #fff;
138
+	/*border: 2px solid #0ff;*/
139
+	/*margin:  5px;*/
140
+	/*padding: 1px;*/
141
+	border-radius: 50px;
142
+	/*overflow: hidden;*/
143
+	position: relative;
144
+	/*background-color: #fff;*/
145
+	/*background-color: #f00;*/
146
+	/*background-color: var(--vback,#fff);*/
147
+
148
+	/*box-sizing: border-box;*/
149
+	/*box-sizing: content-box;*/
150
+}
151
+
152
+.text_input_submit {
153
+	display: inline-block;
154
+	display: inline-block;
155
+}
156
+
157
+.text_input_v2 {
158
+	/*left: 20px;*/
159
+	/*display: inline;*/
160
+	/*display: inline-flex;*/
161
+	/*display: block;*/
162
+	/*max-width: 100%;*/
163
+	/*left:0px; */
164
+	/*min-width: 150px;*/
165
+	flex-grow: 2;
166
+	/*width: 150px;*/
167
+
168
+	/*position: relative;*/
169
+
170
+}
171
+
172
+.ti_label{
173
+	/*margin: 1px;*/
174
+	/*margin: 1px;*/
175
+	/*padding: 3px;*/
176
+	width: 5em;
177
+	text-align: center;
178
+	/*background-color: #ff0*/
179
+
180
+	color: var(--vback,#fff);
181
+	background-color: var(--vtxt,#fff);
182
+	font-weight: bold;
183
+	position: relative;
184
+	padding: 0 3px; 
185
+
186
+}
187
+/*.ti_label:before{*/
188
+.ti_label:after{
189
+	z-index: -1;
190
+	/*box-sizing: border-box;*/
191
+	outline: 4px solid #fff;
192
+	/*box-sizing: content-box;*/
193
+
194
+	position: absolute;
195
+	top: 2px; left: 2px; right: 4px; bottom: 2px;
196
+	/*background-color: red;*/
197
+	/*border: 8px solid var(--vtxt,#fff);*/
198
+	/*border: 8px solid #0ff;*/
199
+
200
+
201
+	content: "z";
202
+}
203
+
204
+
205
+.text_input_template_v2 input {
206
+	
207
+	/*margin: 1px;*/
208
+	/*opacity: 0;*/
209
+	/*background-color: var(--vback,unset);*/
210
+	background-color: var(--vback,#fff);
211
+	color: var(--vtxt,#fff);
212
+	/*color: #fff;*/
213
+	/*background-color: unset;*/
214
+	border-width: 0px !important;
215
+}
216
+
217
+
218
+.text_input_template_v2 button {
219
+	display: none;
220
+}
221
+
222
+
223
+
224
+
225
+
226
+
227
+
228
+
229
+
230
+
231
+
232
+
233
+
234
+
235
+
236
+
237
+
238
+
239
+
240
+
241
+.ti_container.z{
242
+/*.text_input_template_v2{*/
243
+	/*width: 100%;*/
244
+	left: 50%; 
245
+	transform: translate(-50%,50%);
246
+	/*background-color: #0ff;*/
247
+	margin: auto;
248
+
249
+	/*display: block;*/
250
+	display: inline-block;
251
+	/*align-content: center;*/
252
+	font-size: 1.4em;
253
+	position: relative;
254
+	/*outline: 2px solid red;*/
255
+	display: flex;
256
+	display: inline-flex;
257
+	width: 300px; 
258
+	border: 2px solid var(--vtxt,#fff);
259
+	/*border: 2px solid #0ff;*/
260
+	margin:  5px;
261
+	padding: 1px;
262
+	border-radius: 50px;
263
+	overflow: hidden;
264
+	position: relative;
265
+	/*background-color: #fff;*/
266
+	/*background-color: var(--vback,#fff);*/
267
+
268
+	/*box-sizing: border-box;*/
269
+	/*box-sizing: content-box;*/
270
+}
271
+/*.ti_container {*/
272
+.text_input_template_v2.z{
273
+	/*position: relative;*/
274
+	/*position: absolute;*/
275
+	/*width: 100%;*/
276
+	/*background-color: red;*/
277
+	/*height: 100%;*/
278
+	/*height: 2em;*/
279
+	/*top: 0px; left: 0px; right: 0px; bottom: 0px;*/
280
+}

+ 285
- 1
rf/i4n/m.css View File

@@ -21,6 +21,19 @@
21 21
 
22 22
 
23 23
 	background-color: #222;
24
+	/*background-color: #000;*/
25
+}
26
+
27
+.uname_email_pop{
28
+	--vback: #111;
29
+	/*--vback: #f00;*/
30
+	--vtxt: #fff;
31
+	/*--vtxt: #00f;*/
32
+	background-color: #777;
33
+	background-color: var(--vback);
34
+	/*background-color: var(--vback,unset);*/
35
+	/*background-color: var(--vback,initial);*/
36
+
24 37
 }
25 38
 
26 39
 .popup_txt {
@@ -49,7 +62,278 @@
49 62
 	font-size: 1.4em;
50 63
 	position: relative;
51 64
 }
65
+
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+/*.ti_container {*/
80
+.text_input_template_v2.z{
81
+	/*position: relative;*/
82
+	/*position: absolute;*/
83
+	/*width: 100%;*/
84
+	/*background-color: red;*/
85
+	/*height: 100%;*/
86
+	/*height: 2em;*/
87
+
88
+	left: 50%; 
89
+	transform: translate(-50%,50%);
90
+	/*background-color: #0ff;*/
91
+	margin: auto;
92
+
93
+	/*display: block;*/
94
+	display: inline-block;
95
+	/*align-content: center;*/
96
+	font-size: 1.4em;
97
+	position: relative;
98
+	/*outline: 2px solid red;*/
99
+	display: flex;
100
+	display: inline-flex;
101
+	width: 306px; 
102
+	border: 2px solid var(--vtxt,#fff);
103
+	/*border: 2px solid #0ff;*/
104
+	/*background-color: #fff;*/
105
+	/*background-color: #0f0;*/
106
+	margin:  5px;
107
+	padding: 4px;
108
+	border-radius: 50px;
109
+	overflow: hidden;
110
+	position: relative;
111
+	box-sizing: content-box;
112
+	box-sizing: border-box;
113
+
114
+	/*top: 0px; left: 0px; right: 0px; bottom: 0px;*/
115
+}
116
+
117
+
118
+
119
+.ti_container.z{
120
+/*.text_input_template_v2{*/
121
+	/*width: 100%;*/
122
+	/*left: 50%; */
123
+	/*transform: translate(-50%,50%);*/
124
+	/*background-color: #0ff;*/
125
+	/*margin: auto;*/
126
+
127
+	/*display: block;*/
128
+	/*display: inline-block;*/
129
+	/*align-content: center;*/
130
+	/*font-size: 1.4em;*/
131
+	/*position: relative;*/
132
+	/*outline: 2px solid red;*/
133
+	/*display: flex;*/
134
+	display: inline-flex;
135
+	width: 300px; 
136
+	/*border: 2px solid var(--vtxt,#fff);*/
137
+	border: 3px solid #fff;
138
+	/*border: 2px solid #0ff;*/
139
+	/*margin:  5px;*/
140
+	/*padding: 1px;*/
141
+	border-radius: 50px;
142
+	/*overflow: hidden;*/
143
+	position: relative;
144
+	/*background-color: #fff;*/
145
+	/*background-color: #f00;*/
146
+	/*background-color: var(--vback,#fff);*/
147
+
148
+	/*box-sizing: border-box;*/
149
+	/*box-sizing: content-box;*/
150
+}
151
+
52 152
 .text_input_submit {
53 153
 	display: inline-block;
54 154
 	display: inline-block;
55
-}
155
+}
156
+
157
+.text_input_v2 {
158
+	/*left: 20px;*/
159
+	/*display: inline;*/
160
+	/*display: inline-flex;*/
161
+	/*display: block;*/
162
+	/*max-width: 100%;*/
163
+	/*left:0px; */
164
+	/*min-width: 150px;*/
165
+	flex-grow: 2;
166
+	/*width: 150px;*/
167
+
168
+	/*position: relative;*/
169
+
170
+}
171
+
172
+.ti_label{
173
+	/*margin: 1px;*/
174
+	/*margin: 1px;*/
175
+	/*padding: 3px;*/
176
+	width: 5em;
177
+	text-align: center;
178
+	/*background-color: #ff0*/
179
+
180
+	color: var(--vback,#fff);
181
+	background-color: var(--vtxt,#fff);
182
+	font-weight: bold;
183
+	position: relative;
184
+	padding: 0 3px; 
185
+
186
+}
187
+/*.ti_label:before{*/
188
+.ti_label:after{
189
+	z-index: -1;
190
+	/*box-sizing: border-box;*/
191
+	outline: 4px solid #fff;
192
+	/*box-sizing: content-box;*/
193
+
194
+	position: absolute;
195
+	top: 2px; left: 2px; right: 4px; bottom: 2px;
196
+	/*background-color: red;*/
197
+	/*border: 8px solid var(--vtxt,#fff);*/
198
+	/*border: 8px solid #0ff;*/
199
+
200
+
201
+	content: "z";
202
+}
203
+
204
+
205
+.text_input_template_v2 input {
206
+	
207
+	/*margin: 1px;*/
208
+	/*opacity: 0;*/
209
+	/*background-color: var(--vback,unset);*/
210
+	background-color: var(--vback,#fff);
211
+	color: var(--vtxt,#fff);
212
+	/*color: #fff;*/
213
+	/*background-color: unset;*/
214
+	border-width: 0px !important;
215
+}
216
+
217
+
218
+.text_input_template_v2 button {
219
+	display: none;
220
+}
221
+
222
+
223
+
224
+
225
+
226
+
227
+
228
+
229
+
230
+
231
+
232
+.text_input_template_v2.v1{
233
+	/*width: 100%;*/
234
+	left: 50%; 
235
+	transform: translate(-50%,50%);
236
+	/*background-color: #0ff;*/
237
+	margin: auto;
238
+
239
+	/*display: block;*/
240
+	display: inline-block;
241
+	/*align-content: center;*/
242
+	font-size: 1.4em;
243
+	position: relative;
244
+	/*outline: 2px solid red;*/
245
+	display: flex;
246
+	display: inline-flex;
247
+	width: 300px; 
248
+	border: 2px solid var(--vtxt,#fff);
249
+	/*border: 2px solid #0ff;*/
250
+	margin:  5px;
251
+	padding: 1px;
252
+	/*border-radius: 50px;*/
253
+	/*overflow: hidden;*/
254
+	position: relative;
255
+	/*background-color: #fff;*/
256
+	/*background-color: var(--vback,#fff);*/
257
+
258
+	/*box-sizing: border-box;*/
259
+	/*box-sizing: content-box;*/
260
+}
261
+
262
+
263
+
264
+
265
+
266
+
267
+/*.ti_container{*/
268
+.text_input_template_v2.v1.z{
269
+	/*width: 100%;*/
270
+	left: 50%; 
271
+	transform: translate(-50%,50%);
272
+	/*background-color: #0ff;*/
273
+	margin: auto;
274
+
275
+	/*display: block;*/
276
+	display: inline-block;
277
+	/*align-content: center;*/
278
+	font-size: 1.4em;
279
+	position: relative;
280
+	/*outline: 2px solid red;*/
281
+	display: flex;
282
+	display: inline-flex;
283
+	width: 300px; 
284
+	border: 2px solid var(--vtxt,#fff);
285
+	/*border: 2px solid #0ff;*/
286
+	margin:  5px;
287
+	padding: 1px;
288
+	border-radius: 50px;
289
+	overflow: hidden;
290
+	position: relative;
291
+	/*background-color: #fff;*/
292
+	/*background-color: var(--vback,#fff);*/
293
+
294
+	/*box-sizing: border-box;*/
295
+	/*box-sizing: content-box;*/
296
+}
297
+
298
+
299
+
300
+.ti_container{
301
+/*.text_input_template_v2{*/
302
+	/*width: 100%;*/
303
+	left: 50%; 
304
+	transform: translate(-50%,50%);
305
+	/*background-color: #0ff;*/
306
+	margin: auto;
307
+
308
+	/*display: block;*/
309
+	display: inline-block;
310
+	/*align-content: center;*/
311
+	font-size: 1.4em;
312
+	position: relative;
313
+	/*outline: 2px solid red;*/
314
+	display: flex;
315
+	display: inline-flex;
316
+	width: 300px; 
317
+	border: 2px solid var(--vtxt,#fff);
318
+	/*border: 2px solid #0ff;*/
319
+	margin:  5px;
320
+	padding: 1px;
321
+	border-radius: 50px;
322
+	overflow: hidden;
323
+	position: relative;
324
+	/*background-color: #fff;*/
325
+	/*background-color: var(--vback,#fff);*/
326
+
327
+	/*box-sizing: border-box;*/
328
+	/*box-sizing: content-box;*/
329
+}
330
+/*.ti_container {*/
331
+.text_input_template_v2{
332
+	/*position: relative;*/
333
+	/*position: absolute;*/
334
+	/*width: 100%;*/
335
+	/*background-color: red;*/
336
+	/*height: 100%;*/
337
+	/*height: 2em;*/
338
+	/*top: 0px; left: 0px; right: 0px; bottom: 0px;*/
339
+}

+ 13
- 0
rf/i4n/m.html View File

@@ -34,4 +34,17 @@
34 34
 	<input type="text" class="text_input"><button class="text_input_submit">Enter</button>
35 35
 </div>
36 36
 
37
+<div class="text_input_template_v2 v1">
38
+	<span class="ti_label"></span><input type="text" class="text_input text_input_v2">
39
+</div>
40
+
41
+
42
+
43
+<span class="text_input_template_v2 v2">
44
+<div class="ti_container">
45
+	<span class="ti_label"></span><input type="text" class="text_input text_input_v2">
46
+</div>
47
+</span>
48
+	
37 49
 
50
+	<button class="text_input_submit">Enter</button>

+ 46
- 3
rf/i4n/m.js View File

@@ -79,6 +79,50 @@ function build_popup(){
79 79
 
80 80
 	// text_input_template
81 81
 }
82
+
83
+function build_popup_ue(){
84
+	saftly_remove(".plugin_top_v2.popup_root")
85
+	var local = get_local()
86
+	if (local.name){
87
+		return
88
+	}
89
+	var i,j,k,n
90
+	var templates,name,email
91
+	var pop_root = mod_templates_4n.find(".popup_root")
92
+	n = pop_root[0].outerHTML
93
+
94
+	// var ntxt = mod_templates_4n.find(".text_input_template")
95
+	// var ntxt = mod_templates_4n.find(".text_input_template_v2")
96
+	// var ntxt = mod_templates_4n.find(".text_input_template_v2.v2")
97
+	var ntxt = mod_templates_4n.find(".text_input_template_v2.v1")
98
+	// var ntxt = mod_templates_4n.find(".text_input_template_v2")
99
+	clog("ntxt",ntxt)
100
+	j = $(n)
101
+	// popup_body
102
+	// ntxt
103
+	name = $(ntxt[0].outerHTML)
104
+	email = $(ntxt[0].outerHTML)
105
+	name.addClass("username_input_container")
106
+	email.find(".ti_label").text("email")
107
+	name.find(".ti_label").text("username")
108
+
109
+	email.find(".ti_label").text("Email")
110
+	name.find(".ti_label").text("Username")
111
+	email.addClass("email_input_container")
112
+	add_node(name,j.find(".popup_body"),"append")
113
+	add_node(email,j.find(".popup_body"),"append")
114
+	j.find(".popup_txt").text("enter a name")
115
+	input_ev(j.find(".text_input"))
116
+	// input_ev()
117
+	j.find(".text_input_submit").on("click",set_display_name_event)
118
+	j.find(".text_input").addClass("nickname_input")
119
+	j.find(".popup_body").addClass("uname_email_pop")
120
+	add_node(j,".dev_hook.vspace","append")
121
+
122
+	// text_input_template
123
+}
124
+
125
+
82 126
 function build_popup_av(){
83 127
 	saftly_remove(".plugin_top_v2.popup_root")
84 128
 	var i,j,k,n
@@ -185,6 +229,7 @@ function init_i4n(){
185 229
 
186 230
 	// build_popup_av()
187 231
 	// show_popup()
232
+	build_popup_ue()
188 233
 }
189 234
 
190 235
 
@@ -192,9 +237,7 @@ function init_i4n(){
192 237
 try {
193 238
 	init_i4n()
194 239
 	// add_vid_overlay
195
-// show_popup()
196
-// build_popup()
197
-// build_popup_av()
240
+
198 241
 } catch (err) {
199 242
 clog("err:",err)
200 243
 }

+ 1
- 1
rf/keyboard_dev_fn.js View File

@@ -58,7 +58,7 @@ glob_dev_fns.SVC_onHoverIn = function(o){
58 58
 
59 59
 
60 60
 glob_dev_fns.hideToolbox = function(o){
61
-	clog("dev_log4 hideToolbox")
61
+	// clog("dev_log4 hideToolbox")
62 62
 	// return {}
63 63
 }
64 64
 

+ 1
- 1
rf/load_mod.js View File

@@ -7,7 +7,7 @@ mod_path ="ign/rf/filmstrip_mod/"
7 7
 
8 8
 var mtx ={	
9 9
 	// js:["ign/m/timer/m.js","ign/m/timer/m0.js"],
10
-	js:[`${mod_path}m0.js`,`${mod_path}m.js`,],
10
+	js:[`${mod_path}m0.js`,`${mod_path}m.js`,`${mod_path}svg_src.js`,],
11 11
 	css:[`${mod_path}m.css`],
12 12
 	html:[{url:`${mod_path}m.html`,diffH:get_cui_html,success:html_rld_cb4,success_js:"html_js_handler"}]
13 13
 	}

+ 1
- 1
rf/m/m_api_v2.js View File

@@ -274,7 +274,7 @@ rldi.mods = window.rldi.mods || {
274 274
 function add_module(o){
275 275
 	var k,v
276 276
 	let file 
277
-	log_mod(o)
277
+	// log_mod(o)
278 278
 		// qto_init()
279 279
 		// file = jclone(api_dflts.css)
280 280
 	for (k of o.css || []){

+ 12
- 0
rf/m/m_req.js View File

@@ -95,12 +95,20 @@ function cji(){
95 95
 	}
96 96
 }
97 97
 function run_ifn_cbs(cb_name,args){
98
+		try {
99
+
100
+
98 101
 	if (ifn_obj && ifn_obj[cb_name]){
99 102
 		var k,v
100 103
 		for ([k,v] of Object.entries(ifn_obj[cb_name])){
101 104
 			v()
102 105
 		}
103 106
 	} else {} 
107
+
108
+	} catch (err) {
109
+		clog("ifn_obj not glob_mx_cbs_err:",err)
110
+	}
111
+
104 112
 }
105 113
 
106 114
 
@@ -167,6 +175,10 @@ qxi_skip = [
167 175
 function run_qxi_cbs(key,o){
168 176
 	var k,v
169 177
 		// clog("RUN_HOOK_CB??",key,glob_mx.hook_cb[key])
178
+	try {
179
+	} catch (err) {
180
+		clog("qxi_cb glob_mx_cbs_err:",err)
181
+	}
170 182
 
171 183
 	for ([k,v] of Object.entries(glob_mx.qxi_cb[key]|| {}) ) {
172 184
 		// clog("RUN_HOOK_CB:",k,v)

+ 69
- 4
rf/m2/m2.css View File

@@ -111,12 +111,11 @@
111 111
 		/*pointer-events:all;*/
112 112
 		/*width: 30em;*/
113 113
 		font-size: 1.5em;
114
-	background-color: #0048;
114
+	/*background-color: #0048;*/
115 115
 	color: #fff;
116 116
 	/*outline: 2px solid #f00;*/
117
-		top: 3em;
118 117
 		right: 1.5em;
119
-		padding:10px; 
118
+		/*padding:10px; */
120 119
 	/*justify-content: unset;*/
121 120
 	text-align: left;
122 121
 	text-align: right;
@@ -125,9 +124,45 @@
125 124
 		z-index: 801;
126 125
 	/*opacity: .8;*/
127 126
 	/*opacity: 0;*/
127
+	/*background-color: #00000088;*/
128
+	background-color: #0006;
129
+	/*outline: 200px solid #55f5;*/
130
+		/*top: 3emy;*/
131
+	bottom: 3em;
132
+	bottom: 0px;
133
+		/*right: 5em;*/
134
+		right: 0px;
135
+	/*width: 70px;*/
136
+	/*padding-right: 20px;*/
137
+	/*padding-left: 20px;*/
138
+	padding: 20px 0px 40px;
139
+	padding: 10px 20px 10px;
140
+	/*height: 50px;*/
141
+	/*border-radius: 5px;*/
142
+}
143
+.toggle_ff.isff{
144
+	/*padding-bottom: 20px;*/
145
+	bottom:10px;
146
+
147
+}
148
+
149
+.toggle_ff_filter{
150
+/*.toggle_ff:after{*/
151
+	/*content: "aaa";*/
152
+	top: 0;
153
+	bottom:  0;
154
+	left:   0;
155
+	right:   0;
156
+	/*background-color: red;*/
157
+	/*background-color: #ffffff55;*/
158
+	background-color: #fff2;
159
+	/*background-color: #0ff7;*/
160
+	position: absolute;
161
+	/*position: relative;*/
162
+	/*opacity: .5;*/
163
+	z-index: -1;
128 164
 }
129 165
 
130
-
131 166
 .vspace._hide {
132 167
 	
133 168
 }
@@ -141,6 +176,36 @@
141 176
 	/*display: block;*/
142 177
 	/*display: none;*/
143 178
 }
179
+
180
+.toggle_ff .plugin_icon_template{
181
+	/*position: relative;*/
182
+	display: inline-block;
183
+	/*margin-left:4px;*/
184
+	/*margin-right: 4px;*/
185
+	background-color: #0000;
186
+
187
+
188
+}
189
+/*.toggle_ff .toolbox-button{*/
190
+.toggle_ff.isff .toolbox-icon{
191
+	background-color: #ffffff55;
192
+
193
+}
194
+.toggle_ff .toolbox-icon:hover {
195
+	background-color: #ffffff77;
196
+
197
+}
198
+.toggle_ff .toolbox-icon{
199
+	/*background-color: #ffffff27;*/
200
+	/*background-color: #ffffff99;*/
201
+	/*justify-content:center;*/
202
+	/*width: 40px;*/
203
+	/*height:  40px;*/
204
+	/*background-color: #ffffff55;*/
205
+	padding: 4px;
206
+	border-radius: 5px;
207
+
208
+}
144 209
 .vspace._hide{
145 210
 	opacity: 0;
146 211
 }

+ 1
- 1
rf/m2/m2.js View File

@@ -76,7 +76,7 @@ function refresh_toolbar_config(){
76 76
 
77 77
 	} else {
78 78
 		arr_rmv(interfaceConfig.TOOLBAR_BUTTONS,"desktop")
79
-		// arr_rmv(interfaceConfig.TOOLBAR_BUTTONS,"sharedvideo")
79
+		arr_rmv(interfaceConfig.TOOLBAR_BUTTONS,"sharedvideo")
80 80
 		// arr_rmv(interfaceConfig.TOOLBAR_BUTTONS,"")
81 81
 	}
82 82
 		arr_rmv(interfaceConfig.TOOLBAR_BUTTONS,"videobackgroundblur")

+ 1
- 1
rf/r0.css View File

@@ -32,7 +32,7 @@ overflow-x: auto !important;
32 32
 
33 33
 
34 34
 
35
-.top_toolbox {
35
+.z.top_toolbox {
36 36
 	position: relative;
37 37
 	z-index: 1;
38 38
 	width: 100%;

+ 21
- 1
rf/svg_dev/m.css View File

@@ -19,9 +19,29 @@
19 19
 
20 20
 
21 21
 .lvov_container {
22
-	display: none;
22
+	/*display: none;*/
23 23
 }
24 24
 
25 25
 .small_vid .m2.xbox2:after{
26 26
 	background-color: var(--v_cpal)
27
+}
28
+
29
+.full_frame_svg {
30
+	/*background-color: red;*/
31
+}
32
+
33
+.lvov_container._hide .toggle_ff {
34
+	/*opacity: 0;*/
35
+	/*opacity: 1 ;*/
36
+	/*display: block;*/
37
+	/*display: none;*/
38
+}
39
+.toggle_ff_txt {display: none;}
40
+
41
+.toolbox-content {
42
+	padding-top: 0px !important;
43
+}
44
+
45
+.tbox_slide_indicator {
46
+	top: -40px ;
27 47
 }

+ 22
- 8
rf/svg_dev/m.js View File

@@ -62,9 +62,12 @@ function svg_icon_handler2(rsp) {
62 62
 }
63 63
 
64 64
 function init_svg_icon(){
65
-		saftly_remove(".svg_plugin")
66
-	saftly_remove(".plugin_icon")
67
-	saftly_remove(".plugin_icon_template")
65
+
66
+		return
67
+		saftly_remove(".ntoolbox_ff")
68
+		// saftly_remove(".svg_plugin")
69
+	// saftly_remove(".plugin_icon")
70
+	// saftly_remove(".plugin_icon_template")
68 71
 	clog("...")
69 72
 
70 73
 	var icon_template = $(mod_templates_svg[0].outerHTML)
@@ -72,6 +75,7 @@ function init_svg_icon(){
72 75
 	var n,svg
73 76
 
74 77
 	n = icon_template.find(".plugin_icon_template")
78
+	n.addClass("ntoolbox_ff")
75 79
 	// n = mod_templates.find(".plugin_icon_template")
76 80
 	// svg = mod_templates_svg_icon.find("svg")
77 81
 	
@@ -87,6 +91,8 @@ function init_svg_icon(){
87 91
 	n.addClass("ff_icon")
88 92
 	n.click(toggle_ff_mod)
89 93
 	add_node(n,".button-group-right","prepend")
94
+	// add_node(n,".toggle_ff","append")
95
+	// add_node(n,".toggle_ff","after")
90 96
 	clog("...",n)
91 97
 	// init_svg_icon2()
92 98
 }
@@ -139,23 +145,31 @@ function toggle_ff_mod(){
139 145
     glob_mx.dims.fullframe = !glob_mx.dims.fullframe
140 146
     if (glob_mx.dims.fullframe){
141 147
         $(".ff_icon .toolbox-icon").addClass("toggled")
148
+         $(".toggle_ff").addClass("isff")
142 149
         // $(".ff_icon").addClass("checked")
143 150
         $(".vspace").addClass("_hide")
144
-        $(".toggle_ff")[0].innerHTML = "shrink"
145
-        $(".toggle_ff")[0].innerHTML = "exit fullframe"
151
+        // $(".toggle_ff")[0].innerHTML = "shrink"
152
+        // $(".toggle_ff")[0].innerHTML = "exit fullframe"
153
+        $(".toggle_ff > .toggle_ff_txt").text("exit fullframe")
146 154
         // $(".ff_icon").addClass
147 155
         // ._hide
148 156
     } else {
149 157
         $(".ff_icon .toolbox-icon").removeClass("toggled")
150
-        $(".toggle_ff")[0].innerHTML = "enter fullframe"
158
+        $(".toggle_ff > .toggle_ff_txt").text("enter fullframe")
159
+        $(".toggle_ff").removeClass("isff")
160
+        // $(".toggle_ff")[0].innerHTML = "enter fullframe"
151 161
         $(".vspace").removeClass("_hide")
152 162
     }
153 163
     dispatch_resize()
154 164
 
155 165
 }
166
+window.toggle_ff = toggle_ff_mod
167
+init_svg_icon()
168
+try {
169
+refresh_toolbars()
170
+} catch {
156 171
 
157
-
172
+}
158 173
 // init_svg()
159
-init_svg_icon()
160 174
 
161 175
 clog(":zzz")

+ 0
- 43
rf/ui_msg/r.css View File

@@ -139,46 +139,3 @@
139 139
 	font-size: 14pt;
140 140
 }
141 141
 
142
-
143
-
144
-
145
-.indicator-container {
146
-	/*transform: translate(0%,0%);*/
147
-	/*z-index: 500;*/
148
-	/*outline: 2px solid red;*/
149
-	/*outline-offset: -5px;*/
150
-	/*background-color: red !important;*/
151
-	/*opacity: .5;*/
152
-}
153
-
154
-
155
-/*
156
-.display-name-on-black:not(:hover) video {
157
-    opacity: 1 !important;
158
-}
159
-.display-name-on-black video {
160
-    opacity: .2;
161
-    visibility: visible;
162
-*/
163
-
164
-/*
165
-.display-avatar-with-name video, .display-name-on-black .avatar-container {
166
-    visibility: hidden;
167
-}
168
-*/
169
-
170
-/*.display-name-on-black .avatar-container {*/
171
-	/*
172
-.display-avatar-only .avatar-container {
173
-    visibility: hidden !important;
174
-    background-color: red !important;
175
-}
176
-	*/
177
-/*.display-avatar-with-name video{*/
178
-/*
179
-.display-avatar-only video{
180
-    opacity: 1 !important;
181
-    z-index: 200;
182
-    visibility: visible !important;
183
-}
184
-*/

+ 97
- 0
rf/ui_msg/r2.css View File

@@ -0,0 +1,97 @@
1
+
2
+
3
+.id_sideToolbarContainer.slideInExt {
4
+    /*left: 0;*/
5
+    right:  0;
6
+}
7
+.id_sideToolbarContainer {
8
+    background-color: #040404cc;
9
+    box-sizing: border-box;
10
+    color: #FFF;
11
+    display: flex;
12
+    flex-direction: column;
13
+    height: calc(100% - calc(40px + 24px));
14
+    /*left: -375px;*/
15
+    right: -375px;
16
+	pointer-events: unset;
17
+    pointer-events: auto;
18
+	/*pointer-events: ;*/
19
+    /*overflow: hidden;*/
20
+    position: absolute;
21
+    top: 0;
22
+    /*transition: left .5s;*/
23
+    /*transition: .5s;*/
24
+    transition: right .2s;
25
+    width: 375px;
26
+    /*z-index: 300;*/
27
+
28
+}
29
+
30
+
31
+.id_chatconversation {
32
+    box-sizing: border-box;
33
+    flex: 1;
34
+    font-size: 10pt;
35
+    line-height: 20px;
36
+    overflow: auto;
37
+    padding: 16px;
38
+    text-align: left;
39
+    width: 375px;
40
+    word-wrap: break-word;
41
+}
42
+
43
+.id_chat-input {
44
+    border-top: 1px solid #A4B8D1;
45
+    display: flex;
46
+    padding: 5px 10px;
47
+}
48
+.id_sideToolbarContainer .chat-header{
49
+	/*position: absolute;*/
50
+	position: relative;
51
+	/*zoom:.5;*/
52
+	/*left: -20px;*/
53
+	/*right:  20px;*/
54
+	/*right:  50%;*/
55
+	/*top:50%;*/
56
+}
57
+
58
+
59
+.dev_hook.top_toolbox {
60
+	z-index: unset;
61
+	pointer-events:unset;
62
+}
63
+
64
+.tbar_full {
65
+	top: 0;
66
+	left: 0;
67
+	right: 0;
68
+	bottom: 0;
69
+	/*z-index: 800;*/
70
+	/*z-index: 8;*/
71
+	z-index: 1;
72
+	/*z-index: 0;*/
73
+	/*background-color: red;*/
74
+	position: relative;
75
+
76
+	pointer-events: none;
77
+	position: absolute;
78
+}
79
+
80
+.top_toolbox{
81
+	position: relative;
82
+	position: absolute;
83
+	height: 100%;
84
+		top: 0;
85
+	left: 0;
86
+	right: 0;
87
+	bottom: 0;
88
+}
89
+
90
+.toolbox-content {
91
+	/*background-color: red;	*/
92
+}
93
+.id_sideToolbarContainer .chat-header .chat-close {
94
+	/*right: 5px;*/
95
+	right: unset;
96
+	left: 5px;
97
+}

+ 140
- 0
rf/ui_msg/r2.js View File

@@ -0,0 +1,140 @@
1
+
2
+clog("!")
3
+
4
+
5
+
6
+defined_depth_dflt0 = {
7
+	root:"",
8
+	find:[],
9
+	children:[],
10
+}
11
+defined_depth_dflt = {
12
+	root:"#sideToolbarContainer",
13
+	find:[".chat-header *"],
14
+	children:["",[".chat-header"]],
15
+}
16
+
17
+function defined_depth(o) {
18
+	var n
19
+	// n = $("#sideToolbarContainer").clone()
20
+	// n = $(".sideToolbarContainer").clone()
21
+	n=$(o.root).clone()
22
+
23
+	var i,k,j,v
24
+	for (j of o.find || []){
25
+		clog("FIND",j)
26
+		if (Array.isArray(j)){
27
+			v = n.find(j[0])
28
+			v=v.parents().addBack()
29
+
30
+
31
+		} else {
32
+			v = n.find(j)
33
+		}
34
+		v.addClass("keep")
35
+
36
+	}
37
+	for (j of o.children || []){
38
+		clog("CHILDREN",j)
39
+		if (Array.isArray(j)){
40
+			v = n.children(j[0])
41
+			v=v.parents().addBack()
42
+
43
+
44
+		} else {
45
+			v = n.children(j)
46
+		}
47
+		v.addClass("keep")
48
+	}
49
+
50
+	k = n.find(".keep")
51
+	k.children().addClass("rem")
52
+	k.removeClass("rem")
53
+	k.removeClass("keep")
54
+	n.removeClass("keep")
55
+	n.find(".rem").remove()
56
+	k = k.parent().addBack()
57
+	for (j of k.filter(`[id]`)){
58
+		i = j.id
59
+		clog(i)
60
+		j.classList.add(`id_${i}`)
61
+	}
62
+	// k..removeAttr()
63
+	k.parent().addBack().removeAttr("id")
64
+
65
+	return {n,z:n[0],k,k2:k.parent().addBack()}
66
+
67
+	// n = $("#sideToolbarContainer")
68
+	// n.remove()
69
+
70
+	// body...
71
+}
72
+
73
+function init_xroot(){
74
+	window.fake_root = $(`<div class="fake_root"></div>`)[0]
75
+}
76
+function r_callback(){
77
+	clog("r_callback",{that:this,args:[...arguments]})
78
+}
79
+
80
+
81
+
82
+function toolbox_update(o,name){
83
+	// _overflowMenuVisible
84
+	var diff,prevProps,that
85
+	var {_overflowMenuVisible} = o.prevProps
86
+
87
+	clog(name,o,_overflowMenuVisible)
88
+}
89
+
90
+
91
+function toolbox_update_post(o,name){
92
+
93
+}
94
+
95
+
96
+
97
+function overflow_menu_custom_extra(o,name){
98
+	// ovfmc = glob_react.ReactDOM.render(o.ret,fake_root,r_callback)
99
+	 // clog(<div></div>)
100
+
101
+}
102
+function overflow_menu_custom(o,name){
103
+	// clog("overflow_menu_custom",o,name)
104
+	// setTimeout(overflow_menu_custom_extra,100,o,name)
105
+}
106
+
107
+
108
+// glob_dev_fns
109
+window.glob_dev_fns.overflow_menu_custom = overflow_menu_custom
110
+// window.glob_dev_fns.toolbox_update_post = toolbox_update_post
111
+window.glob_dev_fns.toolbox_update = toolbox_update
112
+function tbar(){
113
+	var n,nx
114
+	saftly_remove(".tbar_full")
115
+	// plugin_top tbar
116
+	nx = $(z.z.outerHTML)
117
+	n = `<span class="tbar_full">1234567890 qwertyuiopasdfghjklzxcvbnm<span>`
118
+	n = $(n)
119
+	add_node(nx,n,"append")
120
+	// add_node(,n,"")
121
+	$(".dev_hook.top_toolbox").append(n)
122
+	// $(".dev_hook.top_toolbox").append(n)
123
+}
124
+
125
+// defined_depth()
126
+// z=defined_depth(defined_depth_dflt)
127
+// glob_dev_fns
128
+
129
+// glob_react.ReactDOM.render
130
+
131
+
132
+// window.glob_react
133
+init_xroot()
134
+
135
+// tbar()
136
+
137
+
138
+
139
+
140
+// chat-header

+ 1
- 0
rf/ytif/y.css View File

@@ -0,0 +1 @@
1
+ 

+ 109
- 0
rf/ytif/y.html View File

@@ -0,0 +1,109 @@
1
+
2
+<html>
3
+<head>
4
+	<title>t0</title>
5
+	<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.4.1.min.js"></script>
6
+	 <script src="https://www.youtube.com/iframe_api" ></script>
7
+	    <script class="rld" src="/ign/rf/u/universals.js?c=023"></script>
8
+    <script class="" src="/ign/rf/u/proto_ext.js?c=023"></script>
9
+    <script class="" src="/ign/rf/preload.js?c=023"></script>
10
+    <script class="rld" src="/ign/rf/inspect_utils.js?c=023"></script>
11
+
12
+    <script class="rld" src="/ign/rf/m/m_req.js?c=023"></script>
13
+    <script src="/rldjs/rldjs3_2.js?v=139"></script>
14
+    <!-- <script src="/rldjs/rldjs3.js?v=139"></script> -->
15
+    <!-- <script src="/rldjs/rldjs2.js?v=139"></script> -->
16
+    <script class="rld rrld" src="/ign/rls.js?c=023"></script>
17
+
18
+
19
+
20
+    <script class="rld" src="/ign/rf/m/_m_utils.js?c=023"></script>
21
+    <script class="rld" src="/ign/rf/m/m_utils.js?c=023"></script>
22
+    <script class="rld" src="/ign/rf/m/m_api_v2.js?c=023"></script>
23
+
24
+
25
+
26
+     <script class="rld" src="/ign/rf/ytif/y.js?c=023"></script>
27
+     <!-- <script class="rld" src="/ign/rf/calc/cr.js?c=023"></script> -->
28
+
29
+       <meta class="m0 module">
30
+    <link class="rld" rel="stylesheet" href="/ign/rf/ytif/y.css?c=023">
31
+
32
+
33
+<!-- 
34
+    <script class="rld" src="ign/m/m_req.js?c=023"></script>
35
+
36
+
37
+    <script class="rld" src="ign/r0.js?c=023"></script>
38
+    <script class="rld" src="ign/tfn.js?c=023"></script>
39
+ -->
40
+
41
+
42
+<!-- APP -->
43
+<!-- 
44
+    <script class="rld" src="ign/react_fn.js?c=023"></script>
45
+
46
+    <script class="rld" src="ign/r1.js?c=023"></script>
47
+    <script class="rld" src="ign/r2.js?c=023"></script>
48
+
49
+
50
+
51
+
52
+    
53
+
54
+
55
+
56
+    <script class="rld" src="ign/deep_walk.js?c=023"></script>
57
+    <script class="rld" src="ign/deep_walk2.js?c=023"></script>
58
+
59
+
60
+
61
+
62
+    <script class="rld" src="ign/m/m_const.js?c=023"></script>
63
+    <script class="rld" src="ign/m/_m_utils.js?c=023"></script>
64
+    <script class="rld" src="ign/m/m_utils.js?c=023"></script>
65
+    <script class="rld" src="ign/m/m_api_html.js?c=023"></script>
66
+
67
+
68
+
69
+    <script class="rld" src="ign/tconn.js?c=023"></script>
70
+    <script class="rld" src="ign/cui5.js?c=023"></script>
71
+
72
+
73
+    <script class="rld" src="ign/m/m_api.js?c=023"></script>
74
+
75
+
76
+
77
+
78
+
79
+    <script class="rld" src="ign/fs_hook.js?c=023"></script>
80
+    <script class="rld" src="ign/resize_hook.js?c=023"></script>
81
+
82
+
83
+    <link class="rld" rel="stylesheet" href="ign/r0.css?c=023">
84
+    <link class="rld" rel="stylesheet" href="ign/fs.css?c=023">
85
+
86
+ -->
87
+
88
+</head>
89
+<body>
90
+tile
91
+<!-- 
92
+<br/>
93
+<br>
94
+<textarea class="text_io text_in"></textarea>
95
+<textarea class="text_io text_out"></textarea>
96
+<br>
97
+<textarea class="text_io text_parse"></textarea>
98
+
99
+ -->
100
+<div class="root"></div>
101
+
102
+</body>
103
+</html>
104
+
105
+
106
+
107
+
108
+ 
109
+ 

+ 1
- 0
rf/ytif/y.js View File

@@ -0,0 +1 @@
1
+ 

+ 33
- 0
rf/ytsv/vid_utils.js View File

@@ -0,0 +1,33 @@
1
+
2
+function get_smallvids(){
3
+	return [...window.glob_dev_hooks.smallvids]
4
+}
5
+function oid_v2(obj,index,attrs){
6
+	var ret = {}
7
+	var i,j,k,v
8
+	var i2,j2,k2,v2
9
+	var key
10
+	var val
11
+	for ([i,k,v] of keyVal2(obj)) {
12
+		key = v[index]
13
+		// val = {}
14
+		val = v
15
+		ret[key]=val
16
+		for ([i2,k2,v2] of keyVal2(attrs)){
17
+			// val[k2] = v[v2]
18
+		}
19
+
20
+	}
21
+	return ret
22
+
23
+}
24
+
25
+// oid_v2(glob_dev_hooks.smallvids,"id",{})
26
+// oid_v2(get_participants(),"id",{})
27
+
28
+
29
+
30
+// isVideoMuted
31
+
32
+
33
+// C:\bspace\repos\jc4\ign4\rf\ytsv\vid_utils.js

+ 45
- 0
rf/ytsv/y.css View File

@@ -0,0 +1,45 @@
1
+
2
+
3
+div#sharedVideo {
4
+
5
+	/*position: absolute;*/
6
+	/*z-index: 30;*/
7
+	/*opacity: 0;*/
8
+	/*z-index: 600;*/
9
+	/*background-color: red;*/
10
+	/*outline: 20px solid blue;*/
11
+	/*position: fixed;*/
12
+	/*top: 0px;*/
13
+	/*left:0px;*/
14
+	/*width: 50%;*/
15
+	/*height: 50%;*/
16
+} 
17
+
18
+.vspace {
19
+	/*z-index: 0;*/
20
+}
21
+	/*z-index: 30;*/
22
+	/*position: absolute !important;*/
23
+#largeVideoContainer{
24
+	overflow: unset !important;
25
+
26
+	/*overflow-x: visible;*/
27
+	/*overflow-x: scroll;*/
28
+	/*overflow-y: visible;*/
29
+	/*overflow-y: visible;*/
30
+}
31
+
32
+#largeVideoContainer.z{
33
+		width: 100% !important;
34
+	height: 100% !important;
35
+	top: 0px !important;
36
+	left: 0px !important;
37
+	transform:unset !important;
38
+}
39
+
40
+.yt_thumb{
41
+	opacity: 0;
42
+}
43
+.ic1 {
44
+	/*opacity: .4;*/
45
+}

+ 1
- 0
rf/ytsv/y.html View File

@@ -0,0 +1 @@
1
+ 

+ 158
- 0
rf/ytsv/y.js View File

@@ -0,0 +1,158 @@
1
+
2
+
3
+
4
+
5
+function resize_shared_vid(cont){
6
+  const computed_css = Object.assign({},dflt_css)
7
+
8
+  var aspect = 16/9
9
+  var width = 335
10
+  // computed_css["--v_index"]=`"horizontal"`
11
+  var thumbs = $(cont).children(".small_vid")
12
+  width = ($(cont).width() ) - 10
13
+  var height = Math.round(width/aspect)
14
+  computed_css.height = height
15
+  computed_css.width = width
16
+  var k,v
17
+  for ([k,v] of Object.entries(computed_css)){
18
+    Number(v) ? computed_css[k] = v + "px" : 0
19
+  }
20
+  // clog("RTHUMBS")
21
+  thumbs.css(computed_css)
22
+  fix_avatar(thumbs)
23
+
24
+
25
+}
26
+
27
+var dflt_shared_vid_css = {
28
+      width: ``,
29
+      height: ``,
30
+      top: ``,
31
+      left: ``,
32
+      "z-index": ``,
33
+}
34
+
35
+
36
+function bcr_offset(b1,b2){
37
+
38
+	var ret = {}
39
+	ret.x = b1.x - b2.x
40
+	ret.y = b1.y - b2.y
41
+	ret.top = b1.top - b2.top
42
+	ret.bottom = b1.bottom - b2.bottom
43
+	ret.left = b1.left - b2.left
44
+	ret.right = b1.right - b2.right
45
+	return ret
46
+
47
+}
48
+
49
+
50
+function mv_yt(){
51
+	// clog( $(`#sharedVideoContainer.small_vid`),$("#sharedVideo"))
52
+	var shared_small_vid,shared_vid,sv_css,shared_vid_bcr,small_vid_bcr,node_offset
53
+	// var shared_vid
54
+	shared_vid = $("#sharedVideo")
55
+	shared_small_vid = $("#sharedVideoContainer.small_vid")
56
+
57
+	if (window.glob_mx && shared_small_vid.length && shared_vid.length && glob_mx.dims && glob_mx.dims.w5 && glob_mx.dims.h5){} else {
58
+		return
59
+	}
60
+	var gcs,gcs_y,gcs_x
61
+	shared_vid_bcr = shared_vid[0].getBoundingClientRect()
62
+	small_vid_bcr = shared_small_vid[0].getBoundingClientRect()
63
+	// shared_vid_bcr
64
+	node_offset = bcr_offset(small_vid_bcr,shared_vid_bcr)
65
+	gcs = getComputedStyle(shared_vid[0])
66
+	gcs_x = gcs.getPropertyValue("left")
67
+	gcs_y = gcs.getPropertyValue("top")
68
+	gcs_x = Number(gcs_x.replace("px",""))
69
+	gcs_y = Number(gcs_y.replace("px",""))
70
+	sv_css = {
71
+		width:glob_mx.dims.w5,
72
+		height:glob_mx.dims.h5,
73
+		// top:node_offset.top,
74
+		// left:node_offset.left,
75
+		// left:node_offset.left + gcs_x + glob_mx.dims.w5,
76
+		top:node_offset.top +gcs_y,
77
+		left:node_offset.left + gcs_x,
78
+		// top:"10pt",
79
+		// left:"10pt",
80
+	}
81
+	sv_css = Object.assign({},dflt_shared_vid_css,sv_css)
82
+	shared_vid.css(sv_css)
83
+	shared_small_vid.addClass("yt_thumb")
84
+	clog("mv_yt",{shared_vid,sv_css,node_offset,shared_vid_bcr,small_vid_bcr})
85
+
86
+
87
+	// shared_vid.css({})
88
+	// var sv = $("#sharedVideo")
89
+
90
+	// $(`#sharedVideoContainer.small_vid`).append("#sharedVideo")
91
+	// $(`#sharedVideoContainer.small_vid`).append(sv)
92
+
93
+
94
+}
95
+function mv_yt0(){
96
+	shared_vid = $("#sharedVideo")
97
+	shared_small_vid = $("#sharedVideoContainer.small_vid")
98
+	shared_small_vid.removeClass("yt_thumb")
99
+	shared_vid.css(dflt_shared_vid_css)
100
+	clog("mv_yt")
101
+}
102
+// $sharedVideoContainer.small_vid
103
+// $(`#sharedVideoContainer.small_vid`)
104
+
105
+function mvyt_helper(){
106
+
107
+	get_large_vid()
108
+
109
+if (window.ib12){
110
+// mv_yt()
111
+// get_large_vid()
112
+	// mv_yt0()
113
+} else {
114
+}
115
+}
116
+
117
+
118
+
119
+function isvideo_muted(id){
120
+
121
+}
122
+
123
+
124
+window.glob_mx.qxi_cb.SELECT_LARGE_VIDEO_PARTICIPANT    = window.glob_mx.qxi_cb.SELECT_LARGE_VIDEO_PARTICIPANT || {}
125
+function slvp(o){
126
+	clog("SELECT_LARGE_VIDEO_PARTICIPANT slvp",o)
127
+	// get_large_vid()
128
+	mvyt_helper()
129
+}
130
+window.glob_mx.qxi_cb.SELECT_LARGE_VIDEO_PARTICIPANT.fn = slvp
131
+function get_large_vid(){
132
+	var lv,smallvids,participants,id,lvp,lvs
133
+	lv = APP.store.getState()['features/large-video']
134
+	id = lv.participantId
135
+
136
+
137
+	smallvids = oid_v2(glob_dev_hooks.smallvids,"id",{})
138
+	participants = oid_v2(get_participants(),"id",{})
139
+	clog({smallvids,participants,lv})
140
+	lvp = participants[id]
141
+	lvs = smallvids[id]
142
+	if (lvp.isFakeParticipant && lvp.name == "YouTube"){
143
+
144
+	} else if (lvs.isVideoMuted ){
145
+
146
+	}
147
+
148
+	if ((!lvs.isVideoMuted ) && (!(lvp.isFakeParticipant && lvp.name == "YouTube") )){
149
+		mv_yt()
150
+	} else {
151
+		mv_yt0()
152
+
153
+	}
154
+	// glob_dev_hooks.smallvids
155
+
156
+}
157
+
158
+mvyt_helper()

Loading…
Cancel
Save