Wear Compose

  
Wear OS डिवाइसों के लिए Jetpack Compose ऐप्लिकेशन लिखें. इसके लिए, डिवाइस के अलग-अलग साइज़ और नेविगेशन जेस्चर के साथ काम करने की सुविधा दें.
नया अपडेट रिलीज़ किया गया जांचा और परखा हुआ वर्शन रिलीज़ कैंडिडेट बीटा रिलीज़ ऐल्फ़ा रिलीज़
4 जून, 2025 1.4.1 - 1.5.0-beta03 -

डिपेंडेंसी का एलान करना

Wear पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.

अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:

ग्रूवी

dependencies {
    implementation "androidx.wear.compose:compose-foundation:1.4.1"

    // For Wear Material Design UX guidelines and specifications
    implementation "androidx.wear.compose:compose-material:1.4.1"

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation "androidx.wear.compose:compose-navigation:1.4.1"

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.4.1")
    
    // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material.
    // androidx.wear.compose:compose-material is designed as a replacement
    // not an addition to androidx.compose.material:material.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material please raise a bug to let us know.
}

Kotlin

dependencies {
    implementation("androidx.wear.compose:compose-foundation:1.4.1")

    // For Wear Material Design UX guidelines and specifications
    implementation("androidx.wear.compose:compose-material:1.4.1")

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation("androidx.wear.compose:compose-navigation:1.4.1")
    
    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.4.1")

    // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material.
    // androidx.wear.compose:compose-material is designed as a replacement
    // not an addition to androidx.compose.material:material.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material please raise a bug to let us know.
}

डिपेंडेंसी के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.

सुझाव/राय दें या शिकायत करें

आपके सुझाव, शिकायत या राय से हमें Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या इस लाइब्रेरी को बेहतर बनाने के लिए आपके पास कोई सुझाव है, तो हमें बताएं. नई लाइब्रेरी बनाने से पहले, कृपया इस लाइब्रेरी में मौजूद मौजूदा समस्याओं पर एक नज़र डालें. किसी मौजूदा समस्या पर अपना वोट जोड़ने के लिए, स्टार बटन पर क्लिक करें.

नई समस्या बनाना

ज़्यादा जानकारी के लिए, समस्या ट्रैकर का दस्तावेज़ देखें.

Wear Compose का वर्शन 1.5

वर्शन 1.5.0-beta03

4 जून, 2025

androidx.wear.compose:compose-*:1.5.0-beta03 रिलीज़ हो गया है. वर्शन 1.5.0-beta03 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • OpenOnPhoneDialog अब TalkBack की मदद से, सिर्फ़ मैसेज के टेक्स्ट के बारे में बोलकर जानकारी देती है. साथ ही, आइकॉन के बारे में नहीं बताती. icon() से iconContentDescription और contentDescription पैरामीटर को हटाने के लिए, OpenOnPhoneDialogDefaults को अपडेट किया गया है. साथ ही, ConfirmationDialogDefaults में अब SuccessIcon और FailureIcon कॉम्पोज़ेबल पर मॉडिफ़ायर पैरामीटर हैं. (Id2ae2)

गड़बड़ियां ठीक की गईं

  • SurfaceTransformation पैरामीटर के इफ़ेक्ट को लागू करने के क्रम में बदलाव किया गया है. पहले, Wear Material3 कॉम्पोनेंट पर लागू किए गए ट्रांसफ़ॉर्मेशन इस तरह किए जाते थे: बैकग्राउंड पेंटर, कंटेनर ट्रांसफ़ॉर्मेशन, कॉन्टेंट ट्रांसफ़ॉर्मेशन. अब, पहले दो को उलट दिया गया है और हम उनके बीच पास किए गए किसी भी मॉडिफ़ायर को लागू करते हैं, ताकि कंटेनर ट्रांसफ़ॉर्मेशन का असर पड़े. इससे, ट्रांसफ़ॉर्मेशन पैरामीटर का इस्तेमाल करके, टीएलसी में एलिमेंट के साथ प्लेसहोल्डर शिमर इफ़ेक्ट का इस्तेमाल करने जैसे मामलों को ठीक किया जाता है. (I786cf)
  • RevealState.Saver को इसलिए जोड़ा गया था, ताकि गतिविधि या प्रोसेस को फिर से शुरू करने पर, SwipeToReveal की स्थिति को वापस लाया जा सके. rememberRevealState फ़ंक्शन अब डिफ़ॉल्ट रूप से इस सेवर का इस्तेमाल करता है. (Ie0ecb)
  • SwipeToReveal प्राइमरी और सेकंडरी ऐक्शन बटन डिफ़ॉल्ट रूप से ButtonDefault.Height पर सेट होने चाहिए. इससे, बटन की ऊंचाई में होने वाली गड़बड़ी ठीक हो गई है. (Ibfba1)
  • SwipeToReveal को बदला गया, ताकि दाईं ओर स्वाइप करने पर, इंटरैक्ट किए गए आखिरी कॉम्पोनेंट को रीसेट किया जा सके. (Ia8450)
  • SwipeToReveal को Revealing स्टेटस पर सेट करने के लिए बदला गया था, जब स्वाइप की आखिरी पोज़िशन, 'दिखाया जा रहा है' और 'दिखाया जा चुका है' ऐंकर के बीच में हो और 'दिखाया जा रहा है' ऐंकर के करीब हो. (If4458)
  • अब ButtonGroup का कॉन्टेंट, आरटीएल लेआउट (Ib378d) में सही तरीके से उलटा हो गया है
  • AnimatedText अब दाईं से बाईं ओर लिखे जाने वाले टेक्स्ट के लिए काम करता है (I4533c)
  • TransformingLazyColumn अब सबसे नीचे मौजूद आइटम हटाने पर, आइटम का साइज़ सही तरीके से बदल जाता है (Idacab)
  • TransformingLazyColumn अब सिर्फ़ एक मेज़रिंग पास करता है. इससे फ़्रेम टाइम कम हो जाता है और परफ़ॉर्मेंस बेहतर होती है. (I501a1)

वर्शन 1.5.0-beta02

20 मई, 2025

androidx.wear.compose:compose-*:1.5.0-beta02 रिलीज़ हो गया है. वर्शन 1.5.0-beta02 में ये कमिट शामिल हैं.

