KivyMD: Alert dialog's buttons do nothing

Description of the Bug

Buttons in MDDialog’s are not clickable when the dialog has type=alert (the default type).

Instead, it appears that clicking anywhere on the screen (on a button or over the dialog or outside the dialog) simply dismisses the dialog

Steps to reproduce

To reproduce, execute the following from a Debian 10 VM in BASH:

sudo apt-get -y install python3 python3-pip python3-virtualenv python3-setuptools
sudo dpkg -l | grep python

python3 -m virtualenv --python=python3.7 /tmp/virtualenv/kivymd_test
/tmp/virtualenv/kivymd_test/bin/python3 -m pip install --upgrade pip kivy kivymd
/tmp/virtualenv/kivymd_test/bin/python3 -m pip list
source /tmp/virtualenv/kivymd_test/bin/activate

tmpDir=`mktemp -d`
pushd "${tmpDir}"

cat << EOF > alertDialogButtonFail.py
#!/usr/bin/env python3
from kivy.lang import Builder

from kivymd.app import MDApp
from kivymd.uix.button import MDFlatButton
from kivymd.uix.dialog import MDDialog

KV = '''
FloatLayout:

    MDFlatButton:
        text: "ALERT DIALOG"
        pos_hint: {'center_x': .5, 'center_y': .5}
        on_release: app.show_alert_dialog()
'''


class Example(MDApp):
    dialog = None

    def build(self):
        return Builder.load_string(KV)

    def show_alert_dialog(self):
        if not self.dialog:
            self.dialog = MDDialog(
                text="Discard draft?",
                title="Example Title",
                buttons=[
                    MDFlatButton(
                        text="CANCEL", text_color=self.theme_cls.primary_color
                    ),
                    MDFlatButton(
                        text="DISCARD", text_color=self.theme_cls.primary_color
                    ),
                ],
            )
        self.dialog.open()


Example().run()
EOF
chmod +x alertDialogButtonFail.py
./alertDialogButtonFail.py

popd

Example Execution

