¿Cómo hacer que el evento tkinter <Enter> funcione cuando se presiona <button-1>?

Quiero llenar rectángulos al igual que en la pintura. Cuando se presiona el botón del mouse, quiero que se rellenen todos los rectángulos que ingrese y, de lo contrario, no quiero que ocurra ningún evento.

Aquí está mi código:

from tkinter import Canvas
import tkinter

_width = 50
_height = 50
_size = 8

root = tkinter.Tk()
root.title("draw me a lovely matrix")
canv = Canvas(root, width=_width * _size, height=_height * _size)


class Wrapper:
    btn1d = False


def set_btn1d(value):
    print(value)
    Wrapper.btn1d = value


def toggle_color(rect):
    print('called')
    if Wrapper.btn1d:
        color = canv.itemcget(rect, 'fill')
        canv.itemconfig(rect, fill=("#aaa" if color == '#fff' else '#fff'))


rects = []
canv.bind('<ButtonPress-1>', lambda e, value=True: set_btn1d(value))
canv.bind('<ButtonRelease-1>', lambda e, value=False: set_btn1d(value))
for i in range(_size):
    for j in range(_size):
        rect = canv.create_rectangle(_width * j, _height * i, _width * (j + 1), _height * (i + 1), fill="#fff", width=0)
        rects.append(rect)
        canv.tag_bind(rect, '<Enter>', lambda e, rect=rect: toggle_color(rect))

canv.pack()
root.mainloop()

El problema es que cuando presiono el botón del mouse, solo la celda en la que se presionó el mouse detecta la entrada del puntero del mouse (también aquella en la que se soltará el mouse al final)

Cualquier consejo general beneficioso sobre mi código sería, por supuesto, muy apreciado.

Respuestas a la pregunta(0)

Su respuesta a la pregunta