गड़बड़ियां ठीक की गईं

  • फ़ाउंडेशन, मटीरियल, और material3 लाइब्रेरी के लिए अपडेट की गई बेसलाइन प्रोफ़ाइलें. (I53f06)
  • TransformingLazyColumn में एक गड़बड़ी को ठीक किया गया है. इसमें, सबसे नीचे मौजूद आइटम को हटाने पर, आइटम का साइज़ बदल जाता था. (Idacab)
  • TransformingLazyColumn में एक गड़बड़ी को ठीक किया गया है. यह गड़बड़ी तब होती है, जब सूची सबसे ऊपर या सबसे नीचे रुक जाती है. (I49d00)
  • TalkBack में OpenOnPhoneDialog, आइकॉन के कॉन्टेंट के ब्यौरे के बजाय, घुमावदार टेक्स्ट को पढ़कर सुनाना चाहिए. (I4efe8)
  • SwipeToReveal में एक गड़बड़ी को ठीक किया गया है. इसकी वजह से, hasPartiallyRevealedState को 'गलत है' पर सेट करने पर, RevealState.currentValue में गलत ऐंकर की जानकारी दिखती थी. (I9c7cf)
  • SwipeToReveal अब डिफ़ॉल्ट रूप से, पहले जैसा करने के बटन ButtonDefaults.Height हैं. (I1f6c8)
  • BasicSwipeToDismissBox स्क्रीम बनाने के लिए कैनवस का इस्तेमाल न करके, परफ़ॉर्मेंस को बेहतर बनाया गया है. (I68f2c)
  • स्लाइडर में सुलभता से जुड़ी एक गड़बड़ी को ठीक किया गया. इसमें, अपडेट के बाद, एलान किया गया प्रतिशत वैल्यू से मेल नहीं खा रहा था (I91146)
  • placeholderShimmer लागू करने से जुड़ी गड़बड़ी को ठीक किया गया. (Iee39b
  • ScrollProgress कैलकुलेशन को 30% तक ऑप्टिमाइज़ करके, TransformingLazyColumn की परफ़ॉर्मेंस को बेहतर बनाया गया है. (I4c4cb)

वर्शन 1.5.0-beta01

7 मई, 2025

androidx.wear.compose:compose-*:1.5.0-beta01 रिलीज़ हो गया है. वर्शन 1.5.0-beta01 में ये कमिट शामिल हैं.

Wear OS के लिए Compose के 1.5.0-beta01 रिलीज़ से पता चलता है कि लाइब्रेरी के इस रिलीज़ में सभी सुविधाएं मौजूद हैं और एपीआई लॉक है. हालांकि, जिन सुविधाओं को प्रयोग के तौर पर मार्क किया गया है वे लॉक नहीं हैं.

Wear Compose 1.5.0-beta01 में, Wear Compose Material3 लाइब्रेरी शामिल है. यह Material 3 Expressive नाम के नए यूज़र इंटरफ़ेस (यूआई) डिज़ाइन सिस्टम के साथ काम करती है. हमारा सुझाव है कि ऐप्लिकेशन में नए विज़ुअल डिज़ाइन का इस्तेमाल करने के लिए, Material से Material3 पर अपग्रेड करें. साथ ही, इन नए कॉम्पोनेंट का फ़ायदा पाएं:

  • MaterialTheme, ताकि आप अपने डिज़ाइन में ज़्यादा विविधता और बेहतरीन नतीजे पा सकें.
  • डाइनैमिक कलर थीम, जो स्मार्टवॉच की होम स्क्रीन के रंगों से मैच करने के लिए, आपके ऐप्लिकेशन के लिए अपने-आप कलर स्कीम जनरेट करती है.
  • नए कॉम्पोनेंट, डिफ़ॉल्ट रूप से बड़ी स्क्रीन के साइज़ के हिसाब से अपने-आप अडजस्ट हो जाते हैं
  • आकार में बदलाव - IconButton, TextButton, IconToggleButton, और TextToggleButton जैसे गोल बटन कॉम्पोनेंट में ऐसे वैरिएशन काम करते हैं जो दबाए जाने या चुने जाने पर ऐनिमेशन दिखाते हैं.
  • EdgeButton - स्क्रीन के सबसे नीचे के हिस्से के लिए, खास आकार में बनाया गया नया बटन.
  • स्कैफ़ोल्ड - स्क्रीन का स्ट्रक्चर तैयार करने और ScrollIndicator और TimeText ऐनिमेशन को कोऑर्डिनेट करने के लिए, AppScaffold और ScreenScaffold का इस्तेमाल किया जा सकता है.
  • बटन - स्टेडियम के आकार वाले कई बटन, एक स्लॉट वाले कंटेनर के साथ काम करते हैं. साथ ही, आइकॉन और लेबल वाले बटन के लिए, कई स्लॉट वाले वैरिएशन भी काम करते हैं. CheckboxButton और SwitchButton, टॉगल बटन की ज़रूरत होने पर उपलब्ध होते हैं. वहीं, RadioButton, चुनने के लिए उपलब्ध बटन है. टॉगल और चुनने के लिए बटन के 'स्प्लिट' वैरिएशन भी उपलब्ध होते हैं.
  • ButtonGroup - एक पंक्ति में बटन का एक ग्रुप लागू करता है, जो छूने पर आकार में बदल जाता है.
  • AlertDialog वैरिएशन में, 'ठीक है'/'रद्द करें' बटन या EdgeButton का इस्तेमाल किया जा सकता है.
  • ConfirmationDialog, टाइम आउट के साथ मैसेज दिखाने के लिए उपलब्ध है. यह मैसेज, प्रोसेस पूरी होने, प्रोसेस पूरी न होने, और फ़ोन पर खोलने के लिए अलग-अलग ऐनिमेशन के साथ दिखता है.
  • पिकर - TimePicker और DatePicker के वैरिएशन के साथ-साथ, पिकर और PickerGroup कॉम्पोनेंट का इस्तेमाल करके, अपनी पिकर स्क्रीन बनाई जा सकती हैं.
  • ProgressIndicators - इसमें सर्कुलर और लीनियर प्रोग्रेस इंडिकेटर का इस्तेमाल किया जा सकता है. CircularProgressIndicator में सेगमेंट किए गए और अनिश्चित वैरिएशन होते हैं.
  • कार्ड - कार्ड के कई वैरिएंट उपलब्ध हैं. इनमें TitleCard भी शामिल है, जो टाइटल, समय, सबटाइटल या कॉन्टेंट स्लॉट वाले कार्ड के लिए खास लेआउट उपलब्ध कराता है. कार्ड में दी गई जानकारी को बेहतर तरीके से समझाने के लिए, TitleCard को इमेज बैकग्राउंड भी दिया जा सकता है.
  • पेजर - HorizontalPagerScaffold, VerticalPagerScaffold, और AnimatedPage कॉम्पोनेंट, HorizontalPageIndicator और VerticalPagerIndicator ऐनिमेशन को कंट्रोल करते हैं. HorizontalPager और VerticalPager, Wear Compose फ़ाउंडेशन लाइब्रेरी में रिलीज़ किए गए हैं.
  • प्लेसहोल्डर - किसी कॉम्पोनेंट के ऊपर स्केलेटन आकार बनाता है. ऐसा तब होता है, जब कोई प्रोविज़नल कॉन्टेंट उपलब्ध न हो.
  • स्लाइडर और स्टेपर - स्लाइडर और स्टेपर, दोनों की मदद से उपयोगकर्ता किसी वैल्यू की रेंज में से कोई वैल्यू चुन सकते हैं. स्लाइडर ज़्यादा कॉम्पैक्ट होते हैं और उन्हें सेगमेंट में बांटा जा सकता है. वहीं, स्टेपर एक फ़ुल स्क्रीन कॉम्पोनेंट होता है, जिसे आम तौर पर StepperLevelIndicator के साथ जोड़ा जाता है.
  • SwipeToReveal - इसका इस्तेमाल, किसी कॉम्पोज़ेबल को दाईं से बाईं ओर स्वाइप करने पर, उसमें अतिरिक्त कार्रवाइयां जोड़ने के लिए किया जाता है.

इसके अलावा, Wear Compose Foundation 1.5.0-beta01 में ये नए कॉम्पोनेंट शामिल हैं:

  • TransformingLazyColumn - वर्टिकल स्क्रोलिंग वाली ऐसी सूची जो धीरे-धीरे लोड होती है और स्केलिंग और मॉर्फ़ करने वाले ऐनिमेशन के साथ काम करती है
  • हैरारकी वाले फ़ोकस ग्रुप - इनका इस्तेमाल, किसी ऐप्लिकेशन में कॉम्पोज़ेबल के लिए एनोटेट करने के लिए किया जाता है. इससे, कॉम्पोज़िशन के चालू हिस्से को ट्रैक करने और फ़ोकस को मैनेज करने में मदद मिलती है.
  • पेजर - HorizontalPager और VerticalPager कॉम्पोनेंट, Compose फ़ाउंडेशन कॉम्पोनेंट पर बनाए गए हैं. इनमें Wear के लिए खास सुविधाएं जोड़ी गई हैं, ताकि परफ़ॉर्मेंस को बेहतर बनाया जा सके और Wear OS के दिशा-निर्देशों का पालन किया जा सके.

एपीआई में हुए बदलाव

  • हैरारकी वाले फ़ोकस एपीआई को अपडेट किया गया - Modifier.hierarchicalFocus का नाम बदलकर Modifier.hierarchicalFocusGroup कर दिया गया और कॉलबैक पैरामीटर हटा दिया गया; FocusRequester पैरामीटर की मदद से Modifier.hierarchicalFocusRequester के ओवरलोड को हटा दिया गया; एक नया CompositionLocal, LocalScreenIsActive बनाया गया, ताकि कॉम्पोनेंट यह बता सकें और जांच सकें कि कौनसी स्क्रीन चालू है. (I5ff7c).
  • Wear Compose Material और Wear Compose Material3 में SwipeToReveal एपीआई के पक्ष में, Wear Compose फ़ाउंडेशन से SwipeToReveal को हटा दिया गया है. एपीआई का इस्तेमाल जारी रखने के लिए, कृपया Wear Foundation SwipeToReveal इंपोर्ट को Wear Compose Material/ Wear Compose Material3 इंपोर्ट से बदलें. (Ia147d).
  • Wear Compose Material3 SwipeToReveal की Foundation पर निर्भरताएं, material3 पैकेज में ले जाई गई हैं. जैसे, RevealValue, RevealDirection, RevealActionType, RevealState, rememberRevealState. डेवलपर को इन क्लास और फ़ंक्शन के इंपोर्ट को androidx.wear.compose.foundation से androidx.wear.compose.material3 में बदलना चाहिए. (I640e6).
  • Wear Compose Material3 SwipeToReveal एपीआई को इस तरह अपडेट किया गया है: SwipeToReveal कॉम्पोज़ेबल में primaryAction, onFullSwipe, secondaryAction, undoPrimaryAction, undoSecondaryAction, और hasPartiallyRevealedState पैरामीटर जोड़े गए हैं; RevealState से positionalThreshold और animationSpec को पसंद के मुताबिक बनाने की सुविधा हटा दी गई है; RevealState से lastActionType, revealThreshold, और चौड़ाई हटा दी गई है; RevealState कन्स्ट्रक्टर को बदलकर, ऐंकर के बजाय RevealDirection को स्वीकार करने वाला बनाया गया है; createRevealAnchors, ऐंकर, और bidirectionalAnchors फ़ंक्शन हटा दिए गए हैं; SwipeToRevealScope फ़ंक्शन primaryAction, secondaryAction, undoPrimaryAction, और undoSecondaryAction का नाम बदलकर PrimaryActionButton, SecondaryActionButton, UndoActionButton कर दिया गया है और इन्हें कॉम्पोज़ेबल फ़ंक्शन में बदल दिया गया है; RevealActionType को इंटरनल के तौर पर मार्क किया गया है. (I885d0).
  • SwipeToReveal एपीआई को यहां बताए गए तरीके से अपडेट किया गया है: onFullSwipe का नाम बदलकर onSwipePrimaryAction कर दिया गया है; hasPartiallyRevealedState पैरामीटर के इस्तेमाल को दिखाने के लिए, SwipeToRevealNonAnchoredSample का नाम बदल दिया गया है; actionButtonHeight को हटा दिया गया है, क्योंकि बटन की डिफ़ॉल्ट ऊंचाई डिफ़ॉल्ट होती है और ज़्यादा ऊंचाई को मॉडिफ़ायर का इस्तेमाल करके सेट किया जा सकता है; SwipeToRevealDefaults से SmallActionButtonHeight को हटा दिया गया है; RevealValue और RevealDirection कन्स्ट्रक्टर में वैल्यू पैरामीटर को निजी बनाया गया है. (I465ce).

गड़बड़ियां ठीक की गईं

  • ScreenScaffold के EdgeButton को मैनेज करने की सुविधा को ठीक किया गया है, ताकि TransformingLazyColumn आइटम हटाने के बाद, EdgeButton को ऐनिमेशन के साथ अपनी जगह पर लाया जा सके. (I6d366).
  • Compose लाइब्रेरी पर Wear Compose की डिपेंडेंसी को 1.8.0 वर्शन में अपडेट किया गया. (I2ef3f).
  • CircularProgressIndicator के मोशन को अपडेट किया गया है, ताकि यह कुछ समय के लिए पीछे न जाए. (Ieddb1).
  • SwipeDismissableNavHost गड़बड़ी को ठीक किया गया - स्वाइप करके पीछे जाने के बाद फ़ोकस सही तरीके से स्विच नहीं हो रहा था. इस वजह से, रोटरी इनपुट काम नहीं कर रहा था. यह समस्या एपीआई 36 और उसके बाद के वर्शन में थी, जो अनुमानित बैक का इस्तेमाल करता है. (Ieddb1).
  • हैरारकी वाले फ़ोकस एपीआई (Idf2ff) के लिए, दस्तावेज़ में बदलाव किया गया.
  • बटन और कार्ड के दस्तावेज़ को अपडेट किया गया, ताकि यह बताया जा सके कि containerPainter और disabledContainerPainter, containerColor और disabledContainerColor को कैसे बदलते हैं (I4a453).
  • पिछली रिलीज़ में किए गए उस बदलाव को वापस ले लिया गया है जिसकी वजह से BroadcastReceiver को वर्कर्स थ्रेड में ले जाया गया था. इस बदलाव की वजह से, नेविगेशन के दौरान अपनी थ्रेड मैनेज करने वाले ऐप्लिकेशन में समस्याएं आ रही थीं.TimeText (I34d02).
  • ज़रूरत न होने पर, 'याद रखें' कॉल को हटाने के लिए, पिकर के सैंपल अपडेट किए गए हैं. इसके बजाय, नए contentDescription लैम्ब्डा फ़ंक्शन को याद रखने के लिए, पिकर में rememberUpdatedState का इस्तेमाल करें. (Icb5b1).
  • TimePicker और DatePicker में टेक्स्ट स्टाइल अपडेट किए गए, ताकि फ़ॉन्ट में बदलाव करने पर टेक्स्ट काटकर न दिखे. (I26194).
  • ListHeader और ListSubHeader, अब टेक्स्ट अलाइनमेंट को डिफ़ॉल्ट रूप से बीच में अलाइन और शुरू में अलाइन करते हैं. (I78339).
  • कस्टम सुलभता कार्रवाइयों का एलान करने के लिए, सैंपल और डेमो दिखाने के लिए, फ़ाउंडेशन और मटीरियल स्वाइप करने की सुविधा को अपडेट किया गया है. कस्टम कार्रवाइयों को कॉन्टेंट पर सेमेटिक्स के तौर पर जोड़ा जाना चाहिए, न कि SwipeToReveal कॉम्पोज़ेबल पर. (Ie92a3).
  • EdgeButton कॉन्टेंट के साइज़ के हिसाब से, डिफ़ॉल्ट MaxLines सेट को अपडेट किया गया है - अब यह एक्स्ट्रा स्मॉल के लिए 1, स्मॉल और मीडियम के लिए 2, और लार्ज के लिए 3 है. (Ie35f6).
  • LocalReduceMotion को आसान बनाया गया है, ताकि परफ़ॉर्मेंस को बेहतर बनाने के लिए, ऑब्ज़र्वर को सिर्फ़ एक बार रजिस्टर करना पड़े. (Ib1979).
  • परफ़ॉर्मेंस को बेहतर बनाने के लिए, ScrollIndicator में फिर से ड्रॉ करने की संख्या को कम किया गया. (Ia7a67).
  • TransformingLazyColumn में एक गड़बड़ी को ठीक किया गया है. इसमें, EdgeButton की पूरी ऊंचाई होने पर, सूची में सबसे ऊपर दिखने वाले आइटम का स्केल सही से नहीं होता था. (I30580).

वर्शन 1.5.0-alpha14

23 अप्रैल, 2025

androidx.wear.compose:compose-*:1.5.0-alpha14 रिलीज़ हो गया है. वर्शन 1.5.0-alpha14 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • Foundation SwipeToReveal पर मौजूद Material SwipeToReveal की सभी डिपेंडेंसी, Material पैकेज में ले जाई गई हैं. जैसे, RevealValue, RevealDirection, RevealActionType, RevealState, rememberRevealState. डेवलपर को इन क्लास और फ़ंक्शन के इंपोर्ट को androidx.wear.compose.foundation से androidx.wear.compose.material में बदलना चाहिए. (Ib7cb8)
  • HierarchicalFocusCoordinator के एपीआई को अपडेट किया गया, ताकि वे कंपोज करने लायक के बजाय, बदलाव करने वाले बन सकें.
  • माइग्रेशन से जुड़े नोट:
    • HierarchicalFocusCoordinator(function, content) को content या उसके अंदर मौजूद कॉम्पोज़ेबल में Modifier.hierarchicalFocus(function()) जोड़कर बदला जा सकता है.
    • ActiveFocusListener { if (it) focusRequester.requestFocus() } को Modifier.hierarchicalFocusRequester(focusRequester) जोड़कर बदला जा सकता है
    • ActiveFocusListener के अन्य कम इस्तेमाल होने वाले उदाहरणों में, Modifier.hierarchicalFocus पर नए पैरामीटर का इस्तेमाल किया जा सकता है
    • focusRequester(rememberActiveFocusRequester()) को hierarchicalFocusRequester() से बदला जा सकता है
    • val focusRequester = rememberActiveFocusRequester() को remember { FocusRequester() } से बदला जा सकता है और Modifier.hierarchicalFocusRequester(focusRequester) जोड़ा जा सकता है. (Ie319a)

गड़बड़ियां ठीक की गईं

  • स्वाइप जेस्चर की स्पीड का थ्रेशोल्ड बढ़ा दिया गया है. इस थ्रेशोल्ड से ज़्यादा स्पीड होने पर ही, इन कॉम्पोनेंट की स्थिति में बदलाव होता है: SwipeToReveal, BasicSwipeToDismissBox, और SwipeDismissableNavHost (SwipeDismissableNavHost के लिए सिर्फ़ एपीआई 35 और उससे पहले के वर्शन के लिए). (If47bf)
  • TransformingLazyColumn में नए आइटम जोड़ने पर, ऐनिमेशन से जुड़ी समस्या को ठीक किया गया. (I589b2)

वर्शन 1.5.0-alpha13

9 अप्रैल, 2025

androidx.wear.compose:compose-*:1.5.0-alpha13 रिलीज़ हो गया है. वर्शन 1.5.0-alpha13 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • Kotlin 2.0 के साथ रिलीज़ किए गए प्रोजेक्ट के लिए, KGP 2.0.0 या इसके बाद के वर्शन (Idb6b5) का इस्तेमाल करना ज़रूरी है
  • PagerState (I4de8b) में targetPage प्रॉपर्टी जोड़ी गई

गड़बड़ियां ठीक की गईं

  • अनुमानित बैक ट्रैक के दौरान, ग़ैर-ज़रूरी रीकंपोज़िशन को रोकना. (Iecd6d)
  • मौजूदा वैल्यू दिखाने के लिए, ScrollInfoProvider की isScrollable प्रॉपर्टी को ठीक किया गया. (Icbfb8)

वर्शन 1.5.0-alpha12

26 मार्च, 2025

androidx.wear.compose:compose-*:1.5.0-alpha12 रिलीज़ हो गया है. वर्शन 1.5.0-alpha12 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • gestureInclusion के डिफ़ॉल्ट तौर पर लागू होने की सुविधा को बेहतर बनाएं, ताकि सिर्फ़ तब जेस्चर को अनदेखा किया जा सके, जब कॉम्पोनेंट की स्थिति 'कवर किया गया' हो.SwipeToReveal (I7e3d6)
  • SwipeToReveal के लिए, bidirectionalGestureInclusion को फ़ंक्शन के बजाय वैल्यू के तौर पर सेट किया गया. साथ ही, gestureInclusion में edgeZoneFraction पैरामीटर में @FloatRange जोड़ा गया. (Ica7c3)

गड़बड़ियां ठीक की गईं

  • क्लास के बजाय ऑब्जेक्ट दिखाने के लिए, SwipeToReveal bidirectionalGestureInclusion को बदलें. (I29597)
  • RoboElectric के तहत टेस्ट चलाते समय, हैप्टिक्स के इस्तेमाल को बंद किया गया. (I58bd1)
  • कॉन्टेंट और ऐक्शन बटन के बीच SwipeToReveal पैडिंग अपडेट करें. साथ ही, ऐक्शन बटन के आइकॉन और टेक्स्ट के बीच की पैडिंग भी अपडेट करें. (Ic46cb)

वर्शन 1.5.0-alpha11

12 मार्च, 2025

androidx.wear.compose:compose-*:1.5.0-alpha11 रिलीज़ हो गया है. वर्शन 1.5.0-alpha11 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • PagerState को अपडेट किया गया. इसमें, Compose फ़ाउंडेशन PagerState को बेस क्लास के तौर पर हटाकर, currentPage, currentPageOffsetFraction, और pageCount प्रॉपर्टी जोड़ी गई हैं. GestureInclusion इंटरफ़ेस को अपडेट किया गया. साथ ही, पेमेंट के तरीके का नाम बदलकर ignoreGestureStart कर दिया गया. (I4ae07)
  • SwipeToDismissBoxState का ऑफ़सेट पाने के लिए, सुझाए गए तरीके के तौर पर requireOffset को SwipeToDismissBoxState में जोड़ें. (I21042)
  • CurvedModifier.semantics जोड़ा गया. शुरुआत में, यह कॉन्टेंट की जानकारी और ट्रैवलेशन इंडेक्स (I0b093) के साथ काम करता है
  • हमने CurvedModifier.clearAndSetSemantics जोड़ा है, ताकि कर्व्ड सेमेंटेक्स को बंद किया जा सके. CurvedText, कॉन्टेंट के ब्यौरे को डिफ़ॉल्ट रूप से टेक्स्ट में दिखाता रहता है. हालांकि, timeTextCurvedText और timeTextSeparator अब अपने कॉन्टेंट का एलान नहीं करते. (I4b568)
  • HorizontalPager में स्वाइप जेस्चर को डिफ़ॉल्ट रूप से मैनेज करने की सुविधा का नाम बदलकर PagerDefaults.gestureInclusion कर दिया गया है. अब डिफ़ॉल्ट रूप से, पहले पेज के बाएं किनारे से शुरू होने वाले स्वाइप जेस्चर को ही अनदेखा किया जाएगा. ऐसा सिर्फ़ तब होगा, जब TalkBack बंद हो. अन्य मामलों में, पेजर स्वाइप जेस्चर को अनदेखा नहीं करेगा. इसलिए, ये स्वाइप-टू-डिसमिज़ हैंडलर के लिए उपलब्ध नहीं होंगे. (Iee486)
  • rotaryScrollable एपीआई के लिए, रोटरी ओवरस्क्रोल जोड़ा गया. rotaryScrollable फ़्लिंग व्यवहार में, ओवरस्क्रोल और नेस्ट किया गया स्क्रोल जोड़ा गया. इस बदलाव से, टच स्क्रोल और रोटरी स्क्रोल के बीच, ओवरस्क्रोल और नेस्ट किए गए स्क्रोल की सुविधा एक जैसी हो जाएगी. (I71926)
  • SwipeToReveal में, किनारे पर स्वाइप करने की सुविधा जोड़ी गई है. Foundation SwipeToReveal के डिफ़ॉल्ट व्यवहार के मुताबिक, अब किनारे से जेस्चर शुरू होने पर स्वाइप करने की अनुमति नहीं है. Material3 SwipeToReveal के डिफ़ॉल्ट व्यवहार के मुताबिक, अब जब जेस्चर किनारे से शुरू होता है, तो स्वाइप करने की अनुमति नहीं दी जाती. ऐसा तब होता है, जब SwipeDirection को सिंगल डायरेक्शन पर सेट किया गया हो. (I32ef0)
  • TLC अब पहले और आखिरी आइटम को बीच में रखने के बजाय, डिफ़ॉल्ट रूप से खाली contentPadding का इस्तेमाल करता है. (I77ab7)

गड़बड़ियां ठीक की गईं

  • Wear Compose लाइब्रेरी को Kotlin 2.0 कंपाइलर पर अपडेट कर दिया गया है. (I2de79)
  • फ़ाउंडेशन पर मौजूद, घुमावदार LetterSpacing सैंपल को ठीक किया गया. (Iebf7c)

वर्शन 1.5.0-alpha10

26 फ़रवरी, 2025

androidx.wear.compose:compose-*:1.5.0-alpha10 रिलीज़ हो गया है. वर्शन 1.5.0-alpha10 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • SwipeToRevealDefaults को सार्वजनिक करें. (I0c34c)
  • हमने swipeToDismissEdgeZoneFraction पैरामीटर को HorizontalPager से बदल दिया है. इसके बजाय, एक नया पैरामीटर gestureInclusion जोड़ा गया है. इसका इस्तेमाल, 'खारिज करने के लिए स्वाइप करें' सुविधा को चालू करने के लिए किया जा सकता है. gestureInclusion, GestureInclusion का एक इंस्टेंस लेता है, जो यह तय करता है कि अगले स्क्रोल इवेंट को जारी रखना है या नहीं. किसी जेस्चर की अनुमति देने का मतलब है कि पेजर उसे इस्तेमाल करेगा. ऐसा न करने पर, उसे कहीं और मैनेज किया जाएगा. जैसे, 'स्‍वाइप करके हटाएं' हैंडलर. पेजर में पहले पेज के सबसे बाईं ओर, जेस्चर का इस्तेमाल करने की अनुमति नहीं है. इसलिए, इस हिस्से में स्वाइप करके सूचना को खारिज किया जा सकता है. अन्य सभी पेजों पर, पेजर को सभी जेस्चर इस्तेमाल करने की अनुमति होगी. इसका मतलब है कि उन पेजों पर, 'खारिज करने के लिए स्वाइप करें' सुविधा को ट्रिगर नहीं किया जा सकता. सभी पेजों पर, 'स्‍वाइप करके खारिज करें' सुविधा को चालू करने के लिए, बस एक कस्टम GestureInclusion इंस्टेंस (PagerDefaults.disableLeftEdgeOnFirstPage देखें) दें, जो मौजूदा पेज को अनदेखा करता है. यहां एक और अहम बदलाव किया गया है. अब पेजर कॉम्पोनेंट डिफ़ॉल्ट रूप से फ़ुल स्क्रीन नहीं होगा. इसके लिए, Modifier.fillMaxSize() जोड़ें. (I9d3aa)
  • हमने स्वाइप करके दिखाने वाले एपीआई(If5999) में, createAnchors का नाम बदलकर createRevealAnchors कर दिया है
  • हमने स्वाइप करके दिखाने वाले एपीआई से RevealScope को हटा दिया है. (Ie4ad5)
  • हमने स्वाइप करके दिखाने वाले एपीआई में, RevealValue से 'दिखाया जा रहा है' और 'दिखाया गया है' को हटा दिया है. (I8dbc5)
  • हमने स्वाइप करके दिखाने वाले एपीआई में, SwipeDirection का नाम बदलकर RevealDirection कर दिया है. (I7472f)
  • हमने SwipeToReveal के rememberRevealState फ़ंक्शन के positionalThreshold पैरामीटर के सिग्नेचर में बदलाव किया है. (I29c0a)
  • हमने ScalingLazyColumn, TransformingLazyColumn, और ScreenScaffold में नया overscrollEffect पैरामीटर जोड़ा है. (I0cee8)
  • PagerDefaults#snapFlingBehaviour का इस्तेमाल करते समय, pagerSnapDistance पैरामीटर को Int पैरामीटर maxFlingPages से बदल दिया गया है. इसका इस्तेमाल, पेजर को फ़्लिंग करने के लिए ज़्यादा से ज़्यादा पेजों की संख्या तय करने के लिए किया जा सकता है. (I8cfc0)
  • Wear Pager में अब Compose Foundation PagerScope का इस्तेमाल करने के बजाय, अपना PagerScope है. (I9195b)
  • हमने घुमावदार टेक्स्ट (I1c936) पर lineHeight के इस्तेमाल की सुविधा जोड़ी है
  • हमने TransformingLazyColumnState और rememberTransformingLazyColumnState में initialAnchorItemIndex और initialAnchorItemOffset जोड़े हैं, ताकि TransformationLazyColumn में स्क्रोल की शुरुआती पोज़िशन तय की जा सके. (I0a0d5)
  • runWithTimingDisabled के बजाय runWithMeasurementDisabled का इस्तेमाल करें. इससे, इसकी परफ़ॉर्मेंस के बारे में ज़्यादा जानकारी मिलती है - सभी मेट्रिक रोक दी जाती हैं. इसके अलावा, MicrobenchmarkScope सुपरक्लास को एक्सपोज़ करें, क्योंकि runWithMeasurementDisabled फ़ंक्शन को फिर से एलान नहीं किया जा सकता, क्योंकि यह इनलाइन है. (I9e23b, b/389149423, b/149979716)
  • हमने एपीआई में TransformingLazyColumnItemScrollProgress.Unspecified जोड़ा है, ताकि TransformingLazyColumnItemScrollProgress पर बॉक्सिंग न हो. (I0835d)

गड़बड़ियां ठीक की गईं

  • CurvedTextStyle (Id45e3) के लिए Kdoc को बेहतर बनाना
  • हमने SwipeableV2 (SwipeToReveal लागू करने का एक हिस्सा) को सार्वजनिक के बजाय इंटरनल कर दिया है. हालांकि, इसे लाइब्रेरी ग्रुप तक सीमित कर दिया गया है. (Idbb94)
  • हमने HierarchicalFocusCoordinator (I1ce54, b/395548918) में टेस्ट जोड़े हैं
  • हमने wear compose फ़ाउंडेशन के सैंपल में SwipeToReveal में सुधार किए हैं. (I5f307)
  • सुलभता के लिए, TransformingLazyColumn में verticalScrollAxisRange के लिए स्क्रोल ऐक्सिस का सेमैंटिक डेटा ठीक करें (I68123)
  • Wear4+ पर रोटरी हैप्टिक्स की परफ़ॉर्मेंस को बेहतर बनाने के लिए, बैकग्राउंड में चल रही ग़ैर-ज़रूरी थ्रेड हटाएं (I39cfe)
  • SwipeDismissableNavHost को बदलकर, सिर्फ़ एपीआई 36 और उसके बाद के वर्शन में PredictiveBackNavHost का इस्तेमाल करें. (I59bed)
  • हमने 'कम गति' सेटिंग को ऐक्सेस करते समय, क्रैश होने से बचाने के लिए एक सुरक्षा जोड़ी है. (I01e2c)
  • हमने TransformingLazyColumn के लिए, कॉन्टेंट को पहले से लोड करने की सुविधा लागू की है, ताकि ऐप्लिकेशन में रुकावट (Icca88) कम हो

वर्शन 1.5.0-alpha09

29 जनवरी, 2025

androidx.wear.compose:compose-*:1.5.0-alpha09 रिलीज़ हो गया है. वर्शन 1.5.0-alpha09 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • CurvedTextStyle में, हमने अक्षरों के बीच की दूरी को घड़ी की सुई के घूमने की दिशा में और घड़ी की सुई के घूमने की दिशा के उलट में बांटा है. ऐसा इसलिए ज़रूरी है, क्योंकि क्लॉकवाइज़ अक्षर बेसलाइन से बाहर की ओर फैलते हैं, जबकि ऐंटिवायरस अक्षर बेसलाइन से अंदर की ओर फैलते हैं. इसलिए, अक्षरों के बीच ज़्यादा स्पेस की ज़रूरत होती है (I4b848)
  • CompositionLocal LocalReduceMotion को आसान बनाया गया है, ताकि यह ReduceMotion ऑब्जेक्ट के बजाय बूलियन दिखा सके. ReduceMotion इंटरफ़ेस का इस्तेमाल अब नहीं किया जा सकता. LocalReduceMotion.current.enabled() जैसे पिछले इनवोकेशन को LocalReduceMotion.current (I4937f) से बदला जा सकता है
  • PagerDefaults में, snapAnimationSpec का नाम बदलकर SnapAnimationSpec कर दिया गया है. (I20c9a)

वर्शन 1.5.0-alpha08

15 जनवरी, 2025

androidx.wear.compose:compose-*:1.5.0-alpha08 रिलीज़ हो गया है. वर्शन 1.5.0-alpha08 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने Wear Compose की सभी लाइब्रेरी को 'एपीआई का साफ़ तौर पर इस्तेमाल' मोड पर अपडेट कर दिया है. (Iebf9f)
  • हमने पेजर के स्नैप ऐनिमेशन पैरामीटर को PagerDefaults का हिस्सा बनाया है. (Ifff64)
  • हमने SwipeToDismissBoxState में ऑफ़सेट पैरामीटर जोड़ा है. (I586bd)

गड़बड़ियां ठीक की गईं

  • रोटरी प्लैटफ़ॉर्म हैप्टिक्स को अब V (Idb03e) के बाद के Wear OS वर्शन के लिए कहा जाता है

वर्शन 1.5.0-alpha07

11 दिसंबर, 2024

androidx.wear.compose:compose-*:1.5.0-alpha07 रिलीज़ हो गया है. वर्शन 1.5.0-alpha07 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • TransformingLazyColumnState अब ऐंकर आइटम इंडेक्स के आधार पर, स्क्रोल की मौजूदा प्रोग्रेस को देखने का तरीका उपलब्ध कराता है. (I72b01)
  • हमने आइटम जोड़ने, हटाने, और उन्हें एक से दूसरी जगह ले जाने पर, TransformingLazyColumn में ऐनिमेशन जोड़े हैं. हालांकि, ऐसा सिर्फ़ तब होगा, जब उन आइटम में नया Modifier.animateItem हो. (Iecb9c)
  • TransformingLazyColumn अब beforeContentPadding और afterContentPadding की वैल्यू दिखाता है. (Iccd5f)
  • TransformingLazyColumn अब कॉम्पोज़िशन local LocalTransformingLazyColumnItemScope उपलब्ध कराता है. इसकी मदद से, TransformingLazyColumn में कॉम्पोनेंट (जैसे, Material3 में Card और Button) को अपने-आप मॉर्फ़ किया जा सकता है. कॉल करने वाले लोग, नए TransformExclusion रैपर का इस्तेमाल करके, अपने-आप मॉर्फ होने की सुविधा बंद कर सकते हैं. (I1652f)

गड़बड़ियां ठीक की गईं

  • हमने U और उसके बाद के वर्शन पर टारगेट किए गए डिवाइसों के लिए, रोटरी के लिए फ़्लिंग वेलोसिटी की कम से कम और ज़्यादा से ज़्यादा वैल्यू अपडेट की हैं. (I33559)
  • हमने उस क्रैश को ठीक कर दिया है जो TransformingLazyColumn में मौजूद किसी आइटम में कोई कॉम्पोज़ेबल न होने पर होता था (Idb99d)
  • हमने Android Vanilla ice cream पर, रोटरी हैप्टिक्स के लिए ScrollFeedbackProvider की सुविधा जोड़ी है. (Ibc553)
  • हमने SwipeToReveal का इस्तेमाल करते समय, टच स्लोप को बढ़ा दिया है. इससे वर्टिकल स्क्रोल करते समय, गलती से स्वाइप होने की संभावना कम हो जाएगी. (Ic0672)
  • हमने SwipeDismissableNavHost को अपडेट किया है, ताकि एपीआई 35 और उसके बाद के वर्शन में उपलब्ध होने पर, PredictiveBackHandler का इस्तेमाल किया जा सके. ऐसे में, नए ऐनिमेशन लागू हो जाएंगे. (I08c11)

वर्शन 1.5.0-alpha06

13 नवंबर, 2024

androidx.wear.compose:compose-*:1.5.0-alpha06 रिलीज़ हो गया है. वर्शन 1.5.0-alpha06 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने orientation पैरामीटर को हटाकर, PagerState के लिए ScrollInfoProvider को आसान बना दिया है. इस पैरामीटर की अब ज़रूरत नहीं है. TimeText के लिए, हॉरिज़ॉन्टल और वर्टिकल पेजिंग, दोनों में एक जैसा व्यवहार होगा. (I71767)
  • TransformingLazyColumn को पिछली रिलीज़ में पेश किया गया था. हम Wear के LazyColumn उपनाम (जो TransformingLazyColumn पर फ़ॉरवर्ड किए जा रहे थे) को हटा रहे हैं. इसके बजाय, हम TransformingLazyColumn का नया नाम इस्तेमाल करेंगे. हमने TransformingLazyColumnVisibleItemInfo की height प्रॉपर्टी भी हटा दी है - इसके बजाय, कृपया measuredHeight का इस्तेमाल करें. (I0ea1e)
  • हमने PagerDefaults.snapFlingBehavior snapAnimationSpec को Tween से Spring स्पेसिफ़िकेशन में बदल दिया है.(I10d02, b/349781047, b/303807950)
  • हमने LocalReduceMotion CompositionLocal को स्टेबल (Ia6f32) पर अपग्रेड कर दिया है

गड़बड़ियां ठीक की गईं

  • हमने रोटरी में बेहतर सेमेटिक्स के लिए, focusTargetWithSemantics का इस्तेमाल करने के लिए Modifier.rotaryScrollable को अपडेट किया है. (Ief0a0)
  • हमने Compose लाइब्रेरी के लिए, एपीआई डिपेंडेंसी के ज़रूरी वर्शन को 1.7.4 पर अपडेट कर दिया है. (I88b46)
  • हमने क्लिपिंग से जुड़ी गड़बड़ी को ठीक करने के लिए, TransformingLazyColumn में चौड़ाई में बदलाव करने की सुविधा बंद कर दी है. (I3dfb8)
  • हमने एक गड़बड़ी को ठीक कर दिया है, जिसकी वजह से TransformingLazyColumn (Id7668) का इस्तेमाल करके ओवरस्क्रोल करने के बाद आइटम गायब हो जाते थे
  • हमने TransformingLazyColumn के लिए LazyLayoutSemantics जोड़ा है. (Ia8f56)

वर्शन 1.5.0-alpha05

30 अक्टूबर, 2024

androidx.wear.compose:compose-*:1.5.0-alpha05 रिलीज़ हो गया है. वर्शन 1.5.0-alpha05 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने TransformingLazyColumnState पर animateScrollTo के लिए सहायता जोड़ी है, ताकि किसी आइटम पर स्क्रोल करने पर ऐनिमेशन दिख सके. (I4097d)
  • हमने अगले मेज़रमेंट पर स्क्रोल करने को रोकने के लिए, TransformingLazyColumnState पर requestScrollTo जोड़ा है. (I20a5e)
  • हमने TransformingLazyColumn में contentPadding के काम करने की सुविधा जोड़ी है. (I3a69c)

गड़बड़ियां ठीक की गईं

  • हमने TransformingLazyColumn को रेंडर करने से जुड़े उस बग को ठीक कर दिया है जो तब होता है, जब कॉन्टेंट की ऊंचाई, स्क्रीन की ऊंचाई से कम होती है. (I6c3e1)
  • TransformingLazyColumn के लिए ScrollInfoProvder, अब पहले आइटम को सही तरीके से ट्रैक करता है. (I1e4a3)
  • TransformingLazyColumnState अब अपनी स्थिति (anchorItemIndex और anchorItemScrollOffset) सेव करता है. (I3d265)

वर्शन 1.5.0-alpha04

16 अक्टूबर, 2024

androidx.wear.compose:compose-*:1.5.0-alpha04 रिलीज़ हो गया है. वर्शन 1.5.0-alpha04 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने Wear Compose Foundation LazyColumn का नाम बदलकर TransformingLazyColumn कर दिया है, ताकि इसकी तुलना Compose Foundation LazyColumn से आसानी से की जा सके. (I0608b)
  • हॉरिज़ॉन्टल/वर्टिकल पेजर के लिए रोटरी सपोर्ट जोड़ा गया है. इससे उपयोगकर्ता, रोटरी इनपुट डिवाइसों का इस्तेमाल करके पेजर पर नेविगेट कर सकते हैं. (I9770d)
  • हमने नए PagerDefaults को अपडेट किया है, ताकि यह साफ़ तौर पर बताया जा सके कि पेजर डिफ़ॉल्ट रूप से पेज पर स्नैप करेगा. (Iff7d0)
  • TransformingLazyColumnItemScrollProgress अब एक वैल्यू क्लास है, जिससे परफ़ॉर्मेंस बेहतर होनी चाहिए. (Ic399e)
  • TransformingLazyColumn में अब रोटरी मोड की सुविधा पहले से मौजूद है. (I05206)
  • TransformingLazyColumnState अब scrollToItem के साथ काम करता है. (I507b3)
  • SwipeToReveal API से @ExperimentalWearFoundationApi को हटाया गया (I34a66)

वर्शन 1.5.0-alpha03

2 अक्टूबर, 2024

androidx.wear.compose:compose-*:1.5.0-alpha03 रिलीज़ हो गया है. वर्शन 1.5.0-alpha03 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने SwipeToReveal में, दोनों दिशाओं में स्वाइप करने की सुविधा जोड़ी है. ऐसा उन चुनिंदा मामलों के लिए किया गया है जहां मौजूदा स्क्रीन पर, 'हटाएं' के लिए स्वाइप करने की सुविधा काम नहीं करती. . डिफ़ॉल्ट रूप से, सिर्फ़ दाईं से बाईं ओर स्वाइप करने पर, स्वाइप करके जानकारी देखने की सुविधा चालू रहती है. हमारा सुझाव है कि डिफ़ॉल्ट तरीके का इस्तेमाल करें, ताकि 'खारिज करने के लिए स्वाइप करें' सुविधा के साथ कोई गड़बड़ी न हो. (Ifac04)
  • हमने LazyColumnState को अपडेट किया है, ताकि यह canScrollForward और canScrollBackward को बदल सके. अब जब पहला या आखिरी आइटम स्क्रीन के बीच में होगा, तब स्क्रोल करना बंद हो जाएगा. (Ia77d7)
  • हमने नए HorizontalPager और VerticalPager कॉम्पोनेंट जोड़े हैं. इनसे Wear पर होने वाली सामान्य समस्याओं को हल करने में मदद मिलती है. जैसे, फ़ोकस मैनेज करना और 'खारिज करें' विकल्प को हटाने के लिए, सिस्टम स्वाइप करने की सुविधा के साथ इंटरैक्ट करना. (I2902b)
  • हमने LazyColumn के लिए सहायता जोड़ी है, ताकि layoutItems की मदद से क्लाइंट के key और contentType को एक्सपोज़ किया जा सके. (I1bd9c)

गड़बड़ियां ठीक की गईं

  • हमने पेंट फ़्लैग का इस्तेमाल करके, टेक्स्ट के घुमावदार ऐनिमेशन को ज़्यादा बेहतर बनाया है. (I73a15)
  • हमने Material Dialog के दस्तावेज़ को अपडेट किया है, ताकि यह दिखाया जा सके कि show फ़्लैग को 'गलत' पर सेट करने के बाद, onDismissRequest को कॉल नहीं किया जाता. (Ifd8d6)
  • हमने Material डायलॉग (I126bf) में, विगनेट ऐनिमेशन से जुड़ी गड़बड़ी को ठीक कर दिया है

वर्शन 1.5.0-alpha02

18 सितंबर, 2024

androidx.wear.compose:compose-*:1.5.0-alpha02 रिलीज़ हो गया है. वर्शन 1.5.0-alpha02 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने ScreenScaffold के साथ Wear Compose LazyColumn के लिए सहायता जोड़ी है. साथ ही, LazyColumnState के लिए ScrollInfoProvider को लागू किया है. (Ib8d29)
  • हमने viewportSize को LazyColumnLayoutInfo में जोड़ दिया है. (I4187f)

गड़बड़ियां ठीक की गईं

  • हमने एक गड़बड़ी को ठीक कर दिया है. अब userScrollEnabled फ़्लैग को false पर सेट करने पर, ScalingLazyColumn में रोटरी स्क्रोलिंग की सुविधा बंद हो जाएगी. (I490ab, b/360295825)
  • हमने एक गड़बड़ी को ठीक किया है. इसकी वजह से, घुमावदार टेक्स्ट में अचानक वर्टिकल पैडिंग हो रही थी. अब टेक्स्ट की ऊंचाई, टेक्स्ट के इस्तेमाल किए गए असल स्पेस से काफ़ी हद तक मेल खाती है. कृपया ध्यान दें कि इससे उन स्क्रीनशॉट टेस्ट में गड़बड़ी हो सकती है जिनमें टेक्स्ट को घुमाया गया हो (Iaa6ef)
  • हमने Dialog में गड़बड़ी को ठीक करने के लिए, उस बदलाव को वापस ले लिया है जिसमें showDialog को 'गलत' पर सेट करने पर, onDismissRequest कॉलबैक को कॉल किया जाता था. ऐसा इसलिए किया गया, क्योंकि कुछ मामलों में इसकी वजह से onDismissRequest को कई बार कॉल किया जाता था. (I64656)

वर्शन 1.5.0-alpha01

4 सितंबर, 2024

androidx.wear.compose:compose-*:1.5.0-alpha01 रिलीज़ हो गया है. वर्शन 1.5.0-alpha01 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने Wear Compose फ़ाउंडेशन लाइब्रेरी में, LazyColumnState और LazyColumnScope एपीआई के साथ एक नया LazyColumn जोड़ा है. यह Wear Compose की मदद से, स्केलिंग और मॉर्फ़ करने वाले इफ़ेक्ट बनाने का आधार है. (Ib3b22)
  • हमने नए LazyColumn एपीआई के तहत, LazyColumnScope में itemsIndexed का इंडेक्स किया गया वर्शन जोड़ा है. (Ib4a57)
  • हमने स्केलिंग और मॉर्फ़ करने की सुविधा के लिए, LazyColumn मॉडिफ़ायर जोड़े हैं. (Ie229a)
  • HierarchicalFocusCoordinator को स्टेबल वर्शन के तौर पर रिलीज़ कर दिया गया है. (I31035)
  • हमने टेक्स्ट को घुमाने की सुविधा में, अक्षरों के बीच की जगह सेट करने की सुविधा जोड़ी है. (I3c740)
  • कॉम्पोनेंट के घूमने से रोकने के लिए, CurvedLayout.curvedComposable में rotationLocked पैरामीटर जोड़ा गया. (I66898)
  • wear material और wear material3 से, कुछ समय के लिए उपलब्ध LocalUseFallbackRippleImplementation एपीआई को हटा दिया गया है (I62282)
  • @WearPreviewDevices की मल्टी-झलक से WearDevices.SQUARE को हटाया गया (I11c02)

गड़बड़ियां ठीक की गईं

  • SwipeToReveal अब स्क्रीन के दिखने वाले हिस्से पर, दिखाए गए आइटम को पोज़िशन करता है. इससे, SwipeToReveal का इस्तेमाल किसी सूची में करने पर मदद मिलती है. इससे, आइटम हमेशा इंटरैक्ट किए जा सकते हैं और वे कभी भी स्क्रीन से बाहर नहीं जाते. (I38929)
  • SwipeToReveal अब animatedTo पूरा होने पर, lastActionType को 'कोई नहीं' पर रीसेट करता है. (I59b03)
  • curvedComposable पर नए rotationLocked पैरामीटर के लिए दस्तावेज़ को बेहतर बनाया गया. (Ifbd57)
  • NaN को ScalingLazyColumnSnapFlingBehavior के performFling में पास करते समय क्रैश होने की समस्या को ठीक किया गया. (Ic13da)
  • कर्व्ड लेआउट साइज़ मॉडिफ़ायर (I0fedf) में मौजूद गड़बड़ी को ठीक किया गया
  • हमने 'sp' में बताई गई अक्षरों के बीच की दूरी की सुविधा जोड़ी है. (I9f6e3)
  • हमने Material2 डायलॉग में एक गड़बड़ी को ठीक किया है. इस गड़बड़ी की वजह से, डायलॉग के न दिखने पर onDismissRequest कॉलबैक नहीं बुलाया जा रहा था (I64656)
  • इसके मकसद को बेहतर तरीके से दिखाने के लिए, LayoutCoordinates.introducesFrameOfReference का नाम बदलकर LayoutCoordinates.introducesMotionFrameOfReference कर दिया गया है. उस फ़्लैग के आधार पर निर्देशांक का हिसाब लगाने के लिए, मिलते-जुलते फ़ंक्शन का नाम बदला गया. (I3a330)

वर्शन 1.4

वर्शन 1.4.1

12 फ़रवरी, 2025

androidx.wear.compose:compose-*:1.4.1 रिलीज़ हो गया है. वर्शन 1.4.1 में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने 'कम गति' की ग्लोबल सेटिंग को ऐक्सेस करते समय क्रैश होने से रोकने के लिए, कुछ बदलाव किए हैं. यह सेटिंग कुछ ऐसे प्लैटफ़ॉर्म पर ट्रिगर हुई थी जहां यह सेटिंग उपलब्ध नहीं थी. (I01e2c)

वर्शन 1.4.0

4 सितंबर, 2024

androidx.wear.compose:compose-*:1.4.0 रिलीज़ हो गया है. वर्शन 1.4.0 में ये कमिट शामिल हैं.

1.3.0 के बाद किए गए अहम बदलाव

  • ScalingLazyColumn और Picker अब डिफ़ॉल्ट रूप से रोटरी इनपुट के साथ काम करते हैं - हमारा सुझाव है कि आप रोटरी हैंडल करने की सुविधा को हटा दें और सिस्टम के डिफ़ॉल्ट तरीके का इस्तेमाल करें. अगर ज़रूरी हो, तो स्क्रोल या स्नैप व्यवहार को कॉन्फ़िगर करने के लिए, rotaryScrollableBehavior पैरामीटर का इस्तेमाल करें. स्नैप व्यवहार के लिए, हमारा सुझाव है कि flingBehavior पैरामीटर का इस्तेमाल करके, स्नैप व्यवहार और टच स्क्रोलिंग की सुविधाएं दें.
  • Modifier.rotaryScrollable एक नया मॉडिफ़ायर है, जो रोटरी इवेंट को स्क्रोल किए जा सकने वाले कंटेनर से जोड़ता है. इससे उपयोगकर्ता, अपने Wear OS डिवाइस पर क्राउन या रोटेट करने वाले बेज़ल का इस्तेमाल करके स्क्रोल कर सकते हैं.
  • SwipeDismissableNavHost अब इन-ऐप्लिकेशन ट्रांज़िशन के लिए, एंट्री ऐनिमेशन उपलब्ध कराता है.
  • अब स्क्रीन पहली बार दिखने पर, PositionIndicator डिफ़ॉल्ट रूप से दिखता है.

अन्य बदलाव

  • वर्शन 1.3.0 में किए गए बदलावों के बारे में ज़्यादा जानने के लिए, beta01 रिलीज़ नोट देखें.

वर्शन 1.4.0-rc01

21 अगस्त, 2024

androidx.wear.compose:compose-*:1.4.0-rc01 रिलीज़ हो गया है. वर्शन 1.4.0-rc01 में ये कमिट शामिल हैं.

  • हमने Compose की डिपेंडेंसी को 1.7.0-rc01 पर अपडेट कर दिया है. साथ ही, Wear Compose नेविगेशन को androidx.lifecycle 2.8.3 पर पिन कर दिया है

वर्शन 1.4.0-beta03

12 जून, 2024

androidx.wear.compose:compose-*:1.4.0-beta03 रिलीज़ हो गया है. वर्शन 1.4.0-beta03 में ये कमिट शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने Modifier.rotaryScrollable को अपडेट किया है, ताकि 'focusable' के इस्तेमाल को 'focusTarget' से बदला जा सके. इससे परफ़ॉर्मेंस बेहतर होती है. (Id294b)
  • हमने उस समस्या को ठीक कर दिया है जिसमें ProgressIndicator ने TalkBack में अपना एलान दोहराया था. (I94563)
  • हमने Wear Compose लाइब्रेरी की बेसलाइन प्रोफ़ाइलों को अपडेट कर दिया है. (I3cbc3)

वर्शन 1.4.0-beta02

29 मई, 2024

androidx.wear.compose:compose-*:1.4.0-beta02 रिलीज़ हो गया है. वर्शन 1.4.0-beta02 में ये कमिट शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने स्क्रीन रीडर को पास किए गए टेक्स्ट की चौड़ाई को बढ़ा दिया है, ताकि टेक्स्ट काटने से जुड़ी समस्याओं को हल किया जा सके (Id865f).
  • हमने स्क्रीन रीडर को पास किए गए HorizontalPageIndicator की सीमा तय कर दी है - पहले इंडिकेटर, पूरी स्क्रीन (Id8d7a) पर दिखता था.

वर्शन 1.4.0-beta01

14 मई, 2024

androidx.wear.compose:compose-*:1.4.0-beta01 रिलीज़ हो गया है. वर्शन 1.4.0-beta01 में ये कमिट शामिल हैं.

Wear OS के लिए Compose के 1.4-beta01 रिलीज़ से पता चलता है कि लाइब्रेरी के इस रिलीज़ में सभी सुविधाएं मौजूद हैं और एपीआई लॉक है. हालांकि, जिन सुविधाओं को प्रयोग के तौर पर मार्क किया गया है वे लॉक नहीं हैं. Wear Compose 1.4 में ये नई सुविधाएं शामिल हैं:

  • हमने Modifier.rotaryScrollable जोड़ा है. यह एक नया मॉडिफ़ायर है, जो रोटरी इवेंट को स्क्रोल किए जा सकने वाले कंटेनर से जोड़ता है. इससे उपयोगकर्ता, अपने Wear OS डिवाइस पर क्राउन या रोटेटिंग बेज़ल की मदद से स्क्रोल कर सकते हैं. इसके अलावा, ScalingLazyColumn और Picker अब डिफ़ॉल्ट रूप से रोटरी इनपुट के साथ काम करते हैं. स्क्रोल या स्नैप करने के तरीके को कॉन्फ़िगर करने के लिए, rotaryScrollableBehavior पैरामीटर का इस्तेमाल करें. स्नैप करने के व्यवहार के लिए, flingBehavior पैरामीटर के ज़रिए स्नैप करने की सुविधा देने का सुझाव दिया जाता है. साथ ही, टच स्क्रोलिंग के लिए भी ऐसा करना चाहिए.
  • SwipeDismissableNavHost अब इन-ऐप्लिकेशन ट्रांज़िशन के लिए, एंट्री ऐनिमेशन उपलब्ध कराता है.
  • अब स्क्रीन पहली बार दिखने पर, PositionIndicator डिफ़ॉल्ट रूप से दिखता है.
  • SelectableChip और SplitSelectableChip को ToggleChip के वैरिएंट के तौर पर जोड़ा गया है - सुलभता के लिए टॉगल किए जा सकने वाले सिमेंटिक के बजाय, चुनने लायक सिमेंटिक देने के लिए, RadioButton के साथ इसका इस्तेमाल करें
  • ListHeader अब ऊंचाई में बदलाव करने की सुविधा देता है. ऐसा तब होता है, जब बड़े फ़ॉन्ट साइज़ के लिए कॉन्टेंट को ज़्यादा ऊंचाई की ज़रूरत होती है.

गड़बड़ियां ठीक की गईं

  • हमने एक गड़बड़ी को ठीक कर दिया है. इसमें, चुने जा सकने वाले चिप, पहले से चुने होने पर टॉगल करने के लिए दो बार टैप करने का अनुरोध करते थे. (I7ed88)

वर्शन 1.4.0-alpha08

1 मई, 2024

androidx.wear.compose:compose-*:1.4.0-alpha08 रिलीज़ हो गया है. वर्शन 1.4.0-alpha08 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने नए रोटरी एपीआई में ये बदलाव किए हैं: Modifier.rotary का नाम बदलकर Modifier.rotaryScrollable कर दिया गया है; RotaryBehavior इंटरफ़ेस का नाम बदलकर RotaryScrollableBehavior और उसके फ़ंक्शन handleScrollEvent का नाम बदलकर performScroll कर दिया गया है; RotaryScrollableAdapter का नाम बदलकर RotaryScrollableLayoutInfoProvider कर दिया गया है और scrollableState प्रॉपर्टी को हटा दिया गया है. (I0c8a6)
  • हमने रोटरी एपीआई में कुछ और बदलाव किए हैं: RotaryScrollableLayoutInfoProvider का नाम बदलकर RotarySnapLayoutInfoProvider कर दिया है (क्योंकि इस प्रोवाइडर की ज़रूरत सिर्फ़ स्नैप के साथ रोटरी के लिए होती है); RotaryScrollableDefaults.snapBehavior snapOffset में snapOffset पैरामीटर के टाइप को Int से Dp में बदल दिया है. (Iddebe)
  • हमने clickInteractionSource पैरामीटर का नाम बदलकर SplitSelectableChip से containerInteractionSource कर दिया है. (Ia8f84)
  • हमने SplitSelectableChip के लिए क्लिक कॉलबैक पैरामीटर के नाम अपडेट कर दिए हैं. onClick से onSelectionClick और onBodyClick से onContainerClick. (I32237)

गड़बड़ियां ठीक की गईं

  • हमने PositionIndicator के लिए हॉरिज़ॉन्टल पैडिंग को 2dp पर अपडेट किया है. पहले यह 5dp थी. ऐसा इसलिए किया गया है, ताकि उस गड़बड़ी को ठीक किया जा सके जिसमें PositionIndicator (स्क्रोल बार) स्क्रोल किए जा सकने वाले कॉन्टेंट के ऊपर ओवरलैप हो जाता है. कृपया ध्यान दें कि पैडिंग में हुए बदलाव की वजह से, इस बदलाव से उन मौजूदा स्क्रीनशॉट में गड़बड़ी हो सकती है जिनमें PositionIndicator शामिल है. (I57472)
  • हमने नए रोटरी एपीआई के दस्तावेज़ को बेहतर बनाया है. इसमें, हमने लो-रिज़ॉल्यूशन और हाई-रिज़ॉल्यूशन वाले रोटरी डिवाइसों के बीच के अंतर के बारे में बताया है. (I63abe)
  • हमने SwipeDismissableNavHost में, रेंज से बाहर के एक्सप्शन को ठीक कर दिया है. यह एक्सप्शन तब ट्रिगर हो सकता था, जब इंटरपोल की गई अल्फा वैल्यू शून्य से कम थी. (Ib75a1, b/335782510)

वर्शन 1.4.0-alpha07

17 अप्रैल, 2024

androidx.wear.compose:compose-*:1.4.0-alpha07 रिलीज़ हो गया है. वर्शन 1.4.0-alpha07 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने Modifier.rotary जोड़ा है. यह एक नया मॉडिफ़ायर है, जो रोटरी इवेंट को स्क्रोल किए जा सकने वाले कंटेनर से जोड़ता है. इससे उपयोगकर्ता, अपने Wear OS डिवाइस पर क्राउन या रोटेटिंग बेज़ल की मदद से स्क्रोल कर सकते हैं. इसके अलावा, ScalingLazyColumn और पिकर अब डिफ़ॉल्ट रूप से रोटरी इनपुट के साथ काम करते हैं. साथ ही, इनमें नए ओवरलोड भी शामिल हैं. इनमें स्क्रोल या स्नैप के कॉन्फ़िगरेशन की जानकारी देने के लिए, rotaryBehavior पैरामीटर शामिल है. अगर rotaryBehavior पैरामीटर को स्नैप पर सेट किया गया है, तो टच स्क्रोलिंग के लिए, flingBehavior पैरामीटर की मदद से भी स्नैप देने का सुझाव दिया जाता है. (I2ef6f)
  • NestedScroll सोर्स के ड्रैग और फ़्लिंग को UserInput और SideEffect से बदला जा रहा है. ऐसा इन सोर्स की बढ़ी हुई परिभाषा के हिसाब से किया जा रहा है. इनमें अब ऐनिमेशन (साइड इफ़ेक्ट) और माउस व्हील और कीबोर्ड (UserInput) शामिल हैं. (I40579)
  • हमने SelectableChip और SplitSelectableChip जोड़े हैं, ताकि Switch/Checkbox जैसे टॉगल कंट्रोल और RadioButton जैसे चुनने लायक कंट्रोल के बीच का अंतर साफ़ तौर पर दिख सके. इससे, पहले जोड़े गए ToggleChip/SplitToggleChip के ओवरलोड, selectionControl पैरामीटर से बदल जाते हैं. (Ia0217)
  • ProgressIndicatorDefaults में IndeterminateStrokeWidth के लिए, 'किसको दिखे' सेटिंग को 'सार्वजनिक' पर सेट किया गया. (I5b5a4)

वर्शन 1.4.0-alpha06

3 अप्रैल, 2024

androidx.wear.compose:compose-*:1.4.0-alpha06 रिलीज़ हो गया है. वर्शन 1.4.0-alpha06 में ये कमिट शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने रोटरी बटन के साथ काम करने की सुविधा का एक ड्राफ़्ट जोड़ा है. यह सुविधा, Horologist से AndroidX में रोटरी बटन के काम करने के तरीके को माइग्रेट करने की बड़ी कोशिश का हिस्सा है. (I617d1)
  • हमने हैप्टिक्स सपोर्ट का एक ड्राफ़्ट जोड़ा है. यह, Horologist से AndroidX में रोटरी बटन के काम करने के तरीके को माइग्रेट करने की बड़ी कोशिश का हिस्सा है. (I5568a)

वर्शन 1.4.0-alpha05

20 मार्च, 2024

androidx.wear.compose:compose-*:1.4.0-alpha05 रिलीज़ हो गया है. वर्शन 1.4.0-alpha05 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने ScalingLazyListState की initialCenterItemIndex और initialCenterItemScrollOffset प्रॉपर्टी को सार्वजनिक कर दिया है. (I0c616)
  • हमने ProgressIndicatorDefaults से FullScreenStrokeWidth को सार्वजनिक कर दिया है. (Ibea23)

गड़बड़ियां ठीक की गईं

  • हमने ScalingLazyColumn से layoutInfo पर कॉल की संख्या कम करके, PositionIndicator की परफ़ॉर्मेंस को बेहतर बनाया है. (Idc83d)

वर्शन 1.4.0-alpha04

6 मार्च, 2024

androidx.wear.compose:compose-*:1.4.0-alpha04 रिलीज़ हो गया है. वर्शन 1.4.0-alpha04 में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने ToggleChip और SplitToggleChip के लिए एक नया ओवरलोड जोड़ा है, जो toggleControl पैरामीटर के बजाय selectionControl पैरामीटर लेता है. सुलभता (I1d6d9) के लिए, टॉगल किए जा सकने वाले सेमेटिक्स के बजाय, चुने जा सकने वाले सेमेटिक्स देने के लिए, इसका इस्तेमाल RadioButton कंट्रोल के साथ किया जाना चाहिए
  • हमने ToggleChip और SplitToggleChip के लिए, नए selectionControl ओवरलोड के पैरामीटर के नामों को onSelected से onSelect पर अपडेट कर दिया है (I1a971)

वर्शन 1.4.0-alpha03

21 फ़रवरी, 2024

androidx.wear.compose:compose-*:1.4.0-alpha03 रिलीज़ हो गया है. 1.4.0-alpha03 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • Modifier.inspectable रैपर अब काम नहीं करता. यह एपीआई, आपके मॉडिफ़ायर को ज़रूरत से ज़्यादा अमान्य कर देगा. इसलिए, अब इसका इस्तेमाल करने का सुझाव नहीं दिया जाता. अगर डेवलपर टूल के लिए, मॉडिफ़ायर प्रॉपर्टी को एक्सपोज़ करना चाहते हैं, तो उन्हें ModifierNodeElement पर inspectableProperties() तरीका लागू करने का सुझाव दिया जाता है. (Ib3236)

गड़बड़ियां ठीक की गईं

  • हमने WearPreview* एनोटेशन के दस्तावेज़ से जुड़ी गड़बड़ी ठीक कर दी है. (Id526d)

वर्शन 1.4.0-alpha02

7 फ़रवरी, 2024

androidx.wear.compose:compose-*:1.4.0-alpha02 रिलीज़ हो गया है. 1.4.0-alpha02 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने 'स्विप करके दिखाएं' सुविधा में एक गड़बड़ी ठीक की है. इस गड़बड़ी की वजह से, किसी आइटम पर की गई कार्रवाई को दूसरे आइटम को स्वाइप करके इंटरैक्ट (और रद्द) किया जा सकता था.(Ide059)
  • हमने ListHeader को अपडेट किया है, ताकि बड़े फ़ॉन्ट साइज़ के लिए कॉन्टेंट की ऊंचाई में बदलाव किया जा सके. (I7290c, b/251166127)

वर्शन 1.4.0-alpha01

24 जनवरी, 2024

androidx.wear.compose:compose-*:1.4.0-alpha01 रिलीज़ हो गया है. 1.4.0-alpha01 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने इन-ऐप्लिकेशन ट्रांज़िशन के लिए, SwipeDismissableNavHost में एंट्री ऐनिमेशन जोड़ा है.(cfeb79a)
  • अब स्क्रीन पहली बार दिखने पर, PositionIndicator डिफ़ॉल्ट रूप से दिखता है. यह बदलाव, Wear ऐप्लिकेशन की क्वालिटी से जुड़े दिशा-निर्देशों को पूरा करने में मदद करने के लिए किया गया था. माफ़ करें, इसका मतलब है कि PositionIndicator वाली स्क्रीन के लिए, स्क्रीनशॉट टेस्ट को अपडेट करना होगा. ऐसा इसलिए, क्योंकि पहले PositionIndicator नहीं दिखता था. (419cef7)

एपीआई में हुए बदलाव

  • हमने wear:compose-material और wear:compose-material3 लाइब्रेरी में नया ripple API जोड़ा है. यह, अब काम न करने वाले rememberRipple की जगह लेगा. साथ ही, यह कुछ समय के लिए CompositionLocal, LocalUseFallbackRippleImplementation जोड़ता है, ताकि Material कॉम्पोनेंट को, बंद किए गए rememberRipple/RippleTheme एपीआई का इस्तेमाल करने के लिए वापस लाया जा सके. इसे अगले स्टेबल रिलीज़ में हटा दिया जाएगा. यह सिर्फ़ उन मामलों में माइग्रेशन में कुछ समय के लिए मदद करने के लिए है जहां कस्टम RippleTheme दिया जा रहा है. डेटा माइग्रेट करने के बारे में जानकारी और इस बदलाव के बारे में ज़्यादा जानकारी के लिए, developer.android.com पर जाएं. (af92b21)
  • हमने ColorScheme को अपडेट किया है, ताकि इसे बदला न जा सके. इससे हर रंग के अपडेट कम असरदार हो गए हैं. हालांकि, रंगों के सामान्य इस्तेमाल को ज़्यादा असरदार बनाया गया है. इस बदलाव की वजह यह है कि ज़्यादातर ऐप्लिकेशन में, अलग-अलग कलर को अपडेट करने की सुविधा का इस्तेमाल मुख्य तौर पर नहीं किया जाता. यह अब भी मुमकिन है, लेकिन यह पहले से ज़्यादा बार फिर से कॉम्पोज़ होगा. इससे, हम पूरे मटीरियल कोड के ज़रिए स्टेटस की सदस्यताओं की संख्या को काफ़ी कम कर देते हैं. साथ ही, इससे इस्तेमाल के ज़्यादा स्टैंडर्ड उदाहरणों के शुरू होने और रनटाइम की लागत पर असर पड़ेगा. (f5c48b7)
  • Wear Material और Wear Material3 कॉम्पोनेंट को अपडेट किया गया है. अब इनके एपीआई में MutableInteractionSource को वैल्यू के बिना दिखाया जा सकता है. यह वैल्यू डिफ़ॉल्ट रूप से null होती है.MutableInteractionSource यहां कोई सेमेटिक बदलाव नहीं किया गया है: शून्य पास करने का मतलब है कि आपको MutableInteractionSource को होस्ट नहीं करना है. ज़रूरत पड़ने पर, इसे कॉम्पोनेंट के अंदर बनाया जाएगा. वैल्यू को शून्य पर सेट करने से, कुछ कॉम्पोनेंट को कभी भी MutableInteractionSource नहीं दिया जाता. साथ ही, अन्य कॉम्पोनेंट को ज़रूरत पड़ने पर ही इंस्टेंस बनाने की अनुमति मिलती है. इससे इन कॉम्पोनेंट की परफ़ॉर्मेंस बेहतर होती है. अगर इन कॉम्पोनेंट में पास किए गए MutableInteractionSource का इस्तेमाल नहीं किया जा रहा है, तो हमारा सुझाव है कि आप इसके बजाय null पास करें. हमारा सुझाव है कि आप अपने कॉम्पोनेंट में भी इसी तरह के बदलाव करें. (f8fa920)
  • हमने rememberExpandableState को अपडेट किया है, ताकि बड़ा किए जा सकने वाले एलिमेंट की स्थिति सेव की जा सके. इससे यह पक्का होता है कि किसी दूसरी स्क्रीन पर जाने पर डेटा सेव हो जाए और मूल स्क्रीन पर वापस आने पर वह डेटा वापस आ जाए. (5c80095)

गड़बड़ियां ठीक की गईं

  • हमने लाइफ़साइकल के हिसाब से काम करने वाले लाइसेनर का इस्तेमाल करने के लिए, ReduceMotion सेटिंग को अपडेट कर दिया है. (7c6b122)
  • हमने TouchExplorationStateProvider के Listener को लाइफ़साइकल के बारे में जानकारी देने वाला अपडेट किया है (be28b01)
  • हमने CompactButton के लिए, परफ़ॉर्मेंस को बेहतर बनाने के मकसद से, materialcore लेयर हटा दी है (25db8e9)
  • हमने NaN ऑफ़सेट से जुड़ी गड़बड़ियों से बचने के लिए, BasicSwipeToDismissBox को ज़्यादा बेहतर बनाया है (b983739)
  • हमने BasicSwipeToDismissBox को अपडेट किया है, ताकि यह पक्का किया जा सके कि अल्फा वैल्यू, 0,1 की रेंज में हों
  • हमने ToggleButton, SplitToggleButton, Checkbox, Switch, और RadioButton में एक गड़बड़ी को ठीक कर दिया है, ताकि सुलभता से जुड़ी सूचनाएं दोहराई न जाएं. पहले, सेमैटिक भूमिकाओं की डुप्लीकेट कॉपी बन जाती थी (d11eeb7)

वर्शन 1.3

वर्शन 1.3.1

3 अप्रैल, 2024

androidx.wear.compose:compose-*:1.3.1 रिलीज़ हो गया है. वर्शन 1.3.1 में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने 'स्विप करके दिखाएं' सुविधा में एक गड़बड़ी को ठीक कर दिया है. इस गड़बड़ी की वजह से, किसी आइटम पर की गई कार्रवाई को रद्द करने के लिए, दूसरे आइटम को स्वाइप किया जा सकता था. (Ide059)

वर्शन 1.3.0

24 जनवरी, 2024

androidx.wear.compose:compose-*:1.3.0 रिलीज़ हो गया है. 1.3.0 वर्शन में ये बदलाव शामिल हैं.

1.2.0 के बाद किए गए ज़रूरी बदलाव

  • SwipeToDismissBoxState क्लास, SwipeToDismissValue एनोटेशन, और Modifier.edgeSwipeToDismiss एक्सटेंशन फ़ंक्शन, अब androidx.wear.compose.material पैकेज के बजाय androidx.wear.compose.foundation पैकेज का हिस्सा हैं. इस अपडेट किए गए आर्किटेक्चर की मदद से, डिज़ाइन से जुड़ी अन्य बातों से अलग, जेस्चर मैनेजमेंट को लागू किया जा सकता है. कॉन्फ़िगर की गई थीम से रंग लागू करने जैसे Material Design वर्कफ़्लो, अलग से मैनेज किए जाते हैं.
  • SwipeToRevealCard और SwipeToRevealChip क्लास की मदद से, recommended swipe-to-reveal guidance को लागू किया जा सकता है. SwipeToRevealSample क्लास में, इन कॉम्पोनेंट को इस्तेमाल करने का तरीका बताया गया है.
  • 1.3.0-alpha02 रिलीज़ में एक बदलाव किया गया है. इसकी वजह से, Chip और ToggleChip ऑब्जेक्ट की ऊंचाई बढ़ जाती है. इससे, उपयोगकर्ता के चुने गए फ़ॉन्ट स्केलिंग को बेहतर तरीके से इस्तेमाल किया जा सकता है. इससे वीडियो में कुछ हिस्से काटने की समस्या आ सकती है. इस समस्या को ठीक करने के लिए, MaterialTheme के large आकार में अब कोने की त्रिज्या ज़्यादा (24 dp के बजाय 26 dp) इस्तेमाल की जाती है. Chip और ToggleChip ऑब्जेक्ट, कोने की इस नई त्रिज्या का इस्तेमाल करते हैं, ताकि चिप और ToggleChip के कोनों पर कॉन्टेंट को क्लिप करने से बचा जा सके.

    • ज़्यादातर Chips और ToggleChips में कोई बदलाव नहीं हुआ है, क्योंकि उनकी डिफ़ॉल्ट ऊंचाई 52 डीपी है. हालांकि, Chip और ToggleChip ऑब्जेक्ट में प्राइमरी या सेकंडरी लेबल टेक्स्ट की कई लाइनें हो सकती हैं या जिनकी ऊंचाई बदली गई हो. इनकी वजह से, स्क्रीनशॉट टेस्ट नहीं हो पाते.

अन्य बदलाव

वर्शन 1.3.0 में किए गए बदलावों के बारे में ज़्यादा जानने के लिए, beta01 रिलीज़ नोट देखें.

लागू करने के लिए सुझाव

  • अगर आपका ऐप्लिकेशन, उपयोगकर्ताओं को स्क्रीन के कॉन्टेंट को पैन करने की अनुमति देता है, जैसे कि मैप-आधारित ऐप्लिकेशन में, तो स्वाइप करने की सुविधा बंद करें. इसके लिए, SwipeDismissableNavHost कॉम्पोज़ेबल में userSwipeEnabled को false पर सेट करें. साथ ही, एक बटन शामिल करें, जिससे उपयोगकर्ता पिछली स्क्रीन पर जा सकें.
  • स्क्रोलिंग सूची में फ़ेड-इन और पोज़िशन बदलने वाले ऐनिमेशन के दौरान, पोज़िशन इंडिकेटर के लिए ऐनिमेशन बंद करने के लिए, SnapSpec ऑब्जेक्ट का इस्तेमाल करें.
  • मीडिया ऐप्लिकेशन के कॉन्टेंट को लोड होने का इंतज़ार करते समय, खाली Placeholder कॉम्पोज़ेबल दिखाएं.
  • मांग पर बड़ा किए जा सकने वाले आइटम का कलेक्शन बनाने के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध ExpandableStateMapping क्लास का इस्तेमाल करें.

वर्शन 1.3.0-rc01

10 जनवरी, 2024

androidx.wear.compose:compose-*:1.3.0-rc01 रिलीज़ हो गया है. 1.3.0-rc01 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने MaterialTheme के बड़े आकार को अपडेट किया है, ताकि 26dp के राउंड किए गए कोने का इस्तेमाल किया जा सके. अब इसका इस्तेमाल चिप और ToggleChip के लिए किया जाएगा. यह बदलाव, ऊंचाई में बदलाव करने की सुविधा के साथ काम करता है. ऐसा तब ज़रूरी होता है, जब बड़े फ़ॉन्ट साइज़ के लिए कॉन्टेंट की ऊंचाई बढ़ानी पड़ती है. ऐसा न करने पर, स्टेडियम के मौजूदा आकार में कुछ टेक्स्ट कॉन्टेंट काट जाता है.

    कोनों पर क्लिप किया गया टेक्स्ट
    पहली इमेज: कोनों पर काटा गया टेक्स्ट.
    टेक्स्ट क्लिप नहीं किया गया
    दूसरी इमेज: टेक्स्ट को क्लिप नहीं किया गया है.

    इस बदलाव की वजह से, स्क्रीनशॉट टेस्ट में रुकावट आ सकती है. (I2e6ae)

वर्शन 1.3.0-beta02

13 दिसंबर, 2023

androidx.wear.compose:compose-*:1.3.0-beta02 रिलीज़ हो गया है. 1.3.0-beta02 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने BasicSwipeToDismissBox में स्वाइप करने की सुविधा को पहले जैसा कर दिया है. पिछली रिलीज़ में इसमें बदलाव किया गया था, ताकि स्क्रीन पर उंगली छूने के दौरान, स्लाइड वाला ट्रांज़िशन हिस्सा दिखे. (Id8e76)

वर्शन 1.3.0-beta01

15 नवंबर, 2023

androidx.wear.compose:compose-*:1.3.0-beta01 रिलीज़ हो गया है. 1.3.0-beta01 वर्शन में ये बदलाव शामिल हैं.

Wear OS के लिए Compose के 1.3-beta01 रिलीज़ से पता चलता है कि लाइब्रेरी के इस रिलीज़ में सभी सुविधाएं मौजूद हैं और एपीआई लॉक है. हालांकि, जिन सुविधाओं को प्रयोग के तौर पर मार्क किया गया है वे लॉक नहीं हैं. Wear Compose 1.3 में ये नई सुविधाएं शामिल हैं:

  • SwipeToDismissBoxState, SwipeToDismissValue, और Modifier.edgeSwipeToDismiss को androidx.wear.compose.material से androidx.wear.compose.foundation पर माइग्रेट कर दिया गया है. साथ ही, BasicSwipeToDismissBox में स्वाइप करके खारिज करने की सुविधा को लागू किया गया है. इससे, स्वाइप करके हटाने के लिए जेस्चर मैनेजमेंट को Material Design से अलग इस्तेमाल किया जा सकता है. उदाहरण के लिए, androidx.wear.compose.navigation में मौजूद SwipeDismissableNavHost से. हमारा सुझाव है कि androidx.wear.compose.material के SwipeToDismissBox का इस्तेमाल अब भी Material Design के साथ किया जाए, क्योंकि यह MaterialTheme से रंग लेता है और बाकी काम BasicSwipeToDismissBox को सौंप देता है.
  • SwipeDismissableNavHost में अब एक नया userSwipeEnabled पैरामीटर काम करता है. इससे उन स्क्रीन के लिए स्वाइप करने की सुविधा बंद की जा सकती है जहां इसकी ज़रूरत नहीं है.
  • BasicSwipeToDismissBox ने HierarchicalFocusCoordinator का इस्तेमाल करके, फ़ोकस मैनेज करने की सुविधा को बेहतर बनाया है.
  • SwipeToReveal में, Material में नए SwipeToRevealCard और SwipeToRevealChip कॉम्पोज़ेबल हैं. ये Card और Chip के लिए, यूज़र एक्सपीरियंस (यूएक्स) के सुझाए गए दिशा-निर्देशों का पालन करते हैं. इसमें सेकंडरी ऐक्शन के लिए, पहले जैसा करने की सुविधा भी है.
  • DefaultTextStyle अब फ़ॉन्ट पैडिंग की सुविधा बंद कर देता है, ताकि Android प्लैटफ़ॉर्म पर एक जैसा दिखे.
  • Chip और ToggleChip अब अपनी ऊंचाई अडजस्ट करते हैं, ताकि सुलभता के लिए बड़े फ़ॉन्ट की वजह से बढ़े हुए कॉन्टेंट को दिखाया जा सके
  • PositionIndicator में अब फ़ेड-इन, फ़ेड-आउट, और पोज़िशन बदलने वाले ऐनिमेशन के लिए, अलग-अलग ऐनिमेशन की जानकारी है. परफ़ॉर्मेंस की वजह से, हमारा सुझाव है कि स्क्रोल की जा सकने वाली सूचियों के साथ इस्तेमाल करते समय, फ़ेड-इन और पोज़िशन बदलने की सुविधा बंद कर दी जाए.
  • ExpandableStateMapping, ExpandableStates जनरेट करने का एक नया तरीका उपलब्ध कराता है. इसकी मदद से, ExpandableStates को मांग के हिसाब से बनाया जा सकता है. इसके लिए, @Composable स्कोप का होना ज़रूरी नहीं है.
  • अगर कॉन्टेंट अब 'तैयार है' स्टेटस में नहीं है, तो Placeholder की मदद से उसे रीसेट किया जा सकता है. साथ ही, Placeholder पर मोशन कम करने की सेटिंग, अब टिमटिमाने वाले इफ़ेक्ट और वाइप-ऑफ़ मोशन पर भी लागू होती है.

ऐसी समस्याएं जिनकी जानकारी पहले से है

  • PositionIndicator, पहली बार स्क्रीन दिखने पर शुरू में नहीं दिखाया जाता. हम 1.4 के शुरुआती अल्फा वर्शन में बदलाव करने जा रहे हैं, ताकि शुरुआत में यह बिना किसी ऐनिमेशन के दिखे.

एपीआई में हुए बदलाव

  • हमने फ़ाउंडेशन लेवल SwipeToDismissBox का नाम बदलकर BasicSwipeToDismissBox कर दिया है. इससे फ़ाउंडेशन लेवल कॉम्पोनेंट और मटीरियल लेवल SwipeToDismissBox के बीच का अंतर साफ़ तौर पर दिखता है. स्क्रीम में इस्तेमाल किए जाने के लिए, MaterialTheme से रंगों को खींचकर, BasicSwipeToDismissBox को बाकी काम सौंप दिया जाता है. (Ibecfc)
  • हमने rememberExpandableStateMapping को एक्सपेरिमेंट के तौर पर मार्क किया है और expandableItem की परफ़ॉर्मेंस को बेहतर बनाया है. (I5f6bc)
  • हमने Material SwipeToReveal कार्ड और चिप एपीआई में SwipeToRevealAction क्लास को, स्लॉट-आधारित एपीआई से बदल दिया है. इसके लिए, SwipeToRevealPrimaryAction, SwipeToRevealSecondaryAction, और SwipeToRevealUndoAction कॉम्पोज़ेबल का इस्तेमाल किया गया है. नए एपीआई का इस्तेमाल करने के तरीके के उदाहरणों के लिए, कृपया सैंपल कोड देखें. (Ia8943)
  • हमने PositionIndicator ऐनिमेशन फ़्लैग को AnimationSpec पैरामीटर से बदल दिया है. अलग-अलग ऐनिमेशन को बंद करने के लिए, AnimationSpec के तौर पर snap डालें. (I6c523)

गड़बड़ियां ठीक की गईं

  • हमने एक गड़बड़ी को ठीक कर दिया है. यह गड़बड़ी तब होती है, जब टेक्स्ट का साइज़ सीमित होने पर, टेक्स्ट को कर्व किया जाता है (I50efe)
  • हमने curvedComposable (I970eb) से जुड़े, NaN क्रैश की संभावित समस्या को ठीक कर दिया है
  • हमने PositionIndicator पर, पोज़िशन में बदलाव होने पर हाइलाइट करने वाले ऐनिमेशन को वापस ले लिया है. (Ieb424)
  • हमने Material चिप की परफ़ॉर्मेंस को बेहतर बनाने के लिए, Material-core लेयर को हटा दिया है. (If2dcb)

वर्शन 1.3.0-alpha08

18 अक्टूबर, 2023

androidx.wear.compose:compose-*:1.3.0-alpha08 रिलीज़ हो गया है. 1.3.0-alpha08 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • हमने PositionIndicator ओवरलोड में अलग-अलग फ़्लैग जोड़े हैं, ताकि अलग-अलग ऐनिमेशन को कंट्रोल किया जा सके: showFadeInAnimation, showFadeOutAnimation, और showPositionAnimation. पिछले एपीआई का इस्तेमाल बंद कर दिया गया है और कॉल को नए एपीआई पर भेज दिया गया है. परफ़ॉर्मेंस और यूज़र एक्सपीरियंस को बेहतर बनाने के लिए, हमारा सुझाव है कि जब PositionIndicator का इस्तेमाल स्क्रोल की जा सकने वाली सूची के साथ किया जाए, तो showFadeInAnimation और showPositionAnimation फ़्लैग बंद कर दें. अगर PositionIndicator का इस्तेमाल स्टैंडअलोन इंडिकेटर के तौर पर किया जाता है, जैसे कि वॉल्यूम में बदलाव के लिए, तो हमारा सुझाव है कि तीनों ऐनिमेशन चालू करें. (I44294)
  • हमने wear.compose.foundation पर स्वाइप करके हटाने की सुविधा को माइग्रेट करने के बाद, Material SwipeToDismissBoxState, SwipeToDismissValue, और edgeSwipeToDismiss को बंद कर दिया है. कृपया wear.compose.foundation के बराबर के टैग से बदलें. (Iee8c9)

गड़बड़ियां ठीक की गईं

  • हमने Wear Compose फ़ाउंडेशन, मटीरियल, और नेविगेशन लाइब्रेरी के लिए, बेसलाइन प्रोफ़ाइलों को अपडेट कर दिया है. (Idb060)
  • हमने पिछली क्लीनअप लैंडिंग (सीएल) में PositionIndicator के व्यवहार में किए गए बदलाव को वापस ले लिया है. इससे, स्क्रीन के शुरुआती तौर पर दिखने पर PositionIndicator ऐनिमेशन में दिखेगा. हम 1.4 के शुरुआती अल्फा वर्शन में भी ऐसा ही बदलाव करने जा रहे हैं, ताकि PositionIndicator शुरुआत में दिखे, लेकिन बिना किसी ऐनिमेशन के. (I41843)
  • हमने PositionIndicator की परफ़ॉर्मेंस से जुड़ी कुछ समस्याओं को ठीक कर दिया है. (I1c654, b/302399827)
  • हमने टच एक्सप्लोरेशन स्टेटस प्रोवाइडर के डिफ़ॉल्ट तौर पर लागू होने की परफ़ॉर्मेंस को ऑप्टिमाइज़ किया है, ताकि व्युत्पन्न की गई स्थिति के बजाय State<Boolean> पर भरोसा किया जा सके. (Ieec4d)
  • हमने Android 13 और उसके बाद के वर्शन के लिए, systemGestureExclusion रेक्टैंगल सेट किए हैं. (Ib1f4b)

वर्शन 1.3.0-alpha07

4 अक्टूबर, 2023

androidx.wear.compose:compose-*:1.3.0-alpha07 रिलीज़ हो गया है. 1.3.0-alpha07 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • हमने अलग-अलग ऐनिमेशन कंट्रोल करने के लिए, PositionIndicator में अलग-अलग फ़्लैग जोड़े हैं: showFadeInAnimation, showFadeOutAnimation, और showPositionAnimation. पिछले एपीआई का इस्तेमाल बंद कर दिया गया है और कॉल को नए एपीआई पर भेज दिया गया है. परफ़ॉर्मेंस और यूज़र एक्सपीरियंस को बेहतर बनाने के लिए, हमारा सुझाव है कि जब PositionIndicator का इस्तेमाल स्क्रोल की जा सकने वाली सूची के साथ किया जाए, तो showFadeInAnimation और showPositionAnimation फ़्लैग बंद कर दें. अगर PositionIndicator का इस्तेमाल स्टैंडअलोन इंडिकेटर के तौर पर किया जाता है, जैसे कि वॉल्यूम में बदलाव के लिए, तो हमारा सुझाव है कि तीनों ऐनिमेशन चालू करें. (Ia2d63)

गड़बड़ियां ठीक की गईं

  • हमने स्वाइप करने पर मोशन दिखाने की सुविधा को बेहतर बनाया है. इसके लिए, हमने प्राइमरी ऐक्शन टेक्स्ट में फ़ेड ऐनिमेशन जोड़ा है. साथ ही, सेकंडरी ऐक्शन को फ़ेड किया है/पूरी तरह से स्वाइप करने पर आइकॉन का स्केल बदला है. (Ib7223)
  • हमारा सुझाव है कि 'दिखाने के लिए स्वाइप करें' सुविधा को ऐक्सेस किया जा सके. हमने 'दिखाने के लिए स्वाइप करें' के सैंपल में, ऐक्सेस करने का तरीका बदलने से जुड़ी कस्टम कार्रवाइयां जोड़ी हैं. (I42224)
  • हमने SwipeToDismissBox की परफ़ॉर्मेंस को बेहतर बनाया है. इसमें रीफ़ैक्टरिंग भी शामिल है, ताकि यह पक्का किया जा सके कि शुरुआती लॉजिक, फिर से कॉम्पोज़ करने की प्रोसेस को ट्रिगर न करे. SwipeToDismissBox अब फ़ुल स्क्रीन साइज़ के तौर पर ड्रॉ किया गया है. (Ie0aa2)
  • हमने उस गड़बड़ी को ठीक कर दिया है जिसकी वजह से PositionIndicator गलत तरीके से गायब हो जाता था. (I2091a)
  • रीकंपोज़िशन को ऑप्टिमाइज़ करके, PositionIndicator की परफ़ॉर्मेंस को बेहतर बनाया गया. ऐनिमेशन (fadeIn, fadeOut, और positionChange) को कंट्रोल करने के लिए नए फ़्लैग जोड़े गए हैं (एपीआई में हुए बदलाव देखें) (Ifac7d)
  • हमने PositionIndicator (Idf875) के लिए माइक्रोबेंचमार्क टेस्ट जोड़े हैं

वर्शन 1.3.0-alpha06

20 सितंबर, 2023

androidx.wear.compose:compose-*:1.3.0-alpha06 रिलीज़ हो गया है. 1.3.0-alpha06 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने SwipeToReveal के साथ Modifier.edgeSwipeToDismiss के काम करने की सुविधा जोड़ी है. (I95774, b/293444286)
  • हमने मटीरियल SwipeToRevealChip और SwipeToRevealCard के सैंपल जोड़े हैं. (Ieb974)
  • हमने Wear Compose फ़ाउंडेशन और Material लाइब्रेरी के लिए, बेसलाइन प्रोफ़ाइलों को अपडेट कर दिया है. (I1dd1f)

वर्शन 1.3.0-alpha05

6 सितंबर, 2023

androidx.wear.compose:compose-*:1.3.0-alpha05 रिलीज़ हो गया है. 1.3.0-alpha05 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने 'दिखाने के लिए स्वाइप करें' सुविधा में हैंडलिंग जोड़ी है, ताकि एक बार में सिर्फ़ एक आइटम स्वाइप किया जा सके. (I3cd7a)
  • ScalingLazyColumnDefaults के काम करने के तरीके के बारे में बेहतर जानकारी देने के लिए, इसके दस्तावेज़ को बेहतर बनाया गया है. (I886d3)

वर्शन 1.3.0-alpha04

23 अगस्त, 2023

androidx.wear.compose:compose-*:1.3.0-alpha04 रिलीज़ हो गया है. 1.3.0-alpha04 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने SwipeToReveal की सेकंडरी ऐक्शन के लिए, पहले जैसा करने की सुविधा जोड़ी है. (I7a22d)

एपीआई में हुए बदलाव

  • Wear Material3 लाइब्रेरी में HorizontalPageIndicator जोड़ें. (Ifee99)
  • androidx.wear.tooling.preview लाइब्रेरी का इस्तेमाल करने के लिए, Wear Compose की झलक दिखाने वाले टूल को अपडेट किया गया. (Ib036e)

गड़बड़ियां ठीक की गईं

  • राउंड बटन में मौजूद उस गड़बड़ी को ठीक किया गया है जिसमें मॉडिफ़ायर सही तरीके से चेन नहीं किए गए थे. (I5e162)

वर्शन 1.3.0-alpha03

9 अगस्त, 2023

androidx.wear.compose:compose-*:1.3.0-alpha03 रिलीज़ हो गया है. 1.3.0-alpha03 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • हमने कार्ड और चिप के साथ SwipeToReveal लागू करने के लिए, Material में दो नए कॉम्पोज़ेबल जोड़े हैं. ये कॉम्पोज़ेबल, कॉम्पोनेंट के लिए सुझाए गए यूज़र एक्सपीरियंस (UX) के दिशा-निर्देशों का पालन करते हैं. साथ ही, इनकी मदद से डेवलपर, Wear Material में मौजूद कॉम्पोनेंट के साथ SwipeToReveal को आसानी से लागू कर सकते हैं. (I7ec65)
  • हमने एपीआई की पाबंदियों के तौर पर FloatRange एनोटेशन चालू कर दिए हैं. इनके बारे में पहले टिप्पणियों में बताया गया था. (Icb401)

गड़बड़ियां ठीक की गईं

  • हमने ScalingLazyColumn के शुरुआती स्क्रोलिंग लॉजिक को onGloballyPositioned() में ले जाया है. (Ic90f1)
  • हम अब स्ट्रोक के बंटवारे को ऑप्टिमाइज़ करने के लिए, PositionIndicator, ProgressIndicator, और SelectionControls में drawWithCache का इस्तेमाल कर रहे हैं. (I5f225, b/288234617)
  • हमने बंद किए गए स्टेटस में, चेकबॉक्स पर सही का निशान दिखने की समस्या को ठीक कर दिया है. (Ib25bf)
  • हमने Placeholder को अपडेट किया है, ताकि अगर कॉन्टेंट अब तैयार न हो, तो प्लेसहोल्डर दिखाने के लिए रीसेट करने की अनुमति मिल सके. (Ibd820)
  • हमने Placeholder टेस्ट (Idb560) में कुछ सुधार किए हैं

वर्शन 1.3.0-alpha02

26 जुलाई, 2023

androidx.wear.compose:compose-*:1.3.0-alpha02 रिलीज़ हो गया है. 1.3.0-alpha02 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • हमने ExpandableStateMapping को ExpandableStates जनरेट करने का एक नया तरीका उपलब्ध कराया है. इसका इस्तेमाल उन मामलों में किया जा सकता है जहां ExpandableStates को मांग पर बनाया जाना है. हालांकि, ऐसा ज़रूरी नहीं है कि इसे @Composable के दायरे में बनाया जाए (Iff9e0)
  • SwipeToDismissBox को androidx.wear.compose.material से androidx.wear.compose.foundation पैकेज में माइग्रेट कर दिया गया है. (I275fb)
  • काम न करने की जानकारी देने के लिए, एपीआई फ़ाइलों को अपडेट किया गया. (I8e87a, b/287516207)
  • हमने Chip, CompactChip, और ToggleChip के लिए ऊंचाई के कॉन्स्टेंट को सार्वजनिक कर दिया है (Idbfde)
  • हमने Chip और CompactChip के लिए, हॉरिज़ॉन्टल और वर्टिकल पैडिंग को सार्वजनिक कर दिया है. (Ieeaf7)
  • नए userSwipeEnabled पैरामीटर की मदद से, SwipeDismissableNavHost में स्वाइप करने की सुविधा बंद करने की सुविधा जोड़ी गई. (Id2a0b, b/230865655)
  • हमने Wear Compose Foundation के नए SwipeToDismissBox का इस्तेमाल करने के लिए, Wear Compose नेविगेशन लाइब्रेरी को अपडेट किया है. (I4ff8e)

गड़बड़ियां ठीक की गईं

  • हमने z-order से जुड़ी एक गड़बड़ी को ठीक कर दिया है. इस गड़बड़ी की वजह से, expandedItem में बटन होने पर, बटन के व्यवहार पर क्लिक करने के बाद सही कॉन्टेंट नहीं दिखता था. (I1899d, b/289991514)
  • HierarchicalFocusCoordinator (I45362, b/277852486) का इस्तेमाल करके, SwipeToDismissBox (और इसलिए SwipeDismissableNavHost) के फ़ोकस को बेहतर बनाएं
  • हमने SwipeableV2 में जेस्चर मैनेज करने की सुविधा को ठीक किया है . (I89737)
  • हमने 1.2 रिलीज़ के लिए, बेसलाइन प्रोफ़ाइलों को फ़ाइनल कर लिया है. (Id5740)
  • SwipeToDismissBox को फ़ाउंडेशन पर माइग्रेट करने के बाद, Material SwipeToDismissBox को लागू करने की प्रोसेस अब फ़ाउंडेशन पर भेज दी जाती है. साथ ही, इसकी थीम से डिफ़ॉल्ट रंग की वैल्यू भी मिलती हैं.(If8451)
  • हमने ListHeader में हेडिंग सेमेटिक्स जोड़े हैं. (Ic5420)
  • Chip और ToggleChip अब अपनी ऊंचाई में बदलाव करेंगे, ताकि ज़रूरत पड़ने पर, सुलभता के लिए बड़े फ़ॉन्ट की वजह से बढ़े हुए कॉन्टेंट को दिखाया जा सके. (Iaf302)
  • सुलभता के लिए, SplitToggleChip के टैप किए जा सकने वाले हिस्से की सीमेंटिक भूमिका में मौजूद गड़बड़ी को ठीक किया गया. (Ieed3a)
  • 'मोशन कम करें' सेटिंग अब प्लेसहोल्डर पर, चमकने वाला इफ़ेक्ट और वाइप-ऑफ़ मोशन बंद कर देती है. (I91046)
  • Stepper और InlineSlider को अब दबाकर रखने पर, बार-बार क्लिक किया जा सकता है. इससे, + या - बटन को दबाकर, Stepper और InlineSlider की वैल्यू को तुरंत बढ़ाया या घटाया जा सकता है. (I27359)

वर्शन 1.3.0-alpha01

21 जून, 2023

androidx.wear.compose:compose-*:1.3.0-alpha01 रिलीज़ हो गया है. 1.3.0-alpha01 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • 1.2.0-alpha07 और 1.2.0-alpha10 में किए गए एलान के मुताबिक, हम अब DefaultTextStyle को बदल रहे हैं, ताकि फ़ॉन्ट पैडिंग की सुविधा को बंद किया जा सके. इससे Android प्लैटफ़ॉर्म पर एक जैसा अनुभव मिलता रहेगा. इससे, बड़े फ़ॉन्ट साइज़ के साथ टेक्स्ट का काट-छांट होने की समस्या को हल किया जा सकेगा. साथ ही, स्क्रीन लेआउट पर भी असर पड़ सकता है. इसलिए, स्क्रीनशॉट टेस्ट को अपडेट करना होगा. उदाहरण के लिए, हमें यहां टेक्स्ट क्लिपिंग दिखती है (Ic6a86)
बड़े फ़ॉन्ट साइज़ में क्लिप किया गया टेक्स्ट
पहली इमेज: टेक्स्ट का कुछ हिस्सा काटा गया है.
  • फ़ॉन्ट पैडिंग बंद होने पर, यह विकल्प नहीं दिखता:
फ़ॉन्ट का साइज़ बड़ा करने पर, टेक्स्ट का काटा हुआ हिस्सा न दिखना
दूसरी इमेज: टेक्स्ट को क्लिप नहीं किया गया है.
  • हमने wear.compose.foundation को wear.compose.material के एपीआई डिपेंडेंसी के तौर पर अपडेट किया है (I72004, b/285404743)
  • हमने SwipeToDismissBox में मौजूद एक गड़बड़ी को ठीक कर दिया है. बैकग्राउंड और कॉन्टेंट की कुंजियों को अब 'याद रखें' ब्लॉक में भेजा जाता है, ताकि कॉन्टेंट या बैकग्राउंड में बदलाव होने पर नए मॉडिफ़ायर बन सकें. (Ib876c, b/280392104)
  • हमने TimeText को अपडेट किया है, ताकि 12 या 24 घंटे के फ़ॉर्मैट को चुनते समय, स्थानीय भाषा का इस्तेमाल किया जा सके. (If4a3d)
  • हमने SwipeToDismissBox contentScrimColor के डिफ़ॉल्ट पैरामीटर में मौजूद अंतर को ठीक कर दिया है. (I2d70f)
  • हमने SwipeToReveal में मोशन हैंडल करने की सुविधा को बेहतर बनाया है. (I28fb7)

ऐसी समस्याएं जिनकी जानकारी पहले से है

  • ऐक्सेस-योग्यता से जुड़ी ज़रूरी शर्तों के मुताबिक, उपयोगकर्ता के कॉन्फ़िगर किए गए फ़ॉन्ट साइज़ का इस्तेमाल करना ज़रूरी है. हम जानते हैं कि बड़े फ़ॉन्ट साइज़ में दिखाए जाने पर, मल्टीलाइन चिप में टेक्स्ट का कुछ हिस्सा कट सकता है. इसलिए, हम चिप को 1.3 के अल्फा वर्शन में अपडेट करेंगे, ताकि उन मामलों में चिप की ऊंचाई में बदलाव किया जा सके.

वर्शन 1.2

वर्शन 1.2.1

18 अक्टूबर, 2023

androidx.wear.compose:compose-*:1.2.1 रिलीज़ हो गया है. 1.2.1 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • PositionIndicator के गलत तरीके से गायब होने की समस्या को ठीक किया गया. (7a167f)

वर्शन 1.2.0

9 अगस्त, 2023

androidx.wear.compose:compose-*:1.2.0 रिलीज़ हो गया है. 1.2.0 वर्शन में ये बदलाव शामिल हैं.

1.1.0 के बाद किए गए अहम बदलाव

  • Wear OS 1.2.0 के लिए Compose का स्टेबल वर्शन रिलीज़ किया गया (ज़्यादा पढ़ें)
  • Wear Compose 1.2 में किए गए मुख्य बदलावों की सूची देखने के लिए, Compose for Wear OS 1.2 Beta01 के रिलीज़ नोट देखें

वर्शन 1.2.0-rc01

26 जुलाई, 2023

androidx.wear.compose:compose-*:1.2.0-rc01 रिलीज़ हो गया है. 1.2.0-rc01 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने 1.2 रिलीज़ (Id5740) के लिए, बेसलाइन प्रोफ़ाइलों को फ़ाइनल कर लिया है

वर्शन 1.2.0-beta02

7 जून, 2023

androidx.wear.compose:compose-*:1.2.0-beta02 रिलीज़ हो गया है. 1.2.0-beta02 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने प्रयोग के तौर पर नया LocalReduceMotion CompositionLocal वैरिएबल जोड़ा है. यह ScalingLazyColumn पर स्केलिंग और फ़ेडिंग की सुविधा बंद कर देता है. (I58024)

गड़बड़ियां ठीक की गईं

  • हमने Wear Compose फ़ाउंडेशन और मटीरियल लाइब्रेरी(I4725d) के लिए, बेसलाइन प्रोफ़ाइलों को अपडेट किया है
  • हमने SwipeToDismissBox contentScrimColor पैरामीटर की डिफ़ॉल्ट वैल्यू में मौजूद अंतर को ठीक कर दिया है (I2d70f)
  • हमने IncludeFontPadding सेटिंग (I737ed) के लिए इस्तेमाल की जाने वाली DefaultTextStyle की डिफ़ॉल्ट वैल्यू को ठीक कर दिया है

वर्शन 1.2.0-beta01

24 मई, 2023

androidx.wear.compose:compose-*:1.2.0-beta01 रिलीज़ हो गया है. 1.2.0-beta01 वर्शन में ये बदलाव शामिल हैं.

Compose for Wear OS 1.2 में क्या है

Wear OS के लिए Compose के 1.2-beta01 रिलीज़ से पता चलता है कि लाइब्रेरी के इस रिलीज़ में सभी सुविधाएं मौजूद हैं और एपीआई लॉक है. हालांकि, जिन सुविधाओं को प्रयोग के तौर पर मार्क किया गया है वे लॉक नहीं हैं. Wear Compose 1.2 में ये नई सुविधाएं शामिल हैं:

  • expandableItem और expandableItems, दो नए Foundation कॉम्पोनेंट हैं. इनकी मदद से, ScalingLazyColumn में आइटम को बड़ा किया जा सकता है. expandableItem का इस्तेमाल, ऐसे आइटम के लिए करें जिसे बड़ा किया जा सकता है. जैसे, टेक्स्ट, जिसमें लाइनों की संख्या है. बड़ा किए जा सकने वाले आइटम के ग्रुप के लिए expandableItems का इस्तेमाल करें. साथ ही, कॉन्टेंट को बड़ा करने के बाद छोटा हो जाने वाला बटन बनाने के लिए expandableButton का इस्तेमाल करें.
  • HierarchicalFocusCoordinator - एक्सपेरिमेंट के तौर पर उपलब्ध यह कॉम्पोज़ेबल, कॉम्पोज़िशन के सब-ट्री को फ़ोकस चालू या फ़ोकस बंद के तौर पर मार्क करने की सुविधा देता है.
  • Picker - एपीआई में अब userScrollEnabled शामिल है, ताकि यह कंट्रोल किया जा सके कि उपयोगकर्ता के स्क्रोल करने पर पिकर चालू है या नहीं.
  • PickerGroup - एक से ज़्यादा पिकर को एक साथ मैनेज करने के लिए, एक नया कॉम्पोज़ेबल. यह HierarchicalFocusCoordinator API का इस्तेमाल करके, पिकर के बीच फ़ोकस को मैनेज करता है. साथ ही, पिकर आइटम को अपने-आप बीच में लाने की सुविधा चालू करता है.
  • Placeholder - हमने शिमर और ‘वाइप ऑफ़’ ऐनिमेशन में अपडेट किए हैं. कॉन्टेंट तैयार होने के बाद, अब वाइप-ऑफ़ इफ़ेक्ट तुरंत लागू हो जाता है.
  • ScalingLazyColumn - हमने ScalingLazyColumn और उससे जुड़ी क्लास को androidx.wear.compose.material.ScalingLazyColumn से androidx.wear.compose.foundation.lazy.ScalingLazyColumn पर माइग्रेट कर दिया है. Foundation.Lazy वर्शन का इस्तेमाल करने के लिए, कृपया अपडेट करें.
  • SwipeToReveal - हमने सेकंडरी ऐक्शन को ऐक्सेस करने के लिए, स्वाइप-टू-रिवील की सुविधा को एक्सपेरिमेंट के तौर पर जोड़ा है. यह सुविधा, मौजूदा 'लंबे समय तक दबाने' वाले पैटर्न के साथ काम करती है.
  • Stepper - अब इसमें एक और enableRangeSemantics पैरामीटर है, ताकि डिफ़ॉल्ट रेंज सिमेंटिक को बंद करने में आसानी हो.
  • Previews - हमने Wear डिवाइसों की स्क्रीन पर कॉम्पोज़ेबल की झलक देखने के लिए, ये कस्टम एनोटेशन जोड़े हैं: WearPreviewSmallRound छोटे और गोल डिवाइस पर कॉम्पोज़ेबल की झलक दिखाता है; WearPreviewLargeRound बड़े और गोल डिवाइस पर कॉम्पोज़ेबल की झलक दिखाता है; WearPreviewSquare स्क्वेयर डिवाइस पर कॉम्पोज़ेबल की झलक दिखाता है. साथ ही, इन और कई झलक वाले एनोटेशन: WearPreviewFontScales, Wear डिवाइस पर अलग-अलग फ़ॉन्ट साइज़ में कॉम्पोज़ेबल की झलक दिखाता है, जबकि WearPreviewDevices, अलग-अलग Wear डिवाइसों पर कॉम्पोज़ेबल की झलक दिखाता है.
  • हमने Wear Compose में एक DefaultTextStyle जोड़ा है, जो PlatformTextStyle.includeFontPadding प्रॉपर्टी को डिफ़ॉल्ट रूप से 'सही' पर सेट करता है. यह मौजूदा सेटिंग है. इससे, हमें Compose लाइब्रेरी के साथ फ़ॉन्ट पैडिंग को डिफ़ॉल्ट रूप से बंद करने की सुविधा को सिंक करने में मदद मिलेगी. यह सुविधा, 1.3 के शुरुआती अल्फा वर्शन में उपलब्ध होगी. ज़्यादा जानकारी के लिए, 1.2.0-alpha10 देखें.

नई सुविधाएं

  • हमने एक्सपेरिमेंट के तौर पर, 'कम मोशन' सेटिंग चालू होने पर, स्केलिंग बंद करने और ऐनिमेशन को धीरे-धीरे गायब होने की सुविधा जोड़ी है. (I58024)

गड़बड़ियां ठीक की गईं

  • CurvedSize.kt (Iab75c) में angularWidthDp के लिए बेहतर दस्तावेज़
  • SwipeDismissableNavHost अब खाली बैकस्टैक की संभावित वजहों के साथ चेतावनी लॉग करता है. ऐसा इसलिए किया जाता है, ताकि IllegalArgumentException की वजह से अचानक क्रैश न हो. यह गड़बड़ी तब होती है, जब बैकस्टैक खाली हो. (I04a81, b/277700155)

वर्शन 1.2.0-alpha10

10 मई, 2023

androidx.wear.compose:compose-*:1.2.0-alpha10 रिलीज़ हो गया है. 1.2.0-alpha10 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने दूसरी कार्रवाइयों को ऐक्सेस करने के लिए, 'दिखाने के लिए स्वाइप करें' सुविधा जोड़ी है. यह पैटर्न, 'ज़्यादा देर तक दबाकर रखें' पैटर्न के साथ काम करता है. यह पैटर्न, उपयोगकर्ता को सेकंडरी कार्रवाइयों (अलग-अलग) को दिखाने का मौजूदा तरीका है. (I60862)

एपीआई में हुए बदलाव

  • हमने SwipeToReveal में ऐक्शन कॉम्पोज़ेबल में RevealScope जोड़ा है. इससे उस ऑफ़सेट का ऐक्सेस मिलता है जिस पर अन्य कार्रवाइयां दिखती हैं. (I3fd56)

गड़बड़ियां ठीक की गईं

  • फ़्लिंग के बाद, ScalingLazyColumn के Wear API 33 पर अटकने की समस्या को ठीक किया गया (Ic4599)
  • हमने PositionIndicator की परफ़ॉर्मेंस को बेहतर बनाया है, ताकि ऐप्लिकेशन में रुकावटें कम हो सकें. (I35e92)
  • हमने चिप और CompactChip में एक गड़बड़ी को ठीक किया है. इस गड़बड़ी की वजह से, सिमेंटिक भूमिका Role.Button पर सेट नहीं हो रही थी. (I93f91, b/277326264)

ऐसी समस्याएं जिनकी जानकारी पहले से है

  • हमें Android Studio में एक गड़बड़ी का पता चला है. इसकी वजह से, @WearPreviewDevices और @WearPreviewFontScales एनोटेशन का इस्तेमाल करने पर, झलक रेंडर नहीं हो पाती. हम जल्द ही इस गड़बड़ी को ठीक करने वाले अपडेट को रिलीज़ करेंगे. कृपया ध्यान दें कि Wear डिवाइसों पर ऐप्लिकेशन की झलक दिखाने वाले अन्य एनोटेशन, Android Studio Giraffe 2022.3.1 और उसके बाद के वर्शन में सही तरीके से काम करते हैं.

  • हमने 1.2.0-alpha07 वर्शन में, Wear Compose में DefaultTextStyle जोड़ा है. साथ ही, PlatformTextStyle.includeFontPadding की मौजूदा वैल्यू को 'सही' के तौर पर बनाए रखा है. ज़्यादा जानकारी के लिए, Compose में फ़ॉन्ट पैडिंग ठीक करना लेख पढ़ें. हम DefaultTextStyle को बदलकर, फ़ॉन्ट पैडिंग की सुविधा को बंद कर देंगे. ऐसा, 1.3 के शुरुआती अल्फा वर्शन में किया जाएगा, ताकि Android प्लैटफ़ॉर्म पर एक जैसा अनुभव मिल सके. इससे, बड़े फ़ॉन्ट साइज़ के साथ टेक्स्ट का काटकर दिखने की समस्या हल हो जाएगी. साथ ही, स्क्रीन लेआउट पर भी असर पड़ सकता है. इसलिए, स्क्रीनशॉट टेस्ट को अपडेट करना होगा. उदाहरण के लिए, बड़े फ़ॉन्ट साइज़ में हमें यहां टेक्स्ट का काटा गया हिस्सा दिखता है:

बड़े फ़ॉन्ट साइज़ में क्लिप किया गया टेक्स्ट
पहली इमेज: टेक्स्ट का कुछ हिस्सा काटा गया है.
  • फ़ॉन्ट पैडिंग बंद होने पर, यह विकल्प नहीं दिखता:
फ़ॉन्ट का साइज़ बड़ा करने पर, टेक्स्ट का काटा हुआ हिस्सा न दिखना
दूसरी इमेज: टेक्स्ट को क्लिप नहीं किया गया है.

अपनी थीम में टाइपोग्राफ़ी को बदलकर, नई सेटिंग को अब अपनाया जा सकता है - कोड का उदाहरण देखें.

वर्शन 1.2.0-alpha09

19 अप्रैल, 2023

androidx.wear.compose:compose-*:1.2.0-alpha09 रिलीज़ हो गया है. 1.2.0-alpha09 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • DP में ऐंगल की चौड़ाई सेट करने के लिए, CurvedModifier एपीआई में angularSizeDp जोड़ें (I89a52)

गड़बड़ियां ठीक की गईं

  • हमने टाइम पिकर के डेमो(Id0eb7) में, सुलभता से जुड़ी समस्याओं को ठीक कर दिया है

वर्शन 1.2.0-alpha08

5 अप्रैल, 2023

androidx.wear.compose:compose-*:1.2.0-alpha08 रिलीज़ हो गया है. 1.2.0-alpha08 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • हमने ExpandableItemsState का नाम बदलकर ExpandableState कर दिया है. (If85ea)
  • हमने expandableButton जोड़ा है, ताकि कॉन्टेंट को बड़ा करने पर छोटा हो जाने वाला बटन आसानी से बनाया जा सके. साथ ही, हमने बड़ा किए जा सकने वाले कॉन्टेंट के उदाहरणों को भी अपडेट किया है. (Iae309)

गड़बड़ियां ठीक की गईं

  • ज़्यादा संभावनाएं दिखाने के लिए, बेहतर किए गए सैंपल. expandableItem के ऐनिमेशन में बदलाव किया गया, ताकि ऐनिमेशन के दौरान उसका कॉन्टेंट बीच में दिखे. (I2f637)
  • ToggleControls को अपडेट किया गया है, ताकि स्टेटस का इस्तेमाल करके रंगों को मैन्युअल तरीके से ऐनिमेट करते समय, अतिरिक्त रीकंपोज़िशन से बचा जा सके. (I5d319)

वर्शन 1.2.0-alpha07

22 मार्च, 2023

androidx.wear.compose:compose-*:1.2.0-alpha07 रिलीज़ हो गया है. 1.2.0-alpha07 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • हमने 1.2.0-alpha06 में जोड़े गए, बड़ा किए जा सकने वाले आइटम के कॉम्पोनेंट को, फ़ाउंडेशन से मटीरियल में ले जाया है. ऐसा इसलिए किया गया है, क्योंकि इनमें MaterialTheme का कोई काम का रेफ़रंस नहीं था. (Ib0525)

गड़बड़ियां ठीक की गईं

  • हमने PickerGroup का इस्तेमाल करने पर स्क्रीन के क्रैश होने की समस्या को ठीक कर दिया है. इसके लिए, हमने यह पक्का किया है कि जब किसी पिकर पर फ़ोकस न हो, तब PickerGroup सही तरीके से फ़ोकस को मैनेज करे. हमने पिकर के डेमो में आरएसबी स्क्रोलिंग की सुविधा भी जोड़ी है. (If8c19)
  • हमने डायलॉग ट्रांज़िशन को बेहतर बनाया है - आउट्रो ट्रांज़िशन से मैच करने के लिए, अब शुरुआती ट्रांज़िशन आसान हो गया है. (Ib5af9)
  • हमने Wear Compose में एक DefaultTextStyle जोड़ा है, जो PlatformTextStyle.includeFontPadding प्रॉपर्टी को डिफ़ॉल्ट रूप से 'सही' पर सेट करता है. यह मौजूदा सेटिंग है. इससे, आने वाले समय में Compose लाइब्रेरी के साथ फ़ॉन्ट पैडिंग को डिफ़ॉल्ट रूप से बंद करने की सुविधा सिंक की जा सकेगी. बैकग्राउंड के बारे में जानने के लिए, (Compose में फ़ॉन्ट पैडिंग ठीक करना) देखें. (I2aee8)
  • activity-compose की मदद से, UpsideDownCake की झलक दिखाने वाली उस डिपेंडेंसी को वापस लाया गया जिसकी वजह से, Google Play Store पर ऐप्लिकेशन पब्लिश करने पर रोक लगी थी. (I6443d)

वर्शन 1.2.0-alpha06

8 मार्च, 2023

androidx.wear.compose:compose-*:1.2.0-alpha06 रिलीज़ हो गया है. 1.2.0-alpha06 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • CurvedBox कॉम्पोनेंट जोड़ें, जो घुमावदार दुनिया में कॉम्पोनेंट को एक-दूसरे के ऊपर रखता है. (I29200)
  • बड़ा किए जा सकने वाले आइटम जोड़े गए - ScalingLazyColumn में बड़ा किए जा सकने वाले आइटम के ग्रुप या बड़ा किए जा सकने वाले एक आइटम के साथ काम करने के लिए दो नए कॉम्पोनेंट. जैसे, टेक्स्ट, जिसमें लाइनों की संख्या बढ़ती है. (I95dd5)
  • हमने Wear की स्क्रीन पर कॉम्पोज़ेबल की झलक देखने के लिए, ये कस्टम एनोटेशन जोड़े हैं: WearPreviewSmallRound छोटे और गोल डिवाइस पर कॉम्पोज़ेबल की झलक दिखाता है; WearPreviewLargeRound बड़े और गोल डिवाइस पर कॉम्पोज़ेबल की झलक दिखाता है; WearPreviewSquare स्क्वेयर डिवाइस पर कॉम्पोज़ेबल की झलक दिखाता है. साथ ही, इन और कई झलक वाले एनोटेशन: WearPreviewFontScales, Wear डिवाइस पर अलग-अलग फ़ॉन्ट साइज़ में कॉम्पोज़ेबल की झलक दिखाता है, जबकि WearPreviewDevices, अलग-अलग Wear डिवाइसों पर कॉम्पोज़ेबल की झलक दिखाता है. इन झलकियों का इस्तेमाल करने के लिए, आपके पास Android Studio (Giraffe Canary 6) या इसके बाद का वर्शन होना चाहिए. कृपया ध्यान दें कि अगर ये एनोटेशन आपके काम के नहीं हैं, तो भी झलक का इस्तेमाल किया जा सकता है. साथ ही, पैरामीटर की मदद से इसे और भी पसंद के मुताबिक बनाया जा सकता है. (I397ff)
  • हमने HierarchicalFocusCoordinator को एक्सपेरिमेंट के तौर पर मार्क किया है. हालांकि, इसे कॉम्पोज़ की मुख्य लाइब्रेरी में शामिल किया जा सकता है, क्योंकि इसका इस्तेमाल कई जगहों पर किया जा सकता है. (I3a768)

गड़बड़ियां ठीक की गईं

  • HierarchicalFocusCoordinator में एक गड़बड़ी को ठीक किया गया है. जब focusEnabled पैरामीटर के लिए पास किया गया lambda बदल जाता है, तो अब हम नए पैरामीटर का सही तरीके से इस्तेमाल करते हैं. (Icb353)
  • हमने Button, CompactButton, Chip, CompactChip, और ToggleButton में बैकग्राउंड के तौर पर प्राइमरी कलर का इस्तेमाल करते समय, डिफ़ॉल्ट रूप से बंद किए गए कॉन्टेंट का रंग, बैकग्राउंड में बदल दिया है. इससे, सुलभता के लिए कंट्रास्ट बेहतर होता है. (I527cc)

वर्शन 1.2.0-alpha05

22 फ़रवरी, 2023

androidx.wear.compose:compose-*:1.2.0-alpha05 रिलीज़ हो गया है. 1.2.0-alpha05 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • PickerGroup एपीआई को अपडेट किया गया है, ताकि कम से कम सीमाओं को कॉम्पोज़ेबल में भेजा जा सके. हालांकि, ऐसा करना ज़रूरी नहीं है. 'सही' के तौर पर सेट होने पर, PickerGroup पर पेरंट कंपोज़ेबल से पास की गई कम से कम पाबंदियों की अनुमति होगी. अगर इसे 'गलत है' पर सेट किया जाता है, तो PickerGroup कम से कम पाबंदियों को रीसेट कर देगा. (I3e046)
  • हमने पिकर एपीआई में animateScrollToOption जोड़ा है, ताकि पिकर के किसी खास विकल्प (I6fe67) के लिए, प्रोग्राम के हिसाब से ऐनिमेशन की सुविधा काम कर सके

गड़बड़ियां ठीक की गईं

  • हमने HorizontalPageIndicator को अपडेट किया है, ताकि यह दाएं से बाएं लेआउट के साथ काम कर सके. (Ia4359)
  • HorizontalPageIndicator में, दाएं से बाएं लेआउट के लिए स्क्रीनशॉट टेस्ट जोड़े गए (I6fbb8)
  • SwipeDismissableNavHostTest में TestNavHostController का इस्तेमाल करने वाले अन्य टेस्ट जोड़े गए (I61d54)

वर्शन 1.2.0-alpha04

8 फ़रवरी, 2023

androidx.wear.compose:compose-*:1.2.0-alpha04 रिलीज़ हो गया है. 1.2.0-alpha04 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • PickerGroup, focus API का इस्तेमाल करके एक साथ कई पिकर मैनेज करने के लिए. यह अलग-अलग पिकर के बीच फ़ोकस को मैनेज करता है. साथ ही, पैरामीटर के आधार पर पिकर को अपने-आप सेंटर करता है. साथ ही, डेवलपर को ग्रुप के इवेंट मैनेज करते समय, अलग-अलग पिकर के बीच फ़ोकस बदलने की सुविधा देता है. टॉकबैक मोड में, PickerGroup टॉकबैक फ़ोकस को मैनेज करता है. इसके लिए, यह फ़ोकस को ग्रुप से चुने गए पिकर पर ले जाता है. (I60840)

एपीआई में हुए बदलाव

  • हमने Stepper में एक अतिरिक्त enableRangeSemantics पैरामीटर के साथ ओवरलोड जोड़ा है, ताकि डिफ़ॉल्ट रेंज सेमेंटेक्स (Ia61d4) को बंद करने में आसानी हो

गड़बड़ियां ठीक की गईं

  • ScalingLazyColumn को हॉरिज़ॉन्टल स्क्रोल वाले पेज में नेस्ट करने की अनुमति दें (Iec3f8, b/266555016)
  • Stepper kdocs को बेहतर बनाया गया है. साथ ही, StepperTest टेस्ट को क्लीन-अप किया गया है. (Ic118e)
  • androidx.navigation डिपेंडेंसी को 2.5.3 वर्शन (If58ed) पर अपडेट किया गया

वर्शन 1.2.0-alpha03

25 जनवरी, 2023

androidx.wear.compose:compose-*:1.2.0-alpha03 रिलीज़ हो गया है. 1.2.0-alpha03 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • हमने ScalingLazyColumn (और उससे जुड़ी क्लास) को androidx.wear.compose.material.ScalingLazyColumn से andrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn पर माइग्रेट कर दिया है. माइग्रेशन के बारे में जानने के लिए, यह उदाहरण देखें. यह नई जगह, compose.foundation.lazy.LazyColumn से काफ़ी हद तक मेल खाती है. साथ ही, यह ज़्यादा नैचुरल है, क्योंकि यह कोई ऐसा कॉम्पोनेंट नहीं है जिसमें किसी खास चीज़ के बारे में जानकारी दी गई हो. यह बदलाव, नई Material3 लाइब्रेरी के लिए किया जा रहा है. हम मौजूदा Material लाइब्रेरी के साथ-साथ इस पर भी काम कर रहे हैं. (I060e7)

ये बदलाव, ScalingLazyColumn को Material से Foundation.Lazy पर माइग्रेट करने के दौरान किए गए हैं:

  • PositionIndicator Material ScalingLazyColumn को टारगेट करने वाले एपीआई बंद कर दिए गए हैं - कृपया Foundation.Lazy ScalingLazyColumn पर अपडेट करें. इसके अलावा, ScalingLazyListLayoutInfo में anchorType फ़ील्ड जोड़ा गया. (I29d95)
  • Wear Compose Material पैकेज (I16d34) में, ScalingLazyColumn को 'इस्तेमाल नहीं किया जा सकता' के तौर पर मार्क किया गया है
  • हमने ScrollAway मॉडिफ़ायर को अपडेट किया है, ताकि Wear Compose Foundation.Lazy से ScalingLazyListState का इस्तेमाल किया जा सके. साथ ही, हमने उस ओवरलोड को बंद कर दिया है जो Wear Compose Material से ScalingLazyListState लेता था. (Ifc42c)
  • हमने Dialog API को अपडेट किया है, ताकि Foundation.Lazy के बजाय ScalingLazyListState का इस्तेमाल किया जा सके. साथ ही, हमने उन ओवरलोड को बंद कर दिया है जिनमें Material ScalingLazyListState (Ic8960) का इस्तेमाल किया गया था
  • हमने Picker API को अपडेट किया है, ताकि Foundation.Lazy के बजाय ScalingParams का इस्तेमाल किया जा सके. साथ ही, हमने Material ScalingParams का इस्तेमाल करने वाले ओवरलोड को बंद कर दिया है. (Idc3d8)

गड़बड़ियां ठीक की गईं

  • हमने एक गड़बड़ी को ठीक कर दिया है, जिसकी वजह से ScalingLazyListState.centerItemIndex में ज़रूरत से ज़्यादा बार कॉम्पोज़िशन बदलता था. हमने यह पक्का किया है कि वैल्यू में बदलाव होने पर ही अपडेट भेजे जाएं (Ia9f38)
  • हमने SwipeToDismissBox (I3933b) की परफ़ॉर्मेंस को बेहतर बनाया है
  • Wear Compose Foundation (Ie00f9) में ScalingLazyColumn के लिए बेंचमार्क टेस्ट जोड़े गए
  • हमने Material में, ScalingLazyColumn क्लास के कुछ इंटरनल तरीकों को अपडेट किया है, ताकि Foundation.Lazy (I38aab) में उनके बराबर के तरीकों का इस्तेमाल किया जा सके
  • हमने पिकर टेस्ट में कुछ समस्याओं को ठीक कर दिया है. साथ ही, ऑफ़सेट के साथ स्क्रोल करने की जांच करने के लिए ज़्यादा टेस्ट जोड़े हैं (I6ac34)
  • हमने ScalingLazyColumn इंटिग्रेशन डेमो को मटीरियल ScalingLazyColumn (Ic6caa) के बजाय Foundation.Lazy पर निर्भर करने के लिए माइग्रेट किया है
  • हमने अपने DatePicker डेमो (I961cd) में वैकल्पिक fromDate/toDate पैरामीटर जोड़े हैं

वर्शन 1.2.0-alpha02

11 जनवरी, 2023

androidx.wear.compose:compose-*:1.2.0-alpha02 रिलीज़ हो गया है. 1.2.0-alpha02 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • Android Compose यूज़र इंटरफ़ेस (यूआई) टेस्ट, अब हर फ़्रेम के लिए लेआउट पास चलाएंगे. ऐसा तब होगा, जब फ़्रेम को आइडल (जैसे, waitForIdle के ज़रिए) पर ले जाने के लिए उन्हें लागू किया जाएगा. इससे उन टेस्ट पर असर पड़ सकता है जो लेआउट ऐनिमेशन के अलग-अलग फ़्रेम पर दावा करते हैं. (I8ea08, b/222093277)
  • BasicText के साथ एक जैसा व्यवहार करने के लिए, Wear Text में पैरामीटर minLines जोड़ा गया है (I24874)
  • CompactChipTapTargetPadding को सार्वजनिक कर दिया गया है, ताकि यह दस्तावेज़ (If1e70, b/234119038) में दिखे

गड़बड़ियां ठीक की गईं

  • wear.compose पैकेज के लिए, अलग-अलग प्लैटफ़ॉर्म के लिए बने बिल्ड बंद करना (Iad3d7)
  • scrollToOption के लिए kdocs को ठीक करना (I6f9a0)
  • PlaceholderState.rememberPlaceholderState() को rememberUpdatedState का इस्तेमाल करने के लिए अपडेट किया गया, ताकि onContentReady lambda के चालू होने पर स्टेटस अपडेट हो जाए. (I02635, b/260343754)
  • हमने Modifier.graphicsLayer में जोड़ी गई नई कॉम्पोज़िंग रणनीति का इस्तेमाल करके, Picker कॉम्पोनेंट में दिखने वाली टेक्स्ट की झटके वाली समस्या को ठीक कर दिया है. (I99302)
  • हमने वह गड़बड़ी ठीक कर दी है जिसकी वजह से DatePicker डेमो (I660bd) में फ़्लिकरिंग की समस्या आ रही थी
  • हमने 12-घंटे के समय और तारीख चुनने वाले टूल के डेमो (I05e12) के लिए, सुलभता को बेहतर बनाया है
  • हमने समय और तारीख चुनने वाले टूल के डेमो को अपडेट किया है, ताकि चुने न होने पर भी आरएसबी में हुए बदलावों का असर टूल पर न पड़े (I4aecb)

वर्शन 1.2.0-alpha01

7 दिसंबर, 2022

androidx.wear.compose:compose-*:1.2.0-alpha01 रिलीज़ हो गया है. 1.2.0-alpha01 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने प्लेसहोल्डर की सुविधा को अपडेट किया है, ताकि कॉन्टेंट तैयार होने पर, अगले ऐनिमेशन लूप के शुरू होने का इंतज़ार किए बिना, “वाइप ऑफ़” इफ़ेक्ट तुरंत लागू हो जाए. हमने शिमर और वाइप ऑफ़ ऐनिमेशन में भी कुछ बदलाव किए हैं. (I5a7f4)

एपीआई में हुए बदलाव

  • हमने कंपोज़िशन के सब-ट्री को फ़ोकस चालू या फ़ोकस बंद के तौर पर मार्क करने की सुविधा चालू करने के लिए, HierarchicalFocusCoordinatorcomposable जोड़ा है.(I827cb)
  • हमने ToggleButton के लिए, सेमैंटिक भूमिका को बदलने के लिए एक नई प्रॉपर्टी जोड़ी है.(I67132)
  • हमने TimeTextDefaults.TimeFormat12Hours को अपडेट कर दिया है, ताकि TimeText में AM/PM हटाया जा सके. इससे TimeText एपीआई में timeSource पैरामीटर की डिफ़ॉल्ट वैल्यू बदल जाएगी. (I1eb7f)
  • हमने Picker API को बेहतर बनाया है, ताकि एक से ज़्यादा पिकर वाली स्क्रीन को ऐक्सेस करना आसान हो. उपयोगकर्ता के स्क्रोल करने पर पिकर चालू है या नहीं, यह कंट्रोल करने के लिए एक नई प्रॉपर्टी userScrollEnabled जोड़ी गई है. (I3c3aa)

गड़बड़ियां ठीक की गईं

  • हमने OutlinedButton/OutlinedCompactButton के लिए, डिफ़ॉल्ट बॉर्डर की चौड़ाई को 2.dp से बदलकर 1.dp कर दिया है, ताकि यूज़र एक्सपीरियंस (यूएक्स) की ज़रूरी शर्तों के मुताबिक हो. (Icf84d)
  • खाली ScalingLazyColumn में जोड़े गए पहले आइटम के स्क्रोल होने के असर को कम करने के लिए, हमने खाली होने पर अनुमानित autoCentering topPadding जोड़ा है. इस बदलाव से, ऊपर की ओर ज़रूरी पैडिंग की गिनती की जाती है. इसके लिए, शुरुआती आइटम की ऊंचाई 0.dp मानी जाती है. ScalingLazyListAnchorType.ItemStart के लिए, इससे सबसे ऊपर की सही पैडिंग का हिसाब लगाया जाएगा. ScalingLazyListAnchorType.ItemCenter के लिए, यह गलत होगा, क्योंकि कॉन्टेंट का सही साइज़ तय करने के लिए आइटम की ऊंचाई की ज़रूरत होती है. इससे आइटम की असल ऊंचाई के आधार पर, स्क्रोल करके सही जगह पर ले जाने का छोटा सा असर पड़ता है.(I239a4)
  • हमने Wear प्लैटफ़ॉर्म से मैच करने के लिए, SwipeToDismiss ऐनिमेशन पर लागू बैकग्राउंड स्क्रीम को अपडेट किया है. (I9003e)
  • हमने PositionIndicator को ठीक कर दिया है, ताकि 0 से भाग देने पर होने वाली गड़बड़ियों से बचा जा सके. इसके लिए, हमने साइज़ 0 वाले सूची आइटम के लिए, LazyListState और ScalingLazyListState को मैनेज करने का तरीका बदला है.(Ic28dd)

वर्शन 1.1

वर्शन 1.1.2

8 फ़रवरी, 2023

androidx.wear.compose:compose-foundation:1.1.2, androidx.wear.compose:compose-material:1.1.2, और androidx.wear.compose:compose-navigation:1.1.2 रिलीज़ हो गए हैं. 1.1.2 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने एक गड़बड़ी को ठीक कर दिया है, जिसकी वजह से ScalingLazyListState.centerItemIndex में ज़रूरत से ज़्यादा बार कॉम्पोज़िशन बदलता था. हमने यह पक्का किया है कि वैल्यू में बदलाव होने पर ही अपडेट भेजे जाएं (Ia9f38)

वर्शन 1.1.1

11 जनवरी, 2023

androidx.wear.compose:compose-foundation:1.1.1, androidx.wear.compose:compose-material:1.1.1, और androidx.wear.compose:compose-navigation:1.1.1 रिलीज़ हो गए हैं. 1.1.1 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • PlaceholderState.rememberPlaceholderState() को rememberUpdatedState का इस्तेमाल करने के लिए अपडेट किया गया, ताकि onContentReady lambda के चालू होने पर स्टेटस अपडेट हो जाए. (I02635, b/260343754)

वर्शन 1.1.0

7 दिसंबर, 2022

androidx.wear.compose:compose-foundation:1.1.0, androidx.wear.compose:compose-material:1.1.0, और androidx.wear.compose:compose-navigation:1.1.0 रिलीज़ हो गए हैं. 1.1.0 वर्शन में ये बदलाव शामिल हैं.

1.0.0 के बाद किए गए अहम बदलाव

  • Wear OS 1.1.0 के लिए Compose का स्टेबल वर्शन रिलीज़ किया गया (ज़्यादा पढ़ें).
  • Wear Compose 1.1 में हुए मुख्य बदलावों की सूची देखने के लिए, Compose for Wear OS 1.1 Beta01 के रिलीज़ नोट देखें.

नई सुविधाएं

  • हमने प्लेसहोल्डर की सुविधा को अपडेट किया है, ताकि कॉन्टेंट तैयार होने पर, अगले ऐनिमेशन लूप के शुरू होने का इंतज़ार किए बिना, “वाइप ऑफ़” इफ़ेक्ट तुरंत लागू हो जाए. हमने शिमर और वाइप ऑफ़ ऐनिमेशन में भी कुछ बदलाव किए हैं. (I5a7f4)

गड़बड़ियां ठीक की गईं

  • हमने OutlinedButton/OutlinedCompactButton के लिए, डिफ़ॉल्ट बॉर्डर की चौड़ाई को 2.dp से बदलकर 1.dp कर दिया है, ताकि यूज़र एक्सपीरियंस (यूएक्स) की ज़रूरी शर्तों के मुताबिक हो. (Icf84d)
  • खाली ScalingLazyColumn में जोड़े गए पहले आइटम के स्क्रोल होने के असर को कम करने के लिए, हमने खाली होने पर अनुमानित autoCentering topPadding जोड़ा है. इस बदलाव से, ऊपर की ओर ज़रूरी पैडिंग की गिनती की जाती है. इसके लिए, शुरुआती आइटम की ऊंचाई 0.dp मानी जाती है. ScalingLazyListAnchorType.ItemStart के लिए, इससे सबसे ऊपर की सही पैडिंग का हिसाब लगाया जाएगा. ScalingLazyListAnchorType.ItemCenter के लिए, यह गलत होगा, क्योंकि कॉन्टेंट का सही साइज़ तय करने के लिए आइटम की ऊंचाई की ज़रूरत होती है. इससे आइटम की असल ऊंचाई के आधार पर, स्क्रोल करके सही जगह पर ले जाने का छोटा सा असर पड़ता है.(I239a4)
  • हमने Wear प्लैटफ़ॉर्म से मैच करने के लिए, SwipeToDismiss ऐनिमेशन पर लागू बैकग्राउंड स्क्रीम को अपडेट कर दिया है.(I9003e)
  • हमने PositionIndicator को ठीक कर दिया है, ताकि 0 से भाग देने पर होने वाली गड़बड़ियों से बचा जा सके. इसके लिए, हमने साइज़ 0 वाले सूची आइटम के लिए, LazyListState और ScalingLazyListState को मैनेज करने का तरीका बदला है.(Ic28dd)

वर्शन 1.1.0-rc01

9 नवंबर, 2022

androidx.wear.compose:compose-foundation:1.1.0-rc01, androidx.wear.compose:compose-material:1.1.0-rc01, और androidx.wear.compose:compose-navigation:1.1.0-rc01 रिलीज़ हो गए हैं. 1.1.0-rc01 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने Placeholders, ScrollAway, RadioButton, Switch, Checkbox, OutlinedButton, OutlinedCompactButton, OutlinedChip, और OutlinedCompactChip के लिए, प्रोफ़ाइल के बुनियादी नियम जोड़े हैं. (I8249c)
  • हमने Modifier.scrollAway में एक गड़बड़ी को ठीक कर दिया है. इससे, अगर दिया गया itemIndex अमान्य है, तो भी TimeText दिखेगा. उदाहरण के लिए, अगर आइटम का इंडेक्स तय सीमा से बाहर है. (I2137a)
  • हमने प्लैटफ़ॉर्म के लागू होने के हिसाब से, SwipeToDismissBox ऐनिमेशन को अपडेट किया है. शुरुआती स्क्वाइज़ ऐनिमेशन के बाद, स्क्रीन को दाईं ओर स्लाइड करके हटाया जाता है. (I41d34)
  • ऑप्टिमाइज़ेशन के तौर पर, हमने Modifier.scrollAway को अपडेट किया है, ताकि यह मेज़र ब्लॉक में मौजूद scrollState को ही पढ़ सके. इससे, हर बार मेज़र करने के बाद, मॉडिफ़ायर को फिर से कॉम्पोज़ करने से बचा जा सकेगा. (I4c6f1)
  • हमने प्लेसहोल्डर में दस्तावेज़ और सैंपल जोड़ा है, ताकि एक ही कॉम्पोज़ेबल पर लागू होने पर, Modifier.placeholder और Modifier.placeholderShimmer के लिए सही क्रम दिखाया जा सके. (Ie96f4, b/256583229)
  • हमने OutlinedCompactChip/OutlinedChip के लिए, डिफ़ॉल्ट बॉर्डर की चौड़ाई को 2.dp से बदलकर 1.dp कर दिया है, ताकि यूज़र एक्सपीरियंस (यूएक्स) की ज़रूरी शर्तों के मुताबिक हो. (Ib3d8e)
  • हमने rememberPickerState में एक गड़बड़ी को ठीक किया है. इस गड़बड़ी की वजह से, अपडेट किए गए इनपुट सेव नहीं होते थे. इसलिए, इनपुट में बदलाव करने के बाद, कॉम्पोज़ेबल अपडेट नहीं होते थे. (I49ff6, b/255323197)
  • हमने प्लेसहोल्डर के यूज़र इंटरफ़ेस (यूआई) में कुछ अपडेट किए हैं. जैसे, 1) स्himmer ग्रेडिएंट को स्क्रीन साइज़ के 1.5 गुना पर सेट करना, 2) स्himmer प्रोग्रेसिव के लिए ईज़िंग (क्यूबिक बेज़ियर) जोड़ना, और 3) वाइप-ऑफ़ ऐनिमेशन की स्पीड को 250 मिलीसेकंड पर सेट करना. (Id29c1)
  • हमने प्लेसहोल्डर के वाइप-ऑफ़ इफ़ेक्ट में यूज़र इंटरफ़ेस (यूआई) से जुड़ी एक गड़बड़ी को ठीक कर दिया है. इसकी वजह से, चिप और कार्ड के बैकग्राउंड, स्क्रीन पर कॉम्पोनेंट की पोज़िशन को ध्यान में न रखने की वजह से, थोड़ा पहले वाइप हो रहे थे. (I2c7cb)
  • हमने प्लेसहोल्डर के बैकग्राउंड की ड्रॉइंग को अपडेट किया है, ताकि जहां भी हो सके वहां रंगों को लेयर करने के बजाय मर्ज किया जा सके. इससे, अलग-अलग काटे गए लेयर के अल्फा ब्लेंडिंग के खतरे को कम किया जा सकता है. साथ ही, प्लेसहोल्डर के बैकग्राउंड के किनारों पर मौजूद रंगों को ब्लीड करने से रोका जा सकता है. (I2ea26)
  • हमने ScalingLazyListState.centerItemIndex/centerItemOffset के हिसाब लगाने के तरीके में बदलाव किया है. इससे, अगर दो आइटम व्यूपोर्ट की सेंटर लाइन के दोनों तरफ़ मौजूद हैं, तो सबसे नज़दीक वाले आइटम को centerItem माना जाएगा. (I30709, b/254257769)
  • हमने ScalingLazyListState.layoutInfo.visibleItemsInfo में एक गड़बड़ी को ठीक कर दिया है, जो ScalingLazyColumn को शुरू करने के दौरान गलत ऑफ़सेट दिखा रही थी. अब तब तक खाली सूची दिखेगी, जब तक सूची के सभी आइटम दिखने लगेंगे और उनके ऑफ़सेट सही नहीं हो जाएंगे. ScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty() की जांच करने से यह पुष्टि होगी कि ScalingLazyColumn को शुरू करने की प्रोसेस पूरी हो गई है और आइटम दिख रहे हैं. (I3a3b8)

