| Index: chrome/browser/ui/gtk/web_intent_picker_gtk.cc
|
| diff --git a/chrome/browser/ui/gtk/web_intent_picker_gtk.cc b/chrome/browser/ui/gtk/web_intent_picker_gtk.cc
|
| index 47cec583192887985f12b2e0f972fbc83c1b28b6..c942f5bb573623cf6280aecf9500968250f59c30 100644
|
| --- a/chrome/browser/ui/gtk/web_intent_picker_gtk.cc
|
| +++ b/chrome/browser/ui/gtk/web_intent_picker_gtk.cc
|
| @@ -263,6 +263,11 @@ void WebIntentPickerGtk::OnExtensionInstallFailure(const std::string& id) {
|
| SetWidgetsEnabled(true);
|
| }
|
|
|
| +void WebIntentPickerGtk::OnInlineDispositionAutoResize(const gfx::Size& size) {
|
| + gtk_widget_set_size_request(tab_contents_container_->widget(),
|
| + size.width(), size.height());
|
| +}
|
| +
|
| void WebIntentPickerGtk::OnModelChanged(WebIntentPickerModel* model) {
|
| if (waiting_dialog_.get() && !model->IsWaitingForSuggestions()) {
|
| waiting_dialog_.reset();
|
| @@ -306,17 +311,20 @@ void WebIntentPickerGtk::OnInlineDisposition(const string16& title,
|
|
|
| // Replace the picker contents with the inline disposition.
|
| ClearContents();
|
| + gtk_widget_set_size_request(contents_, -1, -1);
|
| + window_->BackgroundColorChanged();
|
|
|
| - GtkWidget* vbox = gtk_vbox_new(FALSE, ui::kContentAreaSpacing);
|
| + GtkWidget* vbox = gtk_vbox_new(FALSE, 0);
|
| GtkThemeService* theme_service = GetThemeService(tab_contents_);
|
|
|
| GtkWidget* service_hbox = gtk_hbox_new(FALSE, ui::kControlSpacing);
|
| // TODO(gbillock): Eventually get the service icon button here.
|
|
|
| // Intent action label.
|
| - GtkWidget* action_label = theme_service->BuildLabel(
|
| - UTF16ToUTF8(title), ui::kGdkBlack);
|
| + GtkWidget* action_label = gtk_label_new(UTF16ToUTF8(title).c_str());
|
| gtk_util::ForceFontSizePixels(action_label, kMainContentPixelSize);
|
| + // Hardcode color; don't allow theming.
|
| + gtk_util::SetLabelColor(action_label, &ui::kGdkBlack);
|
|
|
| GtkWidget* label_alignment = gtk_alignment_new(0, 0.5f, 0, 0);
|
| gtk_container_add(GTK_CONTAINER(label_alignment), action_label);
|
| @@ -346,10 +354,7 @@ void WebIntentPickerGtk::OnInlineDisposition(const string16& title,
|
| AddCloseButton(service_hbox);
|
|
|
| // The header box
|
| - gtk_box_pack_start(GTK_BOX(vbox), service_hbox, TRUE, TRUE, 0);
|
| -
|
| - // The separator between the icon/title/close and the inline renderer.
|
| - gtk_box_pack_start(GTK_BOX(vbox), gtk_hseparator_new(), FALSE, TRUE, 0);
|
| + gtk_container_add(GTK_CONTAINER(vbox), service_hbox);
|
|
|
| // hbox for the web contents, so we can have spacing on the borders.
|
| GtkWidget* alignment = gtk_alignment_new(0.0, 0.0, 1.0, 1.0);
|
| @@ -358,7 +363,7 @@ void WebIntentPickerGtk::OnInlineDisposition(const string16& title,
|
| ui::kContentAreaBorder, ui::kContentAreaBorder);
|
| gtk_container_add(GTK_CONTAINER(alignment),
|
| tab_contents_container_->widget());
|
| - gtk_box_pack_end(GTK_BOX(vbox), alignment, TRUE, TRUE, 0);
|
| + gtk_container_add(GTK_CONTAINER(vbox), alignment);
|
| gtk_container_add(GTK_CONTAINER(contents_), vbox);
|
|
|
| gfx::Size size = GetMinInlineDispositionSize();
|
| @@ -367,11 +372,6 @@ void WebIntentPickerGtk::OnInlineDisposition(const string16& title,
|
| gtk_widget_show_all(contents_);
|
| }
|
|
|
| -void WebIntentPickerGtk::OnInlineDispositionAutoResize(const gfx::Size& size) {
|
| - gtk_widget_set_size_request(tab_contents_container_->widget(),
|
| - size.width(), size.height());
|
| -}
|
| -
|
| void WebIntentPickerGtk::OnPendingAsyncCompleted() {
|
| // Requests to both the WebIntentService and the Chrome Web Store have
|
| // completed. If there are any services, installed or suggested, there's
|
| @@ -428,6 +428,15 @@ void WebIntentPickerGtk::DeleteDelegate() {
|
| delegate_->OnClosing();
|
| }
|
|
|
| +bool WebIntentPickerGtk::GetBackgroundColor(GdkColor* color) {
|
| + if (tab_contents_container_.get()) {
|
| + *color = ui::kGdkWhite;
|
| + return true;
|
| + }
|
| +
|
| + return false;
|
| +}
|
| +
|
| bool WebIntentPickerGtk::ShouldHaveBorderPadding() const {
|
| return false;
|
| }
|
| @@ -634,6 +643,7 @@ void WebIntentPickerGtk::ResetContents() {
|
| inline_disposition_delegate_.reset(NULL);
|
| tab_contents_container_.reset(NULL);
|
| inline_disposition_tab_contents_.reset(NULL);
|
| + window_->BackgroundColorChanged();
|
|
|
| // Re-initialize picker widgets and data.
|
| InitMainContents();
|
|
|