user@disp3499:~$ sudo apt-get -y install python3 python3-pip python3-virtualenv python3-setuptools
Reading package lists... Done
Building dependency tree       
Reading state information... Done
python3-pip is already the newest version (18.1-5).
python3-setuptools is already the newest version (40.8.0-1).
python3-virtualenv is already the newest version (15.1.0+ds-2).
python3 is already the newest version (3.7.3-1).
The following packages were automatically installed and are no longer required:
  linux-headers-4.19.0-6-amd64 linux-headers-4.19.0-6-common
  linux-image-4.19.0-6-amd64 python-daemon python-lockfile python-qubesdb
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 18 not upgraded.
user@disp3499:~$ sudo dpkg -l | grep python
ii  dh-python                             3.20190308                          all          Debian helper tools for packaging Python libraries and applications
ii  libboost-python1.67.0                 1.67.0-13+deb10u1                   amd64        Boost.Python Library
ii  libpython-stdlib:amd64                2.7.16-1                            amd64        interactive high-level object-oriented language (Python2)
ii  libpython2-stdlib:amd64               2.7.16-1                            amd64        interactive high-level object-oriented language (Python2)
ii  libpython2.7:amd64                    2.7.16-2+deb10u1                    amd64        Shared Python runtime library (version 2.7)
ii  libpython2.7-minimal:amd64            2.7.16-2+deb10u1                    amd64        Minimal subset of the Python language (version 2.7)
ii  libpython2.7-stdlib:amd64             2.7.16-2+deb10u1                    amd64        Interactive high-level object-oriented language (standard library, version 2.7)
ii  libpython3-dev:amd64                  3.7.3-1                             amd64        header files and a static library for Python (default)
ii  libpython3-stdlib:amd64               3.7.3-1                             amd64        interactive high-level object-oriented language (default python3 version)
ii  libpython3.7:amd64                    3.7.3-2+deb10u2                     amd64        Shared Python runtime library (version 3.7)
ii  libpython3.7-dev:amd64                3.7.3-2+deb10u2                     amd64        Header files and a static library for Python (v3.7)
ii  libpython3.7-minimal:amd64            3.7.3-2+deb10u2                     amd64        Minimal subset of the Python language (version 3.7)
ii  libpython3.7-stdlib:amd64             3.7.3-2+deb10u2                     amd64        Interactive high-level object-oriented language (standard library, version 3.7)
ii  libreoffice-script-provider-python    1:6.1.5-3+deb10u6                   all          Python script support provider for LibreOffice scripting framework
ii  python                                2.7.16-1                            amd64        interactive high-level object-oriented language (Python2 version)
ii  python-apt-common                     1.8.4.1                             all          Python interface to libapt-pkg (locales)
ii  python-asn1crypto                     0.24.0-1                            all          Fast ASN.1 parser and serializer (Python 2)
ii  python-attr                           18.2.0-1                            all          Attributes without boilerplate (Python 2)
ii  python-automat                        0.6.0-1                             all          Self-service finite-state machines for the programmer on the go
ii  python-backports.functools-lru-cache  1.5-3                               all          backport of functools.lru_cache from Python 3.3 to Python 2
ii  python-bcrypt                         3.1.6-1                             amd64        password hashing library for Python
ii  python-bs4                            4.7.1-1                             all          error-tolerant HTML parser for Python
ii  python-cairo:amd64                    1.16.2-1+b1                         amd64        Python bindings for the Cairo vector graphics library
ii  python-cffi-backend                   1.12.2-1                            amd64        Foreign Function Interface for Python calling C code - backend
ii  python-chardet                        3.0.4-3                             all          universal character encoding detector for Python2
ii  python-click                          7.0-1                               all          Wrapper around optparse for command line utilities - Python 2.7
ii  python-colorama                       0.3.7-1                             all          Cross-platform colored terminal text in Python - Python 2.x
ii  python-configparser                   3.5.0b2-1                           all          backport of the enhanced config parser introduced in Python 3.2
ii  python-constantly                     15.1.0-1                            all          Symbolic constants in Python
ii  python-cryptography                   2.6.1-3+deb10u2                     amd64        Python library exposing cryptographic recipes and primitives (Python 2)
ii  python-daemon                         2.2.3-1                             all          library for making a Unix daemon process  Python 2
ii  python-dbus                           1.2.8-3                             amd64        simple interprocess messaging system (Python interface)
ii  python-enchant                        2.0.0-1                             all          spellchecking library for Python
ii  python-enum34                         1.1.6-2                             all          backport of Python 3.4's enum package
ii  python-future                         0.16.0-1                            all          single-source support for Python 3 and 2 - Python 2.x
ii  python-gi                             3.30.4-1                            amd64        Python 2.x bindings for gobject-introspection libraries
ii  python-gi-cairo                       3.30.4-1                            amd64        Python Cairo bindings for the GObject library
ii  python-glade2                         2.24.0-5.1+b1                       amd64        GTK+ bindings: Glade support
ii  python-gobject-2                      2.28.6-13+b1                        amd64        deprecated static Python bindings for the GObject library
ii  python-gtk2                           2.24.0-5.1+b1                       amd64        Python bindings for the GTK+ widget set
ii  python-gtkglext1                      1.1.0-9.1                           amd64        GtkGLext python bindings
ii  python-gtkspellcheck                  4.0.5-1                             all          Python 2 spellchecking library GTK+ based on Enchant
ii  python-html5lib                       1.0.1-1                             all          HTML parser/tokenizer based on the WHATWG HTML5 specification
ii  python-hyperlink                      17.3.1-2                            all          Immutable, Pythonic, correct URLs.
ii  python-idna                           2.6-1                               all          Python IDNA2008 (RFC 5891) handling (Python 2)
ii  python-incremental                    16.10.1-3                           all          Library for versioning Python projects.
ii  python-iniparse                       0.4-2.2                             all          access and modify configuration data in INI files (Python 2)
ii  python-ipaddress                      1.0.17-1                            all          Backport of Python 3 ipaddress module (Python 2)
ii  python-libtorrent                     1.1.11-2                            amd64        Python bindings for libtorrent-rasterbar
ii  python-libxml2                        2.9.4+dfsg1-7+b3                    amd64        Python bindings for the GNOME XML library
ii  python-lockfile                       1:0.12.2-2                          all          file locking library for Python  Python 2 library
ii  python-lxml:amd64                     4.3.2-1                             amd64        pythonic binding for the libxml2 and libxslt libraries
ii  python-lz4                            1.1.0+dfsg-1                        amd64        Python interface to the lz4 compression library
ii  python-lzma                           0.5.3-4                             amd64        Python bindings for liblzma
ii  python-lzo                            1.12-2                              amd64        Python bindings for the LZO data compression library
ii  python-minimal                        2.7.16-1                            amd64        minimal subset of the Python2 language
ii  python-nacl                           1.3.0-2                             amd64        Python bindings to libsodium (Python 2)
ii  python-nautilus                       1.2.2-2                             amd64        Python binding for Nautilus components
ii  python-notify                         0.1.1-4                             amd64        Python bindings for libnotify
ii  python-numpy                          1:1.16.2-1                          amd64        Numerical Python adds a fast array facility to the Python language
ii  python-olefile                        0.46-1                              all          Python module to read/write MS OLE2 files
ii  python-opengl                         3.1.0+dfsg-2                        all          Python bindings to OpenGL (Python 2)
ii  python-openssl                        19.0.0-1                            all          Python 2 wrapper around the OpenSSL library
ii  python-paramiko                       2.4.2-0.1                           all          Make ssh v2 connections (Python 2)
ii  python-pil:amd64                      5.4.1-2+deb10u2                     amd64        Python Imaging Library (Pillow fork)
ii  python-pip-whl                        18.1-5                              all          Python package installer
ii  python-pkg-resources                  40.8.0-1                            all          Package Discovery and Resource Access using pkg_resources
ii  python-pyasn1                         0.4.2-3                             all          ASN.1 library for Python (Python 2 module)
ii  python-pyasn1-modules                 0.2.1-0.2                           all          Collection of protocols modules written in ASN.1 language
ii  python-pycurl                         7.43.0.2-0.1                        amd64        Python bindings to libcurl
ii  python-pygame                         1.9.4.post1+dfsg-3                  amd64        SDL bindings for games development (Python 2)
ii  python-pyqt5                          5.11.3+dfsg-1+b3                    amd64        Python 2 bindings for Qt5
ii  python-qrtools                        1.4~bzr32-1                         all          high level library for reading and generating QR codes
ii  python-qubesdb                        4.0.13-1+deb10u1                    amd64        QubesDB python bindings.
ii  python-rencode                        1.0.5-1+b2                          amd64        Python encoding library similar to bittorrent's bencode
ii  python-rpm                            4.14.2.1+dfsg1-1                    amd64        Python bindings for RPM
ii  python-scour                          0.37-2                              all          SVG scrubber and optimizer (Python 2 module)
ii  python-service-identity               16.0.0-2                            all          Service identity verification for pyOpenSSL (Python 2 module)
ii  python-sip                            4.19.14+dfsg-2                      amd64        Python/C++ bindings generator runtime library
ii  python-six                            1.12.0-1                            all          Python 2 and 3 compatibility library (Python 2 interface)
ii  python-soupsieve                      1.8+dfsg-1                          all          Modern CSS selector implementation for BeautifulSoup (Python 2.7)
ii  python-sqlite                         1.0.1-12                            amd64        Python interface to SQLite 2
ii  python-sqlitecachec                   1.1.4-1                             amd64        Fast metadata parser for yum
ii  python-talloc:amd64                   2.1.14-2                            amd64        hierarchical pool based memory allocator - Python bindings
ii  python-twisted-bin:amd64              18.9.0-3                            amd64        Event-based framework for internet applications
ii  python-twisted-core                   18.9.0-3                            all          Event-based framework for internet applications
ii  python-uritools                       2.2.0-1                             all          RFC 3986 compliant replacement for urlparse (Python 2)
ii  python-urlgrabber                     3.10.2-1                            all          high-level URL transfer library
ii  python-webencodings                   0.5.1-1                             all          Python implementation of the WHATWG Encoding standard
ii  python-xdg                            0.25-5                              all          Python 2 library to access freedesktop.org standards
ii  python-zbar:amd64                     0.22-1                              amd64        bar code scanner and decoder (Python bindings)
ii  python-zope.interface                 4.3.2-1+b2                          amd64        Interfaces for Python
ii  python2                               2.7.16-1                            amd64        interactive high-level object-oriented language (Python2 version)
ii  python2-minimal                       2.7.16-1                            amd64        minimal subset of the Python2 language
ii  python2.7                             2.7.16-2+deb10u1                    amd64        Interactive high-level object-oriented language (version 2.7)
ii  python2.7-minimal                     2.7.16-2+deb10u1                    amd64        Minimal subset of the Python language (version 2.7)
ii  python3                               3.7.3-1                             amd64        interactive high-level object-oriented language (default python3 version)
ii  python3-apt                           1.8.4.1                             amd64        Python 3 interface to libapt-pkg
ii  python3-asn1crypto                    0.24.0-1                            all          Fast ASN.1 parser and serializer (Python 3)
ii  python3-bcrypt                        3.1.6-1                             amd64        password hashing library for Python 3
ii  python3-cairo:amd64                   1.16.2-1+b1                         amd64        Python3 bindings for the Cairo vector graphics library
ii  python3-certifi                       2018.8.24-1                         all          root certificates for validating SSL certs and verifying TLS hosts (python3)
ii  python3-cffi-backend                  1.12.2-1                            amd64        Foreign Function Interface for Python 3 calling C code - runtime
ii  python3-chardet                       3.0.4-3                             all          universal character encoding detector for Python3
ii  python3-croniter                      0.3.24-2                            all          provides iteration for datetime object with cron like format - Python 3.x
ii  python3-crypto                        2.6.1-9+b1                          amd64        cryptographic algorithms and protocols for Python 3
ii  python3-cryptography                  2.6.1-3+deb10u2                     amd64        Python library exposing cryptographic recipes and primitives (Python 3)
ii  python3-cups                          1.9.73-2+b1                         amd64        Python3 bindings for CUPS
ii  python3-cupshelpers                   1.5.11-4                            all          Python utility modules around the CUPS printing system
ii  python3-daemon                        2.2.3-1                             all          library for making a Unix daemon process  Python 3
ii  python3-dateutil                      2.7.3-3                             all          powerful extensions to the standard Python 3 datetime module
ii  python3-dbus                          1.2.8-3                             amd64        simple interprocess messaging system (Python 3 interface)
ii  python3-debconf                       1.5.71                              all          interact with debconf from Python 3
ii  python3-debian                        0.1.35                              all          Python 3 modules to work with Debian-related data formats
ii  python3-debianbts                     2.8.2                               all          Python interface to Debian's Bug Tracking System
ii  python3-dev                           3.7.3-1                             amd64        header files and a static library for Python (default)
ii  python3-distro                        1.3.0-1                             all          Linux OS platform information API
ii  python3-distutils                     3.7.3-1                             all          distutils package for Python 3.x
ii  python3-entrypoints                   0.3-1                               all          Discover and load entry points from installed packages (Python 3)
ii  python3-gi                            3.30.4-1                            amd64        Python 3 bindings for gobject-introspection libraries
ii  python3-gi-cairo                      3.30.4-1                            amd64        Python 3 Cairo bindings for the GObject library
ii  python3-httplib2                      0.11.3-2                            all          comprehensive HTTP client library written for Python3
ii  python3-idna                          2.6-1                               all          Python IDNA2008 (RFC 5891) handling (Python 3)
ii  python3-jinja2                        2.10-2                              all          small but fast and easy to use stand-alone template engine
ii  python3-jmespath                      0.9.4-1                             all          JSON Matching Expressions (Python 3)
ii  python3-kerberos                      1.1.14-2                            amd64        GSSAPI interface module - Python 3.x
ii  python3-keyring                       17.1.1-1                            all          store and access your passwords safely - Python 3 version of the package
ii  python3-keyrings.alt                  3.1.1-1                             all          alternate backend implementations for python3-keyring
ii  python3-lib2to3                       3.7.3-1                             all          Interactive high-level object-oriented language (2to3, version 3.6)
ii  python3-libcloud                      2.4.0-1                             all          unified Python interface into the cloud (Python3 version)
ii  python3-lockfile                      1:0.12.2-2                          all          file locking library for Python  Python 3 library
ii  python3-markupsafe                    1.1.0-1                             amd64        HTML/XHTML/XML string library for Python 3
ii  python3-minimal                       3.7.3-1                             amd64        minimal subset of the Python language (default python3 version)
ii  python3-msgpack                       0.5.6-1+b1                          amd64        Python 3 implementation of MessagePack format
ii  python3-nacl                          1.3.0-2                             amd64        Python bindings to libsodium (Python 3)
ii  python3-netaddr                       0.7.19-1                            all          manipulation of various common network address notations (Python 3)
ii  python3-ntlm-auth                     1.1.0-1                             all          NTLM low-level Python library
ii  python3-numpy                         1:1.16.2-1                          amd64        Fast array facility to the Python 3 language
ii  python3-olefile                       0.46-1                              all          Python module to read/write MS OLE2 files
ii  python3-paramiko                      2.4.2-0.1                           all          Make ssh v2 connections (Python 3)
ii  python3-pil:amd64                     5.4.1-2+deb10u2                     amd64        Python Imaging Library (Python3)
ii  python3-pip                           18.1-5                              all          Python package installer
ii  python3-pkg-resources                 40.8.0-1                            all          Package Discovery and Resource Access using pkg_resources
ii  python3-psutil                        5.5.1-1                             amd64        module providing convenience functions for managing processes (Python3)
ii  python3-pyasn1                        0.4.2-3                             all          ASN.1 library for Python (Python 3 module)
ii  python3-pycurl                        7.43.0.2-0.1                        amd64        Python bindings to libcurl (Python 3)
ii  python3-pysimplesoap                  1.16.2-1                            all          simple and lightweight SOAP Library (Python 3)
ii  python3-qubesdb                       4.0.13-1+deb10u1                    amd64        QubesDB python bindings.
ii  python3-reportbug                     7.5.3~deb10u1                       all          Python modules for interacting with bug tracking systems
ii  python3-requests                      2.21.0-1                            all          elegant and simple HTTP library for Python3, built for human beings
ii  python3-requests-kerberos             0.11.0-2                            all          Kerberos/GSSAPI authentication handler for python-requests - Python 3.x
ii  python3-requests-ntlm                 1.1.0-1                             all          Adds support for NTLM authentication to the requests library
ii  python3-scour                         0.37-2                              all          SVG scrubber and optimizer (Python 3 module)
ii  python3-secretstorage                 2.3.1-2                             all          Python module for storing secrets - Python 3.x version
ii  python3-selinux                       2.8-1+b1                            amd64        Python3 bindings to SELinux shared libraries
ii  python3-setuptools                    40.8.0-1                            all          Python3 Distutils Enhancements
ii  python3-simplejson                    3.16.0-1                            amd64        simple, fast, extensible JSON encoder/decoder for Python 3.x
ii  python3-six                           1.12.0-1                            all          Python 2 and 3 compatibility library (Python 3 interface)
ii  python3-smbc                          1.0.15.6-1+b2                       amd64        Python 3 bindings for the Samba client library
ii  python3-tornado4                      4.5.3-3                             amd64        scalable, non-blocking web server and tools - Python 3 package
ii  python3-tz                            2019.1-1                            all          Python3 version of the Olson timezone database
ii  python3-uno                           1:6.1.5-3+deb10u6                   amd64        Python-UNO bridge
ii  python3-urllib3                       1.24.1-1                            all          HTTP library with thread-safe connection pooling for Python3
ii  python3-virtualenv                    15.1.0+ds-2                         all          Python virtual environment creator
ii  python3-wheel                         0.32.3-2                            all          built-package format for Python
ii  python3-winrm                         0.3.0-2                             all          Python 3 library for Windows Remote Management
ii  python3-xcffib                        0.8.1-1+deb10u1                     amd64        This package is a Python binding for XCB (Python 3)
ii  python3-xdg                           0.25-5                              all          Python 3 library to access freedesktop.org standards
ii  python3-xmltodict                     0.11.0-2                            all          Makes working with XML feel like you are working with JSON (Python 3)
ii  python3-yaml                          3.13-2                              amd64        YAML parser and emitter for Python3
ii  python3.7                             3.7.3-2+deb10u2                     amd64        Interactive high-level object-oriented language (version 3.7)
ii  python3.7-dev                         3.7.3-2+deb10u2                     amd64        Header files and a static library for Python (v3.7)
ii  python3.7-minimal                     3.7.3-2+deb10u2                     amd64        Minimal subset of the Python language (version 3.7)
user@disp3499:~$ 

