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/gtk_util.h" | 5 #include "chrome/browser/ui/gtk/gtk_util.h" |
6 | 6 |
7 #include <cairo/cairo.h> | 7 #include <cairo/cairo.h> |
8 #include <gdk/gdkx.h> | 8 #include <gdk/gdkx.h> |
9 #include <gtk/gtk.h> | 9 #include <gtk/gtk.h> |
10 | 10 |
(...skipping 17 matching lines...) Expand all Loading... |
28 #include "chrome/browser/ui/gtk/gtk_theme_service.h" | 28 #include "chrome/browser/ui/gtk/gtk_theme_service.h" |
29 #include "content/browser/disposition_utils.h" | 29 #include "content/browser/disposition_utils.h" |
30 #include "content/browser/renderer_host/render_view_host.h" | 30 #include "content/browser/renderer_host/render_view_host.h" |
31 #include "content/browser/tab_contents/tab_contents.h" | 31 #include "content/browser/tab_contents/tab_contents.h" |
32 #include "content/common/renderer_preferences.h" | 32 #include "content/common/renderer_preferences.h" |
33 #include "googleurl/src/gurl.h" | 33 #include "googleurl/src/gurl.h" |
34 #include "grit/theme_resources.h" | 34 #include "grit/theme_resources.h" |
35 #include "grit/theme_resources_standard.h" | 35 #include "grit/theme_resources_standard.h" |
36 #include "third_party/skia/include/core/SkBitmap.h" | 36 #include "third_party/skia/include/core/SkBitmap.h" |
37 #include "third_party/skia/include/core/SkColor.h" | 37 #include "third_party/skia/include/core/SkColor.h" |
| 38 #include "ui/base/gtk/gtk_hig_constants.h" |
38 #include "ui/base/l10n/l10n_util.h" | 39 #include "ui/base/l10n/l10n_util.h" |
39 #include "ui/base/resource/resource_bundle.h" | 40 #include "ui/base/resource/resource_bundle.h" |
40 #include "ui/base/text/text_elider.h" | 41 #include "ui/base/text/text_elider.h" |
41 #include "ui/base/x/x11_util.h" | 42 #include "ui/base/x/x11_util.h" |
42 #include "ui/gfx/gtk_util.h" | 43 #include "ui/gfx/gtk_util.h" |
43 #include "ui/gfx/image/image.h" | 44 #include "ui/gfx/image/image.h" |
44 | 45 |
45 #if defined(OS_CHROMEOS) | 46 #if defined(OS_CHROMEOS) |
46 #include "chrome/browser/chromeos/frame/browser_view.h" | 47 #include "chrome/browser/chromeos/frame/browser_view.h" |
47 #include "chrome/browser/chromeos/native_dialog_window.h" | 48 #include "chrome/browser/chromeos/native_dialog_window.h" |
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
201 event_flags & GDK_MOD1_MASK, | 202 event_flags & GDK_MOD1_MASK, |
202 event_flags & GDK_CONTROL_MASK, | 203 event_flags & GDK_CONTROL_MASK, |
203 event_flags & GDK_META_MASK, | 204 event_flags & GDK_META_MASK, |
204 event_flags & GDK_SHIFT_MASK); | 205 event_flags & GDK_SHIFT_MASK); |
205 } | 206 } |
206 | 207 |
207 } // namespace event_utils | 208 } // namespace event_utils |
208 | 209 |
209 namespace gtk_util { | 210 namespace gtk_util { |
210 | 211 |
211 const GdkColor kGdkWhite = GDK_COLOR_RGB(0xff, 0xff, 0xff); | |
212 const GdkColor kGdkGray = GDK_COLOR_RGB(0x7f, 0x7f, 0x7f); | |
213 const GdkColor kGdkBlack = GDK_COLOR_RGB(0x00, 0x00, 0x00); | |
214 const GdkColor kGdkGreen = GDK_COLOR_RGB(0x00, 0xff, 0x00); | |
215 | |
216 GtkWidget* CreateLabeledControlsGroup(std::vector<GtkWidget*>* labels, | 212 GtkWidget* CreateLabeledControlsGroup(std::vector<GtkWidget*>* labels, |
217 const char* text, ...) { | 213 const char* text, ...) { |
218 va_list ap; | 214 va_list ap; |
219 va_start(ap, text); | 215 va_start(ap, text); |
220 GtkWidget* table = gtk_table_new(0, 2, FALSE); | 216 GtkWidget* table = gtk_table_new(0, 2, FALSE); |
221 gtk_table_set_col_spacing(GTK_TABLE(table), 0, kLabelSpacing); | 217 gtk_table_set_col_spacing(GTK_TABLE(table), 0, ui::kLabelSpacing); |
222 gtk_table_set_row_spacings(GTK_TABLE(table), kControlSpacing); | 218 gtk_table_set_row_spacings(GTK_TABLE(table), ui::kControlSpacing); |
223 | 219 |
224 for (guint row = 0; text; ++row) { | 220 for (guint row = 0; text; ++row) { |
225 gtk_table_resize(GTK_TABLE(table), row + 1, 2); | 221 gtk_table_resize(GTK_TABLE(table), row + 1, 2); |
226 GtkWidget* control = va_arg(ap, GtkWidget*); | 222 GtkWidget* control = va_arg(ap, GtkWidget*); |
227 GtkWidget* label = gtk_label_new(text); | 223 GtkWidget* label = gtk_label_new(text); |
228 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); | 224 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); |
229 if (labels) | 225 if (labels) |
230 labels->push_back(label); | 226 labels->push_back(label); |
231 | 227 |
232 gtk_table_attach(GTK_TABLE(table), label, | 228 gtk_table_attach(GTK_TABLE(table), label, |
(...skipping 426 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
659 GtkWidget* button = gtk_button_new_with_mnemonic( | 655 GtkWidget* button = gtk_button_new_with_mnemonic( |
660 gfx::ConvertAcceleratorsFromWindowsStyle( | 656 gfx::ConvertAcceleratorsFromWindowsStyle( |
661 l10n_util::GetStringUTF8(ids_id)).c_str()); | 657 l10n_util::GetStringUTF8(ids_id)).c_str()); |
662 gtk_button_set_image(GTK_BUTTON(button), | 658 gtk_button_set_image(GTK_BUTTON(button), |
663 gtk_image_new_from_stock(stock_id, | 659 gtk_image_new_from_stock(stock_id, |
664 GTK_ICON_SIZE_BUTTON)); | 660 GTK_ICON_SIZE_BUTTON)); |
665 return button; | 661 return button; |
666 } | 662 } |
667 | 663 |
668 GtkWidget* CreateEntryImageHBox(GtkWidget* entry, GtkWidget* image) { | 664 GtkWidget* CreateEntryImageHBox(GtkWidget* entry, GtkWidget* image) { |
669 GtkWidget* hbox = gtk_hbox_new(FALSE, gtk_util::kControlSpacing); | 665 GtkWidget* hbox = gtk_hbox_new(FALSE, ui::kControlSpacing); |
670 gtk_box_pack_start(GTK_BOX(hbox), entry, TRUE, TRUE, 0); | 666 gtk_box_pack_start(GTK_BOX(hbox), entry, TRUE, TRUE, 0); |
671 gtk_box_pack_start(GTK_BOX(hbox), image, FALSE, FALSE, 0); | 667 gtk_box_pack_start(GTK_BOX(hbox), image, FALSE, FALSE, 0); |
672 return hbox; | 668 return hbox; |
673 } | 669 } |
674 | 670 |
675 void SetLabelColor(GtkWidget* label, const GdkColor* color) { | 671 void SetLabelColor(GtkWidget* label, const GdkColor* color) { |
676 gtk_widget_modify_fg(label, GTK_STATE_NORMAL, color); | 672 gtk_widget_modify_fg(label, GTK_STATE_NORMAL, color); |
677 gtk_widget_modify_fg(label, GTK_STATE_ACTIVE, color); | 673 gtk_widget_modify_fg(label, GTK_STATE_ACTIVE, color); |
678 gtk_widget_modify_fg(label, GTK_STATE_PRELIGHT, color); | 674 gtk_widget_modify_fg(label, GTK_STATE_PRELIGHT, color); |
679 gtk_widget_modify_fg(label, GTK_STATE_INSENSITIVE, color); | 675 gtk_widget_modify_fg(label, GTK_STATE_INSENSITIVE, color); |
680 } | 676 } |
681 | 677 |
682 GtkWidget* IndentWidget(GtkWidget* content) { | 678 GtkWidget* IndentWidget(GtkWidget* content) { |
683 GtkWidget* content_alignment = gtk_alignment_new(0.0, 0.5, 1.0, 1.0); | 679 GtkWidget* content_alignment = gtk_alignment_new(0.0, 0.5, 1.0, 1.0); |
684 gtk_alignment_set_padding(GTK_ALIGNMENT(content_alignment), 0, 0, | 680 gtk_alignment_set_padding(GTK_ALIGNMENT(content_alignment), 0, 0, |
685 gtk_util::kGroupIndent, 0); | 681 ui::kGroupIndent, 0); |
686 gtk_container_add(GTK_CONTAINER(content_alignment), content); | 682 gtk_container_add(GTK_CONTAINER(content_alignment), content); |
687 return content_alignment; | 683 return content_alignment; |
688 } | 684 } |
689 | 685 |
690 void UpdateGtkFontSettings(RendererPreferences* prefs) { | 686 void UpdateGtkFontSettings(RendererPreferences* prefs) { |
691 DCHECK(prefs); | 687 DCHECK(prefs); |
692 | 688 |
693 // From http://library.gnome.org/devel/gtk/unstable/GtkSettings.html, this is | 689 // From http://library.gnome.org/devel/gtk/unstable/GtkSettings.html, this is |
694 // the default value for gtk-cursor-blink-time. | 690 // the default value for gtk-cursor-blink-time. |
695 static const gint kGtkDefaultCursorBlinkTime = 1200; | 691 static const gint kGtkDefaultCursorBlinkTime = 1200; |
(...skipping 586 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1282 | 1278 |
1283 void DoCopy(BrowserWindow* window) { | 1279 void DoCopy(BrowserWindow* window) { |
1284 DoCutCopyPaste(window, &RenderViewHost::Copy, "copy-clipboard"); | 1280 DoCutCopyPaste(window, &RenderViewHost::Copy, "copy-clipboard"); |
1285 } | 1281 } |
1286 | 1282 |
1287 void DoPaste(BrowserWindow* window) { | 1283 void DoPaste(BrowserWindow* window) { |
1288 DoCutCopyPaste(window, &RenderViewHost::Paste, "paste-clipboard"); | 1284 DoCutCopyPaste(window, &RenderViewHost::Paste, "paste-clipboard"); |
1289 } | 1285 } |
1290 | 1286 |
1291 } // namespace gtk_util | 1287 } // namespace gtk_util |
OLD | NEW |