Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(104)

Unified Diff: trunk/src/chrome/browser/ui/gtk/infobars/infobar_container_gtk.cc

Issue 102163002: Revert 238283 "Infobar system refactor." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: trunk/src/chrome/browser/ui/gtk/infobars/infobar_container_gtk.cc
===================================================================
--- trunk/src/chrome/browser/ui/gtk/infobars/infobar_container_gtk.cc (revision 238401)
+++ trunk/src/chrome/browser/ui/gtk/infobars/infobar_container_gtk.cc (working copy)
@@ -8,6 +8,7 @@
#include <utility>
+#include "base/message_loop/message_loop.h"
#include "chrome/browser/infobars/infobar_delegate.h"
#include "chrome/browser/platform_util.h"
#include "chrome/browser/ui/browser_window.h"
@@ -52,6 +53,7 @@
void InfoBarContainerGtk::PlatformSpecificAddInfoBar(InfoBar* infobar,
size_t position) {
InfoBarGtk* infobar_gtk = static_cast<InfoBarGtk*>(infobar);
+ infobar_gtk->InitWidgets();
infobars_gtk_.insert(infobars_gtk_.begin() + position, infobar_gtk);
if (infobars_gtk_.back() == infobar_gtk) {
@@ -79,6 +81,8 @@
std::find(infobars_gtk_.begin(), infobars_gtk_.end(), infobar);
if (it != infobars_gtk_.end())
infobars_gtk_.erase(it);
+
+ base::MessageLoop::current()->DeleteSoon(FROM_HERE, infobar);
}
void InfoBarContainerGtk::PlatformSpecificInfoBarStateChanged(

Powered by Google App Engine
This is Rietveld 408576698