Не работает кнопка в python kivy

Проблема заключается в том, что метод on_touch_down перекрывает метод on_press у кнопки (я так думаю, потому что если его убрать кнопка снова работает). Можно ли это как-то исправить не проверяя коллизию с кнопкой в методе on_touch_down?

main.py

from kivy.app import App
from kivy.uix.widget import Widget
from kivy.uix.image import Image
from kivy.properties import ObjectProperty
from kivy.graphics import Color


class Plane(Image):
    def __init__(self, **kwargs):
        super(Plane, self).__init__(**kwargs)
        pass


class Container(Widget):

    im = ObjectProperty(None)

    def remove_plane(self):
        print('widget reomove')
        self.remove_widget(self.im)
        
    def on_touch_down(self, touch):
        if self.im.collide_point(touch.x, touch.y):
            self.im.drag = True

    def on_touch_move(self, touch):
        if self.im.drag:
            self.im.pos = touch.x-self.im.width/2, touch.y-self.im.height/2

    def on_touch_up(self, touch):
        self.im.drag = False


class AnimateInstructionApp(App):

    def build(self):
        return Container()


if __name__ == "__main__":
    AnimateInstructionApp().run()

animateinstruction.kv

<Container>:
    im: im
    canvas.before:
        Color:
            rgba: 0, 0, 1, 1
        Rectangle:
            size: root.size
            pos: 0,0

    Plane:
        id: im
        drag: False
        source: 'space2.gif'
        allow_stretch: True
        size: root.height/6, root.height/6
        pos: 300 ,300

    Button:

        text: 'remove'
        size_hint: .2, .2
        pos_hint: {'x': 100, 'y':100}
        font_size: 20
        
        on_press:
            root.remove_plane()



Ответы (0 шт):