user@disp3499:~$ python3 -m virtualenv --python=python3.7 /tmp/virtualenv/kivymd_test
Running virtualenv with interpreter /usr/bin/python3.7
Using base prefix '/usr'
/usr/lib/python3/dist-packages/virtualenv.py:1090: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
  import imp
New python executable in /tmp/virtualenv/kivymd_test/bin/python3.7
Not overwriting existing python script /tmp/virtualenv/kivymd_test/bin/python (you must use /tmp/virtualenv/kivymd_test/bin/python3.7)
Installing setuptools, pkg_resources, pip, wheel...done.
user@disp3499:~$ /tmp/virtualenv/kivymd_test/bin/python3 -m pip install --upgrade pip kivy kivymd
Requirement already up-to-date: pip in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (20.2.2)
Requirement already up-to-date: kivy in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (1.11.1)
Requirement already up-to-date: kivymd in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (0.104.1)
Requirement already satisfied, skipping upgrade: docutils in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (from kivy) (0.16)
Requirement already satisfied, skipping upgrade: pygments in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (from kivy) (2.6.1)
Requirement already satisfied, skipping upgrade: Kivy-Garden>=0.1.4 in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (from kivy) (0.1.4)
Requirement already satisfied, skipping upgrade: pillow in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (from kivymd) (7.2.0)
Requirement already satisfied, skipping upgrade: requests in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (from kivymd) (2.24.0)
Requirement already satisfied, skipping upgrade: chardet<4,>=3.0.2 in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (from requests->kivymd) (3.0.4)
Requirement already satisfied, skipping upgrade: idna<3,>=2.5 in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (from requests->kivymd) (2.10)
Requirement already satisfied, skipping upgrade: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (from requests->kivymd) (1.25.10)
Requirement already satisfied, skipping upgrade: certifi>=2017.4.17 in /tmp/virtualenv/kivymd_test/lib/python3.7/site-packages (from requests->kivymd) (2020.6.20)
user@disp3499:~$ /tmp/virtualenv/kivymd_test/bin/python3 -m pip list
Package       Version
------------- ---------
certifi       2020.6.20
chardet       3.0.4
docutils      0.16
idna          2.10
Kivy          1.11.1
Kivy-Garden   0.1.4
kivymd        0.104.1
Pillow        7.2.0
pip           20.2.2
pkg-resources 0.0.0
Pygments      2.6.1
requests      2.24.0
setuptools    50.0.0
urllib3       1.25.10
wheel         0.35.1
user@disp3499:~$ source /tmp/virtualenv/kivymd_test/bin/activate
(kivymd_test) user@disp3499:~$ 

