For what it's worth, I see the exact same behavior on the desktop in Firefox 31.0. If I pull the menu down a little bit and release, it goes by itself to the bottom and stops. If I pull it all the way down to the bottom myself, it just keeps going off the screen. (As in, I don't release the mouse button until the menu is completely locked to the bottom. Then, when I do release the button, it starts moving down and off the screen.)
EDIT: Some debugging shows that "from" and "to" are both (0, 416). This is causing direction in Acceleration.onStart to be (0, 0), which causes acceleration to also be zero. However, velocity is not zero; it's some apparently random number. Also, the boundary bottom is set to Infinity, because it uses (to.y > from.y) instead of (to.y >= from.y), so it never enters a "bounce" state as it's impossible to go outside the boundary.
TL;DR: I think you need to add tests for when "to" and "from" are the same location.
EDIT: Some debugging shows that "from" and "to" are both (0, 416). This is causing direction in Acceleration.onStart to be (0, 0), which causes acceleration to also be zero. However, velocity is not zero; it's some apparently random number. Also, the boundary bottom is set to Infinity, because it uses (to.y > from.y) instead of (to.y >= from.y), so it never enters a "bounce" state as it's impossible to go outside the boundary.
TL;DR: I think you need to add tests for when "to" and "from" are the same location.