वर्शन 1.1.0-beta01

24 अक्टूबर, 2022

androidx.wear.compose:compose-foundation:1.1.0-beta01, androidx.wear.compose:compose-material:1.1.0-beta01, और androidx.wear.compose:compose-navigation:1.1.0-beta01 रिलीज़ हो गए हैं. 1.1.0-beta01 वर्शन में ये बदलाव शामिल हैं.

Compose for Wear OS 1.1 में क्या है

Wear OS के लिए Compose के 1.1.0-beta01 वर्शन से पता चलता है कि लाइब्रेरी के इस रिलीज़ में सभी सुविधाएं मौजूद हैं और एपीआई लॉक हो गया है.

  • Wear Compose 1.1 रिलीज़ में ये नई सुविधाएं शामिल हैं:
    • पिकर - पिकर में सुलभता से जुड़े सुधार किए गए हैं, ताकि स्क्रीन रीडर की मदद से, एक से ज़्यादा पिकर स्क्रीन पर नेविगेट किया जा सके और कॉन्टेंट की जानकारी को ऐक्सेस किया जा सके
    • पिकर contentDescription पैरामीटर का इस्तेमाल अब सिर्फ़ चुने गए पिकर विकल्प के लिए किया जाता है. साथ ही, यह पैरामीटर ऐसी स्ट्रिंग लेता है जिसमें वैल्यू न होने पर भी कोई गड़बड़ी नहीं होती. पिछले कमिट में, विकल्प से कॉन्टेंट के ब्यौरे में मैपिंग पास करना ज़रूरी था, लेकिन सिर्फ़ चुने गए विकल्प का इस्तेमाल किया गया था.
    • पिकर आइटम अब हमेशा बीच में अलाइन होते हैं. इससे, gradientRatio को शून्य पर सेट करने पर, अलाइनमेंट में बदलाव होने की समस्या ठीक हो गई है.
    • Chip/ToggleChip - हमने Chip/ToggleChip के लिए डिफ़ॉल्ट ग्रेडिएंट को अपडेट किया है, ताकि उन्हें उपयोगकर्ता अनुभव (यूएक्स) के नए स्पेसिफ़िकेशन के मुताबिक बनाया जा सके. ChipDefaults.gradientBackgroundChipColors को अपडेट किया गया है, ताकि यह 32.5% के बजाय प्राइमरी के 50% से शुरू हो.
    • Chip/ToggleChip - चिप के आकार में बदलाव करने के लिए, ओवरलोड जोड़े गए
    • Chip/Button/ToggleButton - चिप और बटन के लिए, आउटलाइन वाली नई स्टाइल जोड़ी गई है. साथ ही, OutlinedChip और OutlinedButton के नए कॉम्पोज़ेबल जोड़े गए हैं. इनसे, पतले बॉर्डर के साथ पारदर्शी Chip/Button मिलता है.
    • कार्ड - कार्ड के लिए डिफ़ॉल्ट ग्रेडिएंट को अपडेट किया गया है, ताकि उन्हें यूज़र एक्सपीरियंस (यूएक्स) के नए स्पेसिफ़िकेशन के मुताबिक बनाया जा सके. CardDefaults.cardBackgroundPainter को अपडेट किया गया है, ताकि यह प्राइमरी के 30% से शुरू होकर onSurfaceVariant के 20% पर खत्म हो. पहले यह 20% से 10% onSurfaceVariant पर खत्म होता था. ToggleChip.toggleChipColors को 75% सरफ़ेस के लीनियर ग्रेडिएंट से 32.5% प्राइमरी पर बदला गया है. साथ ही, 0% सरफ़ेस से 50% प्राइमरी पर बदला गया है.
    • Button/ToggleButton - बटन के आकार में बदलाव करने के लिए प्रॉपर्टी जोड़ी गई हैं.
    • थीम - MaterialTheme में मौजूद कई डिफ़ॉल्ट रंगों को अपडेट किया गया है, ताकि ऐक्सेस करने की सुविधा को बेहतर बनाया जा सके. इसकी वजह यह है कि ओरिजनल रंगों में ज़रूरत के मुताबिक कंट्रास्ट नहीं था. इस वजह से, उपयोगकर्ताओं को चिप/कार्ड/बटन के बैकग्राउंड और थीम के बैकग्राउंड के बीच का अंतर समझने में मुश्किल होती थी.
    • InlineSlider/Stepper - बटन की भूमिकाएं जोड़ी गई हैं, ताकि Talkback उन्हें बटन के तौर पर पहचान सके.
    • स्कैफ़ोल्ड - PositionIndicator को अब इस तरह से पोज़िशन और साइज़ किया गया है कि यह सिर्फ़ ज़रूरी जगह ले. यह सुविधा तब काम की होती है, जब इसमें सिमेंटिक जानकारी जोड़ी जाती है. इससे TalkBack को स्क्रीन पर PositionIndicator के सही बॉउंड मिलते हैं.
    • CurvedText/TimeText - Modifier.scrollAway जोड़ा गया है. यह स्क्रोल की स्थिति के आधार पर, किसी आइटम को वर्टिकल तौर पर व्यू में/व्यू से बाहर स्क्रोल करता है. साथ ही, Column, LazyColumn, और ScalingLazyColumn के साथ काम करने के लिए ओवरलोड भी जोड़े गए हैं. आम तौर पर, ScrollAway का इस्तेमाल किसी TimeText को व्यू से बाहर स्क्रोल करने के लिए किया जाता है, क्योंकि उपयोगकर्ता आइटम की सूची को ऊपर की ओर स्क्रोल करना शुरू करता है.
    • CurvedText/TimeText - CurvedTextStyle में fontFamily, fontStyle, और fontSynthesis के लिए सहायता जोड़ी गई. इसे curvedText और basicCurvedText पर इस्तेमाल किया जा सकता है
    • CurvedText/TimeText - CurvedTextStyle के कॉन्स्ट्रक्टर और कॉपी करने के तरीके में fontWeight जोड़ा गया
    • ToggleControls - ToggleChip और SplitToggleChip के साथ इस्तेमाल करने के लिए, ऐनिमेशन वाले Checkbox, Switch, और RadioButton टॉगल कंट्रोल जोड़े गए. इनका इस्तेमाल, ToggleChipDefaults (switchIcon, checkboxIcon, और radioIcon) से मिलने वाले स्टैटिक आइकॉन के बजाय किया जा सकता है.
    • प्लेसहोल्डर - प्लेसहोल्डर के लिए प्रयोग के तौर पर उपलब्ध सुविधा जोड़ी गई. इसमें तीन अलग-अलग विज़ुअल इफ़ेक्ट हैं, जिन्हें एक साथ काम करने के लिए डिज़ाइन किया गया है.
    • सबसे पहले, प्लेसहोल्डर बैकग्राउंड ब्रश इफ़ेक्ट, चिप और कार्ड जैसे कंटेनर में इस्तेमाल किया जाता है. इससे, कॉन्टेंट लोड होने के दौरान सामान्य बैकग्राउंड पर ड्रॉ किया जा सकता है.
    • दूसरा, लोड हो रहे कॉन्टेंट के ऊपर, स्टेडियम के आकार का प्लेसहोल्डर विजेट बनाने के लिए मॉडिफ़ायर (Modifier.placeholder()).
    • तीसरा, मॉडिफ़ायर ग्रेडिएंट/शिमर इफ़ेक्ट (Modifier.placeholderShimmer()), जो अन्य इफ़ेक्ट के ऊपर खींचा जाता है. इससे उपयोगकर्ताओं को यह पता चलता है कि डेटा लोड होने का इंतज़ार किया जा रहा है.
      • इन सभी इफ़ेक्ट को एक साथ इस्तेमाल करने के लिए डिज़ाइन किया गया है. साथ ही, इन्हें एक ही तरीके से चमकाया और मिटाया जा सकता है.
  • Compose की मुख्य डिपेंडेंसी को 1.2 से 1.3 पर अपडेट किया गया

