Page MenuHomePhabricator

Run synthetic tests to measure the impact of touch-action: manipulation;
Closed, DeclinedPublic

Description

Let me try to run a couple of tests and see if we either can quantify it in any metrics or create videos and see if we see any difference.

Event Timeline

The way to test this I think is to get the trace log from Chrome from the two difference scenarios (you could actually do it without automation as long as you connect your phone to your desktop computer) where we click on an element. It's important to use the action API so that the right events are fired.

Then if I'm correct we can just compare the two different traces and see if we can see any difference (looking for a long delay).

Hmm I cannot see any delay in the first place. First if I automate I run a script like this:

/**
 * @param {import('browsertime').BrowsertimeContext} context
 * @param {import('browsertime').BrowsertimeCommands} commands
 */
export default async function touch (context, commands) {
 await commands.measure.start('before'); 
 await commands.navigate(
    'https://en.wikipedia.org/speed-tests/Ensatina-touch-action/before/Ensantina.html'
  );
  const elementToClick = await commands.element.getById('ca-edit');
  await commands.action.getActions().click(elementToClick).perform();
  await commands.wait.byTime(1000);
  await commands.measure.stop();
}

And then I run sitespeed.io touch.mjs -n 1 --multi --cpu -o --android. And the drag/drop the trace log from Chrome to look at where the time is spent.

But if you want to try it yourself the easiest way is to hook up your Android phone and follow the instructions in https://developer.chrome.com/docs/devtools/remote-debugging. That works except open a tab with a specific URL (at least for me) so you need to manually enter the URL in Chrome.

Then you can record a performance trace and manually interact with the page on the phone. We get a 80-100 ms presentation delay on both.

I uploaded two traces from my Samsung A51 (I think you need to open URLs in Chrome for it to work) and look at the interaction track. What I do is scroll the page and then click on "Description" and a couple of other folded submenus.

Before:
https://trace.cafe/t/BCTVn5Kc4a
After:
https://trace.cafe/t/mhq7HD8BhS

I think the last time we had the problem with the extra X ms delay, it was visible in the interaction track in Chrome.

I wonder if there's a better/other way to test it, do you have any ideas @Jdlrobson ?

Jdlrobson-WMF edited projects, added Readers Essential Work 2025; removed Web-Team.

In T358380 the current delay was measurable but I don't see that now when I test (I don't see a delay in the trace logs). Is that something we have seen? I've checked the video in the videos in T174002 and I don't see that there either and I think we need to see it in the trace to know its a real thing.

SDunlap changed the task status from Open to Stalled.Mar 10 2025, 2:02 PM
SDunlap removed a subscriber: Peter.
Peter removed Peter as the assignee of this task.Aug 12 2025, 10:35 AM
Peter subscribed.

I couldn't reproduce this. Closing, let me know if you can see it in the trace and I can re-open.