JonB
Sep 20, 2014 - 21:59
I've been having troubles implementing custom touch handlers for a view that is presented as a panel or sidebar. Fullscreen, popover and sheet work ok.
While touch_moved does get dispatched once for panel/sidebar, that's it, and after that the window starts to drag (to drag the editor or cinsole back into view)
I'm not sure what the right behaviour should be, but perhaps if a view implements custom touch handling, that handling should take precedence? Or, maybe drag between editor/etc should only be in main title bar? Or maybe some sort of command or property that disables default touch handling?
See the simple example below, which turns green when dragging. It works as expected for sheet, popover, or fullscreen
import ui.View
class myview(ui.View):
def __init__(self):
self.bg_color=(1,0,0)
def touch_moved(sender,touch):
ui.cancel_delays()
sender.bg_color=(0,1,0)
def red():
sender.bg_color=(1,0,0)
ui.delay(red,0.05)
myview().present('panel')