Bug 101727

Summary: [GTK] Isolate the GTK/Gail/Pango specific code in accessibility/gtk
Product: WebKit Reporter: Mario Sanchez Prada <mario>
Component: WebKit EFLAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: apinheiro, cfleizach, dmazzoni, jdiggs, k.czech, lucas.de.marchi, mrobinson, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 98895, 99578    
Attachments:
Description Flags
Patch proposal cfleizach: review+

Description Mario Sanchez Prada 2012-11-09 01:41:38 PST
This is a bug to track work initially started in bug 99578, to provide conditional compilation units for isolating the GTK specific code in accessibility/gtk, so most of the code in there can be later reused in other ports, such as EFL
Comment 1 Mario Sanchez Prada 2012-11-09 02:04:27 PST
Created attachment 173245 [details]
Patch proposal

Here comes the patch, properly filling the ChangeLog and addressing the review comments from bug 99578.
Comment 2 Mario Sanchez Prada 2012-11-09 11:48:14 PST
Committed r134094: <http://trac.webkit.org/changeset/134094>
Comment 3 Martin Robinson 2012-11-09 12:04:17 PST
I think we should just replace this code for both platforms with something platform-independent, if possible.
Comment 4 Alejandro PiƱeiro 2012-11-12 03:11:18 PST
(In reply to comment #3)
> I think we should just replace this code for both platforms with something platform-independent, if possible.

This was discussed at bug 99578 comment 4, 5 and 6. The idea is replace the gail/pango code used to implement some methods of AtkText. Mario suggested stuff like TextIterator, that it is already in use. But that task can be long, so first step is isolate that code (this patch) while working on the final and platform-independent solution. In summary: this isolation is a temporary solution.
Comment 5 Martin Robinson 2012-11-12 08:25:45 PST
(In reply to comment #4)
> (In reply to comment #3)
> > I think we should just replace this code for both platforms with something platform-independent, if possible.
> 
> This was discussed at bug 99578 comment 4, 5 and 6. The idea is replace the gail/pango code used to implement some methods of AtkText. Mario suggested stuff like TextIterator, that it is already in use. But that task can be long, so first step is isolate that code (this patch) while working on the final and platform-independent solution. In summary: this isolation is a temporary solution.

Hrm. Do you mean that there will be many patches and the work will be incomplete during that time?
Comment 6 Mario Sanchez Prada 2012-11-15 04:05:10 PST
(In reply to comment #5)
> (In reply to comment #4)
> > (In reply to comment #3)
> > > I think we should just replace this code for both platforms with something platform-independent, if possible.
> > 
> > This was discussed at bug 99578 comment 4, 5 and 6. The idea is replace the gail/pango code used to implement some methods of AtkText. Mario suggested stuff like TextIterator, that it is already in use. But that task can be long, so first step is isolate that code (this patch) while working on the final and platform-independent solution. In summary: this isolation is a temporary solution.
> 
> Hrm. Do you mean that there will be many patches and the work will be incomplete during that time?

As for WebKitGTK the work won't ever be incomplete (it will for other ports, though), since it will keep working as it used to do so far. These conditional compilation units were added just to ease the work of other ports (EFL) should they want to reuse the non-GTK dependant ATK code (which is 99% already).

However, I'd expect that over time (probably while implementing those notimplemented() bits in the #if !PLATFORM(GTK) regions) most of those conditional bits (e.g. pango / gail) will be implemented in a more generic way so they could be shared by all the ports. Which I think is what you suggested in your first comment.