ENYO-369: Use last, non-zero swipe direction when determining swipe completion state.

### Issue
When swiping a list item, there can be a gap between the mouse position and the left edge of the swipeable item. This results in the `dx` not changing when reaching the edge of the screen, which sets the `xDirection` value to `0`, and prevents the swipe from completing.

### Fix
We store the last, non-zero swipe direction and use this value for comparison when determining whether or not to complete the swipe.

### Notes
This also needs to be cherry-picked into the `2.5.1-release` branch.

Enyo-DCO-1.1-Signed-off-by: Aaron Tam <aaron.tam@lge.com>