New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 678794 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: Jan 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Feature



Sign in to add a comment

Support copy image to clipboard on chromeos

Project Member Reported by jen...@chromium.org, Jan 5 2017

Issue description

Remote desktop Chrome apps often needs to copy data from remote machine onto chromeos clipboard. Currently, chrome api only supports copying text data to clipboard. It is not convenient for remote app without image copying feature. This is one of the most demanding feature from our enterprise clients.

We plan to implement an extension API on ChromeOS to allow copying image to the clipboard. which is a practical and low cost solution to get the feature out on chromeos. 

In the future, there may be an open-web solution to implement this feature, users can deprecate the extension API and switch to the open-web solution. 
 
I filed this bug to separate it from the original issue 150835, which is more generic to all platforms. This one is only limited to chromeos platform. 
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6298fc54177c7f2919fc158a3b43e7a3e08f36fe

commit 6298fc54177c7f2919fc158a3b43e7a3e08f36fe
Author: jennyz <jennyz@chromium.org>
Date: Thu Jan 05 01:33:29 2017

Add SetImageData api to chrome.clipboard extension to allow js script to pass the png or jpeg encoded image data in ArrayBuffer to be written on chromeos clipboard.

BUG= 150835 

TBR=isherman

Review-Url: https://codereview.chromium.org/2379573008
Cr-Commit-Position: refs/heads/master@{#441546}

[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/app/generated_resources.grd
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/browser/extensions/BUILD.gn
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/browser/extensions/api/chrome_extensions_api_client.cc
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/browser/extensions/api/chrome_extensions_api_client.h
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/browser/extensions/clipboard_extension_apitest_chromeos.cc
[add] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/browser/extensions/clipboard_extension_helper_chromeos.cc
[add] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/browser/extensions/clipboard_extension_helper_chromeos.h
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/browser/extensions/permission_message_combinations_unittest.cc
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/common/extensions/permissions/chrome_permission_message_rules.cc
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/common/extensions/permissions/permission_set_unittest.cc
[add] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/test/data/extensions/api_test/clipboard/set_image_data/app_main.html
[add] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/test/data/extensions/api_test/clipboard/set_image_data/main.js
[add] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/test/data/extensions/api_test/clipboard/set_image_data/manifest.json
[add] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/test/data/extensions/api_test/clipboard/set_image_data/test.js
[add] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/test/data/extensions/redirect_target.gif
[add] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/chrome/test/data/extensions/test.jpg
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/extensions/browser/api/BUILD.gn
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/extensions/browser/api/clipboard/clipboard_api.cc
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/extensions/browser/api/clipboard/clipboard_api.h
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/extensions/browser/api/extensions_api_client.cc
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/extensions/browser/api/extensions_api_client.h
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/extensions/browser/browser_context_keyed_service_factories.cc
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/extensions/browser/extension_function_histogram_value.h
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/extensions/common/api/_api_features.json
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/extensions/common/api/clipboard.idl
[modify] https://crrev.com/6298fc54177c7f2919fc158a3b43e7a3e08f36fe/tools/metrics/histograms/histograms.xml

Status: Fixed (was: Untriaged)
The extension API landed in comment #2 will support png and jpeg image data only for platform apps on chromeos.
Cc: pwnall@chromium.org
Status: Verified (was: Fixed)

Sign in to add a comment