OLD | NEW |
1 // Copyright (c) 2011 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 #include "webkit/plugins/ppapi/ppb_scrollbar_impl.h" | 5 #include "webkit/plugins/ppapi/ppb_scrollbar_impl.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "base/message_loop.h" | 8 #include "base/message_loop.h" |
9 #include "ppapi/c/dev/ppp_scrollbar_dev.h" | 9 #include "ppapi/c/dev/ppp_scrollbar_dev.h" |
10 #include "ppapi/thunk/thunk.h" | 10 #include "ppapi/thunk/thunk.h" |
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
118 | 118 |
119 PPB_Scrollbar_Impl::PPB_Scrollbar_Impl(PluginInstance* instance) | 119 PPB_Scrollbar_Impl::PPB_Scrollbar_Impl(PluginInstance* instance) |
120 : PPB_Widget_Impl(instance), | 120 : PPB_Widget_Impl(instance), |
121 ALLOW_THIS_IN_INITIALIZER_LIST(method_factory_(this)) { | 121 ALLOW_THIS_IN_INITIALIZER_LIST(method_factory_(this)) { |
122 } | 122 } |
123 | 123 |
124 PPB_Scrollbar_Impl::~PPB_Scrollbar_Impl() { | 124 PPB_Scrollbar_Impl::~PPB_Scrollbar_Impl() { |
125 } | 125 } |
126 | 126 |
127 void PPB_Scrollbar_Impl::Init(bool vertical) { | 127 void PPB_Scrollbar_Impl::Init(bool vertical) { |
128 #if defined(WEBSCROLLBAR_SUPPORTS_OVERLAY) | |
129 scrollbar_.reset(WebScrollbar::createForPlugin( | 128 scrollbar_.reset(WebScrollbar::createForPlugin( |
130 vertical ? WebScrollbar::Vertical : WebScrollbar::Horizontal, | 129 vertical ? WebScrollbar::Vertical : WebScrollbar::Horizontal, |
131 instance()->container(), | 130 instance()->container(), |
132 static_cast<WebKit::WebScrollbarClient*>(this))); | 131 static_cast<WebKit::WebScrollbarClient*>(this))); |
133 #else | |
134 scrollbar_.reset(WebScrollbar::create( | |
135 static_cast<WebKit::WebScrollbarClient*>(this), | |
136 vertical ? WebScrollbar::Vertical : WebScrollbar::Horizontal)); | |
137 #endif | |
138 } | 132 } |
139 | 133 |
140 PPB_Scrollbar_API* PPB_Scrollbar_Impl::AsPPB_Scrollbar_API() { | 134 PPB_Scrollbar_API* PPB_Scrollbar_Impl::AsPPB_Scrollbar_API() { |
141 return this; | 135 return this; |
142 } | 136 } |
143 | 137 |
144 // static | 138 // static |
145 const PPB_Scrollbar_0_3_Dev* PPB_Scrollbar_Impl::Get0_3Interface() { | 139 const PPB_Scrollbar_0_3_Dev* PPB_Scrollbar_Impl::Get0_3Interface() { |
146 return &ppb_scrollbar_0_3; | 140 return &ppb_scrollbar_0_3; |
147 } | 141 } |
148 | 142 |
149 // static | 143 // static |
150 const PPB_Scrollbar_0_4_Dev* PPB_Scrollbar_Impl::Get0_4Interface() { | 144 const PPB_Scrollbar_0_4_Dev* PPB_Scrollbar_Impl::Get0_4Interface() { |
151 return &ppb_scrollbar_0_4; | 145 return &ppb_scrollbar_0_4; |
152 } | 146 } |
153 | 147 |
154 uint32_t PPB_Scrollbar_Impl::GetThickness() { | 148 uint32_t PPB_Scrollbar_Impl::GetThickness() { |
155 return WebScrollbar::defaultThickness(); | 149 return WebScrollbar::defaultThickness(); |
156 } | 150 } |
157 | 151 |
158 bool PPB_Scrollbar_Impl::IsOverlay() { | 152 bool PPB_Scrollbar_Impl::IsOverlay() { |
159 // TODO(jam): take this out once WebKit is rolled. | |
160 #if defined(WEBSCROLLBAR_SUPPORTS_OVERLAY) | |
161 return scrollbar_->isOverlay(); | 153 return scrollbar_->isOverlay(); |
162 #else | |
163 return false; | |
164 #endif | |
165 } | 154 } |
166 | 155 |
167 uint32_t PPB_Scrollbar_Impl::GetValue() { | 156 uint32_t PPB_Scrollbar_Impl::GetValue() { |
168 return scrollbar_->value(); | 157 return scrollbar_->value(); |
169 } | 158 } |
170 | 159 |
171 void PPB_Scrollbar_Impl::SetValue(uint32_t value) { | 160 void PPB_Scrollbar_Impl::SetValue(uint32_t value) { |
172 scrollbar_->setValue(value); | 161 scrollbar_->setValue(value); |
173 } | 162 } |
174 | 163 |
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
311 pp_rect.point.y = dirty_.y(); | 300 pp_rect.point.y = dirty_.y(); |
312 pp_rect.size.width = dirty_.width(); | 301 pp_rect.size.width = dirty_.width(); |
313 pp_rect.size.height = dirty_.height(); | 302 pp_rect.size.height = dirty_.height(); |
314 dirty_ = gfx::Rect(); | 303 dirty_ = gfx::Rect(); |
315 Invalidate(&pp_rect); | 304 Invalidate(&pp_rect); |
316 } | 305 } |
317 | 306 |
318 } // namespace ppapi | 307 } // namespace ppapi |
319 } // namespace webkit | 308 } // namespace webkit |
320 | 309 |
OLD | NEW |