Sachverhalt:
A.
Am 9. April 2020 verurteilte das Bezirksgericht Horgen den litauischen Staatsangehörigen A._ wegen gewerbs- und bandenmässigen Diebstahls, mehrfacher Sachbeschädigung, mehrfachen Hausfriedensbruchs und schwerer Geldwäscherei zu einer Freiheitsstrafe von 4 Jahren (unter Anrechnung der Untersuchungs- und Sicherheitshaft) und einer Geldstrafe von 50 Tagessätzen zu je Fr. 30.--. Überdies verwies es ihn für 10 Jahre des Landes.
Am 14. April 2020 begründete das Bezirksgericht das Urteil mündlich. Am Tag darauf meldete A._ Berufung an.
B.
Am 24. September 2020 erhob A._ beim Obergericht des Kantons Zürich Rechtsverweigerungs- bzw. Rechtsverzögerungsbeschwerde. Er beantragte die Feststellung, dass mangels rechtzeitiger Zustellung des begründeten Urteils des Bezirksgerichts eine Rechtsverweigerung bzw. Rechtsverzögerung gegeben sei; dem Bezirksgericht sei eine maximal 30-tägige Frist zur Zustellung des begründeten Urteils anzusetzen; es sei festzustellen, dass sich das Bezirksgericht EMRK-widrig verhalte.
Mit Beschluss vom 21. Januar 2021 wies das Obergericht (III. Strafkammer) die Beschwerde ab, soweit es das Verfahren nicht als gegenstandslos geworden abschrieb.
C.
A._ führt Beschwerde in Strafsachen mit dem Antrag, es sei festzustellen, dass mangels rechtzeitiger Zustellung des begründeten Urteils des Bezirksgerichts eine Rechtsverweigerung bzw. Rechtsverzögerung gegeben sei; ebenso, dass sich das Bezirksgericht EMRK-widrig verhalten habe.
D.
Das Obergericht hat auf Gegenbemerkungen verzichtet. Das Bezirksgericht hat sich nicht vernehmen lassen.

