summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorthestig@chromium.org <thestig@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-06 01:04:34 +0000
committerthestig@chromium.org <thestig@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-06 01:04:34 +0000
commitf093af6779204215d3eb99cc1c1fff5671798342 (patch)
tree7324042afc9b3d8ffcf03170d71de75bab922dcb
parent2c4c25288118f483c2cc7147ae5197dfbac8c312 (diff)
downloadchromium_src-f093af6779204215d3eb99cc1c1fff5671798342.zip
chromium_src-f093af6779204215d3eb99cc1c1fff5671798342.tar.gz
chromium_src-f093af6779204215d3eb99cc1c1fff5671798342.tar.bz2
Partial revert of r17790. Don't use a OwnedWidgetGtk for container_.
Review URL: http://codereview.chromium.org/119274 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17818 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/gtk/tabs/dragged_tab_gtk.cc30
-rw-r--r--chrome/browser/gtk/tabs/dragged_tab_gtk.h4
2 files changed, 17 insertions, 17 deletions
diff --git a/chrome/browser/gtk/tabs/dragged_tab_gtk.cc b/chrome/browser/gtk/tabs/dragged_tab_gtk.cc
index 733dcb8..48413ef 100644
--- a/chrome/browser/gtk/tabs/dragged_tab_gtk.cc
+++ b/chrome/browser/gtk/tabs/dragged_tab_gtk.cc
@@ -37,8 +37,7 @@ bool IsScreenComposited() {
DraggedTabGtk::DraggedTabGtk(TabContents* datasource,
const gfx::Point& mouse_tab_offset,
const gfx::Size& contents_size)
- : container_(gtk_window_new(GTK_WINDOW_POPUP)),
- renderer_(new TabRendererGtk),
+ : renderer_(new TabRendererGtk),
attached_(false),
mouse_tab_offset_(mouse_tab_offset),
attached_tab_size_(TabRendererGtk::GetMinimumSelectedSize()),
@@ -46,17 +45,18 @@ DraggedTabGtk::DraggedTabGtk(TabContents* datasource,
close_animation_(this) {
renderer_->UpdateData(datasource, false);
+ container_ = gtk_window_new(GTK_WINDOW_POPUP);
SetContainerColorMap();
- gtk_widget_set_app_paintable(container_.get(), TRUE);
- g_signal_connect(G_OBJECT(container_.get()), "expose-event",
+ gtk_widget_set_app_paintable(container_, TRUE);
+ g_signal_connect(G_OBJECT(container_), "expose-event",
G_CALLBACK(OnExposeEvent), this);
- gtk_widget_add_events(container_.get(), GDK_STRUCTURE_MASK);
- gtk_container_add(GTK_CONTAINER(container_.get()), renderer_->widget());
- gtk_widget_show_all(container_.get());
+ gtk_widget_add_events(container_, GDK_STRUCTURE_MASK);
+ gtk_container_add(GTK_CONTAINER(container_), renderer_->widget());
+ gtk_widget_show_all(container_);
}
DraggedTabGtk::~DraggedTabGtk() {
- container_.Destroy();
+ gtk_widget_destroy(container_);
}
void DraggedTabGtk::MoveTo(const gfx::Point& screen_point) {
@@ -65,7 +65,7 @@ void DraggedTabGtk::MoveTo(const gfx::Point& screen_point) {
int y = screen_point.y() + mouse_tab_offset_.y() -
ScaleValue(mouse_tab_offset_.y());
- gtk_window_move(GTK_WINDOW(container_.get()), x, y);
+ gtk_window_move(GTK_WINDOW(container_), x, y);
}
void DraggedTabGtk::Attach(int selected_width) {
@@ -80,7 +80,7 @@ void DraggedTabGtk::Detach() {
}
void DraggedTabGtk::Update() {
- gtk_widget_queue_draw(container_.get());
+ gtk_widget_queue_draw(container_);
}
void DraggedTabGtk::AnimateToBounds(const gfx::Rect& bounds,
@@ -138,7 +138,7 @@ gfx::Size DraggedTabGtk::GetPreferredSize() {
void DraggedTabGtk::ResizeContainer() {
gfx::Size size = GetPreferredSize();
- gtk_window_resize(GTK_WINDOW(container_.get()),
+ gtk_window_resize(GTK_WINDOW(container_),
ScaleValue(size.width()), ScaleValue(size.height()));
gfx::Rect bounds = renderer_->bounds();
bounds.set_width(ScaleValue(size.width()));
@@ -153,20 +153,20 @@ int DraggedTabGtk::ScaleValue(int value) {
gfx::Rect DraggedTabGtk::bounds() const {
gint x, y, width, height;
- gtk_window_get_position(GTK_WINDOW(container_.get()), &x, &y);
- gtk_window_get_size(GTK_WINDOW(container_.get()), &width, &height);
+ gtk_window_get_position(GTK_WINDOW(container_), &x, &y);
+ gtk_window_get_size(GTK_WINDOW(container_), &width, &height);
return gfx::Rect(x, y, width, height);
}
void DraggedTabGtk::SetContainerColorMap() {
- GdkScreen* screen = gtk_widget_get_screen(container_.get());
+ GdkScreen* screen = gtk_widget_get_screen(container_);
GdkColormap* colormap = gdk_screen_get_rgba_colormap(screen);
// If rgba is not available, use rgb instead.
if (!colormap)
colormap = gdk_screen_get_rgb_colormap(screen);
- gtk_widget_set_colormap(container_.get(), colormap);
+ gtk_widget_set_colormap(container_, colormap);
}
void DraggedTabGtk::SetContainerTransparency() {
diff --git a/chrome/browser/gtk/tabs/dragged_tab_gtk.h b/chrome/browser/gtk/tabs/dragged_tab_gtk.h
index 039856c..fab68e1 100644
--- a/chrome/browser/gtk/tabs/dragged_tab_gtk.h
+++ b/chrome/browser/gtk/tabs/dragged_tab_gtk.h
@@ -49,7 +49,7 @@ class DraggedTabGtk : public AnimationDelegate {
// to determine where to place the tab in the attached tabstrip.
gfx::Size attached_tab_size() const { return attached_tab_size_; }
- GtkWidget* widget() const { return container_.get(); }
+ GtkWidget* widget() const { return container_; }
private:
// Overridden from AnimationDelegate:
@@ -87,7 +87,7 @@ class DraggedTabGtk : public AnimationDelegate {
DraggedTabGtk* dragged_tab);
// The window that contains the dragged tab or tab contents.
- OwnedWidgetGtk container_;
+ GtkWidget* container_;
// The renderer that paints the dragged tab.
scoped_ptr<TabRendererGtk> renderer_;