Я решил это с помощью виджета GestureDetector и обновил непрозрачность через состояние.
GestureDetector требовалось две функции: onDragUpdate и onDragEnd. Оба изменили состояние прогресса, который также используется для обновления непрозрачности в другой половине.
Довольно небольшая работа для такого маленького взаимодействия, однако, это работает.