Telegram for iOS ने फोल्डेबल iPhone Duo के लिए तैयारी कर ली है, जिसे Apple ने 23 अक्टूबर को बेचना शुरू किया था। इस काम का मुख्य हिस्सा 9 अक्टूबर को एक कमिट c8bb114b के रूप में खुले रिपॉजिटरी Telegram-iOS में उपलब्ध है: इसमें 12,889 लाइनें जोड़ी गईं और 2,940 हटाई गईं। Duo पर, 'वापस' बटन स्क्रीन के किनारे पर स्थित साइड स्ट्रिप में चला जाता है, टैब बार वर्टिकल हो जाता है, और बड़ी आंतरिक स्क्रीन पर कहानियाँ iPad की तरह कार्ड के रूप में खुलती हैं। Duo के लिए अंतिम बदलाव 22 अक्टूबर को कोड में शामिल किए गए थे, संस्करण संख्या 13.1.1 में बदलने से एक घंटे से भी कम समय पहले, और उसी दिन शाम को 13.1.1 App Store पर जारी किया गया। यह Duo मालिकों पर लागू होता है: अन्य iPhone और iPad पर, कुछ आकस्मिक सुधारों को छोड़कर लेआउट पहले जैसा ही रहता है।

Duo स्क्रीन पर क्या बदलता है

मुख्य नियम गाइड में लिखा गया है, जो कोड के साथ रिपॉजिटरी में स्थित है: 'वापस' या 'बंद करें' बटन को साइड स्ट्रिप में रखा जाता है, यदि वह मौजूद हो। मानक स्क्रीन यह स्वयं करती हैं, जबकि अपनी हेडर वाली स्क्रीन बटन के लिए सामान्य लेआउट से जगह लेती हैं।

  • चैट। हेडर को ऊपरी पंक्ति और साइड कॉलम में विभाजित किया गया है। कॉलम में 'वापस' बटन और चैट पार्टनर का अवतार होता है, इनपुट फ़ील्ड स्ट्रिप के किनारे तक फैल जाता है, यदि वह खाली हो।
  • चैट सूची और प्रोफ़ाइल। बटन स्ट्रिप में चले जाते हैं, शीर्षक स्क्रीन के शेष भाग पर केंद्रित होता है।
  • टैब बार। नीचे एक हॉरिजॉन्टल स्ट्रिप के बजाय — साइड स्ट्रिप में एक वर्टिकल कैप्सूल, जो नीचे की ओर दबा हुआ होता है। आंतरिक स्क्रीन पर, जहाँ बाईं ओर सूची और दाईं ओर चैट होती है, आइकन के नीचे कोई लेबल नहीं होता है।
  • स्क्रीन के नीचे के बटन ('जारी रखें', 'भेजें', चयन पैनल) स्ट्रिप के साथ पूरी चौड़ाई में फैल जाते हैं। अपवाद: केंद्र में छोटे बटन (रिकॉर्डिंग बटन, कैमरा प्रीव्यू पर 'हो गया'), 'शेयर करें' जैसी स्क्रॉलिंग वाली ऊँची शीट और ऊपर की ओर बढ़ने वाला इनपुट फ़ील्ड। ये स्क्रीन के मुख्य भाग में रहते हैं: अन्यथा छोटा बटन सामग्री की धुरी से 42 पॉइंट हट जाता, ऊँची शीट के कोनों में बटन कॉर्नर ब्लॉक तक पहुँच जाते, और इनपुट फ़ील्ड अपनी पंक्तियों की चौड़ाई लेता।
  • कहानियाँ अनफोल्डेड स्क्रीन पर केंद्र में 9:16 कार्ड के रूप में धुंधली पृष्ठभूमि के साथ दिखाई जाती हैं, जैसे iPad पर। इस बदलाव के बिना, कहानी पूरी स्क्रीन पर फैल जाती और कट जाती।
  • 'हो गया' 'बदलें/हो गया' स्विच वाली स्क्रीन पर ऊपरी पंक्ति में रहता है। पहले यह पंक्ति से साइड कॉलम के सर्कल में कूद जाता था।

Duo को अपने लेआउट की आवश्यकता क्यों है

सामान्य iPhone में, सिस्टम स्क्रीन के किनारों को आरक्षित करता है: ऊपर घड़ी के साथ नॉच, नीचे होम जेस्चर स्ट्रिप। Duo में, रिजर्व एक कोने में एक आयताकार ब्लॉक होता है, जहाँ घड़ी, कनेक्शन आइकन और कैमरा होते हैं। iOS इस ब्लॉक को किनारे की पूरी ऊँचाई तक एक इंडेंट में फैलाता है, और एक ऐप जो केवल सिस्टम इंडेंट का पालन करता है, किनारे के साथ 84 पॉइंट चौड़ी एक स्ट्रिप खो देता है। Telegram सिस्टम इंडेंट का पालन करना जारी रखता है, और डिवाइस की प्रत्येक स्थिति के लिए अपनी तालिका से कॉर्नर ब्लॉक के आकार लेता है। घूमने और फोल्ड होने के बाद सिस्टम के लाइव मान 0.6 सेकंड तक ट्रांज़िशनल होते हैं, इसलिए उन्हें पढ़ा नहीं जाता है।

