OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 ATHENA_ACTIVITY_PUBLIC_ACTIVITY_VIEW_MODEL_H_ | 5 #ifndef ATHENA_ACTIVITY_PUBLIC_ACTIVITY_VIEW_MODEL_H_ |
6 #define ATHENA_ACTIVITY_PUBLIC_ACTIVITY_VIEW_MODEL_H_ | 6 #define ATHENA_ACTIVITY_PUBLIC_ACTIVITY_VIEW_MODEL_H_ |
7 | 7 |
8 #include "athena/athena_export.h" | 8 #include "athena/athena_export.h" |
9 #include "base/strings/string16.h" | 9 #include "base/strings/string16.h" |
10 | 10 |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
49 // loaded. Note that the caller should not hold on to the view since it can | 49 // loaded. Note that the caller should not hold on to the view since it can |
50 // be deleted by the resource manager. | 50 // be deleted by the resource manager. |
51 virtual views::View* GetContentsView() = 0; | 51 virtual views::View* GetContentsView() = 0; |
52 | 52 |
53 // Creates a custom widget for the activity. Returns NULL to use default | 53 // Creates a custom widget for the activity. Returns NULL to use default |
54 // implementation. | 54 // implementation. |
55 virtual views::Widget* CreateWidget() = 0; | 55 virtual views::Widget* CreateWidget() = 0; |
56 | 56 |
57 // Returns an image which can be used to represent the activity in e.g. the | 57 // Returns an image which can be used to represent the activity in e.g. the |
58 // overview mode. The returned image can have no size if either a view exists | 58 // overview mode. The returned image can have no size if either a view exists |
59 // or the activity has not yet been loaded. In that case | 59 // or the activity has not yet been loaded or ever been presented. In that |
60 // GetRepresentativeColor() should be used to clear the preview area. | 60 // case GetRepresentativeColor() should be used to clear the preview area. |
61 // Note: We intentionally do not use a layer / view for this. | 61 // Note that since the image gets created upon request, and the |
| 62 // ActivityViewModel will hold no reference to the returned image data. As |
| 63 // such it is advisable to hold on to the image as long as needed instead of |
| 64 // calling this function frequently since it will cause time to generate. |
62 virtual gfx::ImageSkia GetOverviewModeImage() = 0; | 65 virtual gfx::ImageSkia GetOverviewModeImage() = 0; |
63 | 66 |
64 // Prepares the contents view for overview. | 67 // Prepares the contents view for overview. |
65 virtual void PrepareContentsForOverview() = 0; | 68 virtual void PrepareContentsForOverview() = 0; |
66 | 69 |
67 // Undoes any changes done by PrepareContentsForOverview(). | 70 // Undoes any changes done by PrepareContentsForOverview(). |
68 virtual void ResetContentsView() = 0; | 71 virtual void ResetContentsView() = 0; |
69 }; | 72 }; |
70 | 73 |
71 } // namespace athena | 74 } // namespace athena |
72 | 75 |
73 #endif // ATHENA_ACTIVITY_PUBLIC_ACTIVITY_VIEW_MODEL_H_ | 76 #endif // ATHENA_ACTIVITY_PUBLIC_ACTIVITY_VIEW_MODEL_H_ |
OLD | NEW |