CutoutViewIndicator icon indicating copy to clipboard operation
CutoutViewIndicator copied to clipboard

Add new `OffsetHint` constants for disabling animations

Open Cliabhach opened this issue 6 years ago • 0 comments

Credits to @agrosner for reporting this.

Currently, the value 0 (the standard 'disabled' value for an integer flag) is accepted by CutoutViewIndicator::setOffsetHints(int). Passing that to the function prevents any sort of offset in CutoutImageCell from working, which in turn prevents the indicator from...well, indicating anything.

To make this more transparent, and simpler for new users of the library, I propose two new OffsetHint constants:

  1. an explicit constant STOP_EVERYTHING with value 0
    • this'd disable offset-event visual effects
    • well, at least until a different value is set on the indicator
  2. a constant ONLY_ROUND_NUMBERS with value 1 << 4
    • that'd cause cells to only react to OffsetEvents which return an integer from ::getFraction()
    • ideally some minor rounding to handle floating-point nonsense

Also, a new convenience method or two for setting that second flag: not sure on the name(s), but the should have the same vibe as ::justShowTheSelectionsWithoutAnimatingAnything() and ::pleaseGoBackToAnimatingEverything().

Cliabhach avatar Apr 08 '18 05:04 Cliabhach