OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 21 matching lines...) Expand all Loading... |
32 #include "modules/quota/DOMWindowQuota.h" | 32 #include "modules/quota/DOMWindowQuota.h" |
33 | 33 |
34 #include "core/dom/Document.h" | 34 #include "core/dom/Document.h" |
35 #include "core/frame/DOMWindow.h" | 35 #include "core/frame/DOMWindow.h" |
36 #include "core/frame/Frame.h" | 36 #include "core/frame/Frame.h" |
37 #include "modules/quota/DeprecatedStorageInfo.h" | 37 #include "modules/quota/DeprecatedStorageInfo.h" |
38 #include "wtf/PassRefPtr.h" | 38 #include "wtf/PassRefPtr.h" |
39 | 39 |
40 namespace WebCore { | 40 namespace WebCore { |
41 | 41 |
| 42 #ifdef DOMWindow_IS_GARBAGE_COLLECTED |
| 43 DEFINE_GC_INFO(DOMWindowQuota); |
| 44 #endif |
| 45 |
42 DOMWindowQuota::DOMWindowQuota(DOMWindow* window) | 46 DOMWindowQuota::DOMWindowQuota(DOMWindow* window) |
43 : DOMWindowProperty(window->frame()) | 47 : DOMWindowProperty(window->frame()) |
44 { | 48 { |
45 } | 49 } |
46 | 50 |
47 DOMWindowQuota::~DOMWindowQuota() | |
48 { | |
49 } | |
50 | |
51 const char* DOMWindowQuota::supplementName() | 51 const char* DOMWindowQuota::supplementName() |
52 { | 52 { |
53 return "DOMWindowQuota"; | 53 return "DOMWindowQuota"; |
54 } | 54 } |
55 | 55 |
56 // static | |
57 DOMWindowQuota* DOMWindowQuota::from(DOMWindow* window) | 56 DOMWindowQuota* DOMWindowQuota::from(DOMWindow* window) |
58 { | 57 { |
59 DOMWindowQuota* supplement = static_cast<DOMWindowQuota*>(Supplement<DOMWind
ow>::from(window, supplementName())); | 58 DOMWindowQuota* supplement = static_cast<DOMWindowQuota*>(Supplement<DOMWind
ow>::from(window, supplementName())); |
60 if (!supplement) { | 59 if (!supplement) { |
61 supplement = new DOMWindowQuota(window); | 60 supplement = new DOMWindowQuota(window); |
62 provideTo(window, supplementName(), adoptPtr(supplement)); | 61 provideTo(window, supplementName(), adoptPtr(supplement)); |
63 } | 62 } |
64 return supplement; | 63 return supplement; |
65 } | 64 } |
66 | 65 |
67 // static | |
68 DeprecatedStorageInfo* DOMWindowQuota::webkitStorageInfo(DOMWindow* window) | 66 DeprecatedStorageInfo* DOMWindowQuota::webkitStorageInfo(DOMWindow* window) |
69 { | 67 { |
70 return DOMWindowQuota::from(window)->webkitStorageInfo(); | 68 return DOMWindowQuota::from(window)->webkitStorageInfo(); |
71 } | 69 } |
72 | 70 |
73 DeprecatedStorageInfo* DOMWindowQuota::webkitStorageInfo() const | 71 DeprecatedStorageInfo* DOMWindowQuota::webkitStorageInfo() const |
74 { | 72 { |
75 if (!m_storageInfo && frame()) | 73 if (!m_storageInfo && frame()) |
76 m_storageInfo = DeprecatedStorageInfo::create(); | 74 m_storageInfo = DeprecatedStorageInfo::create(); |
77 return m_storageInfo.get(); | 75 return m_storageInfo.get(); |
78 } | 76 } |
79 | 77 |
| 78 #ifdef DOMWindow_IS_GARBAGE_COLLECTED |
| 79 void DOMWindowQuota::trace(Visitor* visitor) |
| 80 { |
| 81 visitor->trace(m_storageInfo); |
| 82 } |
| 83 #endif |
| 84 |
80 } // namespace WebCore | 85 } // namespace WebCore |
OLD | NEW |