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

Side by Side Diff: chrome/browser/ui/views/tabs/tab_renderer_data.h

Issue 6622002: Do all OOLing in the views code. linux_views now builds clean with the clang plugin. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 9 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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_VIEWS_TABS_TAB_RENDERER_DATA_H_ 5 #ifndef CHROME_BROWSER_UI_VIEWS_TABS_TAB_RENDERER_DATA_H_
6 #define CHROME_BROWSER_UI_VIEWS_TABS_TAB_RENDERER_DATA_H_ 6 #define CHROME_BROWSER_UI_VIEWS_TABS_TAB_RENDERER_DATA_H_
7 #pragma once 7 #pragma once
8 8
9 #include "base/process_util.h" 9 #include "base/process_util.h"
10 #include "base/string16.h" 10 #include "base/string16.h"
11 #include "third_party/skia/include/core/SkBitmap.h" 11 #include "third_party/skia/include/core/SkBitmap.h"
12 12
13 // Wraps the state needed by the renderers. 13 // Wraps the state needed by the renderers.
14 struct TabRendererData { 14 struct TabRendererData {
15 // Different types of network activity for a tab. The NetworkState of a tab 15 // Different types of network activity for a tab. The NetworkState of a tab
16 // may be used to alter the UI (e.g. show different kinds of loading 16 // may be used to alter the UI (e.g. show different kinds of loading
17 // animations). 17 // animations).
18 enum NetworkState { 18 enum NetworkState {
19 NETWORK_STATE_NONE, // no network activity. 19 NETWORK_STATE_NONE, // no network activity.
20 NETWORK_STATE_WAITING, // waiting for a connection. 20 NETWORK_STATE_WAITING, // waiting for a connection.
21 NETWORK_STATE_LOADING, // connected, transferring data. 21 NETWORK_STATE_LOADING, // connected, transferring data.
22 }; 22 };
23 23
24 TabRendererData() 24 TabRendererData();
25 : network_state(NETWORK_STATE_NONE), 25 ~TabRendererData();
26 loading(false),
27 crashed_status(base::TERMINATION_STATUS_STILL_RUNNING),
28 off_the_record(false),
29 show_icon(true),
30 mini(false),
31 blocked(false),
32 app(false) {
33 }
34 26
35 // This interprets the crashed status to decide whether or not this 27 // This interprets the crashed status to decide whether or not this
36 // render data represents a tab that is "crashed" (i.e. the render 28 // render data represents a tab that is "crashed" (i.e. the render
37 // process died unexpectedly). 29 // process died unexpectedly).
38 bool IsCrashed() const { 30 bool IsCrashed() const {
39 return (crashed_status == base::TERMINATION_STATUS_PROCESS_WAS_KILLED || 31 return (crashed_status == base::TERMINATION_STATUS_PROCESS_WAS_KILLED ||
40 crashed_status == base::TERMINATION_STATUS_PROCESS_CRASHED || 32 crashed_status == base::TERMINATION_STATUS_PROCESS_CRASHED ||
41 crashed_status == base::TERMINATION_STATUS_ABNORMAL_TERMINATION); 33 crashed_status == base::TERMINATION_STATUS_ABNORMAL_TERMINATION);
42 } 34 }
43 35
44 // Returns true if the TabRendererData is same as given |data|. Two favicons 36 // Returns true if the TabRendererData is same as given |data|. Two favicons
45 // are considered equals if two SkBitmaps point to the same SkPixelRef object. 37 // are considered equals if two SkBitmaps point to the same SkPixelRef object.
46 bool Equals(const TabRendererData& data) { 38 bool Equals(const TabRendererData& data);
47 return
48 favicon.pixelRef() &&
49 favicon.pixelRef() == data.favicon.pixelRef() &&
50 favicon.pixelRefOffset() == data.favicon.pixelRefOffset() &&
51 network_state == data.network_state &&
52 title == data.title &&
53 loading == data.loading &&
54 crashed_status == data.crashed_status &&
55 off_the_record == data.off_the_record &&
56 show_icon == data.show_icon &&
57 mini == data.mini &&
58 blocked == data.blocked &&
59 app == data.app;
60 }
61 39
62 SkBitmap favicon; 40 SkBitmap favicon;
63 NetworkState network_state; 41 NetworkState network_state;
64 string16 title; 42 string16 title;
65 bool loading; 43 bool loading;
66 base::TerminationStatus crashed_status; 44 base::TerminationStatus crashed_status;
67 bool off_the_record; 45 bool off_the_record;
68 bool show_icon; 46 bool show_icon;
69 bool mini; 47 bool mini;
70 bool blocked; 48 bool blocked;
71 bool app; 49 bool app;
72 }; 50 };
73 51
74 #endif // CHROME_BROWSER_UI_VIEWS_TABS_TAB_RENDERER_DATA_H_ 52 #endif // CHROME_BROWSER_UI_VIEWS_TABS_TAB_RENDERER_DATA_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698