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
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_UI_VIEWS_TABS_TAB_RENDERER_DATA_H_
6 #define CHROME_BROWSER_UI_VIEWS_TABS_TAB_RENDERER_DATA_H_
8 #include "base/strings/string16.h"
9 #include "chrome/browser/ui/tabs/tab_utils.h"
10 #include "chrome/browser/ui/views/chrome_views_export.h"
11 #include "ui/gfx/image/image_skia.h"
14 // Wraps the state needed by the renderers.
15 struct CHROME_VIEWS_EXPORT TabRendererData
{
16 // Different types of network activity for a tab. The NetworkState of a tab
17 // may be used to alter the UI (e.g. show different kinds of loading
20 NETWORK_STATE_NONE
, // no network activity.
21 NETWORK_STATE_WAITING
, // waiting for a connection.
22 NETWORK_STATE_LOADING
, // connected, transferring data.
28 // This interprets the crashed status to decide whether or not this
29 // render data represents a tab that is "crashed" (i.e. the render
30 // process died unexpectedly).
31 bool IsCrashed() const;
33 // Returns true if the TabRendererData is same as given |data|.
34 bool Equals(const TabRendererData
& data
);
36 gfx::ImageSkia favicon
;
37 NetworkState network_state
;
41 base::TerminationStatus crashed_status
;
47 TabMediaState media_state
;
50 #endif // CHROME_BROWSER_UI_VIEWS_TABS_TAB_RENDERER_DATA_H_