Bug 774988: Compress touchmove events across processes. r=bent

This commit is contained in:
Chris Jones 2012-08-22 03:54:20 -07:00
parent d4f3042a2c
commit e855ad9af1
4 changed files with 13 additions and 1 deletions

View File

@ -313,6 +313,9 @@ child:
RealKeyEvent(nsKeyEvent event);
MouseWheelEvent(WheelEvent event);
RealTouchEvent(nsTouchEvent event);
// We use a separate message for touchmove events only to apply
// compression to them.
RealTouchMoveEvent(nsTouchEvent event) compress;
/**
* @see nsIDOMWindowUtils sendKeyEvent.

View File

@ -866,6 +866,12 @@ TabChild::RecvRealTouchEvent(const nsTouchEvent& aEvent)
return true;
}
bool
TabChild::RecvRealTouchMoveEvent(const nsTouchEvent& aEvent)
{
return RecvRealTouchEvent(aEvent);
}
bool
TabChild::RecvRealKeyEvent(const nsKeyEvent& event)
{

View File

@ -190,6 +190,7 @@ public:
virtual bool RecvRealKeyEvent(const nsKeyEvent& event);
virtual bool RecvMouseWheelEvent(const mozilla::widget::WheelEvent& event);
virtual bool RecvRealTouchEvent(const nsTouchEvent& event);
virtual bool RecvRealTouchMoveEvent(const nsTouchEvent& event);
virtual bool RecvKeyEvent(const nsString& aType,
const int32_t& aKeyCode,
const int32_t& aCharCode,

View File

@ -358,7 +358,9 @@ bool TabParent::SendRealTouchEvent(nsTouchEvent& event)
{
nsTouchEvent e(event);
MaybeForwardEventToRenderFrame(event, &e);
return PBrowserParent::SendRealTouchEvent(e);
return (e.message == NS_TOUCH_MOVE) ?
PBrowserParent::SendRealTouchMoveEvent(e) :
PBrowserParent::SendRealTouchEvent(e);
}
bool