Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / docs / gtk_vs_views_gtk.md
blob4af77e1002248a62fee4656d75b8793495a2a7d1
1 # Gtk vs ViewsGtk
3 ## Benefits of ViewsGtk
5 *   Better code sharing. For example, don't have to duplicate tab layout or
6     bookmark bar layout code.
7     *   Tab Strip
8         *   Drawing
9         *   All the animationy bits
10         *   Subtle click selection behavior (curved corners)
11         *   Drag behavior, including dropping of files onto the URL bar
12         *   Closing behavior
13     *   Bookmarks bar
14         *   drag & drop behavior, including menus
15         *   chevron?
16 *   Easier for folks to work on both platforms without knowing much about the
17     underlying toolkits.
18 *   Don't have to implement ui features twice.
20 ## Benefits of Gtk
22 *   Dialogs
23     *   Native feel layout
24     *   Font size changes (e.g., changing the system font size will apply to our
25         dialogs)
26     *   Better RTL (e.g., http://crbug.com/2822 http://crbug.com/5729
27         http://crbug.com/6082 http://crbug.com/6103 http://crbug.com/6125
28         http://crbug.com/8686 http://crbug.com/8649)
29 *   Being able to obey the user's system theme
30 *   Accessibility for buttons and dialogs (but not for tabstrip and bookmarks)
31 *   A better change at good remote X performance?
32 *   We still would currently need Pango / Cairo for text layout, so it will be
33     more efficient to just draw that during the Gtk pipeline instead of with
34     Skia.
35 *   Gtk widgets will automatically "feel and behave" like Linux. The behavior of
36     our own Views system does not necessarily feel right on Linux.
37 *   People working on Windows features don't need to worry about breaking the
38     Linux build.