Alias EventPointerType to single value.
Remove multiple definitions and conversion between the 3x defined types and just use the native ui event definition everywhere. BUG=1073560 Change-Id: I0abe409fc316fcfabdf1ec87602d54dfafe1d886 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2171518 Reviewed-by: Ken Buchanan <kenrb@chromium.org> Reviewed-by: Avi Drissman <avi@chromium.org> Commit-Queue: Dave Tapuska <dtapuska@chromium.org> Cr-Commit-Position: refs/heads/master@{#763894}
This commit is contained in:
content/common
third_party/blink/public/common
ui/events
@ -595,10 +595,6 @@ mojom("mojo_bindings") {
|
||||
mojom = "content.mojom.NetworkConnectionType"
|
||||
cpp = "::net::NetworkChangeNotifier::ConnectionType"
|
||||
},
|
||||
{
|
||||
mojom = "content.mojom.PointerType"
|
||||
cpp = "::blink::WebPointerProperties::PointerType"
|
||||
},
|
||||
{
|
||||
mojom = "content.mojom.ScrollGranularity"
|
||||
cpp = "::ui::ScrollGranularity"
|
||||
|
@ -51,7 +51,7 @@ struct PointerData {
|
||||
float tangential_pressure;
|
||||
int32 twist;
|
||||
blink.mojom.Button button;
|
||||
PointerType pointer_type;
|
||||
ui.mojom.EventPointerType pointer_type;
|
||||
int32 movement_x;
|
||||
int32 movement_y;
|
||||
bool is_raw_movement_event;
|
||||
@ -126,7 +126,7 @@ struct GestureData {
|
||||
gfx.mojom.PointF widget_position;
|
||||
blink.mojom.GestureDevice source_device;
|
||||
bool is_source_touch_event_set_non_blocking;
|
||||
PointerType primary_pointer_type;
|
||||
ui.mojom.EventPointerType primary_pointer_type;
|
||||
int32 unique_touch_event_id;
|
||||
gfx.mojom.Size? contact_size;
|
||||
ScrollData? scroll_data;
|
||||
|
@ -55,8 +55,6 @@ IPC_ENUM_TRAITS_MAX_VALUE(
|
||||
content::SyntheticPointerActionParams::Button::BUTTON_MAX)
|
||||
IPC_ENUM_TRAITS_MAX_VALUE(content::InputEventDispatchType,
|
||||
content::InputEventDispatchType::DISPATCH_TYPE_MAX)
|
||||
IPC_ENUM_TRAITS_MAX_VALUE(blink::WebPointerProperties::PointerType,
|
||||
blink::WebPointerProperties::PointerType::kMaxValue)
|
||||
IPC_ENUM_TRAITS_MAX_VALUE(
|
||||
cc::OverscrollBehavior::OverscrollBehaviorType,
|
||||
cc::OverscrollBehavior::OverscrollBehaviorType::kOverscrollBehaviorTypeMax)
|
||||
|
@ -40,9 +40,6 @@ enum NetworkConnectionType;
|
||||
[Native]
|
||||
struct WebCursor;
|
||||
|
||||
[Native]
|
||||
enum PointerType;
|
||||
|
||||
[Native]
|
||||
struct EditCommand;
|
||||
|
||||
|
1
third_party/blink/public/common/BUILD.gn
vendored
1
third_party/blink/public/common/BUILD.gn
vendored
@ -166,6 +166,7 @@ source_set("headers") {
|
||||
"//skia/public/mojom:shared_typemap_traits",
|
||||
"//third_party/blink/public/mojom:mojom_modules_headers",
|
||||
"//third_party/blink/public/mojom:web_bluetooth_mojo_bindings_headers",
|
||||
"//ui/events:event_constants",
|
||||
"//ui/events/types:headers",
|
||||
]
|
||||
|
||||
|
1
third_party/blink/public/common/DEPS
vendored
1
third_party/blink/public/common/DEPS
vendored
@ -18,6 +18,7 @@ include_rules = [
|
||||
"+skia/public/mojom",
|
||||
"+third_party/blink/public/common",
|
||||
"+third_party/blink/public/mojom",
|
||||
"+ui/events/event_constants.h",
|
||||
"+ui/events/types/scroll_types.h",
|
||||
"+ui/gfx/geometry",
|
||||
"+url",
|
||||
|
@ -8,6 +8,7 @@
|
||||
#include "third_party/blink/public/common/common_export.h"
|
||||
#include "third_party/blink/public/common/input/pointer_id.h"
|
||||
#include "third_party/blink/public/mojom/input/input_event.mojom-shared.h"
|
||||
#include "ui/events/event_constants.h"
|
||||
#include "ui/gfx/geometry/point_f.h"
|
||||
|
||||
#include <limits>
|
||||
@ -23,6 +24,8 @@ class WebPointerProperties {
|
||||
public:
|
||||
using Button = mojom::Button;
|
||||
|
||||
using PointerType = ui::EventPointerType;
|
||||
|
||||
enum class Buttons : unsigned {
|
||||
kNoButton = 0,
|
||||
kLeft = 1 << 0,
|
||||
@ -33,15 +36,6 @@ class WebPointerProperties {
|
||||
kEraser = 1 << 5
|
||||
};
|
||||
|
||||
enum class PointerType {
|
||||
kUnknown,
|
||||
kMouse,
|
||||
kPen,
|
||||
kEraser,
|
||||
kTouch,
|
||||
kMaxValue = kTouch // Must be the last entry in the list
|
||||
};
|
||||
|
||||
explicit WebPointerProperties(
|
||||
PointerId id_param,
|
||||
PointerType pointer_type_param = PointerType::kUnknown,
|
||||
|
@ -29,24 +29,6 @@ gfx::PointF GetScreenLocationFromEvent(const LocatedEvent& event) {
|
||||
: event.root_location_f();
|
||||
}
|
||||
|
||||
blink::WebPointerProperties::PointerType EventPointerTypeToWebPointerType(
|
||||
EventPointerType pointer_type) {
|
||||
switch (pointer_type) {
|
||||
case EventPointerType::kUnknown:
|
||||
return blink::WebPointerProperties::PointerType::kUnknown;
|
||||
case EventPointerType::kMouse:
|
||||
return blink::WebPointerProperties::PointerType::kMouse;
|
||||
case EventPointerType::kPen:
|
||||
return blink::WebPointerProperties::PointerType::kPen;
|
||||
case EventPointerType::kEraser:
|
||||
return blink::WebPointerProperties::PointerType::kEraser;
|
||||
case EventPointerType::kTouch:
|
||||
return blink::WebPointerProperties::PointerType::kTouch;
|
||||
}
|
||||
NOTREACHED() << "Unexpected EventPointerType";
|
||||
return blink::WebPointerProperties::PointerType::kUnknown;
|
||||
}
|
||||
|
||||
// Creates a WebGestureEvent from a GestureEvent. Note that it does not
|
||||
// populate the event coordinates (i.e. |x|, |y|, |globalX|, and |globalY|). So
|
||||
// the caller must populate these fields.
|
||||
@ -138,8 +120,7 @@ blink::WebMouseWheelEvent MakeWebMouseWheelEventFromUiEvent(
|
||||
if (offset_ordinal_y != 0.f && webkit_event.delta_y != 0.f)
|
||||
webkit_event.acceleration_ratio_y = offset_ordinal_y / webkit_event.delta_y;
|
||||
|
||||
webkit_event.pointer_type =
|
||||
EventPointerTypeToWebPointerType(event.pointer_details().pointer_type);
|
||||
webkit_event.pointer_type = event.pointer_details().pointer_type;
|
||||
|
||||
switch (event.scroll_event_phase()) {
|
||||
case ui::ScrollEventPhase::kNone:
|
||||
@ -248,8 +229,7 @@ blink::WebMouseEvent MakeWebMouseEvent(const MouseEvent& event) {
|
||||
event.native_event().message && (event.type() != ET_MOUSE_EXITED)
|
||||
? MakeUntranslatedWebMouseEventFromNativeEvent(
|
||||
event.native_event(), event.time_stamp(),
|
||||
EventPointerTypeToWebPointerType(
|
||||
event.pointer_details().pointer_type))
|
||||
event.pointer_details().pointer_type)
|
||||
: MakeWebMouseEventFromUiEvent(event);
|
||||
#else
|
||||
MakeWebMouseEventFromUiEvent(event);
|
||||
@ -281,8 +261,7 @@ blink::WebMouseWheelEvent MakeWebMouseWheelEvent(const MouseWheelEvent& event) {
|
||||
event.native_event().message
|
||||
? MakeUntranslatedWebMouseWheelEventFromNativeEvent(
|
||||
event.native_event(), event.time_stamp(),
|
||||
EventPointerTypeToWebPointerType(
|
||||
event.pointer_details().pointer_type))
|
||||
event.pointer_details().pointer_type)
|
||||
: MakeWebMouseWheelEventFromUiEvent(event);
|
||||
#else
|
||||
blink::WebMouseWheelEvent webkit_event =
|
||||
@ -306,8 +285,7 @@ blink::WebMouseWheelEvent MakeWebMouseWheelEvent(const ScrollEvent& event) {
|
||||
event.native_event().message
|
||||
? MakeUntranslatedWebMouseWheelEventFromNativeEvent(
|
||||
event.native_event(), event.time_stamp(),
|
||||
EventPointerTypeToWebPointerType(
|
||||
event.pointer_details().pointer_type))
|
||||
event.pointer_details().pointer_type)
|
||||
: MakeWebMouseWheelEventFromUiEvent(event);
|
||||
#else
|
||||
blink::WebMouseWheelEvent webkit_event =
|
||||
@ -456,8 +434,7 @@ blink::WebMouseEvent MakeWebMouseEventFromUiEvent(const MouseEvent& event) {
|
||||
event.pointer_details().tangential_pressure;
|
||||
webkit_event.twist = event.pointer_details().twist;
|
||||
webkit_event.id = event.pointer_details().id;
|
||||
webkit_event.pointer_type =
|
||||
EventPointerTypeToWebPointerType(event.pointer_details().pointer_type);
|
||||
webkit_event.pointer_type = event.pointer_details().pointer_type;
|
||||
|
||||
return webkit_event;
|
||||
}
|
||||
@ -490,8 +467,7 @@ blink::WebMouseWheelEvent MakeWebMouseWheelEventFromUiEvent(
|
||||
webkit_event.tilt_x = roundf(event.pointer_details().tilt_x);
|
||||
webkit_event.tilt_y = roundf(event.pointer_details().tilt_y);
|
||||
webkit_event.force = event.pointer_details().force;
|
||||
webkit_event.pointer_type =
|
||||
EventPointerTypeToWebPointerType(event.pointer_details().pointer_type);
|
||||
webkit_event.pointer_type = event.pointer_details().pointer_type;
|
||||
|
||||
return webkit_event;
|
||||
}
|
||||
|
@ -17,6 +17,7 @@ jumbo_component("ipc") {
|
||||
public_deps = [
|
||||
"//base",
|
||||
"//ipc",
|
||||
"//ui/events:event_constants",
|
||||
"//ui/events/types:headers",
|
||||
]
|
||||
}
|
||||
|
@ -7,11 +7,13 @@
|
||||
|
||||
#include "base/component_export.h"
|
||||
#include "ipc/ipc_message_macros.h"
|
||||
#include "ui/events/event_constants.h"
|
||||
#include "ui/events/types/scroll_types.h"
|
||||
|
||||
#undef IPC_MESSAGE_EXPORT
|
||||
#define IPC_MESSAGE_EXPORT COMPONENT_EXPORT(UI_EVENTS_IPC)
|
||||
|
||||
IPC_ENUM_TRAITS_MAX_VALUE(ui::EventPointerType, ui::EventPointerType::kMaxValue)
|
||||
IPC_ENUM_TRAITS_MIN_MAX_VALUE(ui::ScrollGranularity,
|
||||
ui::ScrollGranularity::kFirstScrollGranularity,
|
||||
ui::ScrollGranularity::kMaxValue)
|
||||
|
@ -2,4 +2,7 @@
|
||||
# Use of this source code is governed by a BSD-style license that can be
|
||||
# found in the LICENSE file.
|
||||
|
||||
typemaps = [ "//ui/events/mojom/scroll_granularity.typemap" ]
|
||||
typemaps = [
|
||||
"//ui/events/mojom/scroll_granularity.typemap",
|
||||
"//ui/events/mojom/event_constants.typemap",
|
||||
]
|
||||
|
@ -64,7 +64,7 @@ struct ScrollData {
|
||||
|
||||
// This mirrors the C++ class of the same name, see it for details.
|
||||
struct PointerDetails {
|
||||
PointerKind pointer_type;
|
||||
EventPointerType pointer_type;
|
||||
float radius_x;
|
||||
float radius_y;
|
||||
float force;
|
||||
|
@ -66,15 +66,8 @@ const int32 kMouseEventFlagIsTripleClick = 0x10000;
|
||||
const int32 kMouseEventFlagIsNonClient = 0x20000;
|
||||
|
||||
// TODO(erg): Move accessibility flags and maybe synthetic touch events here.
|
||||
|
||||
// TODO(sky): rename EventPointerType.
|
||||
enum PointerKind {
|
||||
UNKNOWN,
|
||||
MOUSE,
|
||||
PEN,
|
||||
TOUCH,
|
||||
ERASER,
|
||||
};
|
||||
[Native]
|
||||
enum EventPointerType;
|
||||
|
||||
// Phase information used for a ScrollEvent.
|
||||
// These values match ui::ScrollEventPhase in ui/events/event_constants.h
|
||||
|
9
ui/events/mojom/event_constants.typemap
Normal file
9
ui/events/mojom/event_constants.typemap
Normal file
@ -0,0 +1,9 @@
|
||||
# Copyright 2020 The Chromium Authors. All rights reserved.
|
||||
# Use of this source code is governed by a BSD-style license that can be
|
||||
# found in the LICENSE file.
|
||||
|
||||
mojom = "//ui/events/mojom/event_constants.mojom"
|
||||
public_headers = [ "//ui/events/event_constants.h" ]
|
||||
traits_headers = [ "//ui/events/ipc/ui_events_param_traits_macros.h" ]
|
||||
public_deps = [ "//ui/events/ipc" ]
|
||||
type_mappings = [ "ui.mojom.EventPointerType=::ui::EventPointerType" ]
|
@ -8,6 +8,7 @@
|
||||
#include "ui/events/event.h"
|
||||
#include "ui/events/event_utils.h"
|
||||
#include "ui/events/gesture_event_details.h"
|
||||
#include "ui/events/ipc/ui_events_param_traits_macros.h"
|
||||
#include "ui/events/keycodes/dom/dom_code.h"
|
||||
#include "ui/events/keycodes/dom/keycode_converter.h"
|
||||
#include "ui/events/mojom/event_constants.mojom.h"
|
||||
|
@ -100,49 +100,6 @@ struct EnumTraits<ui::mojom::EventMomentumPhase, ui::EventMomentumPhase> {
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct EnumTraits<ui::mojom::PointerKind, ui::EventPointerType> {
|
||||
static ui::mojom::PointerKind ToMojom(ui::EventPointerType input) {
|
||||
switch (input) {
|
||||
case ui::EventPointerType::kUnknown:
|
||||
return ui::mojom::PointerKind::UNKNOWN;
|
||||
case ui::EventPointerType::kMouse:
|
||||
return ui::mojom::PointerKind::MOUSE;
|
||||
case ui::EventPointerType::kPen:
|
||||
return ui::mojom::PointerKind::PEN;
|
||||
case ui::EventPointerType::kTouch:
|
||||
return ui::mojom::PointerKind::TOUCH;
|
||||
case ui::EventPointerType::kEraser:
|
||||
return ui::mojom::PointerKind::ERASER;
|
||||
}
|
||||
NOTREACHED();
|
||||
return ui::mojom::PointerKind::UNKNOWN;
|
||||
}
|
||||
|
||||
static bool FromMojom(ui::mojom::PointerKind input,
|
||||
ui::EventPointerType* out) {
|
||||
switch (input) {
|
||||
case ui::mojom::PointerKind::UNKNOWN:
|
||||
*out = ui::EventPointerType::kUnknown;
|
||||
return true;
|
||||
case ui::mojom::PointerKind::MOUSE:
|
||||
*out = ui::EventPointerType::kMouse;
|
||||
return true;
|
||||
case ui::mojom::PointerKind::PEN:
|
||||
*out = ui::EventPointerType::kPen;
|
||||
return true;
|
||||
case ui::mojom::PointerKind::TOUCH:
|
||||
*out = ui::EventPointerType::kTouch;
|
||||
return true;
|
||||
case ui::mojom::PointerKind::ERASER:
|
||||
*out = ui::EventPointerType::kEraser;
|
||||
return true;
|
||||
}
|
||||
NOTREACHED();
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct StructTraits<ui::mojom::PointerDetailsDataView, ui::PointerDetails> {
|
||||
static ui::EventPointerType pointer_type(const ui::PointerDetails& i) {
|
||||
|
@ -4,5 +4,6 @@
|
||||
|
||||
typemaps = [
|
||||
"//ui/events/mojom/event.typemap",
|
||||
"//ui/events/mojom/event_constants.typemap",
|
||||
"//ui/events/mojom/scroll_granularity.typemap",
|
||||
]
|
||||
|
Reference in New Issue
Block a user