Closed Bug 1626099 Opened 5 years ago Closed 5 years ago

Add telemetry so we can determine how many FF users have touchscreens, etc.

Categories

(Core :: Panning and Zooming, task, P3)

task

Tracking

()

RESOLVED FIXED
mozilla77
Tracking Status
firefox76 --- fixed
firefox77 --- fixed

People

(Reporter: jbonisteel, Assigned: ktaeleman)

References

(Blocks 1 open bug)

Details

(Whiteboard: desktop-zoom-nightly)

Attachments

(2 files, 1 obsolete file)

Once we ship DTZ, it would be nice to do some before/after comparisons around how many people with touchscreens used FF before we shipped and then after. I think we'd need to add some telemetry to do so.

Is this something we could look at adding for 76? Not sure how hard it would be

Flags: needinfo?(ktaeleman)
Flags: needinfo?(kats)

NI-ing Jeff to see if he has ideas on how to do it

Flags: needinfo?(jmuizelaar)

Botond, how do we know if someone has a touch screen?

Flags: needinfo?(jmuizelaar) → needinfo?(botond)
Flags: needinfo?(botond)

Maybe worth listing what we would like to know:

  • Touchscreen YES/NO
  • Regular or High precision touchpad
  • Wacom (and other) stylus tablets

@tnikkel: Am I missing anything?

Flags: needinfo?(ktaeleman) → needinfo?(tnikkel)
Priority: -- → P3
Whiteboard: desktop-zoom-nightly

Not saying that these should also be included but the other possibilities that I can think of:
-whether there is a mouse connected or not (to know if something is the primary means of interaction of if it's supplemented)
-mouse wheels can also be high resolution or not, but that change happened a long time ago (https://bugzilla.mozilla.org/show_bug.cgi?id=605648)
-pen input can be directly on a screen or on an input tablet

Flags: needinfo?(tnikkel)

Yeah, as :tnikkel pointed out we already have a histogram for touch-enabled devices. If we want to add more telemetry for the other conditions brought up we can do that too. I'm not too familiar with the non-touchscreen input device detection in the widget code so I don't know who would be the best person to take this on.

Flags: needinfo?(kats)
Summary: Add telemtry so we can determine how many FF users have touchscreens, etc. → Add telemetry so we can determine how many FF users have touchscreens, etc.

Does that telemetry for touchscreens differentiate from desktop vs mobile? Just wondering what the definition of TOUCH_ENABLED_DEVICE is and if it can be that granular...

Flags: needinfo?(tnikkel)
Flags: needinfo?(ktaeleman)

It's only enabled on windows, so it's inherently desktop-only. We can extend it to Linux desktop relatively easily. Mac desktop devices don't have touch anyway.

I'll look into this a bit and see what information we can get out of the Windows API's about the input devices.

Assignee: nobody → ktaeleman
Flags: needinfo?(ktaeleman)

Bug 1495938 has a list of win32 apis related to this.

Flags: needinfo?(tnikkel)

In addition to what was mentioned before, we should also track a basic use counter that increases when the user uses DTZ. This allows us to track DAU/MAU for our health metrics.

I'm also working with UX to discuss the possibility to use DTZ via mouse. Depending on the outcome, we may add some temporary probes to compare interactions to "old-school" zooming and make more informed decisions.

Found some telemetry already present that indicates if the user has used the touch device:

https://searchfox.org/mozilla-central/rev/4ccefc3181f9d237ef4ca8bd17b4e7c101ddf7b5/widget/windows/nsWindow.cpp#4218

So our current telemetry is:

Telemetry::TOUCH_ENABLED_DEVICE
Telemetry::FX_TOUCH_USED

With this we should already be able to figure out touchscreen usage.

Telemetry::FX_TOUCH_USED was set to expire in FF 46, we'll have to renew this before we get any data.

On Windows it looks like we have a population of ~8% of users with Touch enabled devices:
https://sql.telemetry.mozilla.org/queries/69783/source#175900 (Thanks @tdsmith for helping me out here!)

Blocks: 1627708
Attachment #9138572 - Attachment description: Bug 1626099 - Renewing FX_TOUCH_USED telemetry → Bug 1626099 - Renewing FX_TOUCH_USED telemetry.
Attached file Renew FX_TOUCH telemetry. (obsolete) (deleted) —
Attachment #9138605 - Flags: data-review?(chutten)
Comment on attachment 9138605 [details] Renew FX_TOUCH telemetry. Unfortunately we can't use the renewal form because there was no Data Collection Review for the initial collection. (It's older than... I think it was late 2017 when we put data review into place?). Please fill out the full form (future renewals will be able to use the short form).
Attachment #9138605 - Flags: data-review?(chutten) → data-review-
Attached file Data collection request - full (deleted) —
Attachment #9138605 - Attachment is obsolete: true
Attachment #9139284 - Flags: data-review?(chutten)
Comment on attachment 9139284 [details] Data collection request - full DATA COLLECTION REVIEW RESPONSE: Is there or will there be documentation that describes the schema for the ultimate data set available publicly, complete and accurate? Yes. This collection is Telemetry so is documented in its definitions file [Scalars.yaml](https://hg.mozilla.org/mozilla-central/file/tip/toolkit/components/telemetry/Scalars.yaml) and the [Probe Dictionary](https://telemetry.mozilla.org/probe-dictionary/). Is there a control mechanism that allows the user to turn the data collection on and off? Yes. This collection is Telemetry so can be controlled through Firefox's Preferences. If the request is for permanent data collection, is there someone who will monitor the data over time? No. This collection will expire in Firefox 90. Using the category system of data types on the Mozilla wiki, what collection type of data do the requested measurements fall under? Category 2, Interaction. Is the data collection request for default-on or default-off? Default on for all channels. Does the instrumentation include the addition of any new identifiers? No. Is the data collection covered by the existing Firefox privacy notice? Yes. Does there need to be a check-in in the future to determine whether to renew the data? Yes. :ktaeleman is responsible for renewing or removing the collection before it expires in Firefox 90. --- Result: datareview+
Attachment #9139284 - Flags: data-review?(chutten) → data-review+
Pushed by ktaeleman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/ccdf56d1ed20 Renewing FX_TOUCH_USED telemetry. r=chutten,botond
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla77

Comment on attachment 9138572 [details]
Bug 1626099 - Renewing FX_TOUCH_USED telemetry.

Beta/Release Uplift Approval Request

  • User impact if declined: None
  • Is this code covered by automated tests?: Unknown
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): The patch renews/modernizes an existing telemetry point that was expired.
  • String changes made/needed:
Attachment #9138572 - Flags: approval-mozilla-beta?

Comment on attachment 9138572 [details]
Bug 1626099 - Renewing FX_TOUCH_USED telemetry.

Updates some existing Telemetry probes. Approved for 76.0b5.

Attachment #9138572 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: