Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1664)

Unified Diff: chrome/browser/ui/cocoa/translate/translate_bubble_controller.mm

Issue 1975653002: add 'langauge settings' link to the translate bubble advanced view (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add logging Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/cocoa/translate/translate_bubble_controller.mm
diff --git a/chrome/browser/ui/cocoa/translate/translate_bubble_controller.mm b/chrome/browser/ui/cocoa/translate/translate_bubble_controller.mm
index 74d0f3b6a96f190cd3e0f456450c3ccb7a2a3d2b..a4096b7bceb7930b641997af0e54cdcb22265ae3 100644
--- a/chrome/browser/ui/cocoa/translate/translate_bubble_controller.mm
+++ b/chrome/browser/ui/cocoa/translate/translate_bubble_controller.mm
@@ -10,16 +10,20 @@
#include "base/mac/scoped_nsobject.h"
#include "base/macros.h"
#include "base/strings/sys_string_conversions.h"
+#include "chrome/browser/ui/chrome_pages.h"
#import "chrome/browser/ui/cocoa/browser_window_controller.h"
#import "chrome/browser/ui/cocoa/bubble_combobox.h"
#import "chrome/browser/ui/cocoa/info_bubble_view.h"
#import "chrome/browser/ui/cocoa/info_bubble_window.h"
#import "chrome/browser/ui/cocoa/toolbar/toolbar_controller.h"
#include "chrome/browser/ui/translate/language_combobox_model.h"
-#include "chrome/browser/ui/translate/translate_bubble_model_impl.h"
+#include "chrome/browser/ui/translate/translate_bubble_model.h"
+#include "chrome/browser/ui/translate/translate_bubble_view_state_transition.h"
+#include "chrome/common/url_constants.h"
#include "chrome/grit/generated_resources.h"
#include "components/translate/core/browser/translate_ui_delegate.h"
#include "content/public/browser/browser_context.h"
+#include "content/public/common/referrer.h"
#include "grit/components_strings.h"
#include "ui/base/cocoa/cocoa_base_utils.h"
#import "ui/base/cocoa/controls/hyperlink_button_cell.h"
@@ -100,6 +104,7 @@ const CGFloat kContentWidth = kWindowWidth - 2 * kFramePadding;
- (void)handleCancelButtonPressed;
- (void)handleShowOriginalButtonPressed;
- (void)handleAdvancedLinkButtonPressed;
+- (void)handleLanguageSettingsLinkButtonPressed;
- (void)handleDenialPopUpButtonNopeSelected;
- (void)handleDenialPopUpButtonNeverTranslateLanguageSelected;
- (void)handleDenialPopUpButtonNeverTranslateSiteSelected;
@@ -440,6 +445,14 @@ const CGFloat kContentWidth = kWindowWidth - 2 * kFramePadding;
action:@selector(handleCancelButtonPressed)
toView:view];
+ NSString* message = l10n_util::GetNSStringWithFixup(
+ IDS_TRANSLATE_BUBBLE_LANGUAGE_SETTINGS);
+ action = @selector(handleLanguageSettingsLinkButtonPressed);
+ NSButton* advancedLanguageSettingsLinkButton =
groby-ooo-7-16 2016/05/18 23:08:16 Why is this a button? Should this be a hyperlink?
ftang 2016/05/18 23:57:42 I just reuse the pre-existing addLinkButtonWithTex
groby-ooo-7-16 2016/05/19 01:38:09 I was thinking of HyperLinkTextView - but addLinkB
+ [self addLinkButtonWithText:message
+ action:action
+ toView:view];
+
// Layout
CGFloat textLabelWidth = NSWidth([sourceLanguageLabel frame]);
if (textLabelWidth < NSWidth([targetLanguageLabel frame]))
@@ -450,7 +463,16 @@ const CGFloat kContentWidth = kWindowWidth - 2 * kFramePadding;
[advancedDoneButton_ setFrameOrigin:NSMakePoint(0, yPos)];
[advancedCancelButton_ setFrameOrigin:NSMakePoint(0, yPos)];
- yPos += NSHeight([advancedDoneButton_ frame]) +
+ [advancedLanguageSettingsLinkButton setFrameOrigin:NSMakePoint(0, yPos)];
+
+ // Vertical center the advancedLanguageSettingsLinkButton with the
+ // advancedDoneButton_.
+ yPos = (NSHeight([advancedDoneButton_ frame]) -
groby-ooo-7-16 2016/05/19 01:38:09 You don't want to center this with the button - yo
+ NSHeight([advancedLanguageSettingsLinkButton frame])) / 2;
+
+ [advancedLanguageSettingsLinkButton setFrameOrigin:NSMakePoint(0, yPos)];
+
+ yPos = NSHeight([advancedDoneButton_ frame]) +
kUnrelatedControlVerticalSpacing;
if (alwaysTranslateCheckbox_) {
@@ -634,6 +656,15 @@ const CGFloat kContentWidth = kWindowWidth - 2 * kFramePadding;
[self switchView:TranslateBubbleModel::VIEW_STATE_ADVANCED];
}
+- (void)handleLanguageSettingsLinkButtonPressed {
+ GURL url = chrome::GetSettingsUrl(chrome::kLanguageOptionsSubPage);
+ webContents_->OpenURL(
+ content::OpenURLParams(url, content::Referrer(), NEW_FOREGROUND_TAB,
+ ui::PAGE_TRANSITION_LINK, false));
+ translate::ReportUiAction(translate::SETTINGS_LINK_CLICKED);
+ [self close];
+}
+
- (void)handleDenialPopUpButtonNopeSelected {
model_->DeclineTranslation();
[self close];
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698