एपीआई में हुए बदलाव

  • फ़ॉन्ट पैरामीटर (fontFamily, fontWeight, fontStyle, और fontSynthesis) को अब सीधे curvedText (Idc422) के पैरामीटर के तौर पर सेट किया जा सकता है

गड़बड़ियां ठीक की गईं

  • curveText और basicCurvedText अब TalkBack के साथ सही तरीके से काम करेंगे. इनके साथ, कॉन्टेंट के ब्यौरे के तौर पर टेक्स्ट का इस्तेमाल करके, सही साइज़ और जगह पर (लेकिन खाली) कॉम्पोज़-यूआई नोड जोड़ा गया है (I7af7c, b/210721259)
  • Picker में गड़बड़ी ठीक की गई है, जब PickerState.repeatedItems = false को पिकर के इंटरनल ScalingLazyColumn पर ऑटोसेंटरिंग पैरामीटर की साफ़ तौर पर सेटिंग जोड़नी है, ताकि यह पक्का किया जा सके कि शून्यवें विकल्प को व्यू के बीच में स्क्रोल किया जा सकता है. (I8a4d7)

वर्शन 1.1.0-alpha07

5 अक्टूबर, 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha07, androidx.wear.compose:compose-material:1.1.0-alpha07, और androidx.wear.compose:compose-navigation:1.1.0-alpha07 रिलीज़ हो गए हैं. 1.1.0-alpha07 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने प्लेसहोल्डर की सुविधा को प्रयोग के तौर पर जोड़ा है. इसमें तीन अलग-अलग विज़ुअल इफ़ेक्ट हैं, जिन्हें एक साथ काम करने के लिए डिज़ाइन किया गया है. सबसे पहले, प्लेसहोल्डर बैकग्राउंड ब्रश इफ़ेक्ट, चिप और कार्ड जैसे कंटेनर में इस्तेमाल किया जाता है. इससे, कॉन्टेंट लोड होने के दौरान सामान्य बैकग्राउंड पर ड्रॉ किया जा सकता है. दूसरा, लोड हो रहे कॉन्टेंट के ऊपर, स्टेडियम के आकार का प्लेसहोल्डर विजेट बनाने के लिए मॉडिफ़ायर (Modifier.placeholder()). तीसरा, मॉडिफ़ायर ग्रेडिएंट/शिमर इफ़ेक्ट (Modifier.placeholderShimmer()), जो अन्य इफ़ेक्ट के ऊपर खींचा जाता है. इससे उपयोगकर्ताओं को यह पता चलता है कि डेटा लोड होने का इंतज़ार किया जा रहा है. इन सभी इफ़ेक्ट को एक साथ इस्तेमाल करने के लिए डिज़ाइन किया गया है. साथ ही, इन्हें एक ही तरीके से चमकाया और मिटाया जा सकता है. (I3c339)

