New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Starred by 94 users
Status: Fixed
Owner:
Closed: Apr 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Feature


Sign in to add a comment
Switch to using Gtk3 on Linux by default
Reported by 7stern@gmail.com, Apr 18 2011 Back to list
Chrome Version       : 10.0.648.204
OS Version: Arch Linux x86

Will Chromium use GTK3 instead of GTK2 on Linux ?

UserAgentString: Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.204 Safari/534.16,gzip(gfe)



 
Comment 1 by mkte...@gmail.com, Apr 19 2011
Labels: -Area-Undefined -Type-Bug Area-UI Type-Feature Feature-Browser Feature-OSIntegration
Hope I'm labeling this correctly...
Comment 2 by e...@chromium.org, Apr 19 2011
Labels: -Pri-2 Pri-3 Mstone-X
Status: Available
Realistically, no.

1) Chrome has targeted GTK 2.12 since we targeted Ubuntu Hardy for years. We break GSEALs because a lot of the code was written before GTK started to add accessors for everything. There are a whole bunch of other deprecated API use since the chromium was written in part before the APIs were deprecated. Fixing some of this is on the radar now that Hardy is formally deprecated by Ubuntu and we can target Lucid's GTK 2.20 instead.

2) We still need to maintain compatibility with the LTS version of Ubuntu and RHEL. Meaning we can't even start on this for *years*.

3) There's a very popular proprietary browser plugin that explicitly depends on GTK2 which I doubt will be ported. Even if we fixed everything in chrome, we still couldn't actually switch over until this is ported. I'll be surprised if any browser will switch from 2 to 3 as long as this binary blob is installed on most people's machines.
Comment 3 by 7stern@gmail.com, Apr 30 2011
Thank for your response. It's sad.
About your third article - Epiphany 3.0 using GTK3 and works with flash:
http://forums.gentoo.org/viewtopic-t-873443.html?sid=09b05d43034d9f22bac34323a559605e


Comment 4 by 7stern@gmail.com, Apr 30 2011
Also, maybe possible to add optional support for GTK3 like Audacious, for example ?
Sticking to GTK2 is pretty bad decision given the end users...
Sadly, the use of chrome is a bit cumbersome on a modern Gnome3 desktop. Nothing big, mostly window manager interaction issues, but enough to make FF my choice ATM.

Also noting that both Opera and FF sees this differently, and are able to deliver a GTK3 frontend while keeping Ubuntu LTS/RHEL/"popular proprietary plugin" compatibility.
Comment 7 by wav...@gmail.com, Nov 1 2011
Bummer, Firefox is actively porting:

https://bugzilla.mozilla.org/show_bug.cgi?id=627699

Epiphany 3.0 is ported, looks nice.
Comment 8 by tomm...@gmail.com, Nov 3 2011
How many people want newest chromium on their LTS and RHEL installs?
Cc: phajdan.jr@chromium.org
There are discussions underway for Lubuntu to switch from Chromium to Firefox as their default browser in the next release, one of the major argument being this particular decision.
Comment 11 by cssg...@gmail.com, Nov 6 2011
I am sure the port to GTK3 will happen someday but actually its too early! GTK3 look very unfinished actually. Web Browsers don't use many fancy widgets there wouldn't be a huge benefit besides better GPU acceleration of GTK3. You will still need Flash Player for many sites ...and Flash will be GTK2 for the next decade. There are ugly workarounds needed to get a GTK2 plugin working, there's no nice solution!
This binary blob I am guessing is adobe flash. Adobe flash should run under chromium as plugins are run in a seperate process. Perhaps I am wrong on this but nonetheless one can run flash through nspluginwrapper in Epiphany 3.2. Linux Mint is now using gnome 3 as default, ubuntu 10.04 wont be supported for much longer, both Opera and Firefox devs are working hard to provide a gtk3 frontend while retaining support for gtk2. I hope chromium can get gtk3 support soon because that as gnome 3 adoption becomes more widespread less linux users will use chromium.
Comment 13 by e...@chromium.org, Nov 21 2011
Cc: e...@chromium.org
> Adobe flash should run under chromium as plugins are run in a seperate process.

I think that's an oversimplification. IIRC, due to our sandbox, we want to run all programs from the same chrome binary (this is why the renderer, plugin stubs, and main browser process are all linked into one chrome binary). But the chrome binary is linked directly with gtk and it's the linkage that matters here. A chrome binary linked with gtk3 and a plugin with gtk2 would still cause problems, even in a different process. I have some ideas about this that aren't copying the nspluginwrapper model. Stay tuned.

> There are discussions underway for Lubuntu to switch from Chromium to Firefox[...]

Then they should move to firefox if gtk3 support is that important to them. It's going to take a long time to port chromium and I'm only going to get to do porting work in my down time, between other bugs and cross-platform responsibilities.

> http://developer.gnome.org/gtk3/3.3/gtk-migrating-2-to-3.html

Chromium hits almost every point in this guide. I can do some of the gtk2 preparation now, but I can't actually start on the raw meat of the porting work until Google IT pushes the next LTS out to my desktop, the rest of chromium infrastructure updates (buildbots, trybots, aka the actual machines that compile chromium), and chromeos is moved off of libgtk (they hard depend on gtk2 right now and are in the process of moving to their own abstract x11/wayland backend. This should happen early next year).

Most notably, what can be done now while we're still on GTK2:

