Fix #6814 - Notification fadeout
[roojs1] / docs / src / Roo_util_Clipboard.js.html
1 <html><head><title>Roo/util/Clipboard.js</title><link rel="stylesheet" type="text/css" href="../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">/**
2  * @class Roo.util.Clipboard
3  * @static
4  * 
5  * Clipboard UTILS
6  * 
7  **/
8 </span><span class="jsdoc-var">Roo.util.Clipboard </span><span class="jsdoc-syntax">= {
9     </span><span class="jsdoc-comment">/**
10      * Writes a string to the clipboard - using the Clipboard API if https, otherwise using text area.
11      * @param {String} text to copy to clipboard
12      */
13     </span><span class="jsdoc-var">write </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">) {
14         </span><span class="jsdoc-comment">// navigator clipboard api needs a secure context (https)
15         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">navigator.clipboard </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">window.isSecureContext</span><span class="jsdoc-syntax">) {
16             </span><span class="jsdoc-comment">// navigator clipboard api method'
17             </span><span class="jsdoc-var">navigator.clipboard.writeText</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">);
18             </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">;
19         }
20         </span><span class="jsdoc-comment">// text area method
21         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ta </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">document.createElement</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;textarea&quot;</span><span class="jsdoc-syntax">);
22         </span><span class="jsdoc-var">ta.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">;
23         </span><span class="jsdoc-comment">// make the textarea out of viewport
24         </span><span class="jsdoc-var">ta.style.position </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;fixed&quot;</span><span class="jsdoc-syntax">;
25         </span><span class="jsdoc-var">ta.style.left </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;-999999px&quot;</span><span class="jsdoc-syntax">;
26         </span><span class="jsdoc-var">ta.style.top </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;-999999px&quot;</span><span class="jsdoc-syntax">;
27         </span><span class="jsdoc-var">document.body.appendChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ta</span><span class="jsdoc-syntax">);
28         </span><span class="jsdoc-var">ta.focus</span><span class="jsdoc-syntax">();
29         </span><span class="jsdoc-var">ta.select</span><span class="jsdoc-syntax">();
30         </span><span class="jsdoc-var">document.execCommand</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'copy'</span><span class="jsdoc-syntax">);
31         (</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
32             </span><span class="jsdoc-var">ta.remove</span><span class="jsdoc-syntax">();
33         })</span><span class="jsdoc-var">.defer</span><span class="jsdoc-syntax">(100);
34
35     }
36
37 }
38     </span></code></body></html>