एपीआई में हुए बदलाव

  • CurvedTextStyle में fontWeight, fontFamily, fontStyle, और fontSynthesis के लिए सहायता जोड़ी गई है. इसे curvedText और basicCurvedText पर इस्तेमाल किया जा सकता है. इन पैरामीटर का इस्तेमाल, घुमावदार टेक्स्ट में इस्तेमाल किए जाने वाले फ़ॉन्ट और स्टाइल को तय करने के लिए किया जा सकता है.(Iaa1a8),(I72759)
  • Modifier.offset के साथ एक जैसा रखने के लिए, Modifier.scrollAway के ऑफ़सेट पैरामीटर को Dp में अपडेट किया गया है. पहले यह पिक्सल में था. साथ ही, बेहतर परफ़ॉर्मेंस के लिए, इसे LayoutModifier के तौर पर फिर से बनाया गया. (I9f94b)
  • टॉगल कंट्रोल एपीआई के नए वर्शन के तहत, हमने RadioButton’s circleColor का नाम बदलकर ringColor कर दिया है. (I28fa9)
  • हमने ऐनिमेशन वाले Checkbox, Switch, और RadioButton टॉगल कंट्रोल जोड़े हैं. इनका इस्तेमाल ToggleChip और SplitToggleChip के साथ किया जा सकता है. इनका इस्तेमाल, ToggleChipDefaults (switchIcon, checkboxIcon, और radioIcon) से मिलने वाले स्टैटिक आइकॉन के बजाय किया जा सकता है. (I8a8c4)

वर्शन 1.1.0-alpha06

21 सितंबर, 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha06, androidx.wear.compose:compose-material:1.1.0-alpha06, और androidx.wear.compose:compose-navigation:1.1.0-alpha06 रिलीज़ हो गए हैं. 1.1.0-alpha06 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने Modifier.scrollAway जोड़ा है, जो स्क्रोल की स्थिति के आधार पर, किसी आइटम को वर्टिकल तौर पर व्यू में/बाहर स्क्रोल करता है. साथ ही, Column, LazyColumn, और ScalingLazyColumn के साथ काम करने के लिए, ओवरलोड भी जोड़े गए हैं. आम तौर पर, ScrollAway का इस्तेमाल किसी TimeText को स्क्रोल करके व्यू से बाहर करने के लिए किया जाता है, क्योंकि उपयोगकर्ता आइटम की सूची को ऊपर की ओर स्क्रोल करना शुरू करता है. (I61766)

गड़बड़ियां ठीक की गईं

  • अब PositionIndicator की पोज़िशन और साइज़ तय हो गया है, ताकि वह सिर्फ़ ज़रूरी जगह ले. यह सुविधा तब काम की होती है, जब इसमें सिमेंटिक जानकारी जोड़ी जाती है. इससे TalkBack को स्क्रीन पर PositionIndicator के सही बॉउंड मिलते हैं. (Ie6106, b/244409133)

वर्शन 1.1.0-alpha05

7 सितंबर, 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha05, androidx.wear.compose:compose-material:1.1.0-alpha05, और androidx.wear.compose:compose-navigation:1.1.0-alpha05 रिलीज़ हो गए हैं. 1.1.0-alpha05 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • InlineSlider और Stepper में बटन की भूमिकाएं जोड़ी गई हैं, ताकि TalkBack उन्हें बटन के तौर पर पहचान सके. (Icb46c, b/244260275)
  • हमने स्कैफ़ोल्ड में, पोज़िशन और पेज इंडिकेटर के z-क्रम को ठीक कर दिया है. इंडिकेटर अब विग्नेट के ऊपर दिखेंगे. इसलिए, अगर विग्नेट मौजूद है, तो वह इंडिकेटर को छिपा नहीं पाएगा. (Ib988f, b/244207528)

वर्शन 1.1.0-alpha04

24 अगस्त, 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha04, androidx.wear.compose:compose-material:1.1.0-alpha04, और androidx.wear.compose:compose-navigation:1.1.0-alpha04 रिलीज़ हो गए हैं. 1.1.0-alpha04 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • हमने MaterialTheme में कई डिफ़ॉल्ट रंगों को अपडेट किया है, ताकि ऐक्सेस करने की सुविधा को बेहतर बनाया जा सके. इसकी वजह यह है कि ओरिजनल रंगों में ज़रूरत के मुताबिक कंट्रास्ट नहीं था. इस वजह से, उपयोगकर्ताओं को चिप/कार्ड/बटन के बैकग्राउंड और थीम के बैकग्राउंड के बीच का अंतर समझने में मुश्किल होती थी. अपडेट किए गए रंग ये हैं: surface(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onSecondary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F8), और onError(0xFF202124->0xFF000000). हालांकि, रंगों में हुए बदलाव काफ़ी हल्के हैं, लेकिन इनसे मौजूदा स्क्रीनशॉट टेस्ट पर असर पड़ सकता है. (81ab09)

गड़बड़ियां ठीक की गईं

  • ScalingLazyColumn में लॉजिक से जुड़ी एक गड़बड़ी को ठीक किया गया है. इसकी वजह से, सूची के कुछ आइटम (आम तौर पर दो) के शुरू होने की प्रोसेस पूरी नहीं हो पाती थी. इस वजह से, सूची पारदर्शी हो जाती थी. (504347)

वर्शन 1.1.0-alpha03

10 अगस्त, 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha03, androidx.wear.compose:compose-material:1.1.0-alpha03, और androidx.wear.compose:compose-navigation:1.1.0-alpha03 रिलीज़ हो गए हैं. 1.1.0-alpha03 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने Chips और Buttons के लिए, आउटलाइन वाला नया स्टाइल जोड़ा है. साथ ही, OutlinedChip और OutlinedButton के नए कॉम्पोज़ेबल जोड़े हैं. इनसे, पतले बॉर्डर वाला पारदर्शी Chip/Button मिलता है. (Id5972)

एपीआई में हुए बदलाव

  • बटन के आकार में बदलाव करने के लिए, ओवरलोड जोड़े गए (Icccde)

गड़बड़ियां ठीक की गईं

  • हमने ToggleChip के टॉगल कंट्रोल एरिया के साइज़ में बदलाव किया है, क्योंकि यह यूज़र एक्सपीरियंस (UX) स्पेसिफ़िकेशन से मेल नहीं खा रहा था. यूज़र एक्सपीरियंस स्पेसिफ़िकेशन के मुताबिक, लेबल और 24x24.dp टॉगल कंट्रोल आइकॉन एरिया के बीच 4.dp स्पेस होना चाहिए. इससे कुल चौड़ाई 28.dp हो जाती है. हालांकि, लागू करने पर, टॉगल कंट्रोल के लिए 36x24.dp का गलत साइज़ दिख रहा है. इससे, इस्तेमाल किए जा सकने वाले टेक्स्ट लेबल के एरिया में 8.dp की कमी आती है. ध्यान दें: इस गड़बड़ी को ठीक करने से, टेक्स्ट लेबल के लिए ज़्यादा जगह मिलती है. इस वजह से, ओवरफ़्लो होने वाले टेक्स्ट के लेआउट पर अच्छा असर पड़ सकता है. अगर आपके पास ToggleChips वाले स्क्रीनशॉट टेस्ट हैं, तो उन्हें अपडेट करना पड़ सकता है. (I514c8, b/240548670)

वर्शन 1.1.0-alpha02

27 जुलाई, 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha02, androidx.wear.compose:compose-material:1.1.0-alpha02, और androidx.wear.compose:compose-navigation:1.1.0-alpha02 रिलीज़ हो गए हैं. 1.1.0-alpha02 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने Wear OS के लिए Compose की डिपेंडेंसी को, Compose की मुख्य लाइब्रेरी के 1.2.0 से 1.3.0-alpha0X वर्शन पर स्विच कर दिया है

एपीआई में हुए बदलाव

  • चिप के आकार में बदलाव करने के लिए, ओवरलोड जोड़े गए (I02e87)

गड़बड़ियां ठीक की गईं

  • हमने डायलॉग बॉक्स को दिखाने/छिपाने के दौरान, विगनेट की विज़िबिलिटी को ऐनिमेट किया है, ताकि यह स्केलिंग ऐनिमेशन के साथ मेल खा सके. (Ida33e)
  • हमने एक गड़बड़ी को ठीक किया है. इसकी वजह से, स्क्रीन पर फ़्लिंग करने पर, शून्य से भाग देने की गड़बड़ी हो सकती थी. (I86cb6)
  • ChipDefaults.childChipColor() में एक गड़बड़ी को ठीक किया गया है, ताकि यह पक्का किया जा सके कि बंद किए गए बैकग्राउंड का रंग पूरी तरह से पारदर्शी हो. (I2b3c3, b/238057342)

वर्शन 1.1.0-alpha01

29 जून, 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha01, androidx.wear.compose:compose-material:1.1.0-alpha01, और androidx.wear.compose:compose-navigation:1.1.0-alpha01 रिलीज़ हो गए हैं. 1.1.0-alpha01 वर्शन में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • पिकर के contentDescription पैरामीटर का इस्तेमाल अब सिर्फ़ चुने गए पिकर विकल्प के लिए किया जाता है. साथ ही, यह पैरामीटर ऐसी स्ट्रिंग को स्वीकार करता है जिसमें वैल्यू न हो. पहले, विकल्प से कॉन्टेंट के ब्यौरे में मैपिंग पास करना ज़रूरी था, लेकिन सिर्फ़ चुने गए विकल्प का इस्तेमाल किया जाता था. (Ife6a7)
  • हमने पिकर में सुलभता से जुड़े सुधार किए हैं, ताकि स्क्रीन रीडर की मदद से, एक से ज़्यादा पिकर वाली स्क्रीन पर नेविगेट किया जा सके. साथ ही, कॉन्टेंट के ब्यौरे को ऐक्सेस किया जा सके (I64edb)

