summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/render_widget.cc
diff options
context:
space:
mode:
authordarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-08 21:58:04 +0000
committerdarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-08 21:58:04 +0000
commit02e80deede0729617aeb87128b1db3cd14b36d6b (patch)
treedfdec4f6e761c652ba8439dc36204cfa31246962 /chrome/renderer/render_widget.cc
parent98aebc7fc44cc34ecfa5a33ade9a8aa511bb96a3 (diff)
downloadchromium_src-02e80deede0729617aeb87128b1db3cd14b36d6b.zip
chromium_src-02e80deede0729617aeb87128b1db3cd14b36d6b.tar.gz
chromium_src-02e80deede0729617aeb87128b1db3cd14b36d6b.tar.bz2
Switch to using WebPoint, WebRect, and WebSize in more of the glue
layer interface. This will help when we move those interfaces into the WebKit API. R=dglazkov Review URL: http://codereview.chromium.org/63126 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13381 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/render_widget.cc')
-rw-r--r--chrome/renderer/render_widget.cc40
1 files changed, 24 insertions, 16 deletions
diff --git a/chrome/renderer/render_widget.cc b/chrome/renderer/render_widget.cc
index 9b05e19..5c00dc0 100644
--- a/chrome/renderer/render_widget.cc
+++ b/chrome/renderer/render_widget.cc
@@ -14,7 +14,9 @@
#include "chrome/common/transport_dib.h"
#include "chrome/renderer/render_process.h"
#include "skia/ext/platform_canvas.h"
+#include "third_party/WebKit/WebKit/chromium/public/WebRect.h"
#include "third_party/WebKit/WebKit/chromium/public/WebScreenInfo.h"
+#include "third_party/WebKit/WebKit/chromium/public/WebSize.h"
#if defined(OS_POSIX)
#include "skia/include/SkPixelRef.h"
@@ -25,7 +27,9 @@
#include "webkit/glue/webwidget.h"
using WebKit::WebInputEvent;
+using WebKit::WebRect;
using WebKit::WebScreenInfo;
+using WebKit::WebSize;
RenderWidget::RenderWidget(RenderThreadBase* render_thread, bool activatable)
: routing_id_(MSG_ROUTING_NONE),
@@ -454,13 +458,13 @@ gfx::NativeViewId RenderWidget::GetContainingView(WebWidget* webwidget) {
}
void RenderWidget::DidInvalidateRect(WebWidget* webwidget,
- const gfx::Rect& rect) {
+ const WebRect& rect) {
// We only want one pending DoDeferredPaint call at any time...
bool paint_pending = !paint_rect_.IsEmpty();
// If this invalidate overlaps with a pending scroll, then we have to
// downgrade to invalidating the scroll rect.
- if (rect.Intersects(scroll_rect_)) {
+ if (gfx::Rect(rect).Intersects(scroll_rect_)) {
paint_rect_ = paint_rect_.Union(scroll_rect_);
scroll_rect_ = gfx::Rect();
}
@@ -486,7 +490,7 @@ void RenderWidget::DidInvalidateRect(WebWidget* webwidget,
}
void RenderWidget::DidScrollRect(WebWidget* webwidget, int dx, int dy,
- const gfx::Rect& clip_rect) {
+ const WebRect& clip_rect) {
if (dx != 0 && dy != 0) {
// We only support scrolling along one axis at a time.
DidScrollRect(webwidget, 0, dy, clip_rect);
@@ -498,7 +502,7 @@ void RenderWidget::DidScrollRect(WebWidget* webwidget, int dx, int dy,
// If we already have a pending scroll operation or if this scroll operation
// intersects the existing paint region, then just failover to invalidating.
if (!scroll_rect_.IsEmpty() || intersects_with_painting) {
- if (!intersects_with_painting && scroll_rect_ == clip_rect) {
+ if (!intersects_with_painting && scroll_rect_ == gfx::Rect(clip_rect)) {
// OK, we can just update the scroll delta (requires same scrolling axis)
if (!dx && !scroll_delta_.x()) {
scroll_delta_.set_y(scroll_delta_.y() + dy);
@@ -561,7 +565,7 @@ void RenderWidget::Show(WebWidget* webwidget,
}
void RenderWidget::ShowWithItems(WebWidget* webwidget,
- const gfx::Rect& bounds,
+ const WebRect& bounds,
int item_height,
int selected_index,
const std::vector<MenuItem>& items) {
@@ -598,11 +602,13 @@ void RenderWidget::Close() {
}
}
-void RenderWidget::GetWindowRect(WebWidget* webwidget, gfx::Rect* rect) {
- Send(new ViewHostMsg_GetWindowRect(routing_id_, host_window_, rect));
+void RenderWidget::GetWindowRect(WebWidget* webwidget, WebRect* result) {
+ gfx::Rect rect;
+ Send(new ViewHostMsg_GetWindowRect(routing_id_, host_window_, &rect));
+ *result = rect;
}
-void RenderWidget::SetWindowRect(WebWidget* webwidget, const gfx::Rect& pos) {
+void RenderWidget::SetWindowRect(WebWidget* webwidget, const WebRect& pos) {
if (did_show_) {
Send(new ViewHostMsg_RequestMove(routing_id_, pos));
} else {
@@ -610,12 +616,14 @@ void RenderWidget::SetWindowRect(WebWidget* webwidget, const gfx::Rect& pos) {
}
}
-void RenderWidget::GetRootWindowRect(WebWidget* webwidget, gfx::Rect* rect) {
- Send(new ViewHostMsg_GetRootWindowRect(routing_id_, host_window_, rect));
+void RenderWidget::GetRootWindowRect(WebWidget* webwidget, WebRect* result) {
+ gfx::Rect rect;
+ Send(new ViewHostMsg_GetRootWindowRect(routing_id_, host_window_, &rect));
+ *result = rect;
}
void RenderWidget::GetRootWindowResizerRect(WebWidget* webwidget,
- gfx::Rect* rect) {
+ WebRect* rect) {
*rect = resizer_rect_;
}
@@ -694,7 +702,7 @@ void RenderWidget::UpdateIME() {
// Retrieve the caret position from the focused widget and verify we should
// enabled IMEs attached to the browser process.
bool enable_ime = false;
- gfx::Rect caret_rect;
+ WebRect caret_rect;
if (!webwidget_ ||
!webwidget_->ImeUpdateStatus(&enable_ime, &caret_rect)) {
// There are not any editable widgets attached to this process.
@@ -740,8 +748,8 @@ void RenderWidget::UpdateIME() {
// The input focus is not changed.
// Notify the caret position to a browser process only if it is changed.
if (ime_control_enable_ime_) {
- if (caret_rect.x() != ime_control_x_ ||
- caret_rect.y() != ime_control_y_) {
+ if (caret_rect.x != ime_control_x_ ||
+ caret_rect.y != ime_control_y_) {
Send(new ViewHostMsg_ImeUpdateStatus(routing_id(), IME_MOVE_WINDOWS,
caret_rect));
}
@@ -750,8 +758,8 @@ void RenderWidget::UpdateIME() {
// Save the updated IME status to prevent from sending the same IPC messages.
ime_control_updated_ = false;
ime_control_enable_ime_ = ime_control_new_state_;
- ime_control_x_ = caret_rect.x();
- ime_control_y_ = caret_rect.y();
+ ime_control_x_ = caret_rect.x;
+ ime_control_y_ = caret_rect.y;
}
void RenderWidget::DidMove(WebWidget* webwidget,