Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(135)

Unified Diff: win8/metro_driver/chrome_app_view_ash.cc

Issue 141953014: Adding support for sending horizonatal mouse wheel information in Chrome ASH on Windows 8. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « win8/metro_driver/chrome_app_view_ash.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: win8/metro_driver/chrome_app_view_ash.cc
===================================================================
--- win8/metro_driver/chrome_app_view_ash.cc (revision 244940)
+++ win8/metro_driver/chrome_app_view_ash.cc (working copy)
@@ -373,7 +373,8 @@
update_kind_(winui::Input::PointerUpdateKind_Other),
timestamp_(0),
pointer_id_(0),
- mouse_down_flags_(0) {}
+ mouse_down_flags_(0),
+ is_horizontal_wheel_(0) {}
HRESULT Init(winui::Core::IPointerEventArgs* args) {
HRESULT hr = args->get_CurrentPoint(&pointer_point_);
@@ -398,8 +399,12 @@
if (FAILED(hr))
return hr;
+ is_horizontal_wheel_ = 0;
+ properties->get_IsHorizontalMouseWheel(&is_horizontal_wheel_);
+
x_ = point.X;
y_ = point.Y;
+
pointer_point_->get_Timestamp(&timestamp_);
pointer_point_->get_PointerId(&pointer_id_);
// Map the OS touch event id to a range allowed by the gesture recognizer.
@@ -483,6 +488,8 @@
winui::Input::PointerUpdateKind update_kind() const { return update_kind_; }
+ bool is_horizontal_wheel() const { return !!is_horizontal_wheel_; }
+
private:
int x_;
int y_;
@@ -496,6 +503,9 @@
// down.
uint32 mouse_down_flags_;
+ // Set to true for a horizontal wheel message.
+ boolean is_horizontal_wheel_;
+
DISALLOW_COPY_AND_ASSIGN(PointerInfoHandler);
};
@@ -942,7 +952,8 @@
int extra,
ui::EventType event_type,
uint32 flags,
- ui::EventFlags changed_button) {
+ ui::EventFlags changed_button,
+ bool is_horizontal_wheel) {
MetroViewerHostMsg_MouseButtonParams params;
params.x = static_cast<int32>(x);
params.y = static_cast<int32>(y);
@@ -950,6 +961,7 @@
params.event_type = event_type;
params.flags = static_cast<int32>(flags);
params.changed_button = changed_button;
+ params.is_horizontal_wheel = is_horizontal_wheel;
ui_channel_->Send(new MetroViewerHostMsg_MouseButton(params));
}
@@ -976,7 +988,7 @@
}
SendMouseButton(pointer.x(), pointer.y(), 0, event_type,
mouse_down_flags | GetKeyboardEventFlags(),
- pointer.changed_button());
+ pointer.changed_button(), pointer.is_horizontal_wheel());
}
HRESULT ChromeAppViewAsh::OnActivate(
@@ -1050,7 +1062,7 @@
mouse_down_flags_ = pointer.mouse_down_flags();
SendMouseButton(pointer.x(), pointer.y(), 0, ui::ET_MOUSE_PRESSED,
mouse_down_flags_ | GetKeyboardEventFlags(),
- pointer.changed_button());
+ pointer.changed_button(), pointer.is_horizontal_wheel());
} else {
DCHECK(pointer.IsTouch());
ui_channel_->Send(new MetroViewerHostMsg_TouchDown(pointer.x(),
@@ -1074,7 +1086,8 @@
SendMouseButton(pointer.x(), pointer.y(), 0, ui::ET_MOUSE_RELEASED,
static_cast<uint32>(pointer.changed_button()) |
GetKeyboardEventFlags(),
- pointer.changed_button());
+ pointer.changed_button(),
+ pointer.is_horizontal_wheel());
} else {
DCHECK(pointer.IsTouch());
ui_channel_->Send(new MetroViewerHostMsg_TouchUp(pointer.x(),
@@ -1094,7 +1107,8 @@
return hr;
DCHECK(pointer.IsMouse());
SendMouseButton(pointer.x(), pointer.y(), pointer.wheel_delta(),
- ui::ET_MOUSEWHEEL, ui::EF_NONE, ui::EF_NONE);
+ ui::ET_MOUSEWHEEL, ui::EF_NONE, ui::EF_NONE,
+ pointer.is_horizontal_wheel());
return S_OK;
}
« no previous file with comments | « win8/metro_driver/chrome_app_view_ash.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698