गड़बड़ियां ठीक की गईं

  • हमने Wear Compose लाइब्रेरी (I9c694) के साथ पैकेज किए गए बेसलाइन प्रोफ़ाइल नियमों को अपडेट किया है
  • हमने दाएं से बाएं मोड में, चिप के लिए ग्रेडिएंट की दिशा को ठीक कर दिया है. पहले यह ऊपर बाईं ओर से नीचे दाईं ओर था, अब यह ऊपर दाईं ओर से नीचे बाईं ओर है. (Ic2e77)
  • हमने Chip/ToggleChip/Card के लिए डिफ़ॉल्ट ग्रेडिएंट अपडेट किए हैं, ताकि उन्हें यूज़र एक्सपीरियंस (यूएक्स) की नई खास बातों के मुताबिक बनाया जा सके. ChipDefaults.gradientBackgroundChipColors को अपडेट किया गया है, ताकि यह 32.5% के बजाय प्राइमरी के 50% से शुरू हो. CardDefaults.cardBackgroundPainter को अपडेट किया गया है, ताकि यह प्राइमरी के 30% से शुरू होकर onSurfaceVariant के 20% पर खत्म हो. पहले यह 20% से 10% onSurfaceVariant पर खत्म होता था. ToggleChip.toggleChipColors को 75% सतह के लीनियर ग्रेडिएंट से 32.5% प्राइमरी में बदला गया है. साथ ही, 0% सतह से 50% प्राइमरी में बदला गया है. (I43bbd)
  • हमने Chip/ToggleChips के पीछे बैकग्राउंड का रंग (MaterialTheme.color.surface) जोड़ा है, जिनका बैकग्राउंड ग्रेडिएंट है. इससे यह पक्का किया जा सकेगा कि अगर उनके पीछे हल्के रंग का इस्तेमाल किया जाता है, तो भी वे सही तरीके से दिखें. (Ibe1a4, b/235937657)
  • पिकर आइटम अब हमेशा बीच में अलाइन होते हैं. इससे, gradientRatio को शून्य पर सेट करने पर, अलाइनमेंट में बदलाव होने की समस्या ठीक हो गई है. (I712b8)

वर्शन 1.0

वर्शन 1.0.2

7 सितंबर, 2022

androidx.wear.compose:compose-foundation:1.0.2, androidx.wear.compose:compose-material:1.0.2, और androidx.wear.compose:compose-navigation:1.0.2 रिलीज़ हो गए हैं. 1.0.2 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने स्कैफ़ोल्ड में, पोज़िशन और पेज इंडिकेटर के z-क्रम को ठीक कर दिया है. इंडिकेटर अब विग्नेट के ऊपर दिखेंगे. इसलिए, अगर विग्नेट मौजूद है, तो वह इंडिकेटर को छिपा नहीं पाएगा. (Ib988f, b/244207528)

वर्शन 1.0.1

24 अगस्त, 2022

androidx.wear.compose:compose-foundation:1.0.1, androidx.wear.compose:compose-material:1.0.1, और androidx.wear.compose:compose-navigation:1.0.1 रिलीज़ हो गए हैं. 1.0.1 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • ScalingLazyColumn में लॉजिक से जुड़ी एक गड़बड़ी को ठीक किया गया है. इसकी वजह से, सूची के कुछ आइटम (आम तौर पर दो) के शुरू होने की प्रोसेस पूरी नहीं हो पाती थी. इस वजह से, सूची पारदर्शी हो जाती थी. (076c61)

वर्शन 1.0.0

27 जुलाई, 2022

androidx.wear.compose:compose-foundation:1.0.0, androidx.wear.compose:compose-material:1.0.0, और androidx.wear.compose:compose-navigation:1.0.0 रिलीज़ हो गए हैं. 1.0.0 वर्शन में ये बदलाव शामिल हैं.

1.0.0 के मुख्य फ़ीचर

  • यह Wear OS के लिए Compose का पहला स्टेबल वर्शन है (ज़्यादा पढ़ें).
  • Wear OS के लिए Compose, Compose की मुख्य लाइब्रेरी पर आधारित है. इसमें पहने जाने वाले डिवाइसों के लिए अतिरिक्त कॉम्पोनेंट उपलब्ध कराए जाते हैं. साथ ही, जहां ज़रूरी हो वहां पहने जाने वाले डिवाइसों के हिसाब से Compose के मुख्य कॉम्पोनेंट को लागू करने के अन्य तरीके भी उपलब्ध कराए जाते हैं.
  • Wear Compose के मुख्य कॉम्पोनेंट की सूची के लिए, Compose for Wear OS Beta01 के रिलीज़ नोट देखें.

गड़बड़ियां ठीक की गईं

  • हमने डायलॉग बॉक्स को दिखाने/छिपाने के दौरान, विगनेट की विज़िबिलिटी को ऐनिमेट किया है, ताकि यह स्केलिंग ऐनिमेशन के साथ मेल खा सके. (Ida33e)
  • हमने एक गड़बड़ी को ठीक किया है. इसकी वजह से, स्क्रीन पर फ़्लिंग करने पर, शून्य से भाग देने की गड़बड़ी हो सकती थी. (I86cb6)
  • ChipDefaults.childChipColor() में एक गड़बड़ी को ठीक किया गया है, ताकि यह पक्का किया जा सके कि बंद किए गए बैकग्राउंड का रंग पूरी तरह से पारदर्शी हो. (I2b3c3, b/238057342)

वर्शन 1.0.0-rc02

22 जून, 2022

androidx.wear.compose:compose-foundation:1.0.0-rc02, androidx.wear.compose:compose-material:1.0.0-rc02, और androidx.wear.compose:compose-navigation:1.0.0-rc02 रिलीज़ हो गए हैं. 1.0.0-rc02 वर्शन में ये कमिट शामिल हैं.

गड़बड़ियां ठीक की गईं

  • हमने दाईं से बाईं ओर (आरटीएल) मोड में, कार्ड के ग्रेडिएंट की दिशा ठीक कर दी है. यह ऊपर बाईं ओर से नीचे दाईं ओर था और अब यह ऊपर दाईं ओर से नीचे बाईं ओर है. (Ic2e77)
  • हमने Chip/ToggleChip/Card के लिए डिफ़ॉल्ट ग्रेडिएंट अपडेट किए हैं, ताकि उन्हें यूज़र एक्सपीरियंस (यूएक्स) की नई खास बातों के मुताबिक बनाया जा सके. ChipDefaults.gradientBackgroundChipColors को अपडेट किया गया है, ताकि यह 32.5% के बजाय प्राइमरी के 50% से शुरू हो. CardDefaults.cardBackgroundPainter को अपडेट किया गया है, ताकि यह प्राइमरी के 30% से शुरू होकर onSurfaceVariant के 20% पर खत्म हो. पहले, यह SurfaceVariant पर 20% से 10% तक था. ToggleChip.toggleChipColors, 75% सतह के लीनियर ग्रेडिएंट से 32.5% प्राइमरी में बदल जाता है. इसके बाद, 0% सतह से 50% प्राइमरी में बदल जाता है. (I43bbd)
  • हमने Chip/ToggleChips के पीछे बैकग्राउंड का रंग (MaterialTheme.color.surface) जोड़ा है, जिनका बैकग्राउंड ग्रेडिएंट है. इससे यह पक्का किया जा सकेगा कि अगर उनके पीछे हल्के रंग का इस्तेमाल किया जाता है, तो भी वे सही तरीके से दिखें. (Ibe1a4, b/235937657)
  • हमने Wear Compose लाइब्रेरी (I9c694) के साथ पैकेज किए गए बेसलाइन प्रोफ़ाइल नियमों को अपडेट किया है

वर्शन 1.0.0-rc01

15 जून, 2022

androidx.wear.compose:compose-foundation:1.0.0-rc01, androidx.wear.compose:compose-material:1.0.0-rc01, और androidx.wear.compose:compose-navigation:1.0.0-rc01 रिलीज़ हो गए हैं. 1.0.0-rc01 वर्शन में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • Compose लाइब्रेरी में इंटरफ़ेस, अब jdk8 के डिफ़ॉल्ट इंटरफ़ेस के तरीकों (I5bcf1) का इस्तेमाल करके बनाए जाते हैं

गड़बड़ियां ठीक की गईं

  • हमने सूची के हेडर पर fillMaxWidth() के लिए साफ़ तौर पर कॉल हटा दिया है, क्योंकि इसकी ज़रूरत नहीं है. अगर ScalinglazyColumn में ListHeader() और Chip() कॉम्पोनेंट का इस्तेमाल किया जाता है, तो समस्याएं आ सकती हैं. ऐसा इसलिए, क्योंकि ListHeader आइटम को स्क्रीन पर स्क्रोल करने पर, चौड़ाई बढ़ती/घटती रहती है. (I37144, b/235074035)
  • हमने ScalingLazyColumn में एक गड़बड़ी को ठीक कर दिया है. इसकी वजह से, अगर सूची का पहला आइटम (पैडिंग के साथ) काफ़ी बड़ा था, तो सूची के आइटम तब तक सही तरीके से नहीं दिखते, जब तक उन्हें स्क्रोल नहीं किया जाता. (Ic6159, b/234328517)
  • हमने ScalingLazyColumn में थोड़ा बदलाव किया है. अब आइटम, स्क्रीन के किनारे तक पहुंचने पर धीरे-धीरे गायब होंगे. ऐसा, यूज़र एक्सपीरियंस (यूएक्स) से जुड़े स्पेसिफ़िकेशन में हुए अपडेट के हिसाब से किया गया है. पुरानी वैल्यू CubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f) -> नई वैल्यू CubicBezierEasing(0.3f, 0f, 0.7f, 1f). पुराने व्यवहार को बनाए रखने के लिए, ScalingLazyColumn (Ie375c) के scalingParams को बदला जा सकता है
  • हमने CompactChip में पैडिंग जोड़ी है, ताकि यह पक्का किया जा सके कि टैप टारगेट का साइज़ कम से कम 48.dp हो. इससे, मटीरियल डिज़ाइन की सुलभता के दिशा-निर्देशों का पालन किया जा सकेगा. इससे, CompactChips का इस्तेमाल करने वाले सभी लेआउट पर असर पड़ सकता है, क्योंकि वे ज़्यादा जगह ले रहे होंगे. (I3d57c)

वर्शन 1.0.0-beta03

1 जून, 2022

androidx.wear.compose:compose-foundation:1.0.0-beta03, androidx.wear.compose:compose-material:1.0.0-beta03, और androidx.wear.compose:compose-navigation:1.0.0-beta03 रिलीज़ हो गए हैं. 1.0.0-beta03 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने ScalingLazyColumn को लिखें @Preview मोड में काम करने के लिए बनाया है. (I3b3b6, b/232947354)

एपीआई में हुए बदलाव

  • हमने ScalingLazyColumn.horizontalAlignment प्रॉपर्टी की डिफ़ॉल्ट वैल्यू को 'शुरू करें' से CenterHorizontally में बदल दिया है. इससे यह पक्का किया जा सकेगा कि जब सूची के आइटम कॉलम की पूरी चौड़ाई को न भरें, तब उन्हें ज़्यादा से ज़्यादा दिखने के लिए अलाइन किया जाएगा. पिछले व्यवहार पर वापस स्विच करने के लिए, horizontalAlignment = Alignment.Start सेट करें.(I9ed4b)

ऐसी समस्याएं जिनकी जानकारी पहले से है

  • CompactChip के टैप/टच की ऊंचाई, सुलभता के लिए Material के दिशा-निर्देशों से कम है. इस समस्या को अगले वर्शन (15 जून) में ठीक कर दिया जाएगा. अगर CompactChip का इस्तेमाल किया जा रहा है, तो इस बदलाव का आपके लेआउट पर असर पड़ेगा. इसकी वजह यह है कि CompactChips के ऊपर और नीचे अब अतिरिक्त पैडिंग होगी. कृपया अपने लेआउट में बदलाव करें और उन्हें टेस्ट करें. इसके अलावा, मौजूदा व्यवहार का इस्तेमाल करने के लिए, गड़बड़ी से जुड़ी टिप्पणियां देखें. (b/234332135)

गड़बड़ियां ठीक की गईं

  • TimeText पर स्टार्ट टेक्स्ट जोड़ने या हटाने के लिए ऐनिमेशन वाला नया डेमो. (I16d75)
  • HorizontalPageIndicator.PagesState (I64ed0) के लिए टेस्ट जोड़ना
  • TimeText को यूज़र एक्सपीरियंस (यूएक्स) की ज़रूरी शर्तों के हिसाब से अपडेट किया जा रहा है (Ib7ea1)

वर्शन 1.0.0-beta02

18 मई, 2022

androidx.wear.compose:compose-foundation:1.0.0-beta02, androidx.wear.compose:compose-material:1.0.0-beta02, और androidx.wear.compose:compose-navigation:1.0.0-beta02 रिलीज़ हो गए हैं. 1.0.0-beta02 वर्शन में ये कमिट शामिल हैं.

नई सुविधाएं

  • पिकर अब हमेशा स्क्रोल इवेंट पर प्रतिक्रिया देता है. भले ही, वह सिर्फ़ पढ़ने के लिए उपलब्ध मोड में हो. इससे, उपयोगकर्ताओं को स्क्रोल करने से पहले, टैप करके कोई पिकर चुनने की ज़रूरत नहीं पड़ती. सिर्फ़ पढ़ने वाले मोड में, चुने गए विकल्प के अलावा अन्य विकल्पों को gradientColor में शिम से छिपाया जाता है. (I72925)
  • हमने Chip/ToggleChip/CompactChip/SplitToggleChip के यूज़र एक्सपीरियंस (यूएक्स) को बदल दिया है, ताकि वह डिफ़ॉल्ट रूप से fillMaxWidth न कर सके. इसके बजाय, वे अपने कॉन्टेंट के हिसाब से बड़े हो जाएंगे. पिछले व्यवहार को बनाए रखने के लिए, बस modifier = Modifier.fillMaxWidth()(I60a2c, b/232206371) जोड़ें

गड़बड़ियां ठीक की गईं

  • CurvedTextStyle कंस्ट्रक्टर में TextStyle का इस्तेमाल करने पर, अब fontWeight का भी इस्तेमाल किया जा सकता है. आने वाले समय में, API के बदलावों में कंस्ट्रक्टर और कॉपी करने के तरीकों में इसे जोड़ा जा सकता है (Ieebb9)
  • किनारे पर स्वाइप करने की सुविधा में सुधार. Modifier.edgeSwipeToDismiss का इस्तेमाल करने पर, अगर किनारे के हिस्से से बाईं ओर स्वाइप करने पर सूचनाएं हट जाती हैं, तो स्वाइप करने की दिशा दाईं ओर होने पर, सूचनाएं हटने की सुविधा ट्रिगर नहीं होती. पहले, बाईं ओर स्वाइप करने के बाद दाईं ओर स्वाइप करके, सूचना को हटाया जा सकता था.(I916ea)
  • HorizontalPageIndicator अब स्क्रीन पर ज़्यादा से ज़्यादा छह पेज दिखाता है. अगर कुल छह से ज़्यादा पेज हैं, तो बाईं या दाईं ओर आधा साइज़ वाला इंडिकेटर दिखता है. साथ ही, पेजों के बीच आसानी से ट्रांज़िशन होता है.(I2ac29)
  • ScalingLazyColumn और Picker पर, स्नैप करने के डिफ़ॉल्ट तरीके को बेहतर बनाया गया (I49539)
  • किनारे पर स्वाइप करने की सुविधा में सुधार. Modifier.edgeSwipeToDismiss का इस्तेमाल करने पर, 'स्क्रीन पर मौजूद आइटम को स्वाइप करके हटाएं' सुविधा सिर्फ़ तब ट्रिगर होती है, जब पहली बार स्क्रीन के किनारे पर टच किया जाता है और दाईं ओर स्वाइप किया जाता है. पहले, स्क्रीन के किसी भी हिस्से से स्वाइप करके, 'स्क्रीन पर मौजूद आइटम को स्वाइप करके हटाएं' सुविधा को ट्रिगर किया जा सकता था. हालांकि, अब ऐसा नहीं किया जा सकता.(I8ca2a)

वर्शन 1.0.0-beta01

11 मई, 2022

androidx.wear.compose:compose-foundation:1.0.0-beta01, androidx.wear.compose:compose-material:1.0.0-beta01, और androidx.wear.compose:compose-navigation:1.0.0-beta01 रिलीज़ हो गए हैं. 1.0.0-beta01 वर्शन में ये बदलाव शामिल हैं.

Wear OS 1.0 के लिए Compose में क्या है

Wear OS के लिए Compose का 1.0.0-beta01 वर्शन, एक अहम माइलस्टोन है. इस वर्शन में लाइब्रेरी की सभी सुविधाएं मौजूद हैं और एपीआई लॉक हो गया है.

Wear Compose के 1.0 वर्शन में ये कॉम्पोनेंट शामिल हैं:

  • मटीरियल थीम - इसका इस्तेमाल, 'मोबाइल के लिए Compose' MaterialTheme के विकल्प के तौर पर किया जाता है. यह Wearables पर कॉम्पोनेंट बनाने के लिए रंग, आकार, और टाइपोग्राफ़ी उपलब्ध कराती है. ये कॉम्पोनेंट, Wear के लिए मटीरियल डिज़ाइन के UX दिशा-निर्देशों को लागू करते हैं.
  • Button, CompactButton, और ToggleButton - बटन में एक स्लॉट होता है, जिसमें आइकॉन, इमेज या कम से कम तीन वर्णों का टेक्स्ट डाला जा सकता है. यह गोलाकार आकार का होना चाहिए. साथ ही, इसमें डिफ़ॉल्ट, बड़े या छोटे बटन के लिए सुझाए गए साइज़ होने चाहिए. CompactButton में किसी भी तरह के कॉन्टेंट (आइकॉन, इमेज या टेक्स्ट) को शामिल करने के लिए एक स्लॉट होता है. यह गोल आकार का होता है और इसका बैकग्राउंड साइज़ बहुत छोटा होता है. CompactButton में बैकग्राउंड के चारों ओर पारदर्शी पैडिंग होती है. इससे क्लिक किए जा सकने वाले हिस्से का साइज़ बढ़ जाता है. ToggleButton एक ऐसा बटन है जिसमें किसी भी तरह के कॉन्टेंट (छोटा टेक्स्ट, आइकॉन या इमेज) को डालने के लिए एक स्लॉट होता है. साथ ही, इसमें रंग और अलग-अलग आइकॉन के साथ चालू/बंद (चुनी हुई/चुनी नहीं गई) स्थितियां होती हैं, ताकि यह पता चल सके कि चुना गया है या नहीं
  • कार्ड - इसका इस्तेमाल, ऐप्लिकेशन के बारे में जानकारी दिखाने के लिए किया जाता है. जैसे, सूचनाएं. AppCard और TitleCard के साथ, अलग-अलग तरह के इस्तेमाल के उदाहरणों के लिए फ़्लेक्सिबल डिज़ाइन. इसमें अलग-अलग लेआउट और इमेज को कार्ड के कॉन्टेंट या बैकग्राउंड के तौर पर इस्तेमाल करने की सुविधा मिलती है.
  • चिप - बटन की तरह ही स्टेडियम के आकार वाले कॉम्पोनेंट, लेकिन लेबल, सेकंडरी लेबल, और आइकॉन के लिए बड़े एरिया और कई स्लॉट के साथ. अलग-अलग साइज़ में और बैकग्राउंड के तौर पर इमेज का इस्तेमाल किया जा सकता है.
  • ToggleChips और SplitToggleChips - यह एक ऐसा चिप है जिसमें सही का निशान लगा/न लगा होने की स्थिति होती है. साथ ही, इसमें ToggleControl स्लॉट भी जोड़ा जाता है, ताकि कॉम्पोनेंट की सही स्थिति दिखाने के लिए, स्विच या रेडियो बटन जैसे आइकॉन दिखाए जा सकें. इसके अलावा, SplitToggleChip में दो टैप किए जा सकने वाले हिस्से होते हैं. एक पर क्लिक किया जा सकता है और दूसरे को टॉगल किया जा सकता है.
  • CircularProgressIndicator - Wear Material प्रोग्रेस इंडिकेटर, जिसमें दो वैरिएशन हैं. पहला, किसी टास्क के पूरे होने का अनुपात दिखाता है. साथ ही, यह शुरू और खत्म होने के कोणों के बीच, सर्कुलर ट्रैक में गैप दिखाता है. दूसरे स्टेटस से पता चलता है कि प्रोसेस पूरी होने में कितना समय लगेगा, यह तय नहीं है.
  • curvedText - यह डीएसएल का हिस्सा है. इसका इस्तेमाल, CurvedLayouts के साथ-साथ curvedRow और curvedColumn के बारे में बताने के लिए किया जाता है. इससे, सर्कुलर डिवाइसों के आस-पास कॉम्पोनेंट को व्यवस्थित किया जा सकता है. CurvedLayout और CurvedModifier के बारे में ज़्यादा जानकारी के लिए, नीचे Wear Component Foundation देखें. यह नॉन-कर्व्ड वर्ल्ड में, मॉडिफ़ायर की तरह ही काम करता है. साथ ही, लेआउट, पैडिंग, ग्रेडिएंट वगैरह के अलग-अलग पहलुओं को कॉन्फ़िगर करने की सुविधा देता है.
  • डायलॉग, सूचना, और पुष्टि - डायलॉग, फ़ुल-स्क्रीन डायलॉग दिखाता है. यह किसी भी दूसरे कॉन्टेंट के ऊपर लेयर में दिखता है. साथ ही, इसे स्वाइप करके खारिज किया जा सकता है. इसमें एक स्लॉट लगता है. यह Wear Material के डायलॉग कॉन्टेंट के हिसाब से होना चाहिए, जैसे कि सूचना या पुष्टि. सूचना, आइकॉन, टाइटल, और मैसेज के लिए स्लॉट वाला, अपनी राय देने वाला डायलॉग कॉन्टेंट होता है. इसमें, एक साथ दिखने वाले दो नेगेटिव और पॉज़िटिव बटन या वर्टिकल तौर पर स्टैक किए गए एक या उससे ज़्यादा चिप के लिए ओवरलोड होते हैं. पुष्टि करने वाला डायलॉग कॉन्टेंट, किसी खास समय के लिए मैसेज दिखाता है. इसमें आइकॉन या इमेज (जिसे ऐनिमेट किया जा सकता है) के लिए एक स्लॉट होता है.
  • HorizontalPageIndicator - यह Wear डिवाइस के फ़ॉर्म फ़ैक्टर के हिसाब से, पेज की हॉरिज़ॉन्टल पोज़िशन दिखाता है. इसे गोल डिवाइसों पर फ़ुल स्क्रीन और घुमावदार इंडिकेटर दिखाने के लिए डिज़ाइन किया गया है. इसका इस्तेमाल, साथ में गाना गाने वाले व्यक्ति के पेज व्यूअर के साथ किया जा सकता है.
  • आइकॉन - Wear पर आइकॉन का इस्तेमाल करने का तरीका. इसमें Wear की मटीरियल थीम से रंग और अल्फा लेवल लिया जाता है. क्लिक किए जा सकने वाले आइकॉन के लिए, बटन या चिप देखें.
  • पिकर - आइटम की स्क्रोल की जा सकने वाली सूची दिखाता है. डिफ़ॉल्ट रूप से, आइटम दोनों दिशाओं में ‘अनगिनत बार’ दोहराए जाएंगे. चुने गए विकल्पों को छिपाने के लिए, रीड-ओनली मोड में दिखाया जा सकता है.
  • PositionIndicator - स्मार्टवॉच के फ़ॉर्म फ़ैक्टर के हिसाब से, स्क्रोल की पोज़िशन या पोज़िशन की जानकारी दिखाता है. इसे फ़ुल स्क्रीन के हिसाब से डिज़ाइन किया गया है. यह गोल डिवाइसों पर, कर्व वाला इंडिकेटर दिखाता है.
  • स्कैफ़ोल्ड - Wear के लिए, मटीरियल डिज़ाइन के विज़ुअल लेआउट का बुनियादी स्ट्रक्चर लागू करता है. यह कॉम्पोनेंट, Wear Material के कई कॉम्पोनेंट (जैसे, TimeText, PositionIndicator, और Vignette) को एक साथ जोड़ने के लिए एपीआई उपलब्ध कराता है. इससे स्क्रीन बनाई जाती है और यह पक्का किया जाता है कि उनके लिए लेआउट की सही रणनीति अपनाई गई है. साथ ही, ज़रूरी डेटा इकट्ठा किया जाता है, ताकि ये कॉम्पोनेंट एक साथ सही तरीके से काम कर सकें.
  • ScalingLazyColumn - यह स्क्रोल करने वाला स्केलिंग/फ़िशआई लिस्ट कॉम्पोनेंट है. यह Wear के Material Design की भाषा का एक अहम हिस्सा है. कॉन्टेंट आइटम को स्केल करने और पारदर्शी बनाने की सुविधा देता है. ScalingLazyColumn को बड़ी संख्या में कॉन्टेंट आइटम को मैनेज करने के लिए डिज़ाइन किया गया है. ये आइटम ज़रूरत पड़ने पर ही मेटालाइज़ और कंपोज किए जाते हैं.
  • स्लाइडर - इससे उपयोगकर्ता, वैल्यू की रेंज में से कोई वैल्यू चुन सकते हैं. चुने गए विकल्पों की रेंज को बार के तौर पर दिखाया जाता है. इसे वैकल्पिक रूप से सेपरेटर के साथ दिखाया जा सकता है.
  • स्टेपर - यह एक फ़ुल-स्क्रीन कॉम्पोनेंट है. इसकी मदद से, उपयोगकर्ता स्क्रीन के ऊपर और नीचे मौजूद, बढ़ाएं/कम करें बटन का इस्तेमाल करके, वैल्यू की रेंज में से कोई वैल्यू चुन सकते हैं. इसके बीच में, टेक्स्ट या चिप के लिए एक स्लॉट होता है.
  • SwipeToDismissBox - 'खारिज करने के लिए स्वाइप करें' जेस्चर को मैनेज करता है. इसमें बैकग्राउंड (सिर्फ़ स्वाइप जेस्चर के दौरान दिखता है) और फ़ोरग्राउंड कॉन्टेंट के लिए एक ही स्लॉट लगता है. SwipeDismissableNavHost का इस्तेमाल करके, इसे androidx नेविगेशन लाइब्रेरी के साथ जोड़ा जा सकता है. इसके बारे में ज़्यादा जानने के लिए, नीचे Wear Compose नेविगेशन लाइब्रेरी देखें.
  • टेक्स्ट - Compose के मटीरियल टेक्स्ट कॉम्पोनेंट को Wear पर लागू करने का तरीका. इसमें Wear की मटीरियल थीम से रंग और अल्फा लेवल लिया जाता है
  • TimeText - यह एक ऐसा कॉम्पोनेंट है जो स्क्रीन पर सबसे ऊपर समय और ऐप्लिकेशन की स्थिति दिखाता है. गोल स्क्रीन पर टेक्स्ट को घुमाकर, स्क्रीन के आकार के हिसाब से अडजस्ट करता है.
  • वाइनेट - स्caffold में इस्तेमाल करने के लिए स्क्रीन का एक तरीका. यह स्क्रोल किए जा सकने वाले कॉन्टेंट के इस्तेमाल के दौरान, स्क्रीन के ऊपर और नीचे वाले हिस्से को धुंधला कर देता है.

  • Wear Compose फ़ाउंडेशन में ये कॉम्पोनेंट भी शामिल हैं:

  • CurvedLayout - Wear Foundation CurvedLayout एक लेआउट कंपोजबल है. यह अपने चाइल्ड एलिमेंट को एक आर्क में रखता है और ज़रूरत के हिसाब से उन्हें घुमाता है. यह एक रॉ लेआउट की तरह है, जिसे ऐन्यूलियस के सेगमेंट में घुमाया गया है. ध्यान दें कि CurvedLayout का कॉन्टेंट, कंपोज करने लायक लैम्ब्डा नहीं है. बल्कि, यह डीएसएल (डोमेन के हिसाब से बनी भाषा) है. CurvedLayout के DSL में मौजूद सभी एलिमेंट, CurvedModifier से बनाए गए वैकल्पिक मॉडिफ़ायर पैरामीटर के साथ काम करते हैं.

  • basicCurvedText - CurvedLayout DSL, basicCurvedText में मौजूद एक एलिमेंट. इसकी मदद से, डेवलपर आसानी से सर्कल के कर्व के हिसाब से टेक्स्ट लिख सकते हैं. आम तौर पर, यह टेक्स्ट सर्कुलर स्क्रीन के किनारे पर दिखता है. basicCurvedText को सिर्फ़ CurvedLayout में बनाया जा सकता है, ताकि आपको बेहतर अनुभव मिल सके. जैसे, पोज़िशनिंग तय करना और CurvedModifiers का इस्तेमाल करना. ध्यान दें कि ज़्यादातर मामलों में curvedText का इस्तेमाल किया जाना चाहिए, क्योंकि यह Material थीम का इस्तेमाल करता है.

  • curvedComposable - सामान्य कॉम्पोज़ेबल कॉन्टेंट को रैप करता है, ताकि इसका इस्तेमाल CurvedLayout के साथ किया जा सके. अगर curvedComposable में कई एलिमेंट हैं, तो उन्हें एक-दूसरे के ऊपर ड्रॉ किया जाएगा (जैसे, बॉक्स). कई कॉम्पोज़ेबल को कर्व के साथ रखने के लिए, हर कॉम्पोज़ेबल को curvedComposable के साथ रैप करें.

  • curvedRow और curvedColumn - curvedRow और curvedColumn को CurvedLayout के अंदर नेस्ट किया जा सकता है, ताकि ज़रूरत के हिसाब से एलिमेंट को व्यवस्थित किया जा सके. यह Row और Column की तरह ही काम करता है. curvedRow के लिए, ऐंगल वाले लेआउट की दिशा और रेडियल अलाइनमेंट तय किया जा सकता है. curvedColumn के लिए, ऐंगल अलाइनमेंट और रेडियल डायरेक्शन तय किया जा सकता है.

  • CurvedModifier - सभी कर्व किए गए कॉम्पोनेंट, एक मॉडिफ़ायर पैरामीटर स्वीकार करते हैं. इसे CurvedModifier का इस्तेमाल करके बनाया जा सकता है: बैकग्राउंड, साइज़, वेट, और पैडिंग काम करती है.

  • Wear Compose नेविगेशन में यह कॉम्पोनेंट भी शामिल है:

  • SwipeDismissableNavHost - Compose की हैरारकी में एक जगह उपलब्ध कराता है, ताकि नेविगेशन अपने-आप हो सके. इसमें स्वाइप जेस्चर की मदद से, पीछे की ओर नेविगेट किया जा सकता है. कॉन्टेंट को SwipeToDismissBox में दिखाया जाता है, जिसमें मौजूदा नेविगेशन लेवल दिखता है. 'स्‍वाइप करके हटाएं' जेस्चर के दौरान, बैकग्राउंड में पिछला नेविगेशन लेवल (अगर कोई है) दिखता है.

  • डिलीवर किए गए वर्शन के बारे में ज़्यादा जानकारी के लिए, ऐल्फ़ा वर्शन के रिलीज़ नोट देखें.

एपीआई में हुए बदलाव

  • CurvedModifier.padding* फ़ंक्शन जोड़े गए. इनका इस्तेमाल, घुमावदार कॉम्पोनेंट के चारों ओर जोड़ने के लिए अतिरिक्त स्पेस तय करने के लिए किया जाता है. (I4dbb4)
  • CompositionLocal इंटरनल क्लास (I42490) हटाया गया
  • हमने दिशा-निर्देश के तौर पर, Button, CompactButton, और ToggleButton आइकॉन के साइज़ के लिए कॉन्स्टेंट वैल्यू जोड़ी हैं (I57cab)
  • AppCard और TitleCard में, चालू पैरामीटर जोड़ें. अब उनके पास androidx.compose.material कार्ड जैसा ही एपीआई है. पैरामीटर को 'गलत है' पर सेट करने पर, कार्ड पर क्लिक नहीं किया जा सकेगा. (Idc48d, b/228869805)

गड़बड़ियां ठीक की गईं

  • अब जब भी स्टीपर की कम से कम या ज़्यादा से ज़्यादा वैल्यू पर पहुंच जाता है, तो घटाने और बढ़ाने वाले बटन बंद हो जाते हैं. साथ ही, iconColor पर ContentAlpha.disabled लागू हो जाता है (I4be9f)
  • हमने पिकर के कॉन्टेंट के चारों ओर 1dp पैडिंग जोड़ी है. ऐसा इसलिए किया गया है, ताकि स्वाइप करते समय टेक्स्ट में होने वाली झटके वाली गति को रोका जा सके. (I0b7b9)
  • PositionIndicator (I5e8bc) के लिए स्क्रीनशॉट टेस्ट जोड़ना
  • AppCard और TitleCard के लिए ज़्यादा टेस्ट जोड़ें (I85391, b/228869805)

वर्शन 1.0.0-alpha21

20 अप्रैल, 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha21, androidx.wear.compose:compose-material:1.0.0-alpha21, और androidx.wear.compose:compose-navigation:1.0.0-alpha21 रिलीज़ हो गए हैं. 1.0.0-alpha21 वर्शन में ये कमिट शामिल हैं.

नई सुविधाएं

  • घुमावदार एलिमेंट के बैकग्राउंड की जानकारी देने के लिए, नए घुमावदार मॉडिफ़ायर जोड़े गए: CurvedModifier.background, .radialGradientBackground, और .angularGradientBackground (I8f392)
  • टेक्स्ट के कर्व किए गए ओवरफ़्लो मोड (क्लिप/इलिप्सिस/दिखता है) को तय करने की अनुमति दें. (I8e7aa)
  • CurvedModifier.weight मॉडिफ़ायर जोड़ा गया, जो 'लिखें' टैब में मौजूद मॉडिफ़ायर से मिलता-जुलता है. इसका इस्तेमाल, curvedRow और CurvedLayout के बच्चों (चौड़ाई के लिए) और curvedColumn के बच्चों (ऊंचाई के लिए) पर किया जा सकता है. (I8abbd)
  • घुमावदार एलिमेंट के साइज़ की जानकारी देने के लिए, CurvedModifier.size, .angularSize, और .radialSize मॉडिफ़ायर जोड़े गए. (I623c7)

