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

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

Issue 1971703004: add log to mac translate bubble implementation (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: change to use translate::ReportUiAction 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..2cbab0784e9c65c0c82781bec30fb92d5dbe4ded 100644
--- a/chrome/browser/ui/cocoa/translate/translate_bubble_controller.mm
+++ b/chrome/browser/ui/cocoa/translate/translate_bubble_controller.mm
@@ -9,6 +9,7 @@
#include "base/mac/foundation_util.h"
#include "base/mac/scoped_nsobject.h"
#include "base/macros.h"
+#include "base/metrics/histogram_macros.h"
#include "base/strings/sys_string_conversions.h"
#import "chrome/browser/ui/cocoa/browser_window_controller.h"
#import "chrome/browser/ui/cocoa/bubble_combobox.h"
@@ -17,6 +18,7 @@
#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_view_state_transition.h"
#include "chrome/grit/generated_resources.h"
#include "components/translate/core/browser/translate_ui_delegate.h"
#include "content/public/browser/browser_context.h"
@@ -91,11 +93,12 @@ const CGFloat kContentWidth = kWindowWidth - 2 * kFramePadding;
action:(SEL)action
toView:(NSView*)view;
- (NSButton*)addCheckbox:(NSString*)title
+ action:(SEL)action
toView:(NSView*)view;
- (NSPopUpButton*)addPopUpButton:(ui::ComboboxModel*)model
action:(SEL)action
toView:(NSView*)view;
-- (void)handleNopeButtonPressed;
+- (void)handleAlwaysTranslateCheckboxPressed;
- (void)handleDoneButtonPressed;
- (void)handleCancelButtonPressed;
- (void)handleShowOriginalButtonPressed;
@@ -426,7 +429,9 @@ const CGFloat kContentWidth = kWindowWidth - 2 * kFramePadding;
if (!isIncognitoWindow) {
NSString* title =
l10n_util::GetNSStringWithFixup(IDS_TRANSLATE_BUBBLE_ALWAYS);
+ action = @selector(handleAlwaysTranslateCheckboxPressed);
alwaysTranslateCheckbox_ = [self addCheckbox:title
+ action:action
toView:view];
}
@@ -567,6 +572,7 @@ const CGFloat kContentWidth = kWindowWidth - 2 * kFramePadding;
}
- (NSButton*)addCheckbox:(NSString*)title
+ action:(SEL)action
toView:(NSView*)view {
base::scoped_nsobject<NSButton> button(
[[NSButton alloc] initWithFrame:NSZeroRect]);
@@ -575,6 +581,8 @@ const CGFloat kContentWidth = kWindowWidth - 2 * kFramePadding;
[[button cell] setControlSize:NSSmallControlSize];
[button setButtonType:NSSwitchButton];
[button sizeToFit];
+ [button setTarget:self];
+ [button setAction:action];
[view addSubview:button.get()];
@@ -596,16 +604,19 @@ const CGFloat kContentWidth = kWindowWidth - 2 * kFramePadding;
}
- (void)handleTranslateButtonPressed {
+ translate::ReportUiAction(translate::TRANSLATE_BUTTON_CLICKED);
translateExecuted_ = YES;
model_->Translate();
}
-- (void)handleNopeButtonPressed {
- model_->DeclineTranslation();
- [self close];
+- (void)handleAlwaysTranslateCheckboxPressed {
+ translate::ReportUiAction([alwaysTranslateCheckbox_ state] == NSOnState
+ ? translate::ALWAYS_TRANSLATE_CHECKED
+ : translate::ALWAYS_TRANSLATE_UNCHECKED);
}
- (void)handleDoneButtonPressed {
+ translate::ReportUiAction(translate::DONE_BUTTON_CLICKED);
if (alwaysTranslateCheckbox_) {
model_->SetAlwaysTranslate(
[alwaysTranslateCheckbox_ state] == NSOnState);
@@ -621,43 +632,51 @@ const CGFloat kContentWidth = kWindowWidth - 2 * kFramePadding;
}
- (void)handleCancelButtonPressed {
+ translate::ReportUiAction(translate::CANCEL_BUTTON_CLICKED);
model_->GoBackFromAdvanced();
[self performLayout];
}
- (void)handleShowOriginalButtonPressed {
+ translate::ReportUiAction(translate::SHOW_ORIGINAL_BUTTON_CLICKED);
model_->RevertTranslation();
[self close];
}
- (void)handleAdvancedLinkButtonPressed {
+ translate::ReportUiAction(translate::ADVANCED_LINK_CLICKED);
[self switchView:TranslateBubbleModel::VIEW_STATE_ADVANCED];
}
- (void)handleDenialPopUpButtonNopeSelected {
+ translate::ReportUiAction(translate::NOPE_MENU_CLICKED);
model_->DeclineTranslation();
[self close];
}
- (void)handleDenialPopUpButtonNeverTranslateLanguageSelected {
+ translate::ReportUiAction(translate::NEVER_TRANSLATE_LANGUAGE_MENU_CLICKED);
model_->DeclineTranslation();
model_->SetNeverTranslateLanguage(true);
[self close];
}
- (void)handleDenialPopUpButtonNeverTranslateSiteSelected {
+ translate::ReportUiAction(translate::NEVER_TRANSLATE_SITE_MENU_CLICKED);
model_->DeclineTranslation();
model_->SetNeverTranslateSite(true);
[self close];
}
- (void)handleSourceLanguagePopUpButtonSelectedItemChanged:(id)sender {
+ translate::ReportUiAction(translate::SOURCE_LANGUAGE_MENU_CLICKED);
NSPopUpButton* button = base::mac::ObjCCastStrict<NSPopUpButton>(sender);
model_->UpdateOriginalLanguageIndex([button indexOfSelectedItem]);
[self updateAdvancedView];
}
- (void)handleTargetLanguagePopUpButtonSelectedItemChanged:(id)sender {
+ translate::ReportUiAction(translate::TARGET_LANGUAGE_MENU_CLICKED);
NSPopUpButton* button = base::mac::ObjCCastStrict<NSPopUpButton>(sender);
model_->UpdateTargetLanguageIndex([button indexOfSelectedItem]);
[self updateAdvancedView];
« 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