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

Side by Side Diff: chrome/browser/ui/gtk/location_bar_view_gtk.h

Issue 10806058: Move icon fallbacks into ExtensionAction. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Move the icon cache inside ExtensionAction. Created 8 years, 4 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_UI_GTK_LOCATION_BAR_VIEW_GTK_H_ 5 #ifndef CHROME_BROWSER_UI_GTK_LOCATION_BAR_VIEW_GTK_H_
6 #define CHROME_BROWSER_UI_GTK_LOCATION_BAR_VIEW_GTK_H_ 6 #define CHROME_BROWSER_UI_GTK_LOCATION_BAR_VIEW_GTK_H_
7 7
8 #include <gtk/gtk.h> 8 #include <gtk/gtk.h>
9 9
10 #include <map> 10 #include <map>
(...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after
293 virtual void OnIconChanged( 293 virtual void OnIconChanged(
294 const ExtensionAction::IconAnimation& animation) OVERRIDE; 294 const ExtensionAction::IconAnimation& animation) OVERRIDE;
295 295
296 // The location bar view that owns us. 296 // The location bar view that owns us.
297 LocationBarViewGtk* owner_; 297 LocationBarViewGtk* owner_;
298 298
299 // The PageAction that this view represents. The PageAction is not owned by 299 // The PageAction that this view represents. The PageAction is not owned by
300 // us, it resides in the extension of this particular profile. 300 // us, it resides in the extension of this particular profile.
301 ExtensionAction* page_action_; 301 ExtensionAction* page_action_;
302 302
303 // A cache of all the different icon paths associated with this page action.
304 typedef std::map<std::string, GdkPixbuf*> PixbufMap;
305 PixbufMap pixbufs_;
306
307 // A cache of the last dynamically generated bitmap and the pixbuf that
308 // corresponds to it. We keep track of both so we can free old pixbufs as
309 // their icons are replaced.
310 SkBitmap last_icon_skbitmap_;
311 GdkPixbuf* last_icon_pixbuf_;
312
313 // The object that is waiting for the image loading to complete 303 // The object that is waiting for the image loading to complete
314 // asynchronously. 304 // asynchronously.
315 ImageLoadingTracker tracker_; 305 ImageLoadingTracker tracker_;
316 306
317 // The widgets for this page action. 307 // The widgets for this page action.
318 ui::OwnedWidgetGtk event_box_; 308 ui::OwnedWidgetGtk event_box_;
319 ui::OwnedWidgetGtk image_; 309 ui::OwnedWidgetGtk image_;
320 310
321 // The tab id we are currently showing the icon for. 311 // The tab id we are currently showing the icon for.
322 int current_tab_id_; 312 int current_tab_id_;
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
537 BooleanPrefMember edit_bookmarks_enabled_; 527 BooleanPrefMember edit_bookmarks_enabled_;
538 528
539 // Used to remember the URL and title text when drag&drop has begun. 529 // Used to remember the URL and title text when drag&drop has begun.
540 GURL drag_url_; 530 GURL drag_url_;
541 string16 drag_title_; 531 string16 drag_title_;
542 532
543 DISALLOW_COPY_AND_ASSIGN(LocationBarViewGtk); 533 DISALLOW_COPY_AND_ASSIGN(LocationBarViewGtk);
544 }; 534 };
545 535
546 #endif // CHROME_BROWSER_UI_GTK_LOCATION_BAR_VIEW_GTK_H_ 536 #endif // CHROME_BROWSER_UI_GTK_LOCATION_BAR_VIEW_GTK_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698