एपीआई में हुए बदलाव

  • पैरामीटर का क्रम बदलें, ताकि यह पक्का किया जा सके कि Wear Compose API (I43208) में बैकग्राउंड, कलर से पहले हो
  • क्लॉकवाइज़ और insideOut पैरामीटर हटा दिए गए हैं. साथ ही, नई क्लास में ज़्यादा जानकारी देने वाले कॉन्स्टेंट से बदल दिए गए हैं. अब घुमावदार लेआउट की दिशा LayoutDirection के बारे में पता हो सकती है. अगर इसकी जानकारी नहीं दी जाती है, तो यह इनहेरिट हो जाती है (If0e6a)
  • ScalingLazyColumn में एपीआई से जुड़ी समस्या को ठीक करने के लिए, हमने autoCenter: Boolean को autoCenter: AutoCentringParams से बदल दिया है. (Ia9c90)
  • हमने पूरे एपीआई (चिप/टॉगल चिप/डायलॉग/स्लाइडर/स्टेपर/...) में iconTintColor और toggleControlTintColor का नाम बदलकर iconColor और toggleControlColor कर दिया है, क्योंकि रंग आइकॉन/टॉगल कंट्रोल स्लॉट पर लागू होता है. (Ied238)
  • PageIndicatorStyle एट्रिब्यूट के लिए दी गई वैल्यू को, वैल्यू क्लास (I2dc72) में फिर से लिखें
  • हमने अपने Composables के कुछ स्लॉट में RowScope/ColumnScope/BoxScope जोड़ा है, ताकि डेवलपर को यह पता चल सके कि लेआउट की क्या मान्यताएं हैं. इससे डेवलपर, कुछ स्लॉट कॉन्टेंट पर अतिरिक्त मॉडिफ़ायर का इस्तेमाल कर पाएंगे. साथ ही, उन्हें अतिरिक्त लेआउट एलिमेंट देने की ज़रूरत नहीं पड़ेगी. इसके अलावा, हमने ऐप्लिकेशन कार्ड/टाइटल कार्ड के रंगों में कुछ छोटे अपडेट किए हैं, ताकि timeColor और appColor डिफ़ॉल्ट रूप से contentColor पर सेट हो जाएं. ज़रूरत पड़ने पर, इन प्रॉपर्टी को अलग-अलग तरीके से बदला जा सकता है. (I26b59)
  • SwipeToDismissBoxState.Companion ऑब्जेक्ट को निजी बनाया (I39e84)
  • InlineSlider और Stepper के लिए पैरामीटर का क्रम ठीक करें. एपीआई के दिशा-निर्देशों का पालन करने के लिए एक आसान बदलाव (I11fec)
  • हमने SwipeToDismissBoxState के लिए सेवर ऑब्जेक्ट को हटा दिया है, क्योंकि इसका इस्तेमाल नहीं किया गया था. (Ifb54e)
  • हमने CompactChip को अपडेट किया है, ताकि इसे यूज़र एक्सपीरियंस (यूएक्स) के नए स्पेसिफ़िकेशन के मुताबिक बनाया जा सके. पैडिंग को हॉरिज़ॉन्टल = 12.dp और वर्टिकल = 0.dp पर सेट किया गया है. लेबल के फ़ॉन्ट को button से बदलकर caption1 कर दिया गया है. आइकॉन और लेबल, दोनों मौजूद होने पर आइकॉन का सुझाया गया साइज़ 20x20 है. सिर्फ़ आइकॉन वाले कॉम्पैक्ट चिप के लिए, आइकॉन का साइज़ 24x24 होना चाहिए. सिर्फ़ आइकॉन के इस्तेमाल के उदाहरण के लिए, हमने यह भी पक्का किया है कि आइकॉन को बीच में अलाइन किया गया हो. (Iea2be)
  • हमने ScalingLazyListLayoutInfo में कई नए फ़ील्ड जोड़े हैं, ताकि डेवलपर यह जान सकें कि contentPadding और autoCenteringPadding की कितनी रकम लागू की गई है. डेवलपर के लिए, फ़्लिंग/स्क्रोल का हिसाब लगाते समय ये काम के हो सकते हैं (I7577b)
  • हमने डायलॉग के लिए इन/आउट ट्रांज़िशन लागू कर दिए हैं. showDialog पैरामीटर जोड़ा गया है और डायलॉग अब अपनी विज़िबिलिटी को कंट्रोल करता है. इससे डायलॉग के दिखने/छिपने पर, डायलॉग के लिए शुरुआती और आखिरी ऐनिमेशन चलने की सुविधा चालू होती है. ध्यान दें कि जब उपयोगकर्ता, स्वाइप करके डायलॉग को बंद करता है, तो आउट्रो ऐनिमेशन नहीं चलता. हमने हाल ही में जोड़े गए SwipeToDismissBox ओवरलोड में, स्टेटस के लिए डिफ़ॉल्ट वैल्यू भी जोड़ी है. (I682a0)
  • i18n और a11y को बेहतर तरीके से काम करने के लिए, हमने ToggleChip और SplitToggleChip में बदलाव किया है, ताकि अब उनके पास toggleControl स्लॉट के लिए कोई डिफ़ॉल्ट वैल्यू न हो. हमने ToggleChipDefaults को भी बदल दिया है, ताकि नीचे दिए गए तरीके अब आइकॉन के बजाय ImageVector दिखाएं. ध्यान दें कि अब ये @Composables नहीं दिखाते हैं, इसलिए इन्हें छोटे अक्षरों से शुरू किया गया है. ये तरीके SwitchIcon()->switchIcon(), CheckboxIcon->checkboxIcon(), और RadioIcon()->radioIcon() हैं. इससे डेवलपर, सही contentDescription सेट की मदद से अपने Icon() कॉम्पोज़ेबल बना सकते हैं. (I5bb5b)
  • हमने SwipeDismissableNavHost में SwipeDismissableNavHostState पैरामीटर जोड़ा है. यह नेविगेशन डेस्टिनेशन के तौर पर इस्तेमाल की जाने वाली स्क्रीन पर, किनारे से स्वाइप करने की सुविधा के साथ काम करता है. इसकी वजह यह है कि SwipeToDismissBoxState को अब होस्ट किया जा सकता है और किनारे से स्वाइप करने की ज़रूरत वाली स्क्रीन पर, SwipeDismissableNavHostState और Modifier.edgeSwipeToDismiss, दोनों को शुरू करने के लिए इस्तेमाल किया जा सकता है. (I819f5, b/228336555)

गड़बड़ियां ठीक की गईं

  • पक्का करें कि ज़रूरत पड़ने पर, कर्व किए गए लेआउट अपडेट किए जाएं. (Ie8bfa, b/229079150)
  • https://issuetracker.google.com/issues/226648931 (Ia0a0a, b/226648931) में मौजूद गड़बड़ी को ठीक किया गया
  • एक्सपेरिमेंट के लिए इस्तेमाल किए गए ग़ैर-ज़रूरी एनोटेशन हटाए गए (I88d7e)

वर्शन 1.0.0-alpha20

6 अप्रैल, 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha20, androidx.wear.compose:compose-material:1.0.0-alpha20, और androidx.wear.compose:compose-navigation:1.0.0-alpha20 रिलीज़ हो गए हैं. 1.0.0-alpha20 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • SwipeToDismiss के लिए edgeSwipeToDismiss मॉडिफ़ायर जोड़ें. इससे swipeToDismiss सिर्फ़ व्यूपोर्ट के बाएं किनारे पर चालू होता है. इसका इस्तेमाल तब किया जाता है, जब स्क्रीन के बीच में हॉरिज़ॉन्टल पेजिंग की सुविधा होनी चाहिए. जैसे, मैप को 2-डी स्क्रोल करना या पेजों के बीच हॉरिज़ॉन्टल स्वाइप करना.(I3fcec, b/200699800)

एपीआई में हुए बदलाव

  • CurvedModifiers को लागू करने का बुनियादी तरीका. इससे , घुमावदार कॉन्टेंट को पसंद के मुताबिक बनाने के तरीके उपलब्ध कराए जा सकते हैं. हालांकि, फ़िलहाल कोई CurvedModifiers उपलब्ध नहीं है और कस्टम मॉडिफ़ायर बनाने की सुविधा बाद में उपलब्ध हो सकती है (I9b8df)
  • EdgeSwipeबेहतर तरीके से समझने के लिए, मॉडिफ़ायर के दस्तावेज़ और डिफ़ॉल्ट वैल्यू अपडेट की गईं .(I6d00d)
  • स्कैफ़ोल्ड में PageIndicator स्लॉट जोड़ें. PageIndicator को सीधे Scaffold में जोड़कर, यह पक्का किया जा सकता है कि यह गोलाकार डिवाइसों पर सही तरीके से दिखेगा. (Ia6042)
  • InlineSlider और Stepper पैरामीटर से डिफ़ॉल्ट आइकॉन हटाएं. इससे डेवलपर को स्थानीय भाषा में उपलब्ध कराने और ऐप्लिकेशन को सुलभ बनाने से जुड़ी ज़रूरी शर्तों को पूरा करने में मदद मिलेगी. डेमो और सैंपल में, डिफ़ॉल्ट आइकॉन के इस्तेमाल के बारे में बताया गया था. (I7e6fd)
  • TimeText (Iaac32) में, आखिर में मौजूद और शुरुआत में मौजूद पैरामीटर के नामों को, शुरू और खत्म होने के समय से बदलना
  • हमने SwipeToDismissBox पैरामीटर के साथ onDismissed ओवरलोड जोड़ा है, ताकि स्वाइप जेस्चर पूरा होने पर नेविगेशन इवेंट को ट्रिगर करने के सामान्य इस्तेमाल को सपोर्ट किया जा सके. (I50353, b/226565726)
  • TimeText के इस्तेमाल से ExperimentalWearMaterialApi एनोटेशन हटाए गए (Ide520)
  • हमने ScalingLazyList/Column स्कोप और जानकारी वाले इंटरफ़ेस को 'सील किया गया' के तौर पर मार्क किया है, क्योंकि इन्हें बाहरी डेवलपर लागू नहीं कर सकते. इससे, आने वाले समय में हम बिना किसी बदलाव के इनमें नए सदस्य जोड़ पाएंगे. (I7d99f)
  • हमने पिकर में एक नई flingBehaviour प्रॉपर्टी और PickerDefaults.flingBehaviour() तरीका जोड़ा है. इससे, फ़्लिंग व्यवहार को कॉन्फ़िगर किया जा सकता है. जैसे, आरएसबी (रिमोट स्टोरेज बॉक्स) के लिए सहायता जोड़ना. PickerState अब ScrollableState इंटरफ़ेस लागू करता है. (Ib89c7)

गड़बड़ियां ठीक की गईं

  • Wear Compose लाइब्रेरी के लिए, Android Runtime (ART) के बेसलाइन प्रोफ़ाइल नियमों को अपडेट करें. ART, डिवाइसों पर प्रोफ़ाइल नियमों का फ़ायदा उठा सकता है. इससे, ऐप्लिकेशन की परफ़ॉर्मेंस को बेहतर बनाने के लिए, ऐप्लिकेशन के किसी खास सबसेट को पहले से कंपाइल किया जा सकता है. ध्यान दें कि इससे, डीबग किए जा सकने वाले ऐप्लिकेशन पर कोई असर नहीं पड़ेगा. (Iaa8ef)
  • दस्तावेज़ को बेहतर बनाना (I2c051)

वर्शन 1.0.0-alpha19

23 मार्च, 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha19, androidx.wear.compose:compose-material:1.0.0-alpha19, और androidx.wear.compose:compose-navigation:1.0.0-alpha19 रिलीज़ हो गए हैं. 1.0.0-alpha19 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • CurvedRow का नाम बदलकर CurvedLayout कर दिया गया है. साथ ही, इसे डीएसएल के साथ स्कोप के तौर पर फिर से तैयार किया गया है. इस डीएसएल का इस्तेमाल करके, नेस्ट किए गए curvedRow और curvedColumn की सीरीज़ का इस्तेमाल करके, ज़्यादा जटिल कर्व वाले लेआउट तय किए जा सकते हैं. ये लेआउट, लाइन और कॉलम के कर्व वाले लेआउट के बराबर होते हैं. इन लेआउट एलिमेंट में, तीन एलिमेंट का इस्तेमाल किया जा सकता है: curvedComposable (कोई भी @Composable जोड़ने के लिए), basicCurvedText (फ़ाउंडेशन का कर्व्ड टेक्स्ट) और curvedText (Wear डिवाइसों के लिए कर्व्ड टेक्स्ट). (Ib776a)
  • PositionIndicator के लिए साइड को कॉन्फ़िगर करने लायक बनाएं. अब PositionIndicator की बुनियादी पोज़िशन को End (लेआउट की दिशा के हिसाब से), OppositeRsb (स्क्रीन रोटेशन को ध्यान में रखकर, फ़िज़िकल आरएसबी के सामने पोज़िशन करने के लिए) या बाएं और दाएं के तौर पर कॉन्फ़िगर किया जा सकता है. (I2f1f3)
  • SwipeToDismissBox के लिए, हमने SwipeDismissTarget.Original का नाम बदलकर SwipeToDismissValue.Default और SwipeDismissTarget.Dismissal का नाम बदलकर SwipeToDismissValue.Dismissed कर दिया है. हमने SwipeToDismissBoxDefaults.BackgroundKey और SwipeToDismissBoxDefaults.ContentKey को क्रमशः SwipeToDismissKeys.Background और SwipeToDismissKeys.Content पर ले गए हैं. (I47a36)
  • हमने पिकर में रीड-ओनली मोड जोड़ा है. यह उन स्क्रीन के लिए है जिनमें एक से ज़्यादा पिकर होते हैं और एक बार में सिर्फ़ एक पिकर में बदलाव किया जा सकता है. जब पिकर रीड-ओनली मोड में होता है, तो यह चुना गया मौजूदा विकल्प और लेबल दिखाता है. हालांकि, अगर कोई लेबल नहीं दिया गया है, तो सिर्फ़ विकल्प दिखता है. (I879de)
  • SwipeToDismissBoxState को फिर से तैयार किया गया है, ताकि ExperimentalWearMaterialApi के दायरे को Modifier.swipeable और SwipeableState तक सीमित किया जा सके. इनका इस्तेमाल अब अंदरूनी तौर पर किया जाता है. SwipeToDismissBoxState में अब currentValue, targetValue, isAnimationRunning, और snapTo सदस्य हैं, ताकि सामान्य इस्तेमाल के उदाहरणों के लिए मदद मिल सके. अगर आपको कोई और प्रॉपर्टी उपलब्ध कराने की ज़रूरत है, तो कृपया हमें बताएं. साथ ही, SwipeableState के व्यवहार को भी ठीक किया गया है. ऐसा तब होता है, जब स्वाइप ऑफ़सेट, ऐंकर के राउंडिंग गड़बड़ी के अंदर हो. (I58302)

गड़बड़ियां ठीक की गईं

  • ScalingLazyColumn के कॉन्टेंट को स्क्रोल किया जा सकता है या नहीं, यह पता लगाने के लिए आसान और ठीक किया गया कोड. इसका इस्तेमाल यह तय करने के लिए किया जाता है कि स्क्रोलबार दिखाया जाए या नहीं (I7bce0)
  • एक से ज़्यादा स्टेटस के साथ इस्तेमाल करने और उनमें स्विच करने पर, पोज़िशन इंडिकेटर में आ रही गड़बड़ी को ठीक किया गया (I320b5)
  • हमने Wear OS की थीम के लिए, Compose के डिफ़ॉल्ट टाइपोग्राफ़ी/फ़ॉन्ट को अपडेट किया है, ताकि यह यूज़र एक्सपीरियंस (यूएक्स) से जुड़े हमारे नए दिशा-निर्देशों के मुताबिक हो. ध्यान दें कि display1 (40.sp) और display2 (34.sp) अब अपनी पिछली वैल्यू से छोटे हैं. साथ ही, लाइन की ऊंचाई और लाइन स्पेसिंग में कई अन्य छोटे अपडेट किए गए हैं. (Ie3077)
  • हमने SwipeToDismissBox में रेज़िस्टेंस जोड़ा है, ताकि सिर्फ़ खारिज करने के लिए स्वाइप करने पर ही मोशन शुरू हो. इसके अलावा, दूसरी दिशा में स्वाइप करने पर मोशन शुरू न हो. (Ifdfb9)
  • हमने CircularProgressIndicator फ़ंक्शन के लिए, पैरामीटर की कुछ डिफ़ॉल्ट वैल्यू बदल दी हैं, ताकि उन्हें Wear Material Design UX के दिशा-निर्देशों के मुताबिक बनाया जा सके. स्पिनर/अनिश्चित वर्शन के लिए, साइज़ (40->24.dp), indicatorColor (primary->onBackground), trackColor पारदर्शिता (30%->10%) और स्ट्रोक की चौड़ाई (4->3dp) को अपडेट किया गया है. प्रोग्रेस/Determinate वर्शन के लिए, trackColor की ट्रांसपेरंसी (30%->10%) को अपडेट किया गया है. (I659cc)
  • हमने Wear Material Design के यूज़र एक्सपीरियंस (यूएक्स) की नई खास बातों के मुताबिक, ScalingLazyColumn के डिफ़ॉल्ट स्केलिंग पैरामीटर को अपडेट कर दिया है. इस वजह से, सूची के आइटम, सूची के बीच में ज़्यादा स्केल किए जाते हैं. हालांकि, सूची के किनारों पर आइटम पहले की तुलना में कम स्केल किए जाते हैं. (Ica8f3)
  • ऐनिमेशन के आखिर में होने वाले बदलावों को बेहतर बनाने के लिए, ScalingLazyColumnDefaults.snapFlingBehavior में कुछ बदलाव किए गए हैं (If3260)

वर्शन 1.0.0-alpha18

9 मार्च, 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha18, androidx.wear.compose:compose-material:1.0.0-alpha18, और androidx.wear.compose:compose-navigation:1.0.0-alpha18 रिलीज़ हो गए हैं. 1.0.0-alpha18 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • PositionIndicator में कई सुधार किए गए हैं: ShowResult का नाम बदलकर PositionIndicatorVisibility कर दिया गया है. ज़रूरत न होने पर, फिर से कैलकुलेशन करने से बचने के लिए, परफ़ॉर्मेंस में कुछ सुधार किए गए हैं (Iaed9d)
  • SplitToggleChip के लिए सुझाया गया रंग अपडेट कर दिया गया है. SplitToggleChip के चुने या नहीं चुने जाने पर, अब उसका बैकग्राउंड एक ही रंग का दिखता है. ToggleControl के रंग से यह पता चलता है कि कॉम्पोनेंट चुना गया है या नहीं. हमने नई कलर स्कीम के साथ काम करने के लिए, एक नया ToggleDefaults.splitToggleChipColors() जोड़ा है. हमने splitBackgroundOverlayColor (I7e66e) को हटाकर, toggleChipColors() के तरीकों को भी आसान बनाया है
  • हमने ScalingLazyListItemInfo में unadjustedSize जोड़ा है, क्योंकि फ़्लोट की गणित की सटीक जानकारी की वजह से, आइटम के मूल साइज़ का हिसाब, स्केल किए गए साइज़ और स्केलिंग फ़ैक्टर का इस्तेमाल करके लगाना सुरक्षित नहीं है. (I54657, b/221079441)
  • HorizontalPageIndicator जोड़ें. यह पेजों की कुल संख्या और चुने गए पेज की जानकारी दिखाता है. डिवाइस के आकार के हिसाब से, यह लीनियर या कर्व हो सकता है. इसमें इंडिकेटर का कस्टम आकार भी इस्तेमाल किया जा सकता है. इससे यह तय होता है कि हर इंडिकेटर को विज़ुअल तौर पर कैसे दिखाया जाए. (Iac898)
  • हमने PickerState को अपडेट कर दिया है, ताकि numberOfOptions को अपडेट किया जा सके. यह DatePicker जैसे इस्तेमाल के उदाहरणों के साथ काम करता है. ऐसा तब होता है, जब चुने गए महीने के हिसाब से महीने में दिनों की संख्या बदल जाती है. इसके हिसाब से, PickerState के कंस्ट्रक्टर पैरामीटर को initialNumberOfOptions में बदल दिया गया है. (Iad066)
  • जब स्क्रोलबार मौजूद हो और स्क्रोल न किया जा सकता हो, तब PositionIndicator को छिपाएं. (Id0a7f)
  • Scaffold के साथ एक जैसा दिखने के लिए, हमारा फ़ुल-स्क्रीन डायलॉग कॉम्पोनेंट अब PositionIndicator और Vignette दिखाता है. हम अब Column के बजाय ScalingLazyColumn का इस्तेमाल भी कर रहे हैं. इसका मतलब है कि डायलॉग बॉक्स का कॉन्टेंट अब ScalingLazyListScope में है. साथ ही, आम तौर पर इसे आइटम { /* content */ } के अंदर रखना ज़रूरी है. डायलॉग बॉक्स, verticalArrangement पैरामीटर के साथ काम करता है. (Idea13)
  • हमने ToggleChip और SplitToggleChip toggleIcon प्रॉपर्टी का नाम बदलकर toggleControl कर दिया है, ताकि इसे Material Design के साथ बेहतर तरीके से अलाइन किया जा सके. इससे डिज़ाइनर और डेवलपर को एपीआई को नेविगेट करने में मदद मिलेगी. (If5921, b/220129803)
  • हमने Wear Material थीम टाइप में एक नई एंट्री caption3 जोड़ी है.Caption3 एक छोटा फ़ॉन्ट है, जिसका इस्तेमाल कानूनी टेक्स्ट जैसे लंबे फ़ॉर्मैट वाले लेखों के लिए किया जाता है. (I74b13, b/220128356)

गड़बड़ियां ठीक की गईं

  • वहां पहुंचने पर, स्नैप करने का ऐनिमेशन बंद करें. (Idb69d)
  • PositionIndicator में बदलावों को ऐनिमेट करना. (I94cb9)
  • यूज़र इंटरफ़ेस (यूआई)/यूज़र एक्सपीरियंस (यूएक्स) से मिले सुझावों के आधार पर, हमने ScalingLazyColumn ऑटोसेंटरिंग की सुविधा को बदल दिया है. इससे, इंडेक्स ScalingLazyListState.initialCenterItemIndex या उससे ज़्यादा वाले आइटम को व्यूपोर्ट के बीच में स्क्रोल किया जा सकेगा. इसकी मदद से, डेवलपर आइटम के बारे में एक या दो आइटम को शुरुआत में बीच में रख सकते हैं. इन्हें बीच में स्क्रोल नहीं किया जा सकता. इसका मतलब है कि अपने-आप बीच में आने वाला ScalingLazyColumn, initialCenterItemIndex/initialCenterItemScrollOffset (I22ee2) के ऊपर स्क्रोल नहीं कर पाएगा
  • हमने तारीख चुनने वाले टूल का एक डेमो जोड़ा है. साथ ही, PickerState में एक गड़बड़ी को ठीक किया है. इस गड़बड़ी की वजह से, पिकर दिखने तक initiallySelectedOption लागू नहीं होता था. (Id0d7e)
  • सर्कुलर स्क्रीन पर चौड़े ScalingLazyColumn आइटम की क्लिपिंग को कम करने के लिए, हमने डिफ़ॉल्ट हॉरिज़ॉन्टल कॉन्टेंट पैडिंग को 8 से बढ़ाकर 10 डीपी कर दिया है. (I0d609)
  • पक्का करें कि स्क्रोल करते समय PositionIndicator दिखे. (Ied9a2)

वर्शन 1.0.0-alpha17

23 फ़रवरी, 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha17, androidx.wear.compose:compose-material:1.0.0-alpha17, और androidx.wear.compose:compose-navigation:1.0.0-alpha17 रिलीज़ हो गए हैं. 1.0.0-alpha17 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने स्नैप की सुविधा जोड़ी है. इसका इस्तेमाल ScalingLazyColumn के साथ किया जा सकता है. स्नैप की सुविधा चालू करने के लिए, flingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state) को सेट करें. (I068d3, b/217377069)
  • हमने पिकर के लिए डेमो जोड़े हैं. इनका इस्तेमाल, 24 घंटे या 12 घंटे वाली घड़ी में समय चुनने के लिए किया जाता है. (Ie5552)

एपीआई में हुए बदलाव

  • स्क्वेयर डिवाइस पर TimeText कस्टम फ़ॉन्ट और स्टाइल से जुड़ी समस्या को ठीक करना (Iea76e)
  • ScalingLazyListLayoutInfo में अब reverseLayout, viewportSize, और ओरिएंटेशन प्रॉपर्टी हैं, जो LazyListLayoutInfo (I4f258, b/217917020) की प्रॉपर्टी से मेल खाती हैं
  • ScalingLazyColumn में अब userScrollEnabled प्रॉपर्टी है, जो LazyList (I164d0, b/217912513) से मेल खाती है
  • पिकर में अब डिफ़ॉल्ट रूप से ऊपर और नीचे ग्रेडिएंट है (Iab92a)

गड़बड़ियां ठीक की गईं

  • हमने ScalingLazyColumn में बदलाव किया है, ताकि यह अपने पैरंट में अब लालच से सारा स्पेस न भर सके. इसके बजाय, यह अपने कॉन्टेंट के साइज़ के हिसाब से साइज़ लेगा. इससे यह LazyColumn के काम करने के तरीके से मेल खाता है. अगर आपको पुराने व्यवहार को वापस लाना है, तो Modifier.fillMaxWidth()/width()/widthIn() को ScalingLazyColumn (I51bf8) पर पास करें
  • हमने SwipeDismissableNavHost.kt में अपवाद मैसेज को बेहतर बनाया है. यह मैसेज तब ट्रिगर होता है, जब नेविगेशन बैकस्टैक खाली हो. (I1b1dc)

वर्शन 1.0.0-alpha16

9 फ़रवरी, 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha16, androidx.wear.compose:compose-material:1.0.0-alpha16, और androidx.wear.compose:compose-navigation:1.0.0-alpha16 रिलीज़ हो गए हैं. 1.0.0-alpha16 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • CircularProgressIndicator जोड़ें. प्रोग्रेस इंडिकेटर से, किसी प्रोसेस में लगने वाले समय या इंतज़ार के समय के बारे में पता चलता है. फ़ुल-स्क्रीन मोड में इस्तेमाल करने पर, टाइम टेक्स्ट या अन्य कॉम्पोनेंट के लिए गैप (कटआउट) की सुविधा काम करती है. (Iab8da)

एपीआई में हुए बदलाव

  • पिकर में अब flingBehavior पैरामीटर है. इसकी डिफ़ॉल्ट वैल्यू से, स्क्रोल करने/फ़्लिंग करने पर, पिकर सबसे नज़दीक के विकल्प पर स्नैप हो जाते हैं. (I09000)
  • इनलाइन स्लाइडर और स्टेपर के लिए अतिरिक्त इंटिजर एपीआई (I1b5d6)

गड़बड़ियां ठीक की गईं

  • हमने ScalingLazyListState के लिए, डिफ़ॉल्ट initialCenterItemIndex को 0 से बदलकर 1 कर दिया है. इसका मतलब है कि जब तक ScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =) की मदद से स्टेटस बनाने की प्रोसेस को बदला नहीं जाता, तब तक सूची का दूसरा आइटम (index == 1) शुरू करने के समय व्यूपोर्ट के बीच में रखा जाएगा और पहला आइटम (index == 0) उसके पहले रखा जाएगा. इससे, डिफ़ॉल्ट रूप से बेहतर विज़ुअल इफ़ेक्ट मिलता है, क्योंकि ज़्यादातर व्यूपोर्ट, लिस्ट आइटम से भरा होगा. (I0c623, b/217344252)
  • हमने ScalingLazyColumn डिफ़ॉल्ट extraPadding को 10% से घटाकर 5% कर दिया है. इससे, यह पक्का किया जा सकेगा कि ड्रॉ करने के लिए, लिस्ट में ज़रूरत के मुताबिक आइटम मौजूद हों. भले ही, हम उनमें से कुछ आइटम के साइज़ को छोटा कर रहे हों. इससे, सूची में ऐसे अतिरिक्त आइटम शामिल होने से बचा जा सकेगा जो शायद व्यूपोर्ट में न दिखें. अगर नॉन-स्टैंडर्ड scalingParams का इस्तेमाल किया जा रहा है (उदाहरण के लिए, ज़्यादा एक्सट्रीम स्केलिंग), तो डेवलपर viewportVerticalOffsetResolver का इस्तेमाल करके अतिरिक्त पैडिंग में बदलाव कर सकता है. (I76be4)
  • स्क्वेयर डिवाइस (Ibd3fb) पर, एक से ज़्यादा लाइनों में TimeText की समस्या को ठीक करना
  • हमने ScalingLazyColumn में बदलाव किया है, ताकि यह अपने पैरंट में अब लालच से सारा स्पेस न भर सके. इसके बजाय, यह अपने कॉन्टेंट के साइज़ के हिसाब से साइज़ लेगा. इससे यह LazyColumn के व्यवहार से मेल खाता है. अगर आपको पुराने व्यवहार को वापस लाना है, तो Modifier.fillMaxSize() को ScalingLazyColumn पर पास करें - ध्यान दें: यह बदलाव अधूरा है और इसे अगले Alpha रिलीज़ में फ़ॉलो अप बदलाव में ठीक किया जाएगा. (I3cbfa)

वर्शन 1.0.0-alpha15

26 जनवरी, 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha15, androidx.wear.compose:compose-material:1.0.0-alpha15, और androidx.wear.compose:compose-navigation:1.0.0-alpha15 रिलीज़ हो गए हैं. 1.0.0-alpha15 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • हमने ScalingLazyColumn में एक नई प्रॉपर्टी autoCentering जोड़ी है. अगर यह 'सही है' (डिफ़ॉल्ट) पर सेट है, तो इससे यह पक्का होगा कि पहले और आखिरी आइटम के साथ-साथ सभी आइटम को स्क्रोल किया जा सकता है, ताकि वे सूची के व्यूपोर्ट के बीच में दिखें. ध्यान दें कि अपने-आप फ़्रेम के बीचो-बीच दिखने की सुविधा का इस्तेमाल करने पर, आपको वर्टिकल कॉन्टेंट पैडिंग को 0.dp पर सेट करना पड़ सकता है. अगर अपने-आप बीच में दिखने की सुविधा और वर्टिकल कॉन्टेंट पैडिंग, दोनों दी गई हैं, तो दोनों की वजह से सूची के पहले और आखिरी आइटम से पहले और बाद में अतिरिक्त जगह उपलब्ध होगी. इससे, उन्हें और भी स्क्रोल किया जा सकेगा. (I2a282, b/214922490)
  • हमने एक Dialog कॉम्पोनेंट जोड़ा है. इसकी मदद से, किसी भी कॉम्पोज़ेबल में फ़ुल स्क्रीन डायलॉग को ट्रिगर किया जा सकता है. यह डायलॉग, अन्य कॉन्टेंट के ऊपर दिखता है. डायलॉग बॉक्स दिखने पर, उसे स्वाइप करके खारिज किया जा सकता है. साथ ही, स्वाइप करने के दौरान, उसके पैरंट का कॉन्टेंट बैकग्राउंड में दिखेगा. डायलॉग बॉक्स का कॉन्टेंट Alert या Confirmation होना चाहिए. इनका नाम पहले AlertDialog और ConfirmationDialog था. Alert, Confirmation, और Dialog, सभी androidx.wear.compose.material.dialog पैकेज में मौजूद हैं. सूचना और पुष्टि का इस्तेमाल, नेविगेशन डेस्टिनेशन के तौर पर किया जा सकता है. साथ ही, ज़रूरत के मुताबिक सूचना और पुष्टि करने वाले पैरामीटर में ColumnScope जोड़ा गया. (Ia9014)
  • हमने WearOS के लिए Compose में, Material थीम के रंगों से onSurfaceVariant2 को हटा दिया है. साथ ही, लाइब्रेरी में इस्तेमाल किए गए onSurfaceVariant2 को onSurfaceVariant से बदल दिया है. (Icd592)
  • PickerState पर प्रोग्राम के हिसाब से कोई विकल्प चुनने का तरीका जोड़ा गया है. साथ ही, PickerState बनाते समय, पहले से चुना गया विकल्प भी चुना जा सकता है. (I92bdf)
  • हमने ScalingLazyColumn के फ़्लिंग व्यवहार को पसंद के मुताबिक बनाने की सुविधा जोड़ी है. (I1ad2e, b/208842968)
  • हमने Wear.Compose.Navigation लाइब्रेरी में NavController.currentBackStackEntryAsState() जोड़ दिया है. (If9028, b/212739653)
  • Wear डिवाइसों के लिए, घूमने वाले साइड बटन के साथ Modifier.onRotaryScrollEvent() और Modifier.onPreRotaryScrollEvent() जोड़े गए.(I18bf5, b/210748686)

वर्शन 1.0.0-alpha14

