Can buttons be triggered after holding briefly?

I was thinking about applying this to the utility button.

-- this doesn't work
if self:button_elapsed_time() < 500 then
    page_load(page_next())
else
    page_load(Page_previous())
end

Knowing that button_elapsed_time() tells the time since the last change, this function is not proper to be here.
Then, about the timer… it executes when the timer hits, and I don’t know if you can interrupt it by releasing a button before the timer fulfills.

The truth is that button-based functions do not work on the utility button at all. It’s coded as a different event entirely.