| OLD | NEW |
| 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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/gtk/tab_contents_container_gtk.h" | 5 #include "chrome/browser/gtk/tab_contents_container_gtk.h" |
| 6 | 6 |
| 7 #include "app/l10n_util.h" | 7 #include "base/i18n/rtl.h" |
| 8 #include "chrome/browser/gtk/gtk_expanded_container.h" | 8 #include "chrome/browser/gtk/gtk_expanded_container.h" |
| 9 #include "chrome/browser/gtk/gtk_floating_container.h" | 9 #include "chrome/browser/gtk/gtk_floating_container.h" |
| 10 #include "chrome/browser/gtk/status_bubble_gtk.h" | 10 #include "chrome/browser/gtk/status_bubble_gtk.h" |
| 11 #include "chrome/browser/tab_contents/tab_contents.h" | 11 #include "chrome/browser/tab_contents/tab_contents.h" |
| 12 #include "chrome/browser/renderer_host/render_widget_host_view_gtk.h" | 12 #include "chrome/browser/renderer_host/render_widget_host_view_gtk.h" |
| 13 #include "chrome/common/notification_service.h" | 13 #include "chrome/common/notification_service.h" |
| 14 #include "gfx/native_widget_types.h" | 14 #include "gfx/native_widget_types.h" |
| 15 | 15 |
| 16 TabContentsContainerGtk::TabContentsContainerGtk(StatusBubbleGtk* status_bubble) | 16 TabContentsContainerGtk::TabContentsContainerGtk(StatusBubbleGtk* status_bubble) |
| 17 : tab_contents_(NULL), | 17 : tab_contents_(NULL), |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 160 void TabContentsContainerGtk::OnSetFloatingPosition( | 160 void TabContentsContainerGtk::OnSetFloatingPosition( |
| 161 GtkFloatingContainer* floating_container, GtkAllocation* allocation, | 161 GtkFloatingContainer* floating_container, GtkAllocation* allocation, |
| 162 TabContentsContainerGtk* tab_contents_container) { | 162 TabContentsContainerGtk* tab_contents_container) { |
| 163 StatusBubbleGtk* status = tab_contents_container->status_bubble_; | 163 StatusBubbleGtk* status = tab_contents_container->status_bubble_; |
| 164 | 164 |
| 165 // Look at the size request of the status bubble and tell the | 165 // Look at the size request of the status bubble and tell the |
| 166 // GtkFloatingContainer where we want it positioned. | 166 // GtkFloatingContainer where we want it positioned. |
| 167 GtkRequisition requisition; | 167 GtkRequisition requisition; |
| 168 gtk_widget_size_request(status->widget(), &requisition); | 168 gtk_widget_size_request(status->widget(), &requisition); |
| 169 | 169 |
| 170 bool ltr = (l10n_util::GetTextDirection() == l10n_util::LEFT_TO_RIGHT); | 170 bool ltr = !base::i18n::IsRTL(); |
| 171 | 171 |
| 172 GValue value = { 0, }; | 172 GValue value = { 0, }; |
| 173 g_value_init(&value, G_TYPE_INT); | 173 g_value_init(&value, G_TYPE_INT); |
| 174 if (ltr ^ status->flip_horizontally()) // Is it on the left? | 174 if (ltr ^ status->flip_horizontally()) // Is it on the left? |
| 175 g_value_set_int(&value, 0); | 175 g_value_set_int(&value, 0); |
| 176 else | 176 else |
| 177 g_value_set_int(&value, allocation->width - requisition.width); | 177 g_value_set_int(&value, allocation->width - requisition.width); |
| 178 gtk_container_child_set_property(GTK_CONTAINER(floating_container), | 178 gtk_container_child_set_property(GTK_CONTAINER(floating_container), |
| 179 status->widget(), "x", &value); | 179 status->widget(), "x", &value); |
| 180 | 180 |
| 181 int child_y = std::max( | 181 int child_y = std::max( |
| 182 allocation->y + allocation->height - requisition.height, 0); | 182 allocation->y + allocation->height - requisition.height, 0); |
| 183 g_value_set_int(&value, child_y + status->y_offset()); | 183 g_value_set_int(&value, child_y + status->y_offset()); |
| 184 gtk_container_child_set_property(GTK_CONTAINER(floating_container), | 184 gtk_container_child_set_property(GTK_CONTAINER(floating_container), |
| 185 status->widget(), "y", &value); | 185 status->widget(), "y", &value); |
| 186 g_value_unset(&value); | 186 g_value_unset(&value); |
| 187 } | 187 } |
| OLD | NEW |