(kivymd_test) user@disp3499:~$ tmpDir=`mktemp -d`
(kivymd_test) user@disp3499:~$ pushd "${tmpDir}"
/tmp/tmp.YkuCdPN45C ~
(kivymd_test) user@disp3499:/tmp/tmp.YkuCdPN45C$ 

(kivymd_test) user@disp3499:/tmp/tmp.YkuCdPN45C$ cat << EOF > alertDialogButtonFail.py
> #!/usr/bin/env python3
> from kivy.lang import Builder
> 
> from kivymd.app import MDApp
> from kivymd.uix.button import MDFlatButton
> from kivymd.uix.dialog import MDDialog
> 
> KV = '''
> FloatLayout:
> 
>     MDFlatButton:
>         text: "ALERT DIALOG"
>         pos_hint: {'center_x': .5, 'center_y': .5}
>         on_release: app.show_alert_dialog()
> '''
> 
> 
> class Example(MDApp):
>     dialog = None
> 
>     def build(self):
>         return Builder.load_string(KV)
> 
>     def show_alert_dialog(self):
>         if not self.dialog:
>             self.dialog = MDDialog(
>                 text="Discard draft?",
>                 title="Example Title",
>                 buttons=[
>                     MDFlatButton(
>                         text="CANCEL", text_color=self.theme_cls.primary_color
>                     ),
>                     MDFlatButton(
>                         text="DISCARD", text_color=self.theme_cls.primary_color
>                     ),
>                 ],
>             )
>         self.dialog.open()
> 
> 
> Example().run()
> EOF
(kivymd_test) user@disp3499:/tmp/tmp.YkuCdPN45C$ chmod +x alertDialogButtonFail.py
(kivymd_test) user@disp3499:/tmp/tmp.YkuCdPN45C$ ./alertDialogButtonFail.py
[INFO   ] [Logger      ] Record log in /home/user/.kivy/logs/kivy_20-09-01_4.txt
[INFO   ] [Kivy        ] v1.11.1
[INFO   ] [Kivy        ] Installed at "/tmp/virtualenv/kivymd_test/lib/python3.7/site-packages/kivy/__init__.py"
[INFO   ] [Python      ] v3.7.3 (default, Jul 25 2020, 13:03:44) 
[GCC 8.3.0]
[INFO   ] [Python      ] Interpreter at "/tmp/virtualenv/kivymd_test/bin/python3"
[INFO   ] [Factory     ] 184 symbols loaded
[INFO   ] [KivyMD      ] v0.104.1
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO   ] [Window      ] Provider: sdl2(['window_egl_rpi'] ignored)
[INFO   ] [GL          ] Using the "OpenGL" graphics system
[INFO   ] [GL          ] Backend used <sdl2>
[INFO   ] [GL          ] OpenGL version <b'3.1 Mesa 18.3.6'>
[INFO   ] [GL          ] OpenGL vendor <b'VMware, Inc.'>
[INFO   ] [GL          ] OpenGL renderer <b'llvmpipe (LLVM 7.0, 256 bits)'>
[INFO   ] [GL          ] OpenGL parsed version: 3, 1
[INFO   ] [GL          ] Shading version <b'1.40'>
[INFO   ] [GL          ] Texture max size <8192>
[INFO   ] [GL          ] Texture max units <32>
[INFO   ] [Window      ] auto add sdl2 input provider
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not docked
[INFO   ] [Text        ] Provider: sdl2
[INFO   ] [GL          ] NPOT texture support is available
[INFO   ] [Base        ] Start application main loop
[INFO   ] [WindowSDL   ] exiting mainloop and closing.
[INFO   ] [Base        ] Leaving application in progress...
(kivymd_test) user@disp3499:/tmp/tmp.YkuCdPN45C$ 
(kivymd_test) user@disp3499:/tmp/tmp.YkuCdPN45C$ popd
~
(kivymd_test) user@disp3499:~$ 

