| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 /** | 5 /** |
| 6 * @fileoverview | 6 * @fileoverview |
| 7 * A class for moving clipboard items between the plugin and the OS. | 7 * A class for moving clipboard items between the plugin and the OS. |
| 8 */ | 8 */ |
| 9 | 9 |
| 10 'use strict'; | 10 'use strict'; |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 63 this.blockOneClipboardSend_ = true; | 63 this.blockOneClipboardSend_ = true; |
| 64 this.initiateToHost(); | 64 this.initiateToHost(); |
| 65 }; | 65 }; |
| 66 | 66 |
| 67 /** | 67 /** |
| 68 * Accepts a clipboard from the OS, and sends any changed clipboard items to | 68 * Accepts a clipboard from the OS, and sends any changed clipboard items to |
| 69 * the host. | 69 * the host. |
| 70 * | 70 * |
| 71 * Currently only text items are supported. | 71 * Currently only text items are supported. |
| 72 * | 72 * |
| 73 * @param {remoting.ClipboardData} clipboardData | 73 * @param {ClipboardData} clipboardData |
| 74 * @return {void} Nothing. | 74 * @return {void} Nothing. |
| 75 */ | 75 */ |
| 76 remoting.Clipboard.prototype.toHost = function(clipboardData) { | 76 remoting.Clipboard.prototype.toHost = function(clipboardData) { |
| 77 if (!clipboardData || !clipboardData.types || !clipboardData.getData) { | 77 if (!clipboardData || !clipboardData.types || !clipboardData.getData) { |
| 78 console.log('Got invalid clipboardData.'); | 78 console.log('Got invalid clipboardData.'); |
| 79 return; | 79 return; |
| 80 } | 80 } |
| 81 if (!remoting.clientSession) { | 81 if (!remoting.clientSession) { |
| 82 return; | 82 return; |
| 83 } | 83 } |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 130 return; | 130 return; |
| 131 } | 131 } |
| 132 this.previousContent = item; | 132 this.previousContent = item; |
| 133 this.itemFromHostTextPending = true; | 133 this.itemFromHostTextPending = true; |
| 134 this.initiateToOs(); | 134 this.initiateToOs(); |
| 135 }; | 135 }; |
| 136 | 136 |
| 137 /** | 137 /** |
| 138 * Moves any pending clipboard items to a ClipboardData object. | 138 * Moves any pending clipboard items to a ClipboardData object. |
| 139 * | 139 * |
| 140 * @param {remoting.ClipboardData} clipboardData | 140 * @param {ClipboardData} clipboardData |
| 141 * @return {boolean} Whether any clipboard items were moved to the ClipboardData | 141 * @return {boolean} Whether any clipboard items were moved to the ClipboardData |
| 142 * object. | 142 * object. |
| 143 */ | 143 */ |
| 144 remoting.Clipboard.prototype.toOs = function(clipboardData) { | 144 remoting.Clipboard.prototype.toOs = function(clipboardData) { |
| 145 if (!this.itemFromHostTextPending) { | 145 if (!this.itemFromHostTextPending) { |
| 146 console.log('Got unexpected clipboard copy event.'); | 146 console.log('Got unexpected clipboard copy event.'); |
| 147 return false; | 147 return false; |
| 148 } | 148 } |
| 149 // The JSON layer between the plugin and this webapp converts UTF-8 to the | 149 // The JSON layer between the plugin and this webapp converts UTF-8 to the |
| 150 // JS string encoding. The browser will convert JS strings to the correct | 150 // JS string encoding. The browser will convert JS strings to the correct |
| (...skipping 30 matching lines...) Expand all Loading... |
| 181 */ | 181 */ |
| 182 remoting.Clipboard.prototype.initiateToOs = function() { | 182 remoting.Clipboard.prototype.initiateToOs = function() { |
| 183 // It would be cleaner to send a paste command to the plugin element, | 183 // It would be cleaner to send a paste command to the plugin element, |
| 184 // but that's not supported. | 184 // but that's not supported. |
| 185 console.log('Initiating clipboard copy.'); | 185 console.log('Initiating clipboard copy.'); |
| 186 document.execCommand("copy"); | 186 document.execCommand("copy"); |
| 187 }; | 187 }; |
| 188 | 188 |
| 189 /** @type {remoting.Clipboard} */ | 189 /** @type {remoting.Clipboard} */ |
| 190 remoting.clipboard = null; | 190 remoting.clipboard = null; |
| OLD | NEW |