स्थितिविंडो, पॉइंटकॉर्नर ब्लॉकसाइड में क्या रहता है
फोल्डेड, वर्टिकल466 × 678ऊपर दाईं ओर, 84 × 170ब्लॉक के नीचे दाईं ओर स्ट्रिप
फोल्डेड, बाईं ओर घुमाया गया678 × 466नीचे दाईं ओर, 84 × 82ब्लॉक के ऊपर दाईं ओर स्ट्रिप
फोल्डेड, दाईं ओर घुमाया गया678 × 466ऊपर बाईं ओर, 84 × 84ब्लॉक के नीचे बाईं ओर स्ट्रिप
अनफोल्डेड, वर्टिकल669 × 951ऊपर दाईं ओर, 134 × 82कोई स्ट्रिप नहीं, ऊपर 'आइसलैंड'
अनफोल्डेड, हॉरिजॉन्टल951 × 669ऊपर दाईं ओर, 84 × 120ब्लॉक के नीचे दाईं ओर स्ट्रिप

यहाँ से मुख्य जाल आता है, जिसे गाइड पहले बताता है: फोल्डेड Duo में वर्टिकल ओरिएंटेशन में साइड इंडेंट होता है, जबकि iPhone के लिए किसी भी ऐप का कोड आमतौर पर यह मानता है कि पोर्ट्रेट में कोई साइड इंडेंट नहीं होता है।

डिवाइस की तीन और विशेषताएँ, जिनके लिए कोड बदलना पड़ा:

  • Duo पर UIScreen.main हमेशा बाहरी स्क्रीन लौटाता है, भले ही फ़ोन अनफोल्डेड हो। फ्रंट कैमरे से शूटिंग और वीडियो संदेशों के दौरान बैकलाइट, QR कोड दिखाते समय चमक और स्वचालित नाइट मोड गलत स्क्रीन की चमक बदल रहे थे।
  • बाहरी स्क्रीन के कोनों का घुमाव अलग-अलग होता है: मोड़ की तरफ 8 पॉइंट और बाहर की तरफ 59 पॉइंट। आंतरिक स्क्रीन के सभी कोने 55 पॉइंट के होते हैं। शीट, स्क्रीन के बीच संक्रमण और कहानियों के कैमरे को खोलते समय चैट सूची का शिफ्ट अब प्रत्येक कोने के अनुसार अलग-अलग घुमाया जाता है।
  • अनफोल्डेड हॉरिजॉन्टल Duo को सिस्टम 'सामान्य चौड़ाई' वाली स्क्रीन मानता है, जैसे iPad की, हालाँकि यह एक फ़ोन है। स्क्रीन की चौड़ाई से 'यह iPad है?' की जाँच टूट जाती थी, और अनफोल्डेड Duo ऐप से स्क्रीन रोटेशन बिल्कुल नहीं करता है।
लेआउट त्रुटियाँ कैसी दिखती थीं

गाइड विशिष्ट त्रुटियों को सूचीबद्ध करता है, जो अन्य डिवाइसों पर अदृश्य होती हैं, क्योंकि वहाँ बाईं और दाईं ओर के इंडेंट बराबर होते हैं। बाईं ओर का इंडेंट दाईं ओर भी लगाया जाता था। मुख्य स्क्रीन के भाग की चौड़ाई वाला ब्लॉक पूरी स्क्रीन पर केंद्रित होता था और स्ट्रिप की ओर 42 पॉइंट खिसक जाता था। दाईं ओर का बटन बाईं ओर के इंडेंट से गिना जाता था। 9:16 कैमरा प्रीव्यू स्क्रीन से ऊपर चला जाता था: फोल्डेड Duo पर 150 पॉइंट। निचले बटन, जो 'होम' बटन वाले iPhone के लिए पुराने स्थिरांकों से स्क्रीन के किनारे से गिने जाते थे, जेस्चर स्ट्रिप पर आ जाते थे। प्रत्येक सुधार को उसी अभिव्यक्ति में वापस आना चाहिए, जब कोई कॉर्नर ब्लॉक न हो और इंडेंट बराबर हों, इसलिए अन्य डिवाइस पहले की तरह ही बाइट-दर-बाइट वही दिखाते हैं।

