Commit 46d2ed99 authored by Sarthak Shah's avatar Sarthak Shah Committed by Commit Bot

Make histogram obselete

This CL will stop recording data for the
Event.Touch.InputEventTimeStamp.DeltaBetweenTimeNowAndPerformanceCount.*
and Event.Pen.InputEventTimeStamp.DeltaBetweenTimeNowAndPerformanceCount.*
histogram. These histograms were added as an experiment to collect
information about the drift between TimeTicks::Now and PerformanceCount.
There is no more need to record the delta between them and so removing
the histogram.

Change-Id: I4284dddd8b2d5be70302df4179cca1b85de263a9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1866909Reviewed-by: default avatarNavid Zolghadr <nzolghadr@chromium.org>
Reviewed-by: default avatarRobert Liao <robliao@chromium.org>
Reviewed-by: default avatarIlya Sherman <isherman@chromium.org>
Commit-Queue: Sarthak Shah <sarsha@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#708338}
parent 2cfbaa31
......@@ -41436,6 +41436,9 @@ uploading your change for review.
<histogram
name="Event.Pen.InputEventTimeStamp.DeltaBetweenTimeNowAndPerformanceCount.Negative"
units="microseconds" expires_after="2020-03-29">
<obsolete>
Deprecated 10/2019 due to the completion of the experiment.
</obsolete>
<owner>nzolghadr@chromium.org</owner>
<owner>sarsha@microsoft.com</owner>
<summary>
......@@ -41450,6 +41453,9 @@ uploading your change for review.
<histogram
name="Event.Pen.InputEventTimeStamp.DeltaBetweenTimeNowAndPerformanceCount.Positive"
units="microseconds" expires_after="M79">
<obsolete>
Deprecated 10/2019 due to the completion of the experiment.
</obsolete>
<owner>nzolghadr@chromium.org</owner>
<owner>sarsha@microsoft.com</owner>
<summary>
......@@ -41577,6 +41583,9 @@ uploading your change for review.
<histogram
name="Event.Touch.InputEventTimeStamp.DeltaBetweenTimeNowAndPerformanceCount.Negative"
units="microseconds" expires_after="2020-03-29">
<obsolete>
Deprecated 10/2019 due to the completion of the experiment.
</obsolete>
<owner>nzolghadr@chromium.org</owner>
<owner>sarsha@microsoft.com</owner>
<summary>
......@@ -41591,6 +41600,9 @@ uploading your change for review.
<histogram
name="Event.Touch.InputEventTimeStamp.DeltaBetweenTimeNowAndPerformanceCount.Positive"
units="microseconds" expires_after="2020-03-29">
<obsolete>
Deprecated 10/2019 due to the completion of the experiment.
</obsolete>
<owner>nzolghadr@chromium.org</owner>
<owner>sarsha@microsoft.com</owner>
<summary>
......@@ -277,49 +277,6 @@ HitTest GetWindowResizeHitTest(UINT param) {
}
}
void RecordDeltaBetweenTimeNowAndPerformanceCountHistogram(
base::TimeTicks event_time,
UINT64 performance_count,
POINTER_INPUT_TYPE pointer_input_type,
bool is_session_remote) {
// In remote session, sometimes |performance_count| drifts
// substantially in future compared to |TimeTicks::Now()| - enough to skew the
// histogram data. Additionally, user input over remote session already has
// lag, so user is less likely to be sensitive to the responsiveness of input
// in such case. So we are less concerned capturing the deltas in remote
// session scenario.
if (base::TimeTicks::IsHighResolution() && !is_session_remote) {
base::TimeTicks event_time_from_pointer =
base::TimeTicks::FromQPCValue(performance_count);
double delta_between_event_timestamps =
(event_time - event_time_from_pointer).InMicrosecondsF();
std::string pointer_type;
switch (pointer_input_type) {
case PT_PEN:
pointer_type = "Pen";
break;
case PT_TOUCH:
pointer_type = "Touch";
break;
default:
NOTREACHED();
}
std::string number_sign =
delta_between_event_timestamps >= 0 ? "Positive" : "Negative";
base::TimeDelta delta_sample_value = base::TimeDelta::FromMicroseconds(
std::abs(delta_between_event_timestamps));
base::UmaHistogramCustomMicrosecondsTimes(
base::StringPrintf("Event.%s.InputEventTimeStamp."
"DeltaBetweenTimeNowAndPerformanceCount.%s",
pointer_type.c_str(), number_sign.c_str()),
delta_sample_value, base::TimeDelta::FromMicroseconds(1),
base::TimeDelta::FromMilliseconds(30), 30);
}
}
int GetFlagsFromRawInputMessage(RAWINPUT* input) {
int flags = ui::EF_NONE;
if (input->data.mouse.usButtonFlags & RI_MOUSE_BUTTON_1_DOWN)
......@@ -468,8 +425,7 @@ HWNDMessageHandler::HWNDMessageHandler(HWNDMessageHandlerDelegate* delegate,
background_fullscreen_hack_(false),
pointer_events_for_touch_(::features::IsUsingWMPointerForTouch()),
precision_touchpad_scroll_phase_enabled_(base::FeatureList::IsEnabled(
::features::kPrecisionTouchpadScrollPhase)),
is_remote_session_(base::win::IsCurrentSessionRemote()) {}
::features::kPrecisionTouchpadScrollPhase)) {}
HWNDMessageHandler::~HWNDMessageHandler() {
DCHECK(delegate_->GetHWNDMessageDelegateInputMethod());
......@@ -2549,7 +2505,6 @@ void HWNDMessageHandler::OnSettingChange(UINT flags, const wchar_t* section) {
if (flags == SPI_SETWORKAREA)
delegate_->HandleWorkAreaChanged();
SetMsgHandled(FALSE);
is_remote_session_ = base::win::IsCurrentSessionRemote();
}
// If the work area is changing, then it could be as a result of the taskbar
......@@ -3185,10 +3140,6 @@ LRESULT HWNDMessageHandler::HandlePointerEventTypeTouch(UINT message,
base::WeakPtr<HWNDMessageHandler> ref(msg_handler_weak_factory_.GetWeakPtr());
delegate_->HandleTouchEvent(&event);
RecordDeltaBetweenTimeNowAndPerformanceCountHistogram(
event_time, pointer_info.PerformanceCount, pointer_info.pointerType,
is_remote_session_);
if (ref) {
// Mark touch released events handled. These will usually turn into tap
// gestures, and doing this avoids propagating the event to other windows.
......@@ -3238,16 +3189,13 @@ LRESULT HWNDMessageHandler::HandlePointerEventTypePen(UINT message,
// window, so use the weak ptr to check if destruction occured or not.
base::WeakPtr<HWNDMessageHandler> ref(msg_handler_weak_factory_.GetWeakPtr());
if (event) {
if (event->IsTouchEvent()) {
if (event->IsTouchEvent())
delegate_->HandleTouchEvent(event->AsTouchEvent());
RecordDeltaBetweenTimeNowAndPerformanceCountHistogram(
event->time_stamp(), pointer_pen_info.pointerInfo.PerformanceCount,
pointer_pen_info.pointerInfo.pointerType, is_remote_session_);
} else if (event->IsMouseEvent()) {
else if (event->IsMouseEvent())
delegate_->HandleMouseEvent(event->AsMouseEvent());
} else {
else
NOTREACHED();
}
last_touch_or_pen_message_time_ = ::GetMessageTime();
}
......
......@@ -783,9 +783,6 @@ class VIEWS_EXPORT HWNDMessageHandler : public gfx::WindowImpl,
// the first message after frame type changes.
bool needs_dwm_frame_clear_ = true;
// True if user is in remote session.
bool is_remote_session_;
// True if is handling mouse WM_INPUT messages.
bool using_wm_input_ = false;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment