diff options
author | davemoore@chromium.org <davemoore@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-22 21:42:34 +0000 |
---|---|---|
committer | davemoore@chromium.org <davemoore@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-22 21:42:34 +0000 |
commit | b261feb5d36701615122a48ac27e4c5042bbcf9e (patch) | |
tree | 970c3c12ca61c7e39a8c5c003e2614f18a00168f /chrome/browser | |
parent | 214a7ab7d7311c4fbff83668ed150206d15e35b1 (diff) | |
download | chromium_src-b261feb5d36701615122a48ac27e4c5042bbcf9e.zip chromium_src-b261feb5d36701615122a48ac27e4c5042bbcf9e.tar.gz chromium_src-b261feb5d36701615122a48ac27e4c5042bbcf9e.tar.bz2 |
Made the title of panels show focused state with black text
(as opposed to grey text in unfocused panels)
Review URL: http://codereview.chromium.org/159176
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21328 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser')
-rw-r--r-- | chrome/browser/gtk/browser_window_gtk.cc | 34 | ||||
-rw-r--r-- | chrome/browser/gtk/browser_window_gtk.h | 8 | ||||
-rw-r--r-- | chrome/browser/views/panel_controller.cc | 22 | ||||
-rw-r--r-- | chrome/browser/views/panel_controller.h | 4 |
4 files changed, 62 insertions, 6 deletions
diff --git a/chrome/browser/gtk/browser_window_gtk.cc b/chrome/browser/gtk/browser_window_gtk.cc index 2d4d1a9..ae8c547 100644 --- a/chrome/browser/gtk/browser_window_gtk.cc +++ b/chrome/browser/gtk/browser_window_gtk.cc @@ -344,11 +344,6 @@ gboolean OnKeyPress(GtkWindow* window, GdkEventKey* event, Browser* browser) { } } -gboolean OnFocusIn(GtkWidget* widget, GdkEventFocus* event, Browser* browser) { - BrowserList::SetLastActive(browser); - return FALSE; -} - GdkCursorType GdkWindowEdgeToGdkCursorType(GdkWindowEdge edge) { switch (edge) { case GDK_WINDOW_EDGE_NORTH_WEST: @@ -1101,7 +1096,9 @@ void BrowserWindowGtk::ConnectHandlersToSignals() { g_signal_connect(window_, "button-press-event", G_CALLBACK(OnButtonPressEvent), this); g_signal_connect(window_, "focus-in-event", - G_CALLBACK(OnFocusIn), browser_.get()); + G_CALLBACK(OnFocusIn), this); + g_signal_connect(window_, "focus-out-event", + G_CALLBACK(OnFocusOut), this); } void BrowserWindowGtk::InitWidgets() { @@ -1440,6 +1437,31 @@ void BrowserWindowGtk::MainWindowUnMapped(GtkWidget* widget, BrowserWindowGtk::xid_map_.erase(xid); } +// static +gboolean BrowserWindowGtk::OnFocusIn(GtkWidget* widget, + GdkEventFocus* event, + BrowserWindowGtk* browser) { + BrowserList::SetLastActive(browser->browser_.get()); +#if defined(OS_CHROMEOS) + if (browser->panel_controller_) { + browser->panel_controller_->OnFocusIn(); + } +#endif + return FALSE; +} + +// static +gboolean BrowserWindowGtk::OnFocusOut(GtkWidget* widget, + GdkEventFocus* event, + BrowserWindowGtk* browser) { +#if defined(OS_CHROMEOS) + if (browser->panel_controller_) { + browser->panel_controller_->OnFocusOut(); + } +#endif + return FALSE; +} + void BrowserWindowGtk::ExecuteBrowserCommand(int id) { if (browser_->command_updater()->IsCommandEnabled(id)) browser_->ExecuteCommand(id); diff --git a/chrome/browser/gtk/browser_window_gtk.h b/chrome/browser/gtk/browser_window_gtk.h index 280d7b9..c494d68 100644 --- a/chrome/browser/gtk/browser_window_gtk.h +++ b/chrome/browser/gtk/browser_window_gtk.h @@ -242,6 +242,14 @@ class BrowserWindowGtk : public BrowserWindow, static void MainWindowMapped(GtkWidget* widget, BrowserWindowGtk* window); static void MainWindowUnMapped(GtkWidget* widget, BrowserWindowGtk* window); + // Tracks focus state of browser. + static gboolean OnFocusIn(GtkWidget* widget, + GdkEventFocus* event, + BrowserWindowGtk* browser); + static gboolean OnFocusOut(GtkWidget* widget, + GdkEventFocus* event, + BrowserWindowGtk* browser); + // A small shim for browser_->ExecuteCommand. void ExecuteBrowserCommand(int id); diff --git a/chrome/browser/views/panel_controller.cc b/chrome/browser/views/panel_controller.cc index 102d018..efcd9d3 100644 --- a/chrome/browser/views/panel_controller.cc +++ b/chrome/browser/views/panel_controller.cc @@ -40,6 +40,9 @@ const int kTitleWidth = 200; const int kTitleHeight = 24; const int kTitlePad = 8; const int kButtonPad = 8; +const SkColor kTitleBackground = 0xFFDDDDDD; +const SkColor kActiveText = SK_ColorBLACK; +const SkColor kInactiveText = 0xFF666666; static bool resources_initialized; static void InitializeResources() { @@ -172,6 +175,14 @@ bool PanelController::OnPanelClientEvent( return panel_controller->PanelClientEvent(event); } +void PanelController::OnFocusIn() { + title_content_->OnFocusIn(); +} + +void PanelController::OnFocusOut() { + title_content_->OnFocusOut(); +} + bool PanelController::PanelClientEvent(GdkEventClient* event) { TabOverviewTypes::Message msg; TabOverviewTypes::instance()->DecodeMessage(*event, &msg); @@ -203,6 +214,7 @@ PanelController::TitleContentView::TitleContentView( title_label_ = new views::Label(std::wstring(), *title_font); title_label_->SetHorizontalAlignment(views::Label::ALIGN_LEFT); + title_label_->SetColor(kInactiveText); AddChildView(title_label_); set_background(views::Background::CreateSolidBackground(0xdd, 0xdd, 0xdd, 1)); @@ -236,3 +248,13 @@ bool PanelController::TitleContentView::OnMouseDragged( return panel_controller_->TitleMouseDragged(event); } +void PanelController::TitleContentView::OnFocusIn() { + title_label_->SetColor(kActiveText); + title_label_->SchedulePaint(); +} + +void PanelController::TitleContentView::OnFocusOut() { + title_label_->SetColor(kInactiveText); + title_label_->SchedulePaint(); +} + diff --git a/chrome/browser/views/panel_controller.h b/chrome/browser/views/panel_controller.h index 3bb88a6..0379e7b 100644 --- a/chrome/browser/views/panel_controller.h +++ b/chrome/browser/views/panel_controller.h @@ -29,6 +29,8 @@ class PanelController : public views::ButtonListener { void TitleMouseReleased(const views::MouseEvent& event, bool canceled); bool TitleMouseDragged(const views::MouseEvent& event); bool PanelClientEvent(GdkEventClient* event); + void OnFocusIn(); + void OnFocusOut(); void UpdateTitleBar(); void Close(); @@ -44,6 +46,8 @@ class PanelController : public views::ButtonListener { virtual bool OnMousePressed(const views::MouseEvent& event); virtual void OnMouseReleased(const views::MouseEvent& event, bool canceled); virtual bool OnMouseDragged(const views::MouseEvent& event); + void OnFocusIn(); + void OnFocusOut(); views::Label* title_label() { return title_label_; } views::ImageButton* close_button() { return close_button_; } |