12 जनवरी, 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha14, androidx.wear.compose:compose-material:1.0.0-alpha14, और androidx.wear.compose:compose-navigation:1.0.0-alpha14 रिलीज़ हो गए हैं. 1.0.0-alpha14 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने ScalingLazyListState में कई तरीके जोड़े हैं, ताकि डेवलपर किसी खास सूची के आइटम पर स्क्रोल कर सकें. साथ ही, शुरुआती सूची के आइटम और ऑफ़सेट को सेट कर सकें.

    इस बदलाव के तहत, हमने ScalingLazyList में भी बदलाव किया है, ताकि यह व्यूपोर्ट के शुरू होने के बजाय, ScalingLazyList के व्यूपोर्ट के बीच में दिखे.

    ScalingLazyList में एक नई प्रॉपर्टी anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter जोड़ी गई है. इससे यह कंट्रोल किया जा सकता है कि सेंटर (ScalingLazyListAnchorType.ItemCenter) या Edge (ScalingLazyListAnchorType.ItemStart) को व्यूपोर्ट की सेंटरलाइन के साथ अलाइन किया जाए या नहीं.

    इस वजह से, ScalingLazyListItemInfo.offset और ScalingLazyListItemInfo.adjustedOffset बदल गए हैं और अब वे सूची के आइटम की पोज़िशन और सूची के anchorType, दोनों के हिसाब से आइटम का ऑफ़सेट दिखाएंगे. उदाहरण के लिए, ItemCenter के anchorType वाले ScalingLazyColumn और सूची के उस आइटम के लिए जिसका केंद्र, व्यूपोर्ट की सेंटरलाइन पर है, ऑफ़सेट 0 होगा.

    नए तरीके scrollTo, animatedScrollTo, centerItemIndex, और centerItemOffset हैं. (I61b61)

  • हमने SwipeDismissableNavHost में 'वापस जाएं' बटन हैंडलर जोड़ा है, ताकि 'वापस जाएं' बटन दबाने पर, नेविगेशन के लेआउट में पिछले लेवल पर पहुंचा जा सके. (I5b086, b/210205624)

वर्शन 1.0.0-alpha13

15 दिसंबर, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha13, androidx.wear.compose:compose-material:1.0.0-alpha13, और androidx.wear.compose:compose-navigation:1.0.0-alpha13 रिलीज़ हो गए हैं. 1.0.0-alpha13 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • हमने RangeIcons को इंटरनल बना दिया है. इसका रेफ़रंस, InlineSlider और Stepper में दिया गया है. (I927ec)

गड़बड़ियां ठीक की गईं

  • एक समस्या को ठीक किया गया है. इसमें SwipeDismissableNavHost, लाइफ़साइकल स्टेटस CREATED में पहुंचने से पहले ही, Compose की हैरारकी में डेस्टिनेशन जोड़ देता था. इस वजह से, IllegalStateException दिखता था. navigation-compose से 2.4.0-beta02 और उसके बाद के वर्शन पर डिपेंडेंसी को अपडेट करने के लिए, यह सुधार करना ज़रूरी था. (I40a2b, b/207328687)

  • Wear Compose लाइब्रेरी में ड्रॉबल संसाधन पाने के लिए, Drawables enum क्लास जोड़ी गई है, ताकि अब रिफ़्लेक्शन की ज़रूरत न पड़े. इससे एक गड़बड़ी ठीक हो गई है. इस गड़बड़ी की वजह से, minifyEnabled=true या shrinkResources=true का इस्तेमाल करने पर, लाइब्रेरी के ड्रॉबल हट जाते थे. (Ib2a98)

  • Wear Compose (I2d03a) में Stepper के लिए टेस्ट जोड़े गए

  • Wear Compose नेविगेशन में SwipeDismissableNavHost के लिए सैंपल जोड़े गए. (I85f06)

वर्शन 1.0.0-alpha12

1 दिसंबर, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha12, androidx.wear.compose:compose-material:1.0.0-alpha12, और androidx.wear.compose:compose-navigation:1.0.0-alpha12 रिलीज़ हो गए हैं. 1.0.0-alpha12 वर्शन में ये कमिट शामिल हैं.

नई सुविधाएं

  • हमने एक स्टेपर कॉम्पोनेंट जोड़ा है. इससे उपयोगकर्ता, वैल्यू की रेंज में से कोई वैल्यू चुन सकते हैं. स्टेपर, फ़ुल-स्क्रीन कंट्रोल होता है. इसमें सबसे ऊपर और सबसे नीचे, वैल्यू बढ़ाने और घटाने वाले बटन होते हैं. साथ ही, बीच में एक स्लॉट होता है. इसमें चिप या टेक्स्ट डाला जा सकता है. ज़रूरत पड़ने पर, बटन के आइकॉन को पसंद के मुताबिक बनाया जा सकता है. (I625fe)

  • हमने डायलॉग बॉक्स दिखाने के लिए दो नए कॉम्पोज़ेबल जोड़े हैं: AlertDialog, उपयोगकर्ता से जवाब का इंतज़ार करता है और टाइटल, आइकॉन, मैसेज दिखाता है. साथ ही, इनमें से कोई एक विकल्प भी दिखाता है: a) आसानी से स्वीकार या अस्वीकार करने के लिए दो बटन या b) ज़्यादा विकल्पों के लिए, वर्टिकल तौर पर स्टैक किए गए चिप या टॉगल चिप, ConfirmationDialog, टाइम आउट के साथ एक सूचना दिखाता है. इस आसान डायलॉग में, टाइटल और ऐनिमेशन वाले आइकॉन के लिए स्लॉट हैं. (Ic2cf8)

एपीआई में हुए बदलाव

  • डायलॉग बॉक्स के सुझाए गए कुल समय की वैल्यू में इकाइयां (मिलीसेकंड) जोड़ें. (I09b48)

वर्शन 1.0.0-alpha11

17 नवंबर, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha11, androidx.wear.compose:compose-material:1.0.0-alpha11, और androidx.wear.compose:compose-navigation:1.0.0-alpha11 रिलीज़ हो गए हैं. 1.0.0-alpha11 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने एक पिकर कॉम्पोनेंट जोड़ा है, जिससे उपयोगकर्ता स्क्रोल करने वाली सूची से कोई आइटम चुन सकता है. डिफ़ॉल्ट रूप से, चुने जा सकने वाले आइटम की सूची, दोनों दिशाओं में 'अनगिनत' बार दोहराई जाती है. इससे, साइड से देखे गए घूमते हुए सिलेंडर का आभास मिलता है. आने वाले रिलीज़ में दो सुविधाएं जोड़ी जाएंगी: स्वाइप/फ़्लिंग करने के बाद, किसी वैल्यू पर स्नैप करना; मौजूदा वैल्यू पर सेट करने/स्क्रोल करने के लिए, PickerState में एक फ़ंक्शन जोड़ना. (I6461b)

एपीआई में हुए बदलाव

  • ScalingLazyItemScope और कुछ नए मॉडिफ़ायर fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight जोड़े गए हैं. इनकी मदद से, पैरंट कंटेनर के साइज़ के आधार पर, सूची के आइटम का साइज़ तय किया जा सकता है. आइटम को पैरंट के साइज़ के हिसाब से या उसके कुछ हिस्से के हिसाब से सेट किया जा सकता है. इससे, LazyRow/Column (I4612f) में पहले से उपलब्ध फ़ंक्शन का पता चलता है
  • ScalingLazyColumn में सहायता जोड़ी गई, ताकि आइटम के लिए कोई कुंजी दी जा सके. ऐरे और सूचियों से आइटम जोड़ने के लिए, आसान तरीके भी जोड़े गए हैं. (Ic1f89)

गड़बड़ियां ठीक की गईं

  • TimeText (I8cb64) के लिए अन्य उदाहरण

वर्शन 1.0.0-alpha10

3 नवंबर, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha10, androidx.wear.compose:compose-material:1.0.0-alpha10, और androidx.wear.compose:compose-navigation:1.0.0-alpha10 रिलीज़ हो गए हैं. 1.0.0-alpha10 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • Wear Compose के लिए, इनलाइन स्लाइडर जोड़ा गया. InlineSlider की मदद से, उपयोगकर्ता वैल्यू की रेंज में से कोई वैल्यू चुन सकते हैं. चुनने के लिए दी गई वैल्यू की रेंज, रेंज की सबसे कम और सबसे ज़्यादा वैल्यू के बीच एक बार के तौर पर दिखती है. इससे उपयोगकर्ता किसी एक वैल्यू को चुन सकते हैं. (If0148)

  • WearOS कोडलैब के लिए, Compose की नई सुविधा देखें!

एपीआई में हुए बदलाव

  • Macrobenchmark में अब 23 का minSdkVersion है. (If2655)

गड़बड़ियां ठीक की गईं

  • SideEffect में SwipeDismissableNavHost में ट्रांज़िशन मैनेज करने की सुविधा को अपडेट करें (I04994, b/202863359)
  • SwipeDismissableNavHost में ट्रांज़िशन मैनेज करने की सुविधा को अपडेट किया गया (I1cbe0, b/202863359)

वर्शन 1.0.0-alpha09

27 अक्टूबर, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha09, androidx.wear.compose:compose-material:1.0.0-alpha09, और androidx.wear.compose:compose-navigation:1.0.0-alpha09 रिलीज़ हो गए हैं. 1.0.0-alpha09 वर्शन में ये कमिट शामिल हैं.

नई सुविधाएं

  • हमने Wear OS पर Compose के डेवलपर प्रीव्यू को लॉन्च कर दिया है. इस बारे में ज़्यादा जानने के लिए, हमारी ब्लॉग पोस्ट पढ़ें. इसमें मुख्य कॉम्पोज़ेबल के बारे में जानकारी दी गई है. साथ ही, इनका इस्तेमाल शुरू करने के लिए, अन्य संसाधनों के लिंक भी दिए गए हैं.

एपीआई में हुए बदलाव

  • हमने डेवलपर के लिए, Wear Material Design की कलर थीम में सभी रंगों को पसंद के मुताबिक बनाने की सुविधा जोड़ी है. (I4759b, b/199754668)

गड़बड़ियां ठीक की गईं

  • SwipeToDismissBox के ऐसे सैंपल जोड़े गए हैं जो स्टेटस को बनाए रखते हैं (Ibaffe)
  • CurvedText, TimeText, और SwipeToDismissBox के लिए, KDocs से developer.android.com की गाइड के लिंक जोड़े गए. (I399d4)
  • अगर कोई मौजूदा डेस्टिनेशन नहीं है, तो अब SwipeDismissableNavHost गड़बड़ी दिखाता है. इससे पता चलता है कि NavGraph को wear.compose.navigation.composable उपयोगिता फ़ंक्शन के साथ नहीं बनाया गया था (I91403)
  • TimeText (I4f6f0) में टाइम सोर्स के इस्तेमाल के लिए, ज़्यादा दस्तावेज़ और उदाहरण जोड़े गए

वर्शन 1.0.0-alpha08

13 अक्टूबर, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha08, androidx.wear.compose:compose-material:1.0.0-alpha08, और androidx.wear.compose:compose-navigation:1.0.0-alpha08 रिलीज़ हो गए हैं. 1.0.0-alpha08 वर्शन में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • हमने AppCard और TitleCard body प्रॉपर्टी का नाम बदलकर content कर दिया है. साथ ही, उन्हें प्रॉपर्टी की सूची में सबसे आखिर में ले जाया गया है, ताकि उन्हें ट्रैलिंग लैम्ब्डा के तौर पर उपलब्ध कराया जा सके. स्लॉट के नए नामों के साथ एक जैसा रखने के लिए, bodyColor का नाम बदलकर contentColor कर दिया गया है. (I57e78)

गड़बड़ियां ठीक की गईं

  • बटन, कार्ड, चिप, थीम, पोज़िशन इंडिकेटर, और स्केलिंग लेज़ी कॉलम कॉम्पोनेंट के लिए, KDocs से developer.android.com की गाइड के लिंक जोड़े गए. (I22428)
  • WearOS SwipeToDismissBox में, कभी-कभी स्वाइप करने पर भी सूचनाएं न हटने की समस्या को ठीक किया गया. (I9387e)
  • Button, CompactButton, Chip, CompactChip, AppCard, TitleCard, ToggleButton, ToggleChip, SplitToggleChip (Iddc15) के लिए सैंपल जोड़े गए
  • कार्ड, चिप, टॉगल चिप, टाइम टेक्स्ट, और स्केलिंग लेज़ी कॉलम के लिए, माइक्रोबेंचमार्क परफ़ॉर्मेंस टेस्ट जोड़े गए हैं. (If2fe9)

वर्शन 1.0.0-alpha07

29 सितंबर, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha07, androidx.wear.compose:compose-material:1.0.0-alpha07, और androidx.wear.compose:compose-navigation:1.0.0-alpha07 रिलीज़ हो गए हैं. 1.0.0-alpha07 वर्शन में ये कमिट शामिल हैं.

नई सुविधाएं

  • मटीरियल में CurvedText कॉम्पोनेंट जोड़ा गया है. इसकी मदद से, डेवलपर आसानी से सर्कल के कर्व के हिसाब से टेक्स्ट लिख सकते हैं. आम तौर पर, यह कॉम्पोनेंट सर्कुलर स्क्रीन के किनारे पर इस्तेमाल किया जाता है. (I19593)

एपीआई में हुए बदलाव

  • TimeText (Idfead) के लिए टेस्ट जोड़े गए
  • ArcPaddingValues को इंटरफ़ेस में बदलें. (Iecd4c)
  • SwipeToDismissBox (I9ad1b) में ऐनिमेशन जोड़ा गया
  • SwipeToDismissBox API में hasBackground पैरामीटर जोड़ा गया है, ताकि बैकग्राउंड में कोई कॉन्टेंट न होने पर, स्वाइप जेस्चर बंद किया जा सके. (I313d8)
  • rememberNavController() अब Navigator के वैकल्पिक इंस्टेंस का एक सेट लेता है. इसे, अकंपैनिस्ट नेविगेशन मटीरियल जैसे वैकल्पिक नेविगेटर के साथ बेहतर तरीके से काम करने के लिए, दिखाए गए NavController में जोड़ा जाएगा. (I4619e)
  • navigation-common से NamedNavArgument का रेफ़रंस दें और wear.compose.navigation से कॉपी हटाएं. (I43af6)

गड़बड़ियां ठीक की गईं

  • छोटे डिवाइसों पर CurvedRow के टेस्ट में आने वाली समस्या को ठीक किया गया. (If7941)
  • कॉन्टेंट अपडेट होने पर, CurvedRow पर फ़्लिकरिंग की समस्या को ठीक किया गया है. साथ ही, यह पक्का किया गया है कि CurvedRow को फिर से मेज़र किया गया है (Ie4e06)
  • UX स्पेसिफ़िकेशन में हुए बदलावों के हिसाब से, ChipDefaults.gradientBackgroundChipColors() को अपडेट किया गया है. अब ग्रेडिएंट, MaterialTheme.colors.primary से शुरू होता है और MaterialTheme.colors.surface पर खत्म होता है. इसमें MaterialTheme.colors.surface का बैकग्राउंड 75% अल्फा और MaterialTheme.colors.surface का अल्फा 0% होता है. (Id1548)
  • हमने चुने गए स्टेटस में ToggleChips के रंगों को अपडेट किया है, ताकि वे Wear Material Design UX स्पेसिफ़िकेशन के नए दिशा-निर्देशों से मेल खा सकें. चुने गए ToggleChips का बैकग्राउंड अब ग्रेडिएंट है. सबसे ऊपर बाईं ओर, MaterialTheme.color.surface @ 0% alpha से लेकर सबसे नीचे दाईं ओर, MaterialTheme.color.primary @ 32% alpha तक. यह बैकग्राउंड, MaterialTheme.color.surface @ 75% alpha के बैकग्राउंड पर है. इससे, ToggleChip के लिए सही का निशान लगाने और हटाने के बीच का अंतर ज़्यादा सूक्ष्म हो जाता है. (Idd40b)

वर्शन 1.0.0-alpha06

15 सितंबर, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha06, androidx.wear.compose:compose-material:1.0.0-alpha06, और androidx.wear.compose:compose-navigation:1.0.0-alpha06 रिलीज़ हो गए हैं. 1.0.0-alpha06 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • हमने Scaffold को टॉप लेवल के ऐप्लिकेशन कॉम्पोज़ेबल के तौर पर जोड़ा है. यह PositionIndicators (जैसे कि स्क्रोल या वॉल्यूम) की पोज़िशन को मैनेज करने के लिए स्ट्रक्चर उपलब्ध कराता है. साथ ही, समय और ऐप्लिकेशन की स्थिति दिखाने के लिए, स्क्रीन पर सबसे ऊपर एक एरिया भी उपलब्ध कराता है. इसके अलावा, यह स्क्रोल किए जा सकने वाले कॉन्टेंट के लिए, स्क्रीन के ऊपरी और निचले हिस्से को धुंधला करने के लिए, Vignette की सुविधा भी देता है. स्कैफ़ोल्ड के मुख्य हिस्से में, ऐप्लिकेशन का कॉन्टेंट रखा जाता है. (I5e0bf)
  • Wear Compose (I5654c) के लिए, TimeText लागू करने की सुविधा जोड़ी गई

Wear Compose नेविगेशन लाइब्रेरी

  • हमने Wear Compose नेविगेशन लाइब्रेरी की पहली रिलीज़ जोड़ी है. यह Wear Compose और Androidx नेविगेशन लाइब्रेरी के बीच इंटिग्रेशन उपलब्ध कराती है. यह आपके ऐप्लिकेशन में, डेस्टिनेशन के तौर पर @Composable फ़ंक्शन के बीच नेविगेट करने का आसान तरीका उपलब्ध कराता है.

  • इस शुरुआती रिलीज़ में ये सुविधाएं मिलती हैं:

    • SwipeDismissableNavHost कॉम्पोज़ेबल, जो नेविगेशन ग्राफ़ को होस्ट करता है और स्वाइप जेस्चर की मदद से पीछे नेविगेट करने की सुविधा देता है
    • NavGraphBuilder.composable एक्सटेंशन, जो नेविगेशन ग्राफ़ बनाने में मदद करता है
    • rememberSwipeDismissableNavController() को होइस्टिंग स्टेटस की अनुमति देने के लिए
  • इस्तेमाल का उदाहरण, जिसमें हमने दो स्क्रीन बनाई हैं और उनमें नेविगेट किया है:

    val navController = rememberSwipeDismissableNavController()
    SwipeDismissableNavHost(
        navController = navController,
        startDestination = "start"
    ) {
        composable("start") {
            Column(
                horizontalAlignment = Alignment.CenterHorizontally,
                verticalArrangement = Arrangement.Center,
                modifier = Modifier.fillMaxSize(),
            ) {
                Button(onClick = { navController.navigate("next") }) {
                    Text("Go")
                }
            }
        }
        composable("next") {
            Column(
                horizontalAlignment = Alignment.CenterHorizontally,
                verticalArrangement = Arrangement.Center,
                modifier = Modifier.fillMaxSize(),
            ) {
                Text("Swipe to go back")
            }
        }
    }
    
  • Wear Compose नेविगेशन को एक अलग लाइब्रेरी के तौर पर पैकेज किया गया है, ताकि वे Wear Compose ऐप्लिकेशन जो अपने नेविगेशन को मैन्युअल तरीके से लागू करते हैं उन्हें Androidx नेविगेशन लाइब्रेरी पर निर्भर न होना पड़े.

एपीआई में हुए बदलाव

  • बैकग्राउंड और कॉन्टेंट के लिए मुख्य आइडेंटिटी सेट करके, SwipeDismissableNavHost को rememberSaveable के साथ काम करने के लिए अपडेट किया गया (I746fd)
  • हमने PositionIndicator अडैप्टर जोड़ा है, जो LazyListState (I21b88) को हैंडल कर सकता है
  • rememberSaveable के साथ काम करने के लिए, SwipeToDismissBox को अपडेट किया गया (Ie728b)
  • हमने ScalingLazyColumn में, रिवर्स लेआउट की सुविधा जोड़ी है. इससे स्क्रोलिंग और लेआउट की दिशा को उलटाया जा सकता है (I9e2fc)
  • performGesture और GestureScope, जिन्हें अब इस्तेमाल नहीं किया जाता. इन्हें performTouchInput और TouchInjectionScope से बदल दिया गया है. (Ia5f3f, b/190493367)
  • हमने VignetteValue का नाम बदलकर VignettePosition कर दिया है. साथ ही, VignetteValue.Both का नाम बदलकर VignettePosition.TopAndBottom कर दिया है. (I57ad7)
  • हमने ScalingLazyColumnState का नाम बदलकर ScalingLazyListState, ScalingLazyColumnItemInfo का नाम बदलकर ScalingLazyListItemInfo, ScalingLazyColumnLayoutInfo का नाम बदलकर ScalingLazyListLayoutInfo, और ScalingLazyColumnScope का नाम बदलकर ScalingLazyListScope कर दिया है. ऐसा इसलिए किया गया है, ताकि आने वाले समय में ScalingLazyRow को लागू करने का फ़ैसला लेने पर, हमें इन नामों में बदलाव न करना पड़े. (I22734)

गड़बड़ियां ठीक की गईं

  • CompactChip के दस्तावेज़ों को अपडेट किया गया है. इससे यह पता चलता है कि आइकॉन या लेबल न देने पर क्या होता है. (I4ba88)
  • हमने Wear कार्ड के कॉम्पोनेंट में कुछ बदलाव किए हैं. (I6b3d0)
    1. TitleCard के टाइटल और मुख्य हिस्से के बीच की स्पेसिंग को 8.dp से घटाकर 2.dp कर दिया गया है.
    2. TitleCard हेडर फ़ॉन्ट को body से बदलकर title3 किया गया.
    3. कार्ड के बैकग्राउंड को गहरे रंग में दिखाने के लिए, बैकग्राउंड का ग्रेडिएंट बदला गया है.

वर्शन 1.0.0-alpha05

1 सितंबर, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha05 और androidx.wear.compose:compose-material:1.0.0-alpha05 रिलीज़ हो गए हैं. 1.0.0-alpha05 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • ArcPaddingValues को @Stable के तौर पर मार्क करें (I57deb)
  • ScalingLazyColumnState अब ScrollableState इंटरफ़ेस लागू करता है. इससे डेवलपर को कॉम्पोनेंट को स्क्रोल करने के लिए, प्रोग्राम के हिसाब से ऐक्सेस मिलता है. (I47dbc)

गड़बड़ियां ठीक की गईं

  • हमने UX स्पेसिफ़िकेशन में किए गए अपडेट के मुताबिक, चिप और टॉगल चिप में आइकॉन और टेक्स्ट के बीच की स्पेसिंग कम कर दी है. (I83802)

वर्शन 1.0.0-alpha04

18 अगस्त, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha04 और androidx.wear.compose:compose-material:1.0.0-alpha04 रिलीज़ हो गए हैं. 1.0.0-alpha04 वर्शन में ये कमिट शामिल हैं.

नई सुविधाएं

  • SwipeToDismissBox और स्वाइप किए जा सकने वाले मॉडिफ़ायर जोड़े गए हैं. इनका इस्तेमाल, बाईं से दाईं ओर स्वाइप करके सूचना हटाने के जेस्चर के साथ किया जा सकता है. हालांकि, यह नेविगेशन कॉम्पोनेंट से अलग है, लेकिन इसका इस्तेमाल एक स्क्रीन से बाहर निकलने और दूसरी स्क्रीन पर जाने के लिए किया जा सकता है. स्वाइप करके हटाने की सुविधा के डेमो के लिए, इंटिग्रेशन टेस्ट जोड़े गए. (I7bbaa)
  • हमने ScalingLazyColumnState क्लास में ScalingLazyColumnItemInfo और ScalingLazyColumnLayoutInfo इंटरफ़ेस जोड़े हैं, ताकि डेवलपर स्केलिंग लागू होने के बाद, ScalingLazyColumn में आइटम की असल पोज़िशन और साइज़ जान सकें. हमने ScalingLazyColumn में 'टॉप' कॉन्टेंट पैडिंग लागू होने पर, स्केलिंग का हिसाब लगाने के तरीके से जुड़ी एक गड़बड़ी को भी ठीक किया है. (I27c07)

एपीआई में हुए बदलाव

  • टेक्स्ट को कर्व करने के विकल्प तय करने के लिए, CurvedTextStyle क्लास जोड़ें. TextStyle से मिलता-जुलता है, लेकिन अब इसमें सिर्फ़ रंग, फ़ॉन्ट साइज़, और बैकग्राउंड का इस्तेमाल किया जा सकता है. आने वाले समय में, स्टाइल करने के और विकल्प जोड़े जाएंगे. (I96ac3)
  • हमने ScalingLazyColumnState क्लास में ScalingLazyColumnItemInfo और ScalingLazyColumnLayoutInfo इंटरफ़ेस जोड़े हैं, ताकि डेवलपर स्केलिंग लागू होने के बाद, ScalingLazyColumn में आइटम की असल पोज़िशन और साइज़ जान सकें. हमने ScalingLazyColumn में 'टॉप' कॉन्टेंट पैडिंग लागू होने पर, स्केलिंग का हिसाब लगाने के तरीके से जुड़ी एक गड़बड़ी को भी ठीक किया है. (I27c07)
  • SwipeToDismissBox एपीआई के SwipeDismissTarget एनम में @ExperimentalWearMaterialApi जोड़ा गया. (I48b5e)

गड़बड़ियां ठीक की गईं

  • SwipeToDismissBox (I9febc) के लिए टेस्ट मटीरियल जोड़ा गया

वर्शन 1.0.0-alpha03

4 अगस्त, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha03 और androidx.wear.compose:compose-material:1.0.0-alpha03 रिलीज़ हो गए हैं. 1.0.0-alpha03 वर्शन में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • CurvedText कॉम्पोनेंट जोड़ा गया है. इसकी मदद से, डेवलपर आसानी से टेक्स्ट लिख सकते हैं. यह टेक्स्ट, आम तौर पर सर्कुलर स्क्रीन के किनारे पर, सर्कल के कर्व के हिसाब से दिखता है (Id1267)
  • हमने CardDefaults.imageBackgroundPainter() का नाम बदलकर CardDefaults.imageWithScrimBackgroundPainter() कर दिया है, ताकि यह साफ़ तौर पर पता चल सके कि बैकग्राउंड इमेज पर स्क्रीम बनाई गई है. (I53206)
  • ScalingLazyColumn कॉम्पोनेंट जोड़ा गया है. यह Wear Material के लिए एक सूची कॉम्पोनेंट उपलब्ध कराता है. यह कॉम्पोनेंट, फ़िश-आई व्यू देता है. इसमें सूची के कॉन्टेंट का साइज़ छोटा हो जाता है और कॉम्पोनेंट के किनारे तक पहुंचने पर, वे पारदर्शी हो जाते हैं. (I7070c)

गड़बड़ियां ठीक की गईं

  • हमने UX स्पेसिफ़िकेशन के अपडेट के जवाब में, AppCard में appName कॉन्टेंट का डिफ़ॉल्ट रंग बदल दिया है. appName का डिफ़ॉल्ट रंग अब MaterialTheme.colors.onSurfaceVariant है. इसके अलावा, टाइटल स्लॉट के लिए, पैरामीटर दस्तावेज़ का ब्यौरा जोड़ा गया है. (Ic4ad1)

वर्शन 1.0.0-alpha02

21 जुलाई, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha02 और androidx.wear.compose:compose-material:1.0.0-alpha02 रिलीज़ हो गए हैं. 1.0.0-alpha02 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • आर्क में लेआउट किए गए कॉम्पोज़ेबल के लिए, CurvedRow नाम की एक नई क्लास जोड़ी गई है (I29941)
  • ऐप्लिकेशन में इस्तेमाल करने के लिए, एक नए तरह का कार्ड (टाइटल कार्ड) जोड़ा गया है. साथ ही, कार्ड के बैकग्राउंड के तौर पर इमेज इस्तेमाल करने की सुविधा भी जोड़ी गई है, ताकि कार्ड के कॉन्टेंट पर ज़्यादा ध्यान दिया जा सके (I53b0f)

एपीआई में हुए बदलाव

  • CurvedRow में रेडियल अलाइनमेंट की सुविधा जोड़ी गई. यह सुविधा, पंक्ति में वर्टिकल अलाइनमेंट की तरह ही काम करती है (Id9de5)
  • आर्क में लेआउट किए गए कॉम्पोज़ेबल में, CurvedRow नाम की नई क्लास जोड़ी गई है (I29941)
  • ऐप्लिकेशन में इस्तेमाल करने के लिए, एक नए तरह का कार्ड (टाइटल कार्ड) जोड़ा गया है. साथ ही, कार्ड के बैकग्राउंड के तौर पर इमेज इस्तेमाल करने की सुविधा भी जोड़ी गई है, ताकि कार्ड के कॉन्टेंट पर ज़्यादा ध्यान दिया जा सके (I53b0f)
  • ToggleChipDefaults में टॉगल आइकॉन (चेकबॉक्स, स्विच, और रेडियो बटन) जोड़े गए हैं, ताकि डेवलपर आसानी से ToggleChip और SplitToggleChips को कॉन्फ़िगर कर सकें (I7b639)
  • चिप के लिए, शुरू और आखिर में मौजूद कॉन्टेंट के पैडिंग को अपडेट किया गया है, ताकि यह हमेशा 14.dp रहे. इससे कोई फ़र्क़ नहीं पड़ता कि चिप में आइकॉन मौजूद है या नहीं. पहले, आइकॉन मौजूद होने पर पैडिंग 12.dp और मौजूद न होने पर 14.dp होती थी (I34c86)

गड़बड़ियां ठीक की गईं

  • CurvedRow (I93cdb) के लिए टेस्ट जोड़ना
  • Wear Compose की डिपेंडेंसी को Compose 1.0.0-rc01 से जोड़ना. (Ie6bc9)
  • कार्ड और चिप में बैकग्राउंड इमेज पेंटिंग की सुविधा को बदला गया है, ताकि इमेज के अनुपात को बनाए रखने के लिए, इमेज को स्ट्रेच करने के बजाय काटा जा सके. (I29b41)
  • Button और ToggleButton के लिए ज़्यादा डेमो और इंटिग्रेशन टेस्ट जोड़े गए हैं. (5e27ed2)
  • imageBackgroundChips (Ia9183) के लिए, कॉन्टेंट के रंगों को कवर करने के लिए ज़्यादा चिप टेस्ट जोड़े गए

वर्शन 1.0.0-alpha01

1 जुलाई, 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha01 और androidx.wear.compose:compose-material:1.0.0-alpha01 रिलीज़ हो गए हैं. 1.0.0-alpha01 वर्शन में ये कमिट शामिल हैं.

नई सुविधाएं

Wear Compose, Kotlin और Compose पर आधारित लाइब्रेरी है. यह Wear Material डिज़ाइन के साथ काम करती है. यह WearOS स्मार्टवॉच के लिए, Material डिज़ाइन का एक्सटेंशन है. इस पहले अल्फा वर्शन में, इन सुविधाओं को शुरुआती तौर पर लागू किया गया है:

  • मटीरियल थीम - इस लाइब्रेरी में इस्तेमाल किए गए कॉम्पोनेंट के लिए, रंग, टाइपोग्राफ़ी, और आकार को एक जैसा कॉन्फ़िगर करता है.
  • चिप, कॉम्पैक्ट चिप - चिप, स्टेडियम के आकार के होते हैं. इनमें आइकॉन, लेबल, और सेकंडरी लेबल का कॉन्टेंट शामिल किया जा सकता है.
  • - ToggleChip, SplitToggleChip - एक खास तरह का चिप, जिसमें दो-स्टेट टॉगल आइकॉन के लिए स्लॉट शामिल होता है. जैसे, रेडियो बटन या चेकबॉक्स. इसके अलावा, SplitToggleChip में दो टैप किए जा सकने वाले हिस्से होते हैं. इनमें से एक पर क्लिक किया जा सकता है और दूसरे को टॉगल किया जा सकता है.
  • Button, CompactButton - बटन गोल आकार के होते हैं. इनमें आइकॉन या कम से कम टेक्स्ट (ज़्यादा से ज़्यादा तीन वर्ण) के लिए एक कॉन्टेंट स्लॉट होता है.
  • ToggleButton - यह एक ऐसा बटन है जो किसी ऐक्शन को चालू या बंद करता है. इसमें आइकॉन या कम से कम टेक्स्ट (ज़्यादा से ज़्यादा तीन वर्ण) के लिए एक स्लॉट होता है.
  • कार्ड, ऐप्लिकेशन कार्ड - यह रेक्टैंगल आकार का होता है और इसके कोने गोल होते हैं. इसमें ऐप्लिकेशन आइकॉन, समय, टाइटल, और मुख्य हिस्से जैसे कॉन्टेंट के लिए स्लॉट होते हैं.

आने वाले समय में, Wear के मटीरियल डिज़ाइन वाले पिकर, स्लाइडर, सूचियों, पेज इंडिकेटर, डायलॉग, स्क्रोल आरएसबी इंडिकेटर, टॉस्ट वगैरह के लिए, विजेट सेट में और भी सुविधाएं जोड़ी जाएंगी.

इसके अलावा, स्मार्टवॉच के लिए उपलब्ध अन्य सुविधाओं के लिए भी सहायता दी जाएगी. जैसे, कर्व किए गए लेआउट और टेक्स्ट. साथ ही, डेवलपर को स्मार्टवॉच ऐप्लिकेशन/ओवरले बनाने में आसानी हो, इसके लिए स्कैफ़ोल्डिंग की सुविधा भी दी जाएगी.

Wear Compose Material को Compose Material के सिद्धांतों के आधार पर डिज़ाइन किया गया है. हालांकि, इसे पहने जाने वाले डिवाइसों के लिए टारगेट किया गया है. Wear डिवाइस के लिए ऐप्लिकेशन बनाते समय, Compose Material लाइब्रेरी के बजाय Wear Compose Material लाइब्रेरी का इस्तेमाल किया जाना चाहिए.

दोनों “Material” लाइब्रेरी को अलग-अलग माना जाना चाहिए और इन्हें एक ही ऐप्लिकेशन में नहीं मिलाया जाना चाहिए. अगर डेवलपर को अपनी डिपेंडेंसी में Compose Material लाइब्रेरी शामिल करनी पड़ती है, तो इसका मतलब है कि a) Wear Compose Material लाइब्रेरी में कॉम्पोनेंट मौजूद नहीं हैं. कृपया हमें बताएं कि आपको क्या चाहिए या b) किसी ऐसे कॉम्पोनेंट का इस्तेमाल किया जा रहा है जिसे हम स्मार्टवॉच डिवाइस पर इस्तेमाल करने का सुझाव नहीं देते.