// Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "chrome/browser/ui/browser_language_state_observer.h" #include "chrome/browser/tab_contents/language_state.h" #include "chrome/browser/translate/translate_tab_helper.h" #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser_window.h" #include "chrome/browser/ui/tabs/tab_strip_model.h" BrowserLanguageStateObserver::BrowserLanguageStateObserver(Browser* browser) : browser_(browser) { } BrowserLanguageStateObserver::~BrowserLanguageStateObserver() { } void BrowserLanguageStateObserver::OnIsPageTranslatedChanged( content::WebContents* source) { if (source == browser_->tab_strip_model()->GetActiveWebContents()) { TranslateTabHelper* translate_tab_helper = TranslateTabHelper::FromWebContents(source); LanguageState& language_state = translate_tab_helper->language_state(); browser_->window()->SetTranslateIconToggled( language_state.IsPageTranslated()); } } void BrowserLanguageStateObserver::OnTranslateEnabledChanged( content::WebContents* source) { if (source == browser_->tab_strip_model()->GetActiveWebContents()) browser_->window()->UpdateToolbar(source); }