Bug 84338 - [EFL] EFL port needs Pasteboard implementation.
Summary: [EFL] EFL port needs Pasteboard implementation.
Status: RESOLVED WONTFIX
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit EFL (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Michal Pakula vel Rutka
URL:
Keywords:
Depends on: 82286 102484 102486
Blocks:
  Show dependency treegraph
 
Reported: 2012-04-19 07:20 PDT by Dominik Röttsches (drott)
Modified: 2017-03-11 10:41 PST (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dominik Röttsches (drott) 2012-04-19 07:20:22 PDT
fast/events/clipboard-dataTransferItemList.html times out since it doesn't do execCommand('copy') & execCommand('paste').
Comment 1 Dominik Röttsches (drott) 2012-05-10 12:09:11 PDT
Sudarsana, can we close this one, too?
Comment 2 Sudarsana Nagineni (babu) 2012-05-16 02:54:43 PDT
(In reply to comment #1)
> Sudarsana, can we close this one, too?

No. I think clipboard functionality is still missing.
Comment 3 Michal Pakula vel Rutka 2012-10-19 08:57:21 PDT
This bug will become a master bug for all EFL pasteboard-related bugs.

The difference between EFL and other frameworks is that EFL does not provide any platform clipboard module. Only thing it does is an API to perform copy and paste operations located in Elementary which requires, as one of its arguments, an Evas_Object with window (Ecore_X_Window in case of X11). 
As we cannot include Elementary into WebKit and even more into WebCore, because Elementary includes WebKit, we cannot implement copy and paste inside WebCore::PasteboardEfl class. The only way is to move the data out of WebCore to WebKit and leave the use of Elementary copy and paste API to the application.

The implementation I am proposing will use PasteboardStrategy class and then in: - WebKit1 will call ewk functions from PlatformStrategiesEfl to call a pointer to a function which will be implemented by application to perform copy or paste functions.
- WewbKit2 will call a message from WebPlatformStrategies to UIProcess and eventually call a WKClient function also implemented by application.

While in applications Elementary will handle copy and paste operation, in case of WebKit testing application as we cannot include Elementary, those pointers to functions should be implemented inside testing applications to simulate clipboard behaviour.

Another thing which is needed to is making EFL asynchronous clipboard, where in case of paste operation application request of selection and then receives a callback with data, work synchronously as requested by WebKit (i.e. in tests). 
GTK+ in its clipboard API contains a functions like gtk_clipboard_wait_for_text or gtk_clipboard_wait_for_contents, which in fact are calling a new main loop and runs it until selection will return some information. I did not decided yet whether to include the nested main loop in WebCore like in GTK+ or leave it on application side.
Comment 4 Michael Catanzaro 2017-03-11 10:41:56 PST
Closing this bug because the EFL port has been removed from trunk.

If you feel this bug applies to a different upstream WebKit port and was closed in error, please either update the title and reopen the bug, or leave a comment to request this.