298 स्क्रीन की जाँच कैसे की गई

कार्यप्रणाली स्क्रीन जाँच की रिपोर्ट में दर्ज है। feature/reserved-corners ब्रांच 25 सितंबर से 9 अक्टूबर तक विकसित की गई थी, और वास्तविक जाँच 8 और 9 अक्टूबर को हुई थी। 298 स्क्रीन की जाँच की गई, यानी ऐप के सभी स्क्रीन कंट्रोलर, दो टेस्ट स्टब को छोड़कर। इन्हें उन एजेंटों द्वारा पढ़ा गया, जिन्हें कोड बदलने की अनुमति नहीं थी, और प्रत्येक स्क्रीन को जाँच तालिका में एक पंक्ति मिली: एक खोज या एक कारण कि सुधार की आवश्यकता क्यों नहीं थी। सुधार केवल अपनी फ़ाइलों में किए गए थे, और तीन समीक्षकों ने प्रत्येक डिफ़ को नियमों के साथ सत्यापित किया। मुख्य कमिट और लगभग सभी बाद के कमिट Claude Opus 5.5 के सह-लेखक द्वारा हस्ताक्षरित हैं। कमिट संदेश के अनुसार, कुल मिलाकर लगभग 65 खोजों को ठीक किया गया।

इसके साथ ही, असमान इंडेंट से भी अधिक गंभीर त्रुटियाँ पाई गईं:

  • 'चैट थीम' स्क्रीन स्क्रॉल करते समय एक त्रुटि के साथ बंद हो जाती थी, क्योंकि सूची के तत्व मुख्य थ्रेड में नहीं बनाए गए थे;
  • Duo पर लाइव स्ट्रीम सेटिंग्स में बटन स्ट्रिप के बगल में उपलब्ध जगह से चौड़ा था और स्क्रीन के किनारे से 12 पॉइंट बाहर निकल जाता था;
  • फोल्डेड हॉरिजॉन्टल स्थिति में Telegram Passport ऑथराइज़ेशन बटन कॉर्नर ब्लॉक के नीचे आ जाता था।

स्क्रीन पर जाँच iOS 27.1 के साथ Duo सिम्युलेटर में की गई थी। कमांड लाइन से सिम्युलेटर को फोल्ड और अनफोल्ड नहीं किया जा सकता है, इसलिए अनफोल्डेड हॉरिजॉन्टल स्थिति के लिए अधिकांश सुधारों को केवल बिल्ड और कोड पढ़कर ही सत्यापित किया गया था। यह रिपोर्ट के 'गैप्स' अनुभाग में सीधे दर्ज है। इसमें वे स्क्रीन भी शामिल हैं जो टेस्ट अकाउंट पर नहीं थीं: Premium सदस्यता बटन (अकाउंट में पहले से ही सदस्यता है), चैट आयात और लाइव कॉल।

डिवाइस के लॉन्च तक क्या पूरा किया गया

मुख्य कमिट के बाद भी Duo के लिए सुधार जारी रहे। 18 अक्टूबर को, पड़ोसी कहानियाँ साइड स्ट्रिप में दिखना बंद हो गईं: सामान्य फ़ोन पर वे स्क्रीन के किनारे के पीछे होती हैं, जबकि Duo पर किसी और की कहानी का एक टुकड़ा घड़ी के नीचे हर समय दिखाई देता था। उसी दिन, वॉलेट टैब स्विच और साइड कॉलम में अवतार एनिमेशन को ठीक किया गया। 22 अक्टूबर को, कहानियों के कैमरे और एडिटर ने 'होम' जेस्चर स्ट्रिप के ऊपर बटन उठाए, और अनफोल्डेड हॉरिजॉन्टल स्क्रीन पर चैट सूची में खोज फ़ील्ड आधा ऊपरी किनारे से बाहर निकलना बंद हो गया।

versions.json फ़ाइल में, 13.1.1 नंबर 22 अक्टूबर को 12:11 UTC पर दिखाई दिया, Duo के लिए अंतिम सुधार के नौ मिनट बाद। App Store में, संस्करण 13.1.1 उसी दिन 18:45 UTC पर जारी किया गया था, जिसमें "Bug fixes, minor improvements, and more" का विवरण था। ऐप के डिवाइसों की सूची में iPhone Duo शामिल है, लेकिन यह सूची केवल यह बताती है कि ऐप इंस्टॉल किया जा सकता है, न कि यह कि इसे स्क्रीन के लिए फिर से बनाया गया है। Duo मालिकों को मिलने वाला बिल्ड नंबर और तारीख के अनुसार खुले कोड से मेल खाता है, लेकिन App Store से बाइनरी को कोड के साथ सत्यापित नहीं किया गया था।