| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/ui/gtk/tabs/dragged_tab_gtk.h" | 5 #include "chrome/browser/ui/gtk/tabs/dragged_tab_gtk.h" |
| 6 | 6 |
| 7 #include <gdk/gdk.h> | 7 #include <gdk/gdk.h> |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 | 10 |
| 11 #include "base/i18n/rtl.h" | 11 #include "base/i18n/rtl.h" |
| 12 #include "chrome/browser/extensions/extension_tab_helper.h" |
| 12 #include "chrome/browser/profiles/profile.h" | 13 #include "chrome/browser/profiles/profile.h" |
| 13 #include "chrome/browser/tabs/tab_strip_model.h" | 14 #include "chrome/browser/tabs/tab_strip_model.h" |
| 14 #include "chrome/browser/themes/theme_service.h" | 15 #include "chrome/browser/themes/theme_service.h" |
| 15 #include "chrome/browser/themes/theme_service_factory.h" | 16 #include "chrome/browser/themes/theme_service_factory.h" |
| 16 #include "chrome/browser/ui/gtk/gtk_util.h" | 17 #include "chrome/browser/ui/gtk/gtk_util.h" |
| 17 #include "chrome/browser/ui/gtk/tabs/tab_renderer_gtk.h" | 18 #include "chrome/browser/ui/gtk/tabs/tab_renderer_gtk.h" |
| 19 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" |
| 18 #include "content/browser/renderer_host/backing_store_x.h" | 20 #include "content/browser/renderer_host/backing_store_x.h" |
| 19 #include "content/browser/renderer_host/render_view_host.h" | 21 #include "content/browser/renderer_host/render_view_host.h" |
| 20 #include "content/browser/tab_contents/tab_contents.h" | 22 #include "content/browser/tab_contents/tab_contents.h" |
| 21 #include "third_party/skia/include/core/SkShader.h" | 23 #include "third_party/skia/include/core/SkShader.h" |
| 22 #include "ui/base/x/x11_util.h" | 24 #include "ui/base/x/x11_util.h" |
| 23 #include "ui/gfx/gtk_util.h" | 25 #include "ui/gfx/gtk_util.h" |
| 24 | 26 |
| 25 namespace { | 27 namespace { |
| 26 | 28 |
| 27 // The size of the dragged window frame. | 29 // The size of the dragged window frame. |
| (...skipping 21 matching lines...) Expand all Loading... |
| 49 const gfx::Size& contents_size, | 51 const gfx::Size& contents_size, |
| 50 bool mini) | 52 bool mini) |
| 51 : data_source_(datasource), | 53 : data_source_(datasource), |
| 52 renderer_(new TabRendererGtk(ThemeServiceFactory::GetForProfile( | 54 renderer_(new TabRendererGtk(ThemeServiceFactory::GetForProfile( |
| 53 datasource->profile()))), | 55 datasource->profile()))), |
| 54 attached_(false), | 56 attached_(false), |
| 55 mouse_tab_offset_(mouse_tab_offset), | 57 mouse_tab_offset_(mouse_tab_offset), |
| 56 attached_tab_size_(TabRendererGtk::GetMinimumSelectedSize()), | 58 attached_tab_size_(TabRendererGtk::GetMinimumSelectedSize()), |
| 57 contents_size_(contents_size), | 59 contents_size_(contents_size), |
| 58 close_animation_(this) { | 60 close_animation_(this) { |
| 61 TabContentsWrapper* wrapper = |
| 62 TabContentsWrapper::GetCurrentWrapperForContents(datasource); |
| 59 renderer_->UpdateData(datasource, | 63 renderer_->UpdateData(datasource, |
| 60 datasource->is_app(), | 64 wrapper->extension_tab_helper()->is_app(), |
| 61 false); // loading_only | 65 false); // loading_only |
| 62 renderer_->set_mini(mini); | 66 renderer_->set_mini(mini); |
| 63 | 67 |
| 64 container_ = gtk_window_new(GTK_WINDOW_POPUP); | 68 container_ = gtk_window_new(GTK_WINDOW_POPUP); |
| 65 SetContainerColorMap(); | 69 SetContainerColorMap(); |
| 66 gtk_widget_set_app_paintable(container_, TRUE); | 70 gtk_widget_set_app_paintable(container_, TRUE); |
| 67 g_signal_connect(container_, "expose-event", | 71 g_signal_connect(container_, "expose-event", |
| 68 G_CALLBACK(OnExposeEvent), this); | 72 G_CALLBACK(OnExposeEvent), this); |
| 69 gtk_widget_add_events(container_, GDK_STRUCTURE_MASK); | 73 gtk_widget_add_events(container_, GDK_STRUCTURE_MASK); |
| 70 | 74 |
| (...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 332 cairo_set_source_surface(cr, surface, 0, 0); | 336 cairo_set_source_surface(cr, surface, 0, 0); |
| 333 cairo_paint(cr); | 337 cairo_paint(cr); |
| 334 | 338 |
| 335 cairo_destroy(cr); | 339 cairo_destroy(cr); |
| 336 | 340 |
| 337 cairo_surface_destroy(surface); | 341 cairo_surface_destroy(surface); |
| 338 | 342 |
| 339 // We've already drawn the tab, so don't propagate the expose-event signal. | 343 // We've already drawn the tab, so don't propagate the expose-event signal. |
| 340 return TRUE; | 344 return TRUE; |
| 341 } | 345 } |
| OLD | NEW |