Repeated attempts

I’ve found that if I repeat the test over-and-over, then sometimes (<50% of the time), I will be able to click the button. And it appears to help if I click, hold down the touchpad, and move the mouse pointer a few pixels over with the button still depressed – rather than just click/tap on the touchpad.

Context/Versions

Note that the script in the above example execution is a very slightly modified version of what was found in the documentation. but with the title set. Here’s the diff:

(kivymd_test) user@disp3499:/tmp/tmp.YkuCdPN45C$ diff orig.py alertDialogButtonFail.py 
0a1
> #!/usr/bin/env python3
26a28
>                 title="Example Title",
(kivymd_test) user@disp3499:/tmp/tmp.YkuCdPN45C$ 

When the title is removed, then the buttons work as expected every time.

  • OS: Debian 10
  • Python: 3.7.3
  • Kivy: 1.11.1
  • KivyMD: 0.104.1

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 29 (17 by maintainers)

Commits related to this issue

Most upvoted comments

Hi, @maltfield.

This issue was fixed after releasing KivyMD 0.104.1. I can confirm that it works as expected with KivyMD master on Windows 10 and not working properly with KivyMD 0.104.1.

Please install KivyMD from master branch and test again. Report if the bug repeats and I will reopen issue.

@maltfield You, in turn, try to give questions from which the essence of the problem is clear. Your question - Alert dialog's buttons do nothing - misled not only me.