- Can remove individual headers (Almost done: http://codereview.chromium.org/8586044/)
- Can remove methods deprecated in libgtk2.24. This is going to take a while because most of chromium was written against libgtk 2.12 which IIRC predates GSEAL (First of patch of many: http://codereview.chromium.org/8588068/)
- Clean up the last half dozen instances of non-cairo drawing since the GTK3 is deprecating the old gdk drawing API.

Things that scare me because they have to all happen at once when we move to gtk3:
- We listen to "size-request" notifications in most of our widgets. Changing all this at once is scary.
- Most GtkWidgets on the screen have custom "expose-event" handlers to implement either core functionality (even in gtk-theme mode) or custom chrome-theme support.
- We have all sorts of places where we drop down into raw X11 to get acceptable performance.
- We use most of those deprecated classes "somewhere" (GdkRegion, GdkPixmap, GdkColormap, GdkDrawable, GtkObject).
- Not mentioned in that guide, but we use GtkStyle all over the place in chromium to integrate with the desktop and that appears to be gone.
Project Member Comment 14 by bugdroid1@chromium.org, Nov 22 2011
Summary: Will Chromium use GTK3 instead of GTK2 on Linux ? (was: NULL)
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=111065

------------------------------------------------------------------------
r111065 | erg@chromium.org | Mon Nov 21 17:17:31 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/render_widget_host_view_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bubble/bubble_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_util.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_windowing.cc?r1=111065&r2=111064&pathrev=111065
 A http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_compat.h?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/rounded_window.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_preserve_window.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_popup_view_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_expanded_container.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/npapi/webplugin_delegate_impl_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/hover_controller_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/ssl_client_certificate_selector.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/tools/test_shell/test_shell_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/npapi/gtk_plugin_container_manager.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tabs/tab_strip_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/tab_contents/web_drag_source_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/gtk_window_utils.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/constrained_window_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_actions_toolbar_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_chrome_link_button.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_native_view_id_manager.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_view_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/login/login_prompt_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/status_bubble_gtk.cc?r1=111065&r2=111064&pathrev=111065
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_floating_container.cc?r1=111065&r2=111064&pathrev=111065

GTK: Create the start of a compatibility header wrapping deprecated methods.

GTK 2.24 deprecated all sorts of raw access to object internals in preparation
for GTK3.

BUG=79722
TEST=compiles
TBR=tony,jam

Review URL: http://codereview.chromium.org/8588068
------------------------------------------------------------------------
Project Member Comment 15 by bugdroid1@chromium.org, Nov 22 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=111090

------------------------------------------------------------------------
r111090 | erg@chromium.org | Mon Nov 21 19:12:31 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_custom_menu.h?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/printing/print_dialog_gtk.cc?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_input_event_box.cc?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_custom_menu_item.h?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/printing/printing_context_gtk.cc?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_input_event_box.h?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/chrome_gtk_frame.h?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/printing/print_dialog_gtk.h?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_preserve_window.cc?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/gpu/gpu_process_host_ui_shim.cc?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_chrome_button.h?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/insets.h?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/skia_utils_gtk.cc?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bubble/bubble_accelerators_gtk.cc?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/tools/test_shell/test_webview_delegate.h?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/printing/print_settings_initializer_gtk.cc?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bubble/bubble_accelerators_gtk.h?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/build/common.gypi?r1=111090&r2=111089&pathrev=111090
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_floating_container.cc?r1=111090&r2=111089&pathrev=111090

GTK: Make the gtk port compile with GTK_DISABLE_SINGLE_INCLUDES.

BUG=79722
TEST=none
TBR=tony

Review URL: http://codereview.chromium.org/8586044
------------------------------------------------------------------------
Project Member Comment 16 by bugdroid1@chromium.org, Nov 22 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=111091

------------------------------------------------------------------------
r111091 | erg@chromium.org | Mon Nov 21 19:34:50 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_actions_toolbar_gtk.cc?r1=111091&r2=111090&pathrev=111091
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/tab_contents/tab_contents_view_gtk.cc?r1=111091&r2=111090&pathrev=111091
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_window_gtk.cc?r1=111091&r2=111090&pathrev=111091
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_titlebar.cc?r1=111091&r2=111090&pathrev=111091
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/automation/automation_provider_gtk.cc?r1=111091&r2=111090&pathrev=111091
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/automation/ui_controls_gtk.cc?r1=111091&r2=111090&pathrev=111091

GTK: Part 1 of removing GtkWidget->window to close up GSEALs.

(The accessor gtk_widget_get_window was added in 2.14, so it was never used in
initial linux port development.)

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/8625001
------------------------------------------------------------------------
Project Member Comment 17 by bugdroid1@chromium.org, Nov 29 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=112027

------------------------------------------------------------------------
r112027 | robert.bradford@intel.com | Tue Nov 29 13:25:41 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/AUTHORS?r1=112027&r2=112026&pathrev=112027
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_expanded_container.cc?r1=112027&r2=112026&pathrev=112027
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/tooltip_window_gtk.cc?r1=112027&r2=112026&pathrev=112027
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_floating_container.cc?r1=112027&r2=112026&pathrev=112027
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_expanded_container_unittest.cc?r1=112027&r2=112026&pathrev=112027

GTK: Port ui/base/gtk to use avoid deprecated API and accessors

New API used:

gtk_widget_{set,get}_has_window - added 2.18 - replaces !GTK_WIDGET_NO_WINDOW
gtk_widget_{set,get}_allocation - added 2.18 - replaces direct access
gtk_bin_get_child - replaces direct access
gtk_widget_get_window - added 2.14 - replaces direct access
g_cclosure_marshal_VOID__BOXED - replaces gtk_marshal_VOID__BOXED

With these changes this directory can compile with GSEAL enabled and
deprecated functions disabled.

BUG=79722
TEST=Compiles and also the ui_unittests pass


Review URL: http://codereview.chromium.org/8646002
------------------------------------------------------------------------
Project Member Comment 18 by bugdroid1@chromium.org, Nov 30 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=112258

------------------------------------------------------------------------
r112258 | robert.bradford@intel.com | Wed Nov 30 10:49:47 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/x/x11_util.cc?r1=112258&r2=112257&pathrev=112258
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_native_view_id_manager.cc?r1=112258&r2=112257&pathrev=112258
 A http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gdk_x_compat.h?r1=112258&r2=112257&pathrev=112258
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/x/active_window_watcher_x.cc?r1=112258&r2=112257&pathrev=112258

GTK: Port to gdk_x11_window_lookup_for_display

This API replaces gdk_window_lookup and gdk_xid_table_lookup which are
deprecated in 2.24. gdk_x11_window_lookup_for_display was added in 2.24.

As well porting the users to use this new API a compatability version was
added to the ui/base/gtk/gtk_compat.h file.

BUG=79722
TEST=Compiles and ui_unittests run. Chrome also runs.


Review URL: http://codereview.chromium.org/8632021
------------------------------------------------------------------------
Comment 19 by e...@chromium.org, Dec 1 2011
Blockedon: 106060
Will need to port the remaining parts of our drawing code to cairo...
Project Member Comment 20 by bugdroid1@chromium.org, Dec 1 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=112498

------------------------------------------------------------------------
r112498 | robert.bradford@intel.com | Thu Dec 01 11:54:58 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/render_widget_host_view_gtk.cc?r1=112498&r2=112497&pathrev=112498
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_compat.h?r1=112498&r2=112497&pathrev=112498

GTK: Port RenderWidgetHostViewGtk to latest GTK

New API used:

gtk_widget_get_window - replaces direct access
gtk_widget_get_allocation - added in 2.18 - replaces direct access
gdk_window_get_width / gdk_window_get_height added in 2.24 - replaces
deprecated gdk_window_get_size so is added to ui/base/gtk/gtk_compat.h

With these changes the file can be compiled with sealed structures and
deprecated API disabled with the exception of the deprecated function
gdk_bitmap_create_from_data used in the cursor creation. That will come in a
separate change.

BUG=79722
TEST=Compiles and chrome runs


Review URL: http://codereview.chromium.org/8635018
------------------------------------------------------------------------
Project Member Comment 21 by bugdroid1@chromium.org, Dec 1 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=112518

------------------------------------------------------------------------
r112518 | erg@chromium.org | Thu Dec 01 12:22:47 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_toolbar_gtk.cc?r1=112518&r2=112517&pathrev=112518
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/custom_button.cc?r1=112518&r2=112517&pathrev=112518
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/custom_button.h?r1=112518&r2=112517&pathrev=112518
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tabs/tab_strip_gtk.cc?r1=112518&r2=112517&pathrev=112518
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.cc?r1=112518&r2=112517&pathrev=112518

GTK: Move to gtk_widget_get_allocation() for some of chrome/browser/ui/gtk/

BUG=79722
TEST=compiles


Review URL: http://codereview.chromium.org/8743021
------------------------------------------------------------------------
Project Member Comment 22 by bugdroid1@chromium.org, Dec 3 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=112839

------------------------------------------------------------------------
r112839 | erg@chromium.org | Fri Dec 02 17:27:52 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_popup_view_gtk.h?r1=112839&r2=112838&pathrev=112839
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_popup_view_gtk.cc?r1=112839&r2=112838&pathrev=112839
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/themes/theme_service.h?r1=112839&r2=112838&pathrev=112839
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/themes/theme_service.cc?r1=112839&r2=112838&pathrev=112839

GTK: Port omnibox drawing from GdkGC interface to cairo.

GdkGC is deprecated and will be removed in gtk3 and cairo should be faster anyway. This uses the new CairoCachedSurface in gfx::Image.

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/8781001
------------------------------------------------------------------------
Project Member Comment 23 by bugdroid1@chromium.org, Dec 3 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=112905

------------------------------------------------------------------------
r112905 | thakis@chromium.org | Sat Dec 03 13:52:41 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_popup_view_gtk.h?r1=112905&r2=112904&pathrev=112905
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_popup_view_gtk.cc?r1=112905&r2=112904&pathrev=112905
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/themes/theme_service.h?r1=112905&r2=112904&pathrev=112905
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/themes/theme_service.cc?r1=112905&r2=112904&pathrev=112905

Revert 112839 (it probably caused http://crbug.com/106299 ) - GTK: Port omnibox drawing from GdkGC interface to cairo.

GdkGC is deprecated and will be removed in gtk3 and cairo should be faster anyway. This uses the new CairoCachedSurface in gfx::Image.

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/8781001

TBR=erg@chromium.org
Review URL: http://codereview.chromium.org/8789016
------------------------------------------------------------------------
Project Member Comment 24 by bugdroid1@chromium.org, Dec 5 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=113031

------------------------------------------------------------------------
r113031 | erg@chromium.org | Mon Dec 05 13:31:07 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bookmarks/bookmark_utils_gtk.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_custom_menu_item.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/tab_contents/tab_contents_view_gtk.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_input_event_box.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_theme_service.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/automation/testing_automation_provider_gtk.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_chrome_link_button.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_titlebar.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/extensions/extension_popup_gtk.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/nine_box.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/status_bubble_gtk.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/menu_gtk.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/find_bar_gtk.cc?r1=113031&r2=113030&pathrev=113031
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/notifications/balloon_view_gtk.cc?r1=113031&r2=113030&pathrev=113031

GTK: More removal of raw GtkWidget->allocation access.

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/8773025
------------------------------------------------------------------------
Project Member Comment 25 by bugdroid1@chromium.org, Dec 5 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=113033

------------------------------------------------------------------------
r113033 | erg@chromium.org | Mon Dec 05 13:31:42 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_popup_view_gtk.h?r1=113033&r2=113032&pathrev=113033
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_popup_view_gtk.cc?r1=113033&r2=113032&pathrev=113033
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/themes/theme_service.h?r1=113033&r2=113032&pathrev=113033
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/themes/theme_service.cc?r1=113033&r2=113032&pathrev=113033

GTK: Port omnibox drawing from GdkGC interface to cairo.

(Now with a fix for the crash from Friday; we need to copy the bitmap into a different format first for ownership reasons.)

GdkGC is deprecated and will be removed in gtk3 and cairo should be faster anyway. This uses the new CairoCachedSurface in gfx::Image.

BUG=79722
TEST=none
First commit: http://src.chromium.org/viewvc/chrome?view=rev&revision=112839

Review URL: http://codereview.chromium.org/8781001
------------------------------------------------------------------------
Project Member Comment 26 by bugdroid1@chromium.org, Dec 8 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=113532

------------------------------------------------------------------------
r113532 | erg@chromium.org | Wed Dec 07 18:03:02 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_actions_toolbar_gtk.cc?r1=113532&r2=113531&pathrev=113532
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bubble/bubble_gtk.cc?r1=113532&r2=113531&pathrev=113532
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/nine_box.cc?r1=113532&r2=113531&pathrev=113532
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/find_bar_gtk.cc?r1=113532&r2=113531&pathrev=113532
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/avatar_menu_button_gtk.cc?r1=113532&r2=113531&pathrev=113532

GTK: More changes from raw widget->allocation to using the accessor.

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/8872004
------------------------------------------------------------------------
Project Member Comment 27 by bugdroid1@chromium.org, Dec 8 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=113687

------------------------------------------------------------------------
r113687 | erg@chromium.org | Thu Dec 08 15:12:22 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/panels/panel_browser_window_gtk.cc?r1=113687&r2=113686&pathrev=113687
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_util.h?r1=113687&r2=113686&pathrev=113687
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bubble/bubble_gtk.h?r1=113687&r2=113686&pathrev=113687
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bubble/bubble_gtk.cc?r1=113687&r2=113686&pathrev=113687
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_util.cc?r1=113687&r2=113686&pathrev=113687
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/window_snapshot/window_snapshot_gtk.cc?r1=113687&r2=113686&pathrev=113687

GTK: Remove most calls to widget->window and replace with accessor.

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/8890027
------------------------------------------------------------------------
Project Member Comment 28 by bugdroid1@chromium.org, Dec 8 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=113698

------------------------------------------------------------------------
r113698 | erg@chromium.org | Thu Dec 08 15:49:23 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/infobars/infobar_container_gtk.cc?r1=113698&r2=113697&pathrev=113698
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/infobars/infobar_gtk.cc?r1=113698&r2=113697&pathrev=113698
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/download/download_item_gtk.cc?r1=113698&r2=113697&pathrev=113698
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/location_bar_view_gtk.cc?r1=113698&r2=113697&pathrev=113698
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/download/download_shelf_gtk.cc?r1=113698&r2=113697&pathrev=113698

GTK: Even more changes from raw allocation access to gtk_widget_get_allocation().

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/8885016
------------------------------------------------------------------------
Project Member Comment 29 by bugdroid1@chromium.org, Dec 10 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=113893

------------------------------------------------------------------------
r113893 | erg@chromium.org | Fri Dec 09 16:21:03 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_custom_menu_item.cc?r1=113893&r2=113892&pathrev=113893
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_window_gtk.cc?r1=113893&r2=113892&pathrev=113893
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_compat.h?r1=113893&r2=113892&pathrev=113893
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/status_icons/status_icon_gtk.cc?r1=113893&r2=113892&pathrev=113893
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_preserve_window.cc?r1=113893&r2=113892&pathrev=113893
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/nine_box.cc?r1=113893&r2=113892&pathrev=113893
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/npapi/gtk_plugin_container_manager.cc?r1=113893&r2=113892&pathrev=113893
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_chrome_cookie_view.cc?r1=113893&r2=113892&pathrev=113893
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tabs/tab_strip_gtk.cc?r1=113893&r2=113892&pathrev=113893
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/find_bar_gtk.cc?r1=113893&r2=113892&pathrev=113893
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.cc?r1=113893&r2=113892&pathrev=113893

GTK: Remove deprecated methods and replace them with the new standard calls.

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/8897006
------------------------------------------------------------------------
Project Member Comment 30 by bugdroid1@chromium.org, Dec 13 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=114153

------------------------------------------------------------------------
r114153 | erg@chromium.org | Mon Dec 12 18:29:51 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tabs/dragged_view_gtk.cc?r1=114153&r2=114152&pathrev=114153
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tabs/tab_gtk.cc?r1=114153&r2=114152&pathrev=114153
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tabs/tab_renderer_gtk.cc?r1=114153&r2=114152&pathrev=114153
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_preserve_window.cc?r1=114153&r2=114152&pathrev=114153
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/menu_bar_helper.cc?r1=114153&r2=114152&pathrev=114153
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/location_bar_view_gtk.cc?r1=114153&r2=114152&pathrev=114153

GTK: Even more cleanup to access allocation through the accessor.

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/8921022
------------------------------------------------------------------------
Project Member Comment 31 by bugdroid1@chromium.org, Dec 13 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=114283

------------------------------------------------------------------------
r114283 | fischman@chromium.org | Tue Dec 13 14:12:49 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_custom_menu_item.cc?r1=114283&r2=114282&pathrev=114283

Add missing include post-113893.

BUG=79722
TEST=chrome builds in a cros chroot (for tegra2).


Review URL: http://codereview.chromium.org/8912012
------------------------------------------------------------------------
Project Member Comment 32 by bugdroid1@chromium.org, Dec 15 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=114591

------------------------------------------------------------------------
r114591 | erg@chromium.org | Wed Dec 14 19:26:23 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/panels/panel_browser_window_gtk.cc?r1=114591&r2=114590&pathrev=114591
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_window_gtk.cc?r1=114591&r2=114590&pathrev=114591
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_util.cc?r1=114591&r2=114590&pathrev=114591
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/rounded_window.cc?r1=114591&r2=114590&pathrev=114591
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tabs/tab_strip_gtk.cc?r1=114591&r2=114590&pathrev=114591
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_chrome_shrinkable_hbox.cc?r1=114591&r2=114590&pathrev=114591

GTK: Remove more deprecated stuff.

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/8952002
------------------------------------------------------------------------
Project Member Comment 33 by bugdroid1@chromium.org, Jan 4 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=116342

------------------------------------------------------------------------
r116342 | robert.bradford@intel.com | Wed Jan 04 10:46:20 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bookmarks/bookmark_editor_gtk.cc?r1=116342&r2=116341&pathrev=116342
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/input_window_dialog_gtk.cc?r1=116342&r2=116341&pathrev=116342
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/extensions/extension_uninstall_dialog_gtk.cc?r1=116342&r2=116341&pathrev=116342
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/about_chrome_dialog.cc?r1=116342&r2=116341&pathrev=116342
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/extensions/extension_install_dialog_gtk.cc?r1=116342&r2=116341&pathrev=116342

GTK: Remove use of deprecated gtk_dialog_set_has_separator

From GTK 2.22 the separator is off by default.

BUG=79722
TEST=Compiles on GTK2.16 and newer than 2.22


Review URL: http://codereview.chromium.org/9087008
------------------------------------------------------------------------
Project Member Comment 34 by bugdroid1@chromium.org, Jan 5 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=116430

------------------------------------------------------------------------
r116430 | erg@chromium.org | Wed Jan 04 17:11:08 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_util.h?r1=116430&r2=116429&pathrev=116430
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_actions_toolbar_gtk.cc?r1=116430&r2=116429&pathrev=116430
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_custom_menu_item.cc?r1=116430&r2=116429&pathrev=116430
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_chrome_link_button.cc?r1=116430&r2=116429&pathrev=116430
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/download/download_item_gtk.cc?r1=116430&r2=116429&pathrev=116430
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_preserve_window.cc?r1=116430&r2=116429&pathrev=116430
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/location_bar_view_gtk.cc?r1=116430&r2=116429&pathrev=116430
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/tools/test_shell/test_shell_gtk.cc?r1=116430&r2=116429&pathrev=116430
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/npapi/gtk_plugin_container_manager.cc?r1=116430&r2=116429&pathrev=116430
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/avatar_menu_item_gtk.cc?r1=116430&r2=116429&pathrev=116430

GTK: A bunch more removal of deprecated raw GtkWidget access, focusing on GtkWidget->window

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/9030029
------------------------------------------------------------------------
Project Member Comment 35 by bugdroid1@chromium.org, Jan 6 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=116602

------------------------------------------------------------------------
r116602 | erg@chromium.org | Thu Jan 05 16:42:26 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_custom_menu_item.cc?r1=116602&r2=116601&pathrev=116602
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tab_contents_container_gtk.cc?r1=116602&r2=116601&pathrev=116602
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_util.cc?r1=116602&r2=116601&pathrev=116602
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_chrome_link_button.cc?r1=116602&r2=116601&pathrev=116602
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/download/download_item_gtk.cc?r1=116602&r2=116601&pathrev=116602
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/rounded_window.cc?r1=116602&r2=116601&pathrev=116602
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/menu_gtk.cc?r1=116602&r2=116601&pathrev=116602
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/reload_button_gtk.cc?r1=116602&r2=116601&pathrev=116602
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/find_bar_gtk.cc?r1=116602&r2=116601&pathrev=116602

GTK: Another GTK deprecation patch.

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/9109028
------------------------------------------------------------------------
Project Member Comment 36 by bugdroid1@chromium.org, Jan 6 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=116717

------------------------------------------------------------------------
r116717 | erg@chromium.org | Fri Jan 06 11:44:01 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bookmarks/bookmark_editor_gtk.cc?r1=116717&r2=116716&pathrev=116717
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/edit_search_engine_dialog.cc?r1=116717&r2=116716&pathrev=116717
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/update_recommended_dialog.cc?r1=116717&r2=116716&pathrev=116717
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/instant_confirm_dialog_gtk.cc?r1=116717&r2=116716&pathrev=116717
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/infobars/infobar_gtk.cc?r1=116717&r2=116716&pathrev=116717
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/task_manager_gtk.cc?r1=116717&r2=116716&pathrev=116717
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/html_dialog_gtk.cc?r1=116717&r2=116716&pathrev=116717
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.cc?r1=116717&r2=116716&pathrev=116717
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/certificate_viewer.cc?r1=116717&r2=116716&pathrev=116717
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/external_protocol_dialog_gtk.cc?r1=116717&r2=116716&pathrev=116717

GTK: More raw struct access removal, this time focusing on GtkDialog.

BUG=79722
TEST=compiles


Review URL: http://codereview.chromium.org/9113033
------------------------------------------------------------------------
Project Member Comment 37 by bugdroid1@chromium.org, Jan 9 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=116956

------------------------------------------------------------------------
r116956 | erg@chromium.org | Mon Jan 09 15:51:49 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/dragdrop/gtk_dnd_util.cc?r1=116956&r2=116955&pathrev=116956
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bubble/bubble_gtk.cc?r1=116956&r2=116955&pathrev=116956
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/x/x11_util.cc?r1=116956&r2=116955&pathrev=116956
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_native_view_id_manager.cc?r1=116956&r2=116955&pathrev=116956
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/tab_contents/web_drag_dest_gtk.cc?r1=116956&r2=116955&pathrev=116956
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/screen_gtk.cc?r1=116956&r2=116955&pathrev=116956
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_preserve_window.cc?r1=116956&r2=116955&pathrev=116956
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/gtk_im_context_wrapper.cc?r1=116956&r2=116955&pathrev=116956
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/clipboard/clipboard_gtk.cc?r1=116956&r2=116955&pathrev=116956
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/tab_contents/web_drag_source_gtk.cc?r1=116956&r2=116955&pathrev=116956
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/focus_store_gtk.cc?r1=116956&r2=116955&pathrev=116956
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/certificate_viewer.cc?r1=116956&r2=116955&pathrev=116956

GTK: Seal up GSEALs, focusing on GtkSelectionData.

BUG=79722
TEST=compiles


Review URL: http://codereview.chromium.org/9151007
------------------------------------------------------------------------
Project Member Comment 38 by bugdroid1@chromium.org, Jan 10 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=116977

------------------------------------------------------------------------
r116977 | erg@google.com | Mon Jan 09 17:09:48 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/dragdrop/gtk_dnd_util.cc?r1=116977&r2=116976&pathrev=116977
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bubble/bubble_gtk.cc?r1=116977&r2=116976&pathrev=116977
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/x/x11_util.cc?r1=116977&r2=116976&pathrev=116977
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_native_view_id_manager.cc?r1=116977&r2=116976&pathrev=116977
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/tab_contents/web_drag_dest_gtk.cc?r1=116977&r2=116976&pathrev=116977
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/screen_gtk.cc?r1=116977&r2=116976&pathrev=116977
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_preserve_window.cc?r1=116977&r2=116976&pathrev=116977
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/gtk_im_context_wrapper.cc?r1=116977&r2=116976&pathrev=116977
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/clipboard/clipboard_gtk.cc?r1=116977&r2=116976&pathrev=116977
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/tab_contents/web_drag_source_gtk.cc?r1=116977&r2=116976&pathrev=116977
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/focus_store_gtk.cc?r1=116977&r2=116976&pathrev=116977
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/certificate_viewer.cc?r1=116977&r2=116976&pathrev=116977

Revert 116956 - GTK: Seal up GSEALs, focusing on GtkSelectionData.

BUG=79722
TEST=compiles


Review URL: http://codereview.chromium.org/9151007

TBR=erg@chromium.org
Review URL: http://codereview.chromium.org/9167002
------------------------------------------------------------------------
Project Member Comment 39 by bugdroid1@chromium.org, Jan 10 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=117070

------------------------------------------------------------------------
r117070 | erg@chromium.org | Tue Jan 10 11:12:53 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/dragdrop/gtk_dnd_util.cc?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bubble/bubble_gtk.cc?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/x/x11_util.cc?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_compat.h?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_native_view_id_manager.cc?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/tab_contents/web_drag_dest_gtk.cc?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/screen_gtk.cc?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_preserve_window.cc?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/gtk_im_context_wrapper.cc?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/clipboard/clipboard_gtk.cc?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/tab_contents/web_drag_source_gtk.cc?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/focus_store_gtk.cc?r1=117070&r2=117069&pathrev=117070
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/certificate_viewer.cc?r1=117070&r2=117069&pathrev=117070

GTK: Seal up GSEALs, focusing on GtkSelectionData.

BUG=79722
TEST=compiles
First Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=116956

Review URL: http://codereview.chromium.org/9151007
------------------------------------------------------------------------
Comment 40 by e...@chromium.org, Jan 10 2012
Blockedon: 109781
Project Member Comment 41 by bugdroid1@chromium.org, Jan 11 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=117267

------------------------------------------------------------------------
r117267 | erg@chromium.org | Wed Jan 11 12:03:27 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/fullscreen_exit_bubble_gtk.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/chrome_gtk_frame.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_custom_menu_item.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bubble/bubble_gtk.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_util.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_compat.h?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/tab_contents/web_drag_dest_gtk.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_custom_menu.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_popup_view_gtk.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/nine_box.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_chrome_shrinkable_hbox.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bookmarks/bookmark_utils_gtk.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/custom_button.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/about_chrome_dialog.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/download/download_shelf_gtk.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_view_gtk.cc?r1=117267&r2=117266&pathrev=117267
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/tab_contents/chrome_tab_contents_view_wrapper_gtk.cc?r1=117267&r2=117266&pathrev=117267

GTK: More GSEALing.

BUG=79722
TEST=none


Review URL: http://codereview.chromium.org/9147044
------------------------------------------------------------------------
Comment 42 by e...@chromium.org, Jan 27 2012
Blockedon: 111718
Comment 43 by e...@chromium.org, Jan 27 2012
Blockedon: 111735
Comment 44 by e...@chromium.org, Jan 30 2012
Labels: gtk3
Project Member Comment 45 by bugdroid1@chromium.org, Feb 9 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=121304

------------------------------------------------------------------------
r121304 | erg@chromium.org | Thu Feb 09 13:43:53 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/slide_animator_gtk.cc?r1=121304&r2=121303&pathrev=121304
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/gfx/gtk_preserve_window.cc?r1=121304&r2=121303&pathrev=121304
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/status_bubble_gtk.cc?r1=121304&r2=121303&pathrev=121304
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/find_bar_gtk.cc?r1=121304&r2=121303&pathrev=121304
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.cc?r1=121304&r2=121303&pathrev=121304

GTK: Do more GSEALing.

BUG=79722
R=jhawkins
TBR=sky

Review URL: http://codereview.chromium.org/9371005
------------------------------------------------------------------------
Project Member Comment 46 by bugdroid1@chromium.org, Feb 15 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=122132

------------------------------------------------------------------------
r122132 | erg@chromium.org | Wed Feb 15 12:00:09 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/autofill/autofill_popup_view_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_window_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tab_contents_container_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_util.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/infobars/infobar_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/gtk/gtk_compat.h?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_popup_view_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tabs/tab_strip_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/notifications/balloon_view_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_toolbar_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tabs/dragged_view_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_theme_service.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tabs/tab_renderer_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_titlebar.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/location_bar_view_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/omnibox/omnibox_view_gtk.cc?r1=122132&r2=122131&pathrev=122132
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/tabs/tab_strip_gtk.h?r1=122132&r2=122131&pathrev=122132

GTK: Closing in on being completely GSEALed.

BUG=79722


Review URL: http://codereview.chromium.org/9359052
------------------------------------------------------------------------
Project Member Comment 47 by bugdroid1@chromium.org, Feb 16 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=122198

------------------------------------------------------------------------
r122198 | erg@chromium.org | Wed Feb 15 16:21:22 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/task_manager_gtk.h?r1=122198&r2=122197&pathrev=122198
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/task_manager_gtk.cc?r1=122198&r2=122197&pathrev=122198

GTK: Address GSEALs in TaskManager.

BUG=79722


Review URL: http://codereview.chromium.org/9404016
------------------------------------------------------------------------
Project Member Comment 48 by bugdroid1@chromium.org, Feb 16 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=122389

------------------------------------------------------------------------
r122389 | erg@chromium.org | Thu Feb 16 15:26:21 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/glue/webcursor_gtk.cc?r1=122389&r2=122388&pathrev=122389

GTK: Remove calls that no longer exist and just call the base unref.

BUG=79722


Review URL: http://codereview.chromium.org/9420023
------------------------------------------------------------------------
Project Member Comment 49 by bugdroid1@chromium.org, Feb 29 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=124254

------------------------------------------------------------------------
r124254 | erg@chromium.org | Wed Feb 29 13:13:33 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/glue/webcursor_gtk.cc?r1=124254&r2=124253&pathrev=124254

Revert "GTK: Remove calls that no longer exist and just call the base unref."

This is causing crashes. This reverts r122389.

BUG=79722,116274


Review URL: http://codereview.chromium.org/9537019
------------------------------------------------------------------------
Comment 50 by e...@chromium.org, Jun 14 2012
Blockedon: -106060 -109781 -111718 -111735 132847
Remove invalid old gtk3 bugs and block on the correct future bug based on changed plans.
Project Member Comment 51 by bugdroid1@chromium.org, Mar 10 2013
Blockedon: -chromium:132847 chromium:132847
Labels: -Area-UI -Feature-Browser -Feature-OSIntegration Cr-UI-OSIntegration Cr-UI Cr-UI-Browser-Core
Comment 52 by trusktr@gmail.com, Jun 9 2014
Just curious: How's progress on this?
Comment 53 by akl...@gmail.com, Jun 9 2014
I don't think there are plans to get this issue fixed, it's been inactive for a very long time.
Chromium already abandoned GTK+ 2 and its convolutedness (good riddance!). But they replaced it with their own toolkit, Aura. I like that, because I hate GTK in every aspect.
Comment 55 by trusktr@gmail.com, Jun 21 2014
@fitoschido so GTK3 is out of the picture?
What's the progress on this issue? Are there any plans to switch on gtk3..?
Now that Aura is in the picture how much would need to be changed to update the few parts that would need GTK2 to GTK3?  On quite a lot of the latest systems (<2 years old) integration can be hit and miss: the default Chromium theme can look very out of place if you system theme doesn't make GTK2 and GTK3 mirror eaqch other, and then there is the issue of the File Selectors.
Comment 58 by e...@chromium.org, Feb 23 2015
IIRC, it would require building a libgtk3ui library to match chrome/browser/ui/libgtk2ui/, and have these two libraries switched at startup time.

(I no longer work on chrome UI, and I don't know of anyone who wants to work on this.)
Comment 59 by trusktr@gmail.com, Nov 2 2015
Pleeeeease, update to GTK3. It has inertial scrolling so it can be more on par with OS X.
Blockedon: chromium:575038
Come on folks! We need cool widgets and better integration...
Comment 62 by sl1pk...@gmail.com, Jun 26 2016
build with -Duse_gtk3 in a gtk2 free system fails because still need GTK2 for build

Package gdk-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gdk-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gdk-2.0' found
gyp: Call to 'pkg-config --cflags gdk-2.0' returned exit status 1 while in /build/chromium-dev/src/chromium-53.0.2756.0/build/linux/system.gyp.
Comment 63 by sl1pk...@gmail.com, Sep 24 2016
my comment posted above ^^^ is fixed by this CL

https://codereview.chromium.org/2342163002
Owner: thomasanderson@chromium.org
I guess the answer of the now (since 56.0.2906.0): Chromium now requires both gtk2 and gtk3 at build time!

https://bugs.gentoo.org/show_bug.cgi?id=599340
Components: -UI>OSIntegration Internals>PlatformIntegration
Deprecating UI>OSIntegration in favor of the more generic Internals>PlatformIntegration
Labels: -Pri-3 Pri-2
Status: Started
Summary: Switch to using Gtk3 on Linux by default (was: Will Chromium use GTK3 instead of GTK2 on Linux ?)
Comment 68 by sl1pk...@gmail.com, Feb 14 2017
https://bugs.chromium.org/p/chromium/issues/detail?id=668446

related and fixed (by patch), finaly,https://bugs.chromium.org/p/chromium/issues/detail?id=79722#c62
Project Member Comment 69 by bugdroid1@chromium.org, Feb 14 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7acd31ee32e847f162438dee848f0d8c35936941

commit 7acd31ee32e847f162438dee848f0d8c35936941
Author: thomasanderson <thomasanderson@google.com>
Date: Tue Feb 14 23:58:31 2017

Gtk3: Fix memory leak, fix pseudoclasses on Gtk3.14

This CL
* Fixes a GtkStyleContext leak
* Ignores a leak caused by GtkStatusIcon
* Fixes selectors that have a pseudoclass on a non-leaf widget
  such as "button:disabled label" on Gtk3.14.

BUG=79722
R=erg@chromium.org

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

[modify] https://crrev.com/7acd31ee32e847f162438dee848f0d8c35936941/chrome/browser/ui/libgtkui/gtk_status_icon.cc
[modify] https://crrev.com/7acd31ee32e847f162438dee848f0d8c35936941/chrome/browser/ui/libgtkui/gtk_util.cc
[modify] https://crrev.com/7acd31ee32e847f162438dee848f0d8c35936941/chrome/browser/ui/libgtkui/gtk_util.h

Blockedon: -132847
Blockedon: 132847
Project Member Comment 72 by bugdroid1@chromium.org, Feb 22 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/872a494bba52e597388aec738d9d681183a3d47b

commit 872a494bba52e597388aec738d9d681183a3d47b
Author: thomasanderson <thomasanderson@google.com>
Date: Wed Feb 22 17:49:37 2017

Linux UI: Switch to the Gtk3 theme

Sets "use_gtk3 = true" by default.

BUG=79722
TBR=dpranke@chromium.org

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

[modify] https://crrev.com/872a494bba52e597388aec738d9d681183a3d47b/build/config/linux/gtk/gtk.gni
[modify] https://crrev.com/872a494bba52e597388aec738d9d681183a3d47b/chrome/installer/linux/debian/expected_deps_x64_jessie
[modify] https://crrev.com/872a494bba52e597388aec738d9d681183a3d47b/chrome/installer/linux/debian/expected_deps_x64_wheezy
[modify] https://crrev.com/872a494bba52e597388aec738d9d681183a3d47b/chrome/installer/linux/rpm/expected_deps_x86_64

Project Member Comment 73 by bugdroid1@chromium.org, Feb 22 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4ebd84e40a1c791117a8d3f7b85c13cfdf816864

commit 4ebd84e40a1c791117a8d3f7b85c13cfdf816864
Author: fgorski <fgorski@chromium.org>
Date: Wed Feb 22 18:54:37 2017

Revert of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2670623002/ )

Reason for revert:
Broke the build:
https://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20%28dbg%29%2832%29/builds/63779

[3232/5256] CXX obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
FAILED: obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
/b/c/goma_client/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o.d -DLIBGTKUI_IMPLEMENTATION -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"289944-2\" -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCOMPONENT_BUILD -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -DUSE_GCONF -DUSE_CUPS -DGL_GLEXT_PROTOTYPES -DUSE_GLX -DUSE_EGL -DTOOLKIT_VIEWS=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DSK_IGNORE_DW_GRAY_FIX -DSK_IGNORE_DIRECTWRITE_GASP_FIX -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_SUPPORT_GPU=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DPROTOBUF_USE_DLLS -DBORINGSSL_SHARED_LIBRARY -DUSING_V8_SHARED -I../.. -Igen -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gconf/2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/dbus-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/dbus-1.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../third_party/khronos -I../../gpu -I../../third_party/libwebp -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/unix-print -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -Igen/chrome -Igen/chrome -Igen/chrome -Igen/chrome -Igen/components -Igen/components -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/mesa/src/include -I../../third_party/libwebm/source -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/boringssl/src/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nss -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nspr -Igen -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -Igen/ui/resources -Igen/ui/resources -Igen/ui/views/resources -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -fcolor-diagnostics -m32 -msse2 -mfpmath=sse -mmmx -momit-leaf-frame-pointer -pthread -mstack-alignment=16 -mstackrealign -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-deprecated-register -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-block-capture-autoreleasing -O0 -fno-omit-frame-pointer -g2 -gsplit-dwarf --sysroot=../../build/linux/debian_wheezy_i386-sysroot -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wno-unused-function -Wno-unused-local-typedef -Wno-header-guard -fvisibility-inlines-hidden -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=gnu++11 -fno-rtti -fno-exceptions -c ../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc -o obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc:542:74: error: missing sentinel in function call [-Werror,-Wsentinel]
    gtk_style_context_get(context, state, "min-height", &min_height, NULL);
                                                                         ^
                                                                         , nullptr
../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/gtk/gtkstylecontext.h:736:6: note: function has been explicitly marked sentinel here
void gtk_style_context_get          (GtkStyleContext *context,
     ^
1 error generated.

Original issue's description:
> Linux UI: Switch to the Gtk3 theme
>
> Sets "use_gtk3 = true" by default.
>
> BUG=79722
> TBR=dpranke@chromium.org
>
> Review-Url: https://codereview.chromium.org/2670623002
> Cr-Commit-Position: refs/heads/master@{#452118}
> Committed: https://chromium.googlesource.com/chromium/src/+/872a494bba52e597388aec738d9d681183a3d47b

TBR=erg@chromium.org,mmoss@chromium.org,thomasanderson@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=79722

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

[modify] https://crrev.com/4ebd84e40a1c791117a8d3f7b85c13cfdf816864/build/config/linux/gtk/gtk.gni
[modify] https://crrev.com/4ebd84e40a1c791117a8d3f7b85c13cfdf816864/chrome/installer/linux/debian/expected_deps_x64_jessie
[modify] https://crrev.com/4ebd84e40a1c791117a8d3f7b85c13cfdf816864/chrome/installer/linux/debian/expected_deps_x64_wheezy
[modify] https://crrev.com/4ebd84e40a1c791117a8d3f7b85c13cfdf816864/chrome/installer/linux/rpm/expected_deps_x86_64

Project Member Comment 74 by bugdroid1@chromium.org, Feb 22 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d

commit e017cf7ef61b27d0e94380f00b78fdf7f1e1973d
Author: thomasanderson <thomasanderson@google.com>
Date: Wed Feb 22 21:07:25 2017

Gtk: Change NULL to nullptr

This CL changes all instances of NULL to nullptr in libgtkui.

The process was:
$ find chrome/browser/ui/libgtkui -type f | xargs sed
  -i 's/NULL/nullptr/g'
$ git cl format

In addition, remove a workaround that redefines NULL to nullptr since
all references to NULL have been removed.
https://cs.chromium.org/chromium/src/chrome/browser/ui/libgtkui/gtk_ui.cc?rcl=8db1658c62cfe49d1be14bc0186d4c20152cfd84&l=85

BUG=79722
R=erg@chromium.org

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

[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/app_indicator_icon.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/app_indicator_icon_menu.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/chrome_gtk_frame.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/chrome_gtk_menu_subclasses.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/gconf_listener.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/gconf_listener.h
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/gtk_event_loop.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/gtk_key_bindings_handler.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/gtk_key_bindings_handler.h
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/gtk_status_icon.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/gtk_ui.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/gtk_ui.h
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/gtk_util.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/gtk_util.h
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/menu_util.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/native_theme_gtk2.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/native_theme_gtk3.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/print_dialog_gtk.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/select_file_dialog_impl.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/select_file_dialog_impl_gtk.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/skia_utils_gtk.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/unity_service.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/x11_input_method_context_impl_gtk.cc
[modify] https://crrev.com/e017cf7ef61b27d0e94380f00b78fdf7f1e1973d/chrome/browser/ui/libgtkui/x11_input_method_context_impl_gtk.h

Project Member Comment 75 by bugdroid1@chromium.org, Feb 22 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d6f69d9b551e64dae8d9fca247116de7827c2a76

commit d6f69d9b551e64dae8d9fca247116de7827c2a76
Author: thomasanderson <thomasanderson@google.com>
Date: Wed Feb 22 21:26:43 2017

Reland of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2711753004/ )

Reason for revert:
The -Wsentinel error should be fixed by https://codereview.chromium.org/2707313002/

Original issue's description:
> Revert of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2670623002/ )
>
> Reason for revert:
> Broke the build:
> https://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20%28dbg%29%2832%29/builds/63779
>
> [3232/5256] CXX obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> FAILED: obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> /b/c/goma_client/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o.d -DLIBGTKUI_IMPLEMENTATION -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"289944-2\" -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCOMPONENT_BUILD -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -DUSE_GCONF -DUSE_CUPS -DGL_GLEXT_PROTOTYPES -DUSE_GLX -DUSE_EGL -DTOOLKIT_VIEWS=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DSK_IGNORE_DW_GRAY_FIX -DSK_IGNORE_DIRECTWRITE_GASP_FIX -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_SUPPORT_GPU=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DPROTOBUF_USE_DLLS -DBORINGSSL_SHARED_LIBRARY -DUSING_V8_SHARED -I../.. -Igen -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gconf/2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/dbus-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/dbus-1.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../third_party/khronos -I../../gpu -I../../third_party/libwebp -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/unix-print -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -Igen/chrome -Igen/chrome -Igen/chrome -Igen/chrome -Igen/components -Igen/components -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/mesa/src/include -I../../third_party/libwebm/source -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/boringssl/src/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nss -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nspr -Igen -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -Igen/ui/resources -Igen/ui/resources -Igen/ui/views/resources -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -fcolor-diagnostics -m32 -msse2 -mfpmath=sse -mmmx -momit-leaf-frame-pointer -pthread -mstack-alignment=16 -mstackrealign -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-deprecated-register -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-block-capture-autoreleasing -O0 -fno-omit-frame-pointer -g2 -gsplit-dwarf --sysroot=../../build/linux/debian_wheezy_i386-sysroot -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wno-unused-function -Wno-unused-local-typedef -Wno-header-guard -fvisibility-inlines-hidden -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=gnu++11 -fno-rtti -fno-exceptions -c ../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc -o obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> ../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc:542:74: error: missing sentinel in function call [-Werror,-Wsentinel]
>     gtk_style_context_get(context, state, "min-height", &min_height, NULL);
>                                                                          ^
>                                                                          , nullptr
> ../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/gtk/gtkstylecontext.h:736:6: note: function has been explicitly marked sentinel here
> void gtk_style_context_get          (GtkStyleContext *context,
>      ^
> 1 error generated.
>
> Original issue's description:
> > Linux UI: Switch to the Gtk3 theme
> >
> > Sets "use_gtk3 = true" by default.
> >
> > BUG=79722
> > TBR=dpranke@chromium.org
> >
> > Review-Url: https://codereview.chromium.org/2670623002
> > Cr-Commit-Position: refs/heads/master@{#452118}
> > Committed: https://chromium.googlesource.com/chromium/src/+/872a494bba52e597388aec738d9d681183a3d47b
>
> TBR=erg@chromium.org,mmoss@chromium.org,thomasanderson@google.com
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=79722
>
> Review-Url: https://codereview.chromium.org/2711753004
> Cr-Commit-Position: refs/heads/master@{#452149}
> Committed: https://chromium.googlesource.com/chromium/src/+/4ebd84e40a1c791117a8d3f7b85c13cfdf816864

TBR=erg@chromium.org,mmoss@chromium.org,fgorski@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=79722

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

[modify] https://crrev.com/d6f69d9b551e64dae8d9fca247116de7827c2a76/build/config/linux/gtk/gtk.gni
[modify] https://crrev.com/d6f69d9b551e64dae8d9fca247116de7827c2a76/chrome/installer/linux/debian/expected_deps_x64_jessie
[modify] https://crrev.com/d6f69d9b551e64dae8d9fca247116de7827c2a76/chrome/installer/linux/debian/expected_deps_x64_wheezy
[modify] https://crrev.com/d6f69d9b551e64dae8d9fca247116de7827c2a76/chrome/installer/linux/rpm/expected_deps_x86_64

For me, the last change brought the following problem -

[libprotobuf FATAL ../../third_party/protobuf/src/google/protobuf/stubs/common.cc:78] This program was compiled against version 2.6.1 of the Protocol Buffer runtime library, which is not compatible with the installed version (3.0.0).  Contact the program author for an update.  If you compiled the program yourself, make sure that your headers are from the same version of Protocol Buffers as your link-time library.  (Version verification failed in "/build/mir-pkdHET/mir-0.21.0+16.04.20160330/obj-x86_64-linux-gnu/src/protobuf/mir_protobuf.pb.cc".)
Aborted (core dumped)

Trying to remove libmirprotobuf3 removes gtk3, which has dependency on protobuf 3. 

Adding use_gtk3=false to gn args solves the issue.

xubuntu 16.04LTS
$ uname -srv
Linux 4.4.0-59-generic

The last change makes selected text in black text and white background on my Linux desktop. Is it expected behavior?
Comment 78 by treib@chromium.org, Feb 23 2017
FYI: I'm reverting the CL in comment 75 due to the failures on https://uberchromegw.corp.google.com/i/chromium.linux/builders/Linux%20Tests%20%28dbg%29%281%29%2832%29

Revert CL: https://codereview.chromium.org/2713513006/
Project Member Comment 79 by bugdroid1@chromium.org, Feb 23 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b298b9de02d88e38719642806407be6abb630f04

commit b298b9de02d88e38719642806407be6abb630f04
Author: treib <treib@chromium.org>
Date: Thu Feb 23 12:12:54 2017

Revert of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2709333002/ )

Reason for revert:
This seems to have broken various tests on a Linux bot: https://uberchromegw.corp.google.com/i/chromium.linux/builders/Linux%20Tests%20%28dbg%29%281%29%2832%29

e.g.: https://chromium-swarm.appspot.com/task?id=3480d58abbe19910&refresh=10&show_raw=1

Relevant line from the output:
../../out/Debug/chrome: error while loading shared libraries: libgtk-3.so.0: cannot open shared object file: No such file or directory

Original issue's description:
> Reland of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2711753004/ )
>
> Reason for revert:
> The -Wsentinel error should be fixed by https://codereview.chromium.org/2707313002/
>
> Original issue's description:
> > Revert of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2670623002/ )
> >
> > Reason for revert:
> > Broke the build:
> > https://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20%28dbg%29%2832%29/builds/63779
> >
> > [3232/5256] CXX obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> > FAILED: obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> > /b/c/goma_client/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o.d -DLIBGTKUI_IMPLEMENTATION -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"289944-2\" -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCOMPONENT_BUILD -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -DUSE_GCONF -DUSE_CUPS -DGL_GLEXT_PROTOTYPES -DUSE_GLX -DUSE_EGL -DTOOLKIT_VIEWS=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DSK_IGNORE_DW_GRAY_FIX -DSK_IGNORE_DIRECTWRITE_GASP_FIX -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_SUPPORT_GPU=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DPROTOBUF_USE_DLLS -DBORINGSSL_SHARED_LIBRARY -DUSING_V8_SHARED -I../.. -Igen -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gconf/2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/dbus-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/dbus-1.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../third_party/khronos -I../../gpu -I../../third_party/libwebp -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/unix-print -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -Igen/chrome -Igen/chrome -Igen/chrome -Igen/chrome -Igen/components -Igen/components -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/mesa/src/include -I../../third_party/libwebm/source -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/boringssl/src/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nss -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nspr -Igen -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -Igen/ui/resources -Igen/ui/resources -Igen/ui/views/resources -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -fcolor-diagnostics -m32 -msse2 -mfpmath=sse -mmmx -momit-leaf-frame-pointer -pthread -mstack-alignment=16 -mstackrealign -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-deprecated-register -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-block-capture-autoreleasing -O0 -fno-omit-frame-pointer -g2 -gsplit-dwarf --sysroot=../../build/linux/debian_wheezy_i386-sysroot -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wno-unused-function -Wno-unused-local-typedef -Wno-header-guard -fvisibility-inlines-hidden -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=gnu++11 -fno-rtti -fno-exceptions -c ../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc -o obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> > ../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc:542:74: error: missing sentinel in function call [-Werror,-Wsentinel]
> >     gtk_style_context_get(context, state, "min-height", &min_height, NULL);
> >                                                                          ^
> >                                                                          , nullptr
> > ../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/gtk/gtkstylecontext.h:736:6: note: function has been explicitly marked sentinel here
> > void gtk_style_context_get          (GtkStyleContext *context,
> >      ^
> > 1 error generated.
> >
> > Original issue's description:
> > > Linux UI: Switch to the Gtk3 theme
> > >
> > > Sets "use_gtk3 = true" by default.
> > >
> > > BUG=79722
> > > TBR=dpranke@chromium.org
> > >
> > > Review-Url: https://codereview.chromium.org/2670623002
> > > Cr-Commit-Position: refs/heads/master@{#452118}
> > > Committed: https://chromium.googlesource.com/chromium/src/+/872a494bba52e597388aec738d9d681183a3d47b
> >
> > TBR=erg@chromium.org,mmoss@chromium.org,thomasanderson@google.com
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=79722
> >
> > Review-Url: https://codereview.chromium.org/2711753004
> > Cr-Commit-Position: refs/heads/master@{#452149}
> > Committed: https://chromium.googlesource.com/chromium/src/+/4ebd84e40a1c791117a8d3f7b85c13cfdf816864
>
> TBR=erg@chromium.org,mmoss@chromium.org,fgorski@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=79722
>
> Review-Url: https://codereview.chromium.org/2709333002
> Cr-Commit-Position: refs/heads/master@{#452208}
> Committed: https://chromium.googlesource.com/chromium/src/+/d6f69d9b551e64dae8d9fca247116de7827c2a76

TBR=erg@chromium.org,mmoss@chromium.org,fgorski@chromium.org,qiankun.miao@intel.com,thomasanderson@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=79722

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

[modify] https://crrev.com/b298b9de02d88e38719642806407be6abb630f04/build/config/linux/gtk/gtk.gni
[modify] https://crrev.com/b298b9de02d88e38719642806407be6abb630f04/chrome/installer/linux/debian/expected_deps_x64_jessie
[modify] https://crrev.com/b298b9de02d88e38719642806407be6abb630f04/chrome/installer/linux/debian/expected_deps_x64_wheezy
[modify] https://crrev.com/b298b9de02d88e38719642806407be6abb630f04/chrome/installer/linux/rpm/expected_deps_x86_64

../../out/Debug/chrome: error while loading shared libraries: libgtk-3.so.0: cannot open shared object file: No such file or directory

That's because gtk3 is not installed....
Comment 81 by treib@chromium.org, Feb 23 2017
Yup. I guess you'll have to talk to Infra people about installing gtk3 on that bot.
#77 Which Gtk3 version and theme are you using?

You can find these with the following commands:
$ dpkg -l libgtk-3-0
$ gsettings get org.gnome.desktop.interface gtk-theme

#82 Gtk3 info:
gtk3 3.20.4-1
gtk-theme: "Adwaita"
Project Member Comment 84 by bugdroid1@chromium.org, Feb 27 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/10b633b595d245bf4cfb534a38468e40da4fa448

commit 10b633b595d245bf4cfb534a38468e40da4fa448
Author: thomasanderson <thomasanderson@google.com>
Date: Mon Feb 27 19:17:44 2017

Gtk3: Fix GtkTextView colors

This CL fixes a regression caused by
https://codereview.chromium.org/2701923002/
There was a last-minute change from GtkEntry to GtkTextView, but I
incorrectly assumed that selection and text colors would be handled
in the same way.

BUG=79722
R=erg@chromium.org

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

[modify] https://crrev.com/10b633b595d245bf4cfb534a38468e40da4fa448/chrome/browser/ui/libgtkui/gtk_ui.cc
[modify] https://crrev.com/10b633b595d245bf4cfb534a38468e40da4fa448/chrome/browser/ui/libgtkui/gtk_util.cc
[modify] https://crrev.com/10b633b595d245bf4cfb534a38468e40da4fa448/chrome/browser/ui/libgtkui/gtk_util.h
[modify] https://crrev.com/10b633b595d245bf4cfb534a38468e40da4fa448/chrome/browser/ui/libgtkui/native_theme_gtk3.cc

Project Member Comment 85 by bugdroid1@chromium.org, Mar 3 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/89be63a39b5014096115d3ec60d13fde39e73283

commit 89be63a39b5014096115d3ec60d13fde39e73283
Author: thomasanderson <thomasanderson@google.com>
Date: Fri Mar 03 03:11:41 2017

Linux UI: Switch to the Gtk3 theme

Sets "use_gtk3 = true" by default.

BUG=79722
TBR=dpranke@chromium.org

> Review-Url: https://codereview.chromium.org/2670623002
> Cr-Commit-Position: refs/heads/master@{#452118}
> Committed: https://chromium.googlesource.com/chromium/src/+/872a494bba52e597388aec738d9d681183a3d47b

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

[modify] https://crrev.com/89be63a39b5014096115d3ec60d13fde39e73283/build/config/linux/gtk/gtk.gni
[modify] https://crrev.com/89be63a39b5014096115d3ec60d13fde39e73283/chrome/installer/linux/debian/expected_deps_x64_jessie
[modify] https://crrev.com/89be63a39b5014096115d3ec60d13fde39e73283/chrome/installer/linux/debian/expected_deps_x64_wheezy
[modify] https://crrev.com/89be63a39b5014096115d3ec60d13fde39e73283/chrome/installer/linux/rpm/expected_deps_x86_64

Project Member Comment 86 by bugdroid1@chromium.org, Mar 3 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d75f748f806d61b22012c723d63322afb2ff7208

commit d75f748f806d61b22012c723d63322afb2ff7208
Author: inferno <inferno@chromium.org>
Date: Fri Mar 03 17:17:44 2017

Revert of Linux UI: Switch to the Gtk3 theme (patchset #2 id:160001 of https://codereview.chromium.org/2670623002/ )

Reason for revert:
Broke MSAN bots and ClusterFuzz bots.

BUG=698239,698252

Original issue's description:
> Linux UI: Switch to the Gtk3 theme
>
> Sets "use_gtk3 = true" by default.
>
> BUG=79722
> TBR=dpranke@chromium.org
>
> > Review-Url: https://codereview.chromium.org/2670623002
> > Cr-Commit-Position: refs/heads/master@{#452118}
> > Committed: https://chromium.googlesource.com/chromium/src/+/872a494bba52e597388aec738d9d681183a3d47b
>
> Review-Url: https://codereview.chromium.org/2670623002
> Cr-Commit-Position: refs/heads/master@{#454491}
> Committed: https://chromium.googlesource.com/chromium/src/+/89be63a39b5014096115d3ec60d13fde39e73283

TBR=erg@chromium.org,mmoss@chromium.org,thomasanderson@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=79722

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

[modify] https://crrev.com/d75f748f806d61b22012c723d63322afb2ff7208/build/config/linux/gtk/gtk.gni
[modify] https://crrev.com/d75f748f806d61b22012c723d63322afb2ff7208/chrome/installer/linux/debian/expected_deps_x64_jessie
[modify] https://crrev.com/d75f748f806d61b22012c723d63322afb2ff7208/chrome/installer/linux/debian/expected_deps_x64_wheezy
[modify] https://crrev.com/d75f748f806d61b22012c723d63322afb2ff7208/chrome/installer/linux/rpm/expected_deps_x86_64

Blockedon: 699669
Project Member Comment 88 by bugdroid1@chromium.org, Mar 8 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/072522801041708fba94498a1844cb89f24d4590

commit 072522801041708fba94498a1844cb89f24d4590
Author: thomasanderson <thomasanderson@google.com>
Date: Wed Mar 08 23:42:04 2017

Linux UI: Switch to the Gtk3 theme

Sets "use_gtk3 = true" by default.

BUG=79722
TBR=dpranke@chromium.org
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_msan_rel_ng;master.tryserver.chromium.linux:linux_chromium_dbg_32_ng

> > Review-Url: https://codereview.chromium.org/2670623002
> > Cr-Commit-Position: refs/heads/master@{#452118}
> > Committed: https://chromium.googlesource.com/chromium/src/+/872a494bba52e597388aec738d9d681183a3d47b

> Review-Url: https://codereview.chromium.org/2670623002
> Cr-Commit-Position: refs/heads/master@{#454491}
> Committed: https://chromium.googlesource.com/chromium/src/+/89be63a39b5014096115d3ec60d13fde39e73283

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

[modify] https://crrev.com/072522801041708fba94498a1844cb89f24d4590/build/config/linux/gtk/gtk.gni
[modify] https://crrev.com/072522801041708fba94498a1844cb89f24d4590/chrome/installer/linux/debian/expected_deps_x64_jessie
[modify] https://crrev.com/072522801041708fba94498a1844cb89f24d4590/chrome/installer/linux/debian/expected_deps_x64_wheezy
[modify] https://crrev.com/072522801041708fba94498a1844cb89f24d4590/chrome/installer/linux/rpm/expected_deps_x86_64

Project Member Comment 89 by bugdroid1@chromium.org, Mar 10 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4af1264005620a483a209f4344c3782f62eee69a

commit 4af1264005620a483a209f4344c3782f62eee69a
Author: thomasanderson <thomasanderson@google.com>
Date: Fri Mar 10 01:01:59 2017

Statically link libprotobuf_lite on Linux

Chrome has a direct dependency on a custom libprotobuf_lite in
third_party, but Xenial and Yakkety add a dependency on the system
libprotobuf-lite via Mir (which gets loaded from Gtk).

Our third_party protobuf is not compatible with the upstream protobuf.
Combine this with the fact that Xenial uses version 2 while Yakkety
uses version 3, and it's basically impossible to make our third_party
protobuf cooperate with the system one.  The solution is to always
statically link protobuf on Linux.

BUG=79722,700120
R=pkasting@chromium.org
TBR=bengr@chromium.org
CC=dpranke@chromium.org,rsimha@chromium.org

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

[modify] https://crrev.com/4af1264005620a483a209f4344c3782f62eee69a/net/BUILD.gn
[modify] https://crrev.com/4af1264005620a483a209f4344c3782f62eee69a/third_party/protobuf/BUILD.gn

Cc: tanin@chromium.org
linux_debug_chrome configuration is broken on startup. Please take a look asap or revert c#88.

linux_debug_chrome (r455700)
/mnt/scratch0/clusterfuzz/slave-bot/builds/chromium-browser-asan_linux-debug_4392242b7f59878a2775b4607420a2b37e17ff13/revisions/asan-linux-debug-455700/chrome --user-data-dir=/mnt/scratch0/tmp/user_profile_0 --log-net-log=/mnt/scratch0/tmp/net_log_0 --ignore-gpu-blacklist --allow-file-access-from-files --disable-gesture-requirement-for-media-playback --disable-click-to-play --disable-hang-monitor --dns-prefetch-disable --disable-default-apps --disable-component-update --safebrowsing-disable-auto-update --metrics-recording-only --disable-gpu-watchdog --disable-metrics --disable-popup-blocking --disable-prompt-on-repost --enable-experimental-extension-apis --enable-extension-apps --js-flags="--expose-gc --verify-heap" --new-window --no-default-browser-check --no-first-run --no-process-singleton-dialog --enable-shadow-dom --enable-media-stream --use-gl=osmesa --disable-gl-drawing-for-tests --use-fake-device-for-media-stream --use-fake-ui-for-media-stream 

Xlib: extension "RANDR" missing on display ":1".
[4104:4104:0309/034628.225470:WARNING:audio_manager.cc(295)] Multiple instances of AudioManager detected
[4104:4104:0309/034628.226045:WARNING:audio_manager.cc(254)] Multiple instances of AudioManager detected
[4104:4104:0309/034629.382944:WARNING:password_store_factory.cc(247)] Using basic (unencrypted) store for password storage. See https://chromium.googlesource.com/chromium/src/+/master/docs/linux_password_storage.md for more information about password storage options.
[4104:4104:0309/034630.569819:FATAL:browser_main_loop.cc(279)] <unknown>: AT-SPI: Could not obtain desktop path or name

#0 0x7ff3010560b1 __interceptor_backtrace
#1 0x7ff2fe2ca97b base::debug::StackTrace::StackTrace()
#2 0x7ff2fe2c5477 base::debug::StackTrace::StackTrace()
#3 0x7ff2fe45676c logging::LogMessage::~LogMessage()
#4 0x7ff2e9464771 content::(anonymous namespace)::GLibLogHandler()
#5 0x7ff2c85ecae1 g_logv
#6 0x7ff2c85ecd72 g_log
#7 0x7ff2aa861c65 <unknown>
#8 0x7ff2c3dc3502 <unknown>
#9 0x7ff2c3dc6731 dbus_connection_dispatch
#10 0x7ff2a9530205 <unknown>
#11 0x7ff2c85e5e04 g_main_context_dispatch
#12 0x7ff2c85e6048 <unknown>
#13 0x7ff2c85e60ec g_main_context_iteration
#14 0x7ff2fe5140f9 base::MessagePumpGlib::Run()
#15 0x7ff2fe4dc1fa base::MessageLoop::RunHandler()
#16 0x7ff2fe733a27 base::RunLoop::Run()
#17 0x7ff30707a2f2 ChromeBrowserMainParts::MainMessageLoopRun()
#18 0x7ff2e9452591 content::BrowserMainLoop::RunMainMessageLoopParts()
#19 0x7ff2e947a68f content::BrowserMainRunnerImpl::Run()
#20 0x7ff2e942df64 content::BrowserMain()
#21 0x7ff2eebe8f0c content::RunNamedProcessTypeMain()
#22 0x7ff2eebf167b content::ContentMainRunnerImpl::Run()
#23 0x7ff2eebe3755 content::ContentMain()
#24 0x7ff3010e1f4a ChromeMain
#25 0x7ff3010e1b13 main
#26 0x7ff2c3093f45 __libc_start_main
#27 0x7ff301006d09 <unknown>
Received signal 6
#0 0x7ff3010560b1 __interceptor_backtrace
#1 0x7ff2fe2ca97b base::debug::StackTrace::StackTrace()
#2 0x7ff2fe2c5477 base::debug::StackTrace::StackTrace()
#3 0x7ff2fe2c9266 base::debug::(anonymous namespace)::StackDumpSignalHandler()
#4 0x7ff2c49b4330 <unknown>
#5 0x7ff2c30a8c37 gsignal
#6 0x7ff2c30ac028 abort
#7 0x7ff2fe2bc68e base::debug::(anonymous namespace)::DebugBreak()
#8 0x7ff2fe2bc65b base::debug::BreakDebugger()
#9 0x7ff2fe457b0a logging::LogMessage::~LogMessage()
#10 0x7ff2e9464771 content::(anonymous namespace)::GLibLogHandler()
#11 0x7ff2c85ecae1 g_logv
#12 0x7ff2c85ecd72 g_log
#13 0x7ff2aa861c65 <unknown>
#14 0x7ff2c3dc3502 <unknown>
#15 0x7ff2c3dc6731 dbus_connection_dispatch
#16 0x7ff2a9530205 <unknown>
#17 0x7ff2c85e5e04 g_main_context_dispatch
#18 0x7ff2c85e6048 <unknown>
#19 0x7ff2c85e60ec g_main_context_iteration
#20 0x7ff2fe5140f9 base::MessagePumpGlib::Run()
#21 0x7ff2fe4dc1fa base::MessageLoop::RunHandler()
#22 0x7ff2fe733a27 base::RunLoop::Run()
#23 0x7ff30707a2f2 ChromeBrowserMainParts::MainMessageLoopRun()
#24 0x7ff2e9452591 content::BrowserMainLoop::RunMainMessageLoopParts()
#25 0x7ff2e947a68f content::BrowserMainRunnerImpl::Run()
#26 0x7ff2e942df64 content::BrowserMain()
#27 0x7ff2eebe8f0c content::RunNamedProcessTypeMain()
#28 0x7ff2eebf167b content::ContentMainRunnerImpl::Run()
#29 0x7ff2eebe3755 content::ContentMain()
#30 0x7ff3010e1f4a ChromeMain
#31 0x7ff3010e1b13 main
#32 0x7ff2c3093f45 __libc_start_main
#33 0x7ff301006d09 <unknown>
r8: 000000008fff6fff r9: 0000000000000000 r10: 0000000000000008 r11: 0000000000000202
r12: 00007ff2a926d820 r13: 00007ff2a926da60 r14: 00000ffed5245b00 r15: 00007ff2fedae9b1
di: 0000000000001008 si: 0000000000001008 bp: 00007ffcab14bf80 bx: 00007ffcab14bfa0
dx: 0000000000000006 ax: 0000000000000000 cx: ffffffffffffffff sp: 00007ffcab14be48
ip: 00007ff2c30a8c37 efl: 0000000000000202 cgf: 0000000000000033 erf: 0000000000000000
trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace]
Calling _exit(1). Core file will not be generated.
[1:1:0100/000000.256146:ERROR:broker_posix.cc(41)] Invalid node channel message


Xlib: extension "RANDR" missing on display ":1".
[4104:4104:0309/034628.225470:WARNING:audio_manager.cc(295)] Multiple instances of AudioManager detected
[4104:4104:0309/034628.226045:WARNING:audio_manager.cc(254)] Multiple instances of AudioManager detected
[4104:4104:0309/034629.382944:WARNING:password_store_factory.cc(247)] Using basic (unencrypted) store for password storage. See https://chromium.googlesource.com/chromium/src/+/master/docs/linux_password_storage.md for more information about password storage options.
[4104:4104:0309/034630.569819:FATAL:browser_main_loop.cc(279)] <unknown>: AT-SPI: Could not obtain desktop path or name

#0 0x7ff3010560b1 __interceptor_backtrace
#1 0x7ff2fe2ca97b base::debug::StackTrace::StackTrace()
#2 0x7ff2fe2c5477 base::debug::StackTrace::StackTrace()
#3 0x7ff2fe45676c logging::LogMessage::~LogMessage()
#4 0x7ff2e9464771 content::(anonymous namespace)::GLibLogHandler()
#5 0x7ff2c85ecae1 g_logv
#6 0x7ff2c85ecd72 g_log
#7 0x7ff2aa861c65 <unknown>
#8 0x7ff2c3dc3502 <unknown>
#9 0x7ff2c3dc6731 dbus_connection_dispatch
#10 0x7ff2a9530205 <unknown>
#11 0x7ff2c85e5e04 g_main_context_dispatch
#12 0x7ff2c85e6048 <unknown>
#13 0x7ff2c85e60ec g_main_context_iteration
#14 0x7ff2fe5140f9 base::MessagePumpGlib::Run()
#15 0x7ff2fe4dc1fa base::MessageLoop::RunHandler()
#16 0x7ff2fe733a27 base::RunLoop::Run()
#17 0x7ff30707a2f2 ChromeBrowserMainParts::MainMessageLoopRun()
#18 0x7ff2e9452591 content::BrowserMainLoop::RunMainMessageLoopParts()
#19 0x7ff2e947a68f content::BrowserMainRunnerImpl::Run()
#20 0x7ff2e942df64 content::BrowserMain()
#21 0x7ff2eebe8f0c content::RunNamedProcessTypeMain()
#22 0x7ff2eebf167b content::ContentMainRunnerImpl::Run()
#23 0x7ff2eebe3755 content::ContentMain()
#24 0x7ff3010e1f4a ChromeMain
#25 0x7ff3010e1b13 main
#26 0x7ff2c3093f45 __libc_start_main
#27 0x7ff301006d09 <unknown>
Received signal 6
#0 0x7ff3010560b1 __interceptor_backtrace
#1 0x7ff2fe2ca97b base::debug::StackTrace::StackTrace()
#2 0x7ff2fe2c5477 base::debug::StackTrace::StackTrace()
#3 0x7ff2fe2c9266 base::debug::(anonymous namespace)::StackDumpSignalHandler()
#4 0x7ff2c49b4330 <unknown>
#5 0x7ff2c30a8c37 gsignal
#6 0x7ff2c30ac028 abort
#7 0x7ff2fe2bc68e base::debug::(anonymous namespace)::DebugBreak()
#8 0x7ff2fe2bc65b base::debug::BreakDebugger()
#9 0x7ff2fe457b0a logging::LogMessage::~LogMessage()
#10 0x7ff2e9464771 content::(anonymous namespace)::GLibLogHandler()
#11 0x7ff2c85ecae1 g_logv
#12 0x7ff2c85ecd72 g_log
#13 0x7ff2aa861c65 <unknown>
#14 0x7ff2c3dc3502 <unknown>
#15 0x7ff2c3dc6731 dbus_connection_dispatch
#16 0x7ff2a9530205 <unknown>
#17 0x7ff2c85e5e04 g_main_context_dispatch
#18 0x7ff2c85e6048 <unknown>
#19 0x7ff2c85e60ec g_main_context_iteration
#20 0x7ff2fe5140f9 base::MessagePumpGlib::Run()
#21 0x7ff2fe4dc1fa base::MessageLoop::RunHandler()
#22 0x7ff2fe733a27 base::RunLoop::Run()
#23 0x7ff30707a2f2 ChromeBrowserMainParts::MainMessageLoopRun()
#24 0x7ff2e9452591 content::BrowserMainLoop::RunMainMessageLoopParts()
#25 0x7ff2e947a68f content::BrowserMainRunnerImpl::Run()
#26 0x7ff2e942df64 content::BrowserMain()
#27 0x7ff2eebe8f0c content::RunNamedProcessTypeMain()
#28 0x7ff2eebf167b content::ContentMainRunnerImpl::Run()
#29 0x7ff2eebe3755 content::ContentMain()
#30 0x7ff3010e1f4a ChromeMain
#31 0x7ff3010e1b13 main
#32 0x7ff2c3093f45 __libc_start_main
#33 0x7ff301006d09 <unknown>
r8: 000000008fff6fff r9: 0000000000000000 r10: 0000000000000008 r11: 0000000000000202
r12: 00007ff2a926d820 r13: 00007ff2a926da60 r14: 00000ffed5245b00 r15: 00007ff2fedae9b1
di: 0000000000001008 si: 0000000000001008 bp: 00007ffcab14bf80 bx: 00007ffcab14bfa0
dx: 0000000000000006 ax: 0000000000000000 cx: ffffffffffffffff sp: 00007ffcab14be48
ip: 00007ff2c30a8c37 efl: 0000000000000202 cgf: 0000000000000033 erf: 0000000000000000
trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace]
Calling _exit(1). Core file will not be generated.
[1:1:0100/000000.256146:ERROR:broker_posix.cc(41)] Invalid node channel message
#90 Working on a fix now
cl created https://codereview.chromium.org/2741103004/
Project Member Comment 93 by bugdroid1@chromium.org, Mar 10 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/368901b0060c0dfc90787fcf47351b0b4ab262c3

commit 368901b0060c0dfc90787fcf47351b0b4ab262c3
Author: thomasanderson <thomasanderson@google.com>
Date: Fri Mar 10 04:23:33 2017

Add an exception in GLibLogHandler for an AtSpi warning

BUG=79722
R=inferno@chromium.org
TBR=avi@chromium.org

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

[modify] https://crrev.com/368901b0060c0dfc90787fcf47351b0b4ab262c3/content/browser/browser_main_loop.cc

Project Member Comment 94 by bugdroid1@chromium.org, Mar 10 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9e80d868029c25fdb129f85d0f8f75e8f6c013e1

commit 9e80d868029c25fdb129f85d0f8f75e8f6c013e1
Author: kinuko <kinuko@chromium.org>
Date: Fri Mar 10 07:15:41 2017

Revert of Statically link libprotobuf_lite on Linux (patchset #2 id:20001 of https://codereview.chromium.org/2746493002/ )

Reason for revert:
Not sure why, but it looks this starts to cause CloudPolicyManagerTest failures.

(Confirmed that locally reverting this CL fixed them)

https://build.chromium.org/p/chromium.linux/builders/Linux%20Tests%20%28dbg%29%281%29%2832%29/builds/39213

https://build.chromium.org/p/chromium.linux/builders/Linux%20Tests%20%28dbg%29%281%29%2832%29/builds/39214

CloudPolicyManagerTest.Register
CloudPolicyManagerTest.RegisterWithRetry
failed to process gtest output JSON
CloudPolicyProtoTest.VerifyProtobufEquivalence

Original issue's description:
> Statically link libprotobuf_lite on Linux
>
> Chrome has a direct dependency on a custom libprotobuf_lite in
> third_party, but Xenial and Yakkety add a dependency on the system
> libprotobuf-lite via Mir (which gets loaded from Gtk).
>
> Our third_party protobuf is not compatible with the upstream protobuf.
> Combine this with the fact that Xenial uses version 2 while Yakkety
> uses version 3, and it's basically impossible to make our third_party
> protobuf cooperate with the system one.  The solution is to always
> statically link protobuf on Linux.
>
> BUG=79722,700120
> R=pkasting@chromium.org
> TBR=bengr@chromium.org
> CC=dpranke@chromium.org,rsimha@chromium.org
>
> Review-Url: https://codereview.chromium.org/2746493002
> Cr-Commit-Position: refs/heads/master@{#455936}
> Committed: https://chromium.googlesource.com/chromium/src/+/4af1264005620a483a209f4344c3782f62eee69a

TBR=pkasting@chromium.org,bengr@chromium.org,thomasanderson@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=79722,700120

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

[modify] https://crrev.com/9e80d868029c25fdb129f85d0f8f75e8f6c013e1/net/BUILD.gn
[modify] https://crrev.com/9e80d868029c25fdb129f85d0f8f75e8f6c013e1/third_party/protobuf/BUILD.gn

Cc: infe...@chromium.org
Now, linux_debug_chrome is crashing on startup on a different trace.

linux_debug_chrome (r456321)
/mnt/scratch0/clusterfuzz/slave-bot/builds/chromium-browser-asan_linux-debug_4392242b7f59878a2775b4607420a2b37e17ff13/revisions/asan-linux-debug-456321/chrome --user-data-dir=/mnt/scratch0/tmp/user_profile_0 --log-net-log=/mnt/scratch0/tmp/net_log_0 --ignore-gpu-blacklist --allow-file-access-from-files --disable-gesture-requirement-for-media-playback --disable-click-to-play --disable-hang-monitor --dns-prefetch-disable --disable-default-apps --disable-component-update --safebrowsing-disable-auto-update --metrics-recording-only --disable-gpu-watchdog --disable-metrics --disable-popup-blocking --disable-prompt-on-repost --enable-experimental-extension-apis --enable-extension-apps --js-flags="--expose-gc --verify-heap" --new-window --no-default-browser-check --no-first-run --no-process-singleton-dialog --enable-shadow-dom --enable-media-stream --use-gl=osmesa --disable-gl-drawing-for-tests --use-fake-device-for-media-stream --use-fake-ui-for-media-stream --enable-features=V8NoTurbo 

Xlib: extension "RANDR" missing on display ":1".
[10224:10224:0312/235138.696633:WARNING:audio_manager.cc(295)] Multiple instances of AudioManager detected
[10224:10224:0312/235138.696904:WARNING:audio_manager.cc(254)] Multiple instances of AudioManager detected
[10224:10224:0312/235139.957616:WARNING:password_store_factory.cc(247)] Using basic (unencrypted) store for password storage. See https://chromium.googlesource.com/chromium/src/+/master/docs/linux_password_storage.md for more information about password storage options.
[10224:10224:0312/235141.257718:ERROR:browser_main_loop.cc(279)] AT-SPI: Could not obtain desktop path or name
[10224:10224:0312/235141.276951:FATAL:browser_main_loop.cc(283)] <unknown>: atk-bridge: get_device_events_reply: unknown signature
#0 0x7f1280cfe9d1 __interceptor_backtrace
#1 0x7f127df4b15b base::debug::StackTrace::StackTrace()
#2 0x7f127df45c57 base::debug::StackTrace::StackTrace()
#3 0x7f127e0d6f4c logging::LogMessage::~LogMessage()
#4 0x7f126908b530 content::(anonymous namespace)::GLibLogHandler()
#5 0x7f1248127ae1 g_logv
#6 0x7f1248127d72 g_log
#7 0x7f1229fb2aa5 <unknown>
#8 0x7f12438fe502 <unknown>
#9 0x7f1243901731 dbus_connection_dispatch
#10 0x7f1228c80205 <unknown>
#11 0x7f1248120e04 g_main_context_dispatch
#12 0x7f1248121048 <unknown>
#13 0x7f12481210ec g_main_context_iteration
#14 0x7f127e1948d9 base::MessagePumpGlib::Run()
#15 0x7f127e15c9da base::MessageLoop::RunHandler()
#16 0x7f127e3b4747 base::RunLoop::Run()
#17 0x7f1286e87202 ChromeBrowserMainParts::MainMessageLoopRun()
#18 0x7f1269078f11 content::BrowserMainLoop::RunMainMessageLoopParts()
#19 0x7f12690a144f content::BrowserMainRunnerImpl::Run()
#20 0x7f12690548e4 content::BrowserMain()
#21 0x7f126e828bec content::RunNamedProcessTypeMain()
#22 0x7f126e83135b content::ContentMainRunnerImpl::Run()
#23 0x7f126e823435 content::ContentMain()
#24 0x7f1280d8a86a ChromeMain
#25 0x7f1280d8a433 main
#26 0x7f1242bcef45 __libc_start_main
#27 0x7f1280caf629 <unknown>
Received signal 6
#0 0x7f1280cfe9d1 __interceptor_backtrace
#1 0x7f127df4b15b base::debug::StackTrace::StackTrace()
#2 0x7f127df45c57 base::debug::StackTrace::StackTrace()
#3 0x7f127df49a46 base::debug::(anonymous namespace)::StackDumpSignalHandler()
#4 0x7f12444ef330 <unknown>
#5 0x7f1242be3c37 gsignal
#6 0x7f1242be7028 abort
#7 0x7f127df3ce6e base::debug::(anonymous namespace)::DebugBreak()
#8 0x7f127df3ce3b base::debug::BreakDebugger()
#9 0x7f127e0d82ea logging::LogMessage::~LogMessage()
#10 0x7f126908b530 content::(anonymous namespace)::GLibLogHandler()
#11 0x7f1248127ae1 g_logv
#12 0x7f1248127d72 g_log
#13 0x7f1229fb2aa5 <unknown>
#14 0x7f12438fe502 <unknown>
#15 0x7f1243901731 dbus_connection_dispatch
#16 0x7f1228c80205 <unknown>
#17 0x7f1248120e04 g_main_context_dispatch
#18 0x7f1248121048 <unknown>
#19 0x7f12481210ec g_main_context_iteration
#20 0x7f127e1948d9 base::MessagePumpGlib::Run()
#21 0x7f127e15c9da base::MessageLoop::RunHandler()
#22 0x7f127e3b4747 base::RunLoop::Run()
#23 0x7f1286e87202 ChromeBrowserMainParts::MainMessageLoopRun()
#24 0x7f1269078f11 content::BrowserMainLoop::RunMainMessageLoopParts()
#25 0x7f12690a144f content::BrowserMainRunnerImpl::Run()
#26 0x7f12690548e4 content::BrowserMain()
#27 0x7f126e828bec content::RunNamedProcessTypeMain()
#28 0x7f126e83135b content::ContentMainRunnerImpl::Run()
#29 0x7f126e823435 content::ContentMain()
#30 0x7f1280d8a86a ChromeMain
#31 0x7f1280d8a433 main
#32 0x7f1242bcef45 __libc_start_main
#33 0x7f1280caf629 <unknown>
r8: 000000008fff6fff r9: 0000000000000000 r10: 0000000000000008 r11: 0000000000000206
r12: 00007f12286b0820 r13: 00007f12286b0a60 r14: 00000fe2c50ce100 r15: 00007f127ea3d591
di: 00000000000027f0 si: 00000000000027f0 bp: 00007fff95494220 bx: 00007fff95494240
dx: 0000000000000006 ax: 0000000000000000 cx: ffffffffffffffff sp: 00007fff954940e8
ip: 00007f1242be3c37 efl: 0000000000000206 cgf: 0000000000000033 erf: 0000000000000000
trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace]
Calling _exit(1). Core file will not be generated.
[1:1:0100/000000.029268:ERROR:broker_posix.cc(41)] Invalid node channel message


Xlib: extension "RANDR" missing on display ":1".
[10224:10224:0312/235138.696633:WARNING:audio_manager.cc(295)] Multiple instances of AudioManager detected
[10224:10224:0312/235138.696904:WARNING:audio_manager.cc(254)] Multiple instances of AudioManager detected
[10224:10224:0312/235139.957616:WARNING:password_store_factory.cc(247)] Using basic (unencrypted) store for password storage. See https://chromium.googlesource.com/chromium/src/+/master/docs/linux_password_storage.md for more information about password storage options.
[10224:10224:0312/235141.257718:ERROR:browser_main_loop.cc(279)] AT-SPI: Could not obtain desktop path or name
[10224:10224:0312/235141.276951:FATAL:browser_main_loop.cc(283)] <unknown>: atk-bridge: get_device_events_reply: unknown signature
#0 0x7f1280cfe9d1 __interceptor_backtrace
#1 0x7f127df4b15b base::debug::StackTrace::StackTrace()
#2 0x7f127df45c57 base::debug::StackTrace::StackTrace()
#3 0x7f127e0d6f4c logging::LogMessage::~LogMessage()
#4 0x7f126908b530 content::(anonymous namespace)::GLibLogHandler()
#5 0x7f1248127ae1 g_logv
#6 0x7f1248127d72 g_log
#7 0x7f1229fb2aa5 <unknown>
#8 0x7f12438fe502 <unknown>
#9 0x7f1243901731 dbus_connection_dispatch
#10 0x7f1228c80205 <unknown>
#11 0x7f1248120e04 g_main_context_dispatch
#12 0x7f1248121048 <unknown>
#13 0x7f12481210ec g_main_context_iteration
#14 0x7f127e1948d9 base::MessagePumpGlib::Run()
#15 0x7f127e15c9da base::MessageLoop::RunHandler()
#16 0x7f127e3b4747 base::RunLoop::Run()
#17 0x7f1286e87202 ChromeBrowserMainParts::MainMessageLoopRun()
#18 0x7f1269078f11 content::BrowserMainLoop::RunMainMessageLoopParts()
#19 0x7f12690a144f content::BrowserMainRunnerImpl::Run()
#20 0x7f12690548e4 content::BrowserMain()
#21 0x7f126e828bec content::RunNamedProcessTypeMain()
#22 0x7f126e83135b content::ContentMainRunnerImpl::Run()
#23 0x7f126e823435 content::ContentMain()
#24 0x7f1280d8a86a ChromeMain
#25 0x7f1280d8a433 main
#26 0x7f1242bcef45 __libc_start_main
#27 0x7f1280caf629 <unknown>
Received signal 6
#0 0x7f1280cfe9d1 __interceptor_backtrace
#1 0x7f127df4b15b base::debug::StackTrace::StackTrace()
#2 0x7f127df45c57 base::debug::StackTrace::StackTrace()
#3 0x7f127df49a46 base::debug::(anonymous namespace)::StackDumpSignalHandler()
#4 0x7f12444ef330 <unknown>
#5 0x7f1242be3c37 gsignal
#6 0x7f1242be7028 abort
#7 0x7f127df3ce6e base::debug::(anonymous namespace)::DebugBreak()
#8 0x7f127df3ce3b base::debug::BreakDebugger()
#9 0x7f127e0d82ea logging::LogMessage::~LogMessage()
#10 0x7f126908b530 content::(anonymous namespace)::GLibLogHandler()
#11 0x7f1248127ae1 g_logv
#12 0x7f1248127d72 g_log
#13 0x7f1229fb2aa5 <unknown>
#14 0x7f12438fe502 <unknown>
#15 0x7f1243901731 dbus_connection_dispatch
#16 0x7f1228c80205 <unknown>
#17 0x7f1248120e04 g_main_context_dispatch
#18 0x7f1248121048 <unknown>
#19 0x7f12481210ec g_main_context_iteration
#20 0x7f127e1948d9 base::MessagePumpGlib::Run()
#21 0x7f127e15c9da base::MessageLoop::RunHandler()
#22 0x7f127e3b4747 base::RunLoop::Run()
#23 0x7f1286e87202 ChromeBrowserMainParts::MainMessageLoopRun()
#24 0x7f1269078f11 content::BrowserMainLoop::RunMainMessageLoopParts()
#25 0x7f12690a144f content::BrowserMainRunnerImpl::Run()
#26 0x7f12690548e4 content::BrowserMain()
#27 0x7f126e828bec content::RunNamedProcessTypeMain()
#28 0x7f126e83135b content::ContentMainRunnerImpl::Run()
#29 0x7f126e823435 content::ContentMain()
#30 0x7f1280d8a86a ChromeMain
#31 0x7f1280d8a433 main
#32 0x7f1242bcef45 __libc_start_main
#33 0x7f1280caf629 <unknown>
r8: 000000008fff6fff r9: 0000000000000000 r10: 0000000000000008 r11: 0000000000000206
r12: 00007f12286b0820 r13: 00007f12286b0a60 r14: 00000fe2c50ce100 r15: 00007f127ea3d591
di: 00000000000027f0 si: 00000000000027f0 bp: 00007fff95494220 bx: 00007fff95494240
dx: 0000000000000006 ax: 0000000000000000 cx: ffffffffffffffff sp: 00007fff954940e8
ip: 00007f1242be3c37 efl: 0000000000000206 cgf: 0000000000000033 erf: 0000000000000000
trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace]
Calling _exit(1). Core file will not be generated.
[1:1:0100/000000.029268:ERROR:broker_posix.cc(41)] Invalid node channel message
Project Member Comment 96 by bugdroid1@chromium.org, Mar 13 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e012271225c9833c8b26880b342fd6cd8c80a108

commit e012271225c9833c8b26880b342fd6cd8c80a108
Author: thomasanderson <thomasanderson@chromium.org>
Date: Mon Mar 13 20:23:29 2017

Add exception in GlibLogHandler for atk-bridge warning

BUG=79722
R=boliu@chromium.org

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

[modify] https://crrev.com/e012271225c9833c8b26880b342fd6cd8c80a108/content/browser/browser_main_loop.cc

Blockedon: 700120
Project Member Comment 98 by bugdroid1@chromium.org, Mar 16 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fd5f9e0d7330c6cd8bbb2301acd77305aa63981c

commit fd5f9e0d7330c6cd8bbb2301acd77305aa63981c
Author: thomasanderson <thomasanderson@chromium.org>
Date: Thu Mar 16 19:23:34 2017

Revert of Linux UI: Switch to the Gtk3 theme (patchset #3 id:180001 of https://codereview.chromium.org/2670623002/ )

Reason for revert:
Reverting to fix component builds on systems with Mir.
Will reland (probably later today) once https://codereview.chromium.org/2756543002/ lands

Original issue's description:
> Linux UI: Switch to the Gtk3 theme
>
> Sets "use_gtk3 = true" by default.
>
> BUG=79722
> TBR=dpranke@chromium.org
> CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_msan_rel_ng;master.tryserver.chromium.linux:linux_chromium_dbg_32_ng
>
> > > Review-Url: https://codereview.chromium.org/2670623002
> > > Cr-Commit-Position: refs/heads/master@{#452118}
> > > Committed: https://chromium.googlesource.com/chromium/src/+/872a494bba52e597388aec738d9d681183a3d47b
>
> > Review-Url: https://codereview.chromium.org/2670623002
> > Cr-Commit-Position: refs/heads/master@{#454491}
> > Committed: https://chromium.googlesource.com/chromium/src/+/89be63a39b5014096115d3ec60d13fde39e73283
>
> Review-Url: https://codereview.chromium.org/2670623002
> Cr-Commit-Position: refs/heads/master@{#455596}
> Committed: https://chromium.googlesource.com/chromium/src/+/072522801041708fba94498a1844cb89f24d4590

TBR=erg@chromium.org,mmoss@chromium.org,thomasanderson@google.com
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=79722,700120

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

[modify] https://crrev.com/fd5f9e0d7330c6cd8bbb2301acd77305aa63981c/build/config/linux/gtk/gtk.gni
[modify] https://crrev.com/fd5f9e0d7330c6cd8bbb2301acd77305aa63981c/chrome/installer/linux/debian/expected_deps_x64_jessie
[modify] https://crrev.com/fd5f9e0d7330c6cd8bbb2301acd77305aa63981c/chrome/installer/linux/debian/expected_deps_x64_wheezy
[modify] https://crrev.com/fd5f9e0d7330c6cd8bbb2301acd77305aa63981c/chrome/installer/linux/rpm/expected_deps_x86_64

Project Member Comment 99 by bugdroid1@chromium.org, Mar 20 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/77bec4dfd9e172a99543b9bfe9daf2580721bfdd

commit 77bec4dfd9e172a99543b9bfe9daf2580721bfdd
Author: thomasanderson <thomasanderson@google.com>
Date: Mon Mar 20 07:09:25 2017

Statically link libprotobuf_lite on Linux component builds

Chrome has a direct dependency on a custom libprotobuf_lite in
third_party, but Xenial and Yakkety add a dependency on the system
libprotobuf-lite via Mir (which gets loaded from Gtk).

Our third_party protobuf is not compatible with the upstream protobuf.
Combine this with the fact that Xenial uses version 2 while Yakkety
uses version 3, and it's basically impossible to make our third_party
protobuf cooperate with the system one.  The solution is to always
statically link protobuf on Linux.

This alone, however, is not enough to fix the issue on component
builds.  If components A and B both have private copies of
libprotobuf_lite, they have their own sets of globals.  A problematic
global is "std::string* google::protobuf::internal::empty_string_".
Protobuf does pointer comparison against this string to determine if
strings are empty.  This is problematic when data is passed from
component A to B, each of which have an empty_string_ at a different
address.

This CL also extracts these types of globals into their own shared
library so they can be shared among Chromium components. It also
adds a 'cr_' prefix to them so they cannot conflict with the system
protobuf.

This change only affects desktop Linux component builds.  Release
binaries and debug binaries on other platforms should be unaffected.

Finally, this CL is a hack, and it should be reverted when a
longer-term solution is implemented.

BUG=79722,700120
R=pkasting@chromium.org
TBR=bengr@chromium.org
CC=dpranke@chromium.org,rsimha@chromium.org
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_dbg_ng;master.tryserver.chromium.mac:mac_chromium_dbg_ng;master.tryserver.chromium.win:win_chromium_dbg_ng

patch from issue 2746493002 at patchset 260001 (http://crrev.com/2746493002#ps260001)

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

[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/net/BUILD.gn
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/BUILD.gn
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/README.chromium
[add] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/patches/0012-extract-globals.patch
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/arena.cc
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/arena.h
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/extension_set.cc
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/extension_set.h
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/generated_message_util.cc
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/generated_message_util.h
[add] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/globals.cc
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/io/coded_stream.cc
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/io/coded_stream.h
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/stubs/atomicops_internals_x86_gcc.cc
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/stubs/atomicops_internals_x86_gcc.h
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/stubs/common.cc
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/stubs/structurally_valid.cc
[modify] https://crrev.com/77bec4dfd9e172a99543b9bfe9daf2580721bfdd/third_party/protobuf/src/google/protobuf/stubs/strutil.cc

Project Member Comment 100 by bugdroid1@chromium.org, Mar 21 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0ff8b19608421be5fa5b53e90c097e4992723b90

commit 0ff8b19608421be5fa5b53e90c097e4992723b90
Author: thomasanderson <thomasanderson@google.com>
Date: Tue Mar 21 00:55:27 2017

Linux UI: Switch to the Gtk3 theme

Sets "use_gtk3 = true" by default.

BUG=79722
TBR=dpranke@chromium.org
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_msan_rel_ng;master.tryserver.chromium.linux:linux_chromium_dbg_32_ng

> > Review-Url: https://codereview.chromium.org/2670623002
> > Cr-Commit-Position: refs/heads/master@{#452118}
> > Committed: https://chromium.googlesource.com/chromium/src/+/872a494bba52e597388aec738d9d681183a3d47b

> Review-Url: https://codereview.chromium.org/2670623002
> Cr-Commit-Position: refs/heads/master@{#454491}
> Committed: https://chromium.googlesource.com/chromium/src/+/89be63a39b5014096115d3ec60d13fde39e73283

Review-Url: https://codereview.chromium.org/2670623002
Cr-Original-Commit-Position: refs/heads/master@{#455596}
Committed: https://chromium.googlesource.com/chromium/src/+/072522801041708fba94498a1844cb89f24d4590
Review-Url: https://codereview.chromium.org/2670623002
Cr-Commit-Position: refs/heads/master@{#458263}

[modify] https://crrev.com/0ff8b19608421be5fa5b53e90c097e4992723b90/build/config/linux/gtk/gtk.gni
[modify] https://crrev.com/0ff8b19608421be5fa5b53e90c097e4992723b90/chrome/installer/linux/debian/expected_deps_x64_jessie
[modify] https://crrev.com/0ff8b19608421be5fa5b53e90c097e4992723b90/chrome/installer/linux/debian/expected_deps_x64_wheezy
[modify] https://crrev.com/0ff8b19608421be5fa5b53e90c097e4992723b90/chrome/installer/linux/rpm/expected_deps_x86_64

Comment 101 by kbr@chromium.org, Mar 21 2017
Blockedon: 703706
Project Member Comment 102 by bugdroid1@chromium.org, Mar 27 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/14e3acc30f4da1fe3f601828101af47eff68a828

commit 14e3acc30f4da1fe3f601828101af47eff68a828
Author: thomasanderson <thomasanderson@google.com>
Date: Mon Mar 27 23:34:06 2017

Gtk3: Use menubar instead of headerbar on version less than 3.10

Headerbars were added in Gtk3.10.  All officially supported Chromium
distros meet this requirement, but this CL adds a check in case there
are any users on odd distros without Gtk3.10.  Specifically, a menubar
is used instead of a headerbar in this case.

In addition, this CL also changes the interface of several functions
in gtk_util to use std::string instead of char*, so that I could use
string concatenation in gtk_ui.cc.

BUG=79722
R=erg@chromium.org

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

[modify] https://crrev.com/14e3acc30f4da1fe3f601828101af47eff68a828/chrome/browser/ui/libgtkui/gtk_ui.cc
[modify] https://crrev.com/14e3acc30f4da1fe3f601828101af47eff68a828/chrome/browser/ui/libgtkui/gtk_util.cc
[modify] https://crrev.com/14e3acc30f4da1fe3f601828101af47eff68a828/chrome/browser/ui/libgtkui/gtk_util.h
[modify] https://crrev.com/14e3acc30f4da1fe3f601828101af47eff68a828/chrome/browser/ui/libgtkui/native_theme_gtk3.cc

Project Member Comment 103 by bugdroid1@chromium.org, Mar 30 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/36743fca967c5b9d7ae91c210c49987fe0e9882b

commit 36743fca967c5b9d7ae91c210c49987fe0e9882b
Author: thomasanderson <thomasanderson@google.com>
Date: Thu Mar 30 18:56:22 2017

Gtk3: Fix DCHECK on 3.20

BUG=79722
R=erg@chromium.org

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

[modify] https://crrev.com/36743fca967c5b9d7ae91c210c49987fe0e9882b/chrome/browser/ui/libgtkui/gtk_util.cc

Comment 104 by cra...@gmail.com, Apr 5 2017
I found 2 minor things that you might want to modify:
1. Add border around context menu
2. Use a nicer font/text formatting for the user switcher, right now it has no spacing between letters and uses 2 colors, which makes the text almost unreadable
Gtk3ContextMenu.png
13.6 KB View Download
ChromeContextMenu.png
17.2 KB View Download
UserSwitcher.png
1.7 KB View Download
c#104 Can you attach a picture of a context menu from a native gtk3 app?
Comment 106 by cra...@gmail.com, Apr 5 2017
c#105 I already did attach it, see first image titled "Gtk3ContextMenu.png"
Which gtk version are you using?  On debian, run
$ dpkg -l libgtk-3-0

Also, which theme?
$ gsettings get org.gnome.desktop.interface gtk-theme

Comment 108 by cra...@gmail.com, Apr 5 2017
> $ dpkg -l libgtk-3-0

I am using Arch Linux so that wouldn't work :P Anyway Gtk 3.22: https://www.archlinux.org/packages/extra/x86_64/gtk3/

> Also, which theme?

In the screenshot I was using Numix Frost Light theme, but that gave me an idea to test out few themes and the results are:

Adwaita: Wrong color used, the chromium context menu border is too dark.

Arc: Surprisingly it seems to have picked the correct color so probably the theme is using the same color for 2 different attributes.

Numix Frost: As in the screenshots above the border is invisible, because it picked the same color for the border and background.
Project Member Comment 109 by bugdroid1@chromium.org, Apr 28 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/94297f25fdf492db4eedd9524c413c7566994567

commit 94297f25fdf492db4eedd9524c413c7566994567
Author: thomasanderson <thomasanderson@google.com>
Date: Fri Apr 28 20:25:32 2017

Enable gtk3 for 32-bit builds

Now that [1] has been fixed and libgtk-3-0 has been installed in
clusterfuzz's 32-bit configuration, it's safe to enable gtk3 for all
platforms.

[1] https://crbug.com/699669

BUG=79722
TBR=dpranke@chromium.org
CC=erg@chromium.org,inferno@chromium.org

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

[modify] https://crrev.com/94297f25fdf492db4eedd9524c413c7566994567/build/config/linux/gtk/gtk.gni

Status: Fixed
This is now done.  Chrome 59 will be the first version to see the switch to Gtk3.
> This is now done.  Chrome 59 will be the first version to see the switch to Gtk3.

It also means Chrome 58 will be the last Chrome that can be made to work on RHEL 6/CentOS 6 ( see my site https://chrome.richardlloyd.org.uk/ ), which still has 3.5 years of OS support left. I've confirmed that Chrome 59 beta is a dead duck on RHEL 6/CentOS 6 - gtk+3 just isn't easily installable on that platform sadly.

I guess that's "progress" - Firefox similarly abandoned RHEL 6/CentOS 6 users with their move to GTK+3 a little while back. Yes, I know, there's Firefox ESR, but not everyone wants to run a browser up to a year out of date (and the next Firefox ESR may well be GTK+3 too).
You can still build Chromium with use_gtk3=false which will link against Gtk2 instead.
Building Chromium on RHEL/CentOS 6 on a regular basis is a major pain (and if you want other users to download the fruits of your build, even more of a hassle) compared to downloading Google Chrome and letting it use a newer libstdc++ library (which was the only incompatibility up to and including version 58). It's been tried before by folks from centos.org and been abandoned. "So long and thanks for all the fish" is all I can say at this point...
If I was you, I would contact the Chromium maintainer for Fedora/EPEL to get it added to el6 (it's currently in Fedora and el7). As well, I'm sure someone will have a COPR available, and if not, I wouldn't call using something like COPR a "hassle" as you said. Everyone can benefit from one person's build that way.
Cc: -e...@chromium.org
The switch to GTK3 broke HiDPI. See issue 717789.
Sign in to add a comment