Erwägungen:
1.
Gegen den angefochtenen Beschluss ist gemäss <ref-law> die Beschwerde in Strafsachen gegeben. Ein kantonales Rechtsmittel steht nicht zur Verfügung. Die Beschwerde ist somit nach <ref-law> zulässig.
Der Beschwerdeführer hat am Verfahren vor der Vorinstanz teilgenommen. Diese verneint eine Verletzung des Beschleunigungsgebots durch das Bezirksgericht. Er hat ein rechtlich geschütztes Interesse an der Aufhebung des angefochtenen Beschlusses und der Feststellung der Verletzung dieses Gebots, da er diesfalls insoweit Aussicht auf eine Strafreduktion im Berufungsverfahren hätte (vgl. <ref-ruling> E. 1.4.1 mit Hinweisen). Damit ist er gemäss Art. 81 Abs. 1 lit. a und b Ziff. 1 BGG zur Beschwerde berechtigt. Wie sich aus der Begründung der Beschwerde ergibt, verlangt der Beschwerdeführer in der Sache auch die Aufhebung des angefochtenen Beschlusses, soweit er dadurch beschwert ist.
Letzterer stellt einen Zwischenentscheid dar. Nach der Rechtsprechung muss das Erfordernis des nicht wieder gutzumachenden Nachteils gemäss <ref-law> in einem Fall wie hier, in dem der Beschwerdeführer eine Verletzung des Beschleunigungsgebots rügt, nicht erfüllt sein (<ref-ruling> E. 2.2; Urteil 1B_365/2019 vom 7. April 2020 E. 1).
Die weiteren Sachurteilsvoraussetzungen geben zu keinen Bemerkungen Anlass. Auf die Beschwerde ist einzutreten.
2.
2.1. Das Bezirksgericht fällte sein Urteil am 9. April 2020. Der Verteidiger des Beschwerdeführers fragte beim Bezirksgericht mehrmals nach, wann mit der Zustellung der schriftlichen Urteilsbegründung gerechnet werden könne. Am 24. September 2020 erhob er Rechtsverweigerungs- bzw. Rechtsverzögerungsbeschwerde. Am 2. November 2020 stellte das Bezirksgericht die schriftliche Urteilsbegründung den Parteien und der Vorinstanz zu. Letztere erwägt, mit der Zustellung der schriftlichen Urteilsbegründung entfalle insoweit ein aktuelles Rechtsschutzinteresse an der Behandlung der Beschwerde. Ein solches sei im Hinblick auf die Möglichkeit einer Strafreduktion im Berufungsverfahren bei einer Verletzung des Beschleunigungsgebots gegeben. Ein solche Verletzung liege jedoch nicht vor.
Der Beschwerdeführer macht geltend, damit verletze die Vorinstanz Bundesrecht. Indem das Bezirksgericht bis zur Zustellung der schriftlichen Urteilsbegründung annähernd sieben Monate gebraucht habe, habe es das Beschleunigungsgebot verletzt.
2.2. Das sich aus <ref-law>, Art. 6 Ziff. 1 EMRK und <ref-law> ergebende Beschleunigungsgebot verpflichtet die Behörden, das Strafverfahren zügig voranzutreiben (<ref-ruling> E. 1.8.2 S. 61 mit Hinweisen). Welche Verfahrensdauer angemessen ist, hängt von den Umständen des Einzelfalles ab. Massgeblich sind insoweit namentlich die Schwere des Tatvorwurfs und die Komplexität des Sachverhalts (<ref-ruling> E. 1.3.1; <ref-ruling> E. 3.1; je mit Hinweisen).
Muss das Gericht das Urteil begründen, so stellt es gemäss <ref-law> innert 60 Tagen, ausnahmsweise 90 Tagen, der beschuldigten Person und der Staatsanwaltschaft das vollständige begründete Urteil zu. Nach der Rechtsprechung handelt es sich dabei um eine Ordnungsvorschrift. Die Überschreitung der in <ref-law> genannten Fristen führt nicht ohne Weiteres zur Annahme einer Verletzung des Beschleunigungsgebots, kann dafür aber ein Indiz darstellen (Urteil 6B_561/2020 vom 16. September 2020 E. 6 mit Hinweis).
2.3. Im Urteil 6B_42/2016 vom 26. Mai 2016 ging es um einen Beschuldigten, den ein Bezirksgericht wegen gewerbs- und bandenmässiger Widerhandlung gegen das Betäubungsmittelgesetz, bandenmässigen Diebstahls, mehrfachen Betrugs und mehrfacher Hehlerei zu einer Freiheitsstrafe von 4 3⁄4 Jahren verurteilt hatte. Das Bezirksgericht benötigte bis zur Zustellung der schriftlichen Urteilsbegründung ca. 6 Monate und eine Woche. Das Bundesgericht beurteilte dies als zu lange und bejahte eine Verletzung des Beschleunigungsgebots; dies auch in Berücksichtigung des Umstandes, dass das Bezirksgericht eine Vielzahl von Delikten und Tathandlungen zu beurteilen hatte (E. 5.5).
2.4. Im vorliegenden Fall stellte das Bezirksgericht die schriftliche Begründung des Urteils dem Beschwerdeführer annähernd sieben Monate nach der Ausfällung zu. Die Vorinstanz verneint eine Verletzung des Beschleunigungsgebots in Anbetracht der Komplexität des Sachverhalts, die ihren Ausdruck im Umfang des bezirksgerichtlichen Urteils von 86 Seiten finde, und der Auswirkungen der Corona-Krise auf den Betrieb des Bezirksgerichts.
Zwar trifft zu, dass das Urteil des Bezirksgerichts mit 86 Seiten vergleichsweise umfangreich ist. Der vor ihm zur Anklage gebrachte Sachverhalt ist jedoch nicht komplex. Es geht um zwei Einbrüche in Fahrradgeschäfte, bei denen der Beschwerdeführer in Zusammenwirkung mit Mittätern jeweils insbesondere zahlreiche wertvolle Velos gestohlen haben soll. Zwar musste das Bezirksgericht drei Angeklagte beurteilen und sich einleitend mit zahlreichen prozessualen Einwänden auseinandersetzen. Die Angelegenheit kann deshalb jedoch nicht als besonders komplex eingestuft werden. Es handelt sich noch um einen Durchschnittsfall.
Auch der vorinstanzliche Hinweis auf die Einschränkung des bezirksgerichtlichen Betriebs aufgrund der Corona-Krise überzeugt nicht. Dass die Hauptverhandlung gleichzeitig in mehrere Gerichtssäle übertragen werden musste und deshalb Schwierigkeiten bot, ist nicht entscheidend. Sie war im Zeitpunkt, als die schriftliche Urteilsbegründung erarbeitet werden musste, abgeschlossen. Den Entwurf dieser Begründung konnte der Gerichtsschreiber, wenn nicht im Büro, im Home-Office erarbeiten. Dasselbe gilt für das Studium und allfällige Änderungen des Entwurfs durch die Richter. Zu einer starken Verzögerung kann und darf das nicht geführt haben (vgl. <ref-ruling> E. 2.3 f.).
Die Vorinstanz lässt sodann ausser Acht, dass sich der Beschwerdeführer seit dem 4. April 2019 in Untersuchungs- und Sicherheitshaft bzw. im vorzeitigen Strafvollzug befindet. Gemäss <ref-law> nehmen die Strafbehörden die Strafverfahren unverzüglich an die Hand und bringen sie ohne unbegründete Verzögerung zum Abschluss (Abs. 1). Befindet sich eine beschuldigte Person in Haft, so wird ihr Verfahren vordringlich geführt (Abs. 2). Haftsachen müssen also mit besonderer Beschleunigung behandelt werden (<ref-ruling> E. 2.1 S. 121); dies weil die Haft einen schweren Eingriff in die persönliche Freiheit des Beschuldigten darstellt, der unter dem Schutz der Unschuldsvermutung steht (<ref-law> und <ref-law>; Urteil 1B_234/2015 vom 22. Juli 2015 E. 2.2). Das Gebot der besonderen Beschleunigung in Haftsachen gilt auch, wenn sich der Beschuldigte im vorzeitigen Strafvollzug befindet (<ref-ruling> E. 3.2; Urteil 1P.62/1996 vom 14. Februar 1996 E. 3f). Der Beschwerdeführer hat sich vor Vorinstanz, wie sie selber darlegt, auf <ref-law> berufen (angefochtener Beschluss E. 1 S. 4 und E. 3 S. 5). Trotzdem nimmt sie in ihren rechtlichen Erwägungen lediglich Bezug auf <ref-law> (E. 5 S. 6).
Berücksichtigt man, dass Haftsachen mit besonderer Beschleunigung zu behandeln sind, es sich hier noch um einen Durchschnittsfall handelt und die Auswirkungen der Corona-Krise auf den Gerichtsbetrieb jedenfalls keine längere Verzögerung rechtfertigten, verletzt es das Beschleunigungsgebot, wenn die Vorinstanz nicht nur die Frist von 60 Tagen, sondern selbst jene von 90 Tagen gemäss <ref-law> weit überschritten hat. Hat das Bundesgericht im dargelegten Urteil 6B_42/2016 vom 26. Mai 2016 (oben E. 2.3)eine Verletzung des Beschleunigungsgebots bejaht, muss das auch hier gelten, zumal das Bezirksgericht für die Zustellung der schriftlichen Urteilsbegründung noch länger brauchte und im Gegensatz zu dort keine Vielzahl von Delikten zu beurteilen hatte.
2.5. Ob und wieweit die Verletzung des Beschleunigungsgebots eine Strafreduktion rechtfertigt, wird, sofern es bei einem Schuldspruch bleibt, das Berufungsgericht zu entscheiden haben.
3.
Die Beschwerde ist demnach gutzuheissen und der angefochtene Beschluss aufzuheben, soweit die Vorinstanz die Beschwerde abgewiesen und dem Beschwerdeführer Kosten auferlegt hat. Es wird festgestellt, dass das Bezirksgericht das Beschleunigungsgebot (und damit die EMRK) verletzt hat.
Bei diesem Ausgang des Verfahrens sind keine Gerichtskosten zu erheben (<ref-law>). Der Kanton hat dem Anwalt des Beschwerdeführers eine Entschädigung zu bezahlen (Art. 68 Abs. 1 f. BGG). Das Gesuch um unentgeltliche Rechtspflege und Verbeiständung ist damit gegenstandslos.

Demnach erkennt das Bundesgericht:
1.
Die Beschwerde wird gutgeheissen und der Beschluss des Obergerichts des Kantons Zürich vom 21. Januar 2021 aufgehoben, soweit dieses die Beschwerde abgewiesen und dem Beschwerdeführer Kosten auferlegt hat. Es wird festgestellt, dass das Bezirksgericht Horgen das Beschleunigungsgebot verletzt hat.
2.
Es werden keine Gerichtskosten erhoben.
3.
Der Kanton Zürich hat dem Vertreter des Beschwerdeführers, Rechtsanwalt Dr. Christoph Bertisch, eine Entschädigung von Fr. 2'000.-- zu bezahlen.
4.
Dieses Urteil wird dem Beschwerdeführer, dem Bezirksgericht Horgen, I. Abteilung, und dem Obergericht des Kantons Zürich, III. Strafkammer, schriftlich mitgeteilt.
Lausanne, 9. September 2021
Im Namen der I. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Das präsidierende Mitglied: Chaix
Der Gerichtsschreiber: Härri