Wear Compose

  
पहने जा सकने वाले डिवाइसों के लिए, Jetpack Compose ऐप्लिकेशन लिखें. इसके लिए, पहने जा सकने वाले डिवाइसों, उनके साइज़, आकार, और नेविगेशन जेस्चर के हिसाब से फ़ंक्शन उपलब्ध कराएं.
नया अपडेट रिलीज़ किया गया जांचा और परखा हुआ वर्शन रिलीज़ कैंडिडेट बीटा रिलीज़ ऐल्फ़ा रिलीज़
13 नवंबर, 2024 1.4.0 - - 1.5.0-alpha06

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

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

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

Groovy

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

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

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

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.4.0")
    
    // 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.0")

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

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

    // 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 Material3 वर्शन 1.0

वर्शन 1.0.0-alpha29

13 नवंबर, 2024

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

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

  • हमने TimeText को अपडेट किया है, ताकि समय दिखाने वाला डिफ़ॉल्ट कॉन्टेंट दिया जा सके. (Id23b3)
  • हमने orientation पैरामीटर को हटाकर, PagerState के लिए ScrollInfoProvider को आसान बना दिया है. इस पैरामीटर की अब ज़रूरत नहीं है. TimeText के लिए, हॉरिज़ॉन्टल और वर्टिकल पेजिंग, दोनों में ही यह नया व्यवहार लागू होगा. (I71767)
  • जब वाइब्रेटर एपीआई से पता चलता है कि हैप्टिक्स काम करते हैं, तो LocalHapticFeedback अब डिफ़ॉल्ट HapticFeedback लागू करता है. HapticFeedbackType में ये वैल्यू जोड़ी गई हैं - Confirm, ContextClick, GestureEnd, GestureThresholdActivate, Reject, SegmentFrequentTick, SegmentTick, ToggleOn, ToggleOff, VirtualKey. Wear Compose में, Button, IconButton, TextButton, और Card जैसे ज़्यादा देर तक क्लिक किए जा सकने वाले कॉम्पोनेंट पर, अब LONG_PRESS हैप्टिक फ़ीडबैक मिलता है. ऐसा तब होता है, जब ज़्यादा देर तक क्लिक करने वाला हैंडलर दिया गया हो. (I5083d)

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

  • हमने पुष्टि करने के लिए मोशन को अपडेट किया है. (I04bff)
  • हमने Compose लाइब्रेरी के लिए, एपीआई डिपेंडेंसी के कम से कम वर्शन को 1.7.4 पर अपडेट कर दिया है. (I88b46)
  • OpenOnPhone डायलॉग के लिए नया मोशन जोड़ा गया. (I1e10a)
  • हमने LevelIndicator में एक गड़बड़ी को ठीक कर दिया है, ताकि यह अब शून्य लेवल के साथ सही तरीके से दिखे. (Ie95a4)
  • हमने HorizontalPageIndicator और VerticalPageIndicator एनिमेशन को अपडेट कर दिया है. (I5c8f3)
  • हमने ArcProgressIndicator के लिए, बिंदु में सिकुड़ने वाला ऐनिमेशन जोड़ा है. (I9fd51)

वर्शन 1.0.0-alpha28

30 अक्टूबर, 2024

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

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

  • हमने गतिविधि की स्थिति सर्कुलर फ़ॉर्मैट में दिखाने वाले इंडिकेटर (I2efc1) में आर्क वैरिएशन जोड़ा है
  • हमने AlertDialog एपीआई बनाने वाले AlertDialogContent और Dialog कॉम्पोज़ेबल को सार्वजनिक कर दिया है, ताकि ज़रूरत पड़ने पर उनमें पसंद के मुताबिक बदलाव किया जा सके. जैसे, सुझाए गए कॉन्टेंट लेआउट को बनाए रखते हुए, AlertDialog ऐनिमेशन में पसंद के मुताबिक बदलाव करना. इसके अलावा, हमने AlertDialogDefaults के EdgeButton, ConfirmButton, और DismissButton एलिमेंट में Modifier और Color पैरामीटर जोड़े हैं. (I4eb71)
  • हमने Placeholder एपीआई को इस तरह अपडेट किया है: PlaceholderState.startPlaceholderAnimation का नाम बदलकर PlaceholderState.animatePlaceholder, PlaceholderState.isShowContent का नाम बदलकर PlaceholderState.isHidden, और PlaceholderDefaults.shape का नाम बदलकर PlaceholderDefaults.Shape किया गया है. साथ ही, painterWithPlaceholderOverlayBackgroundBrush में painter पैरामीटर का नाम बदलकर originalPainter किया गया है. इसके अलावा, PlaceholderState.placeholderProgression की स्थिति को सार्वजनिक से इंटरनल में बदला गया है और इसका नाम बदलकर placeholderShimmerProgression किया गया है. साथ ही, PlaceholderDefaults में प्लेसहोल्डर ऐनिमेशन की अवधि के लिए कॉन्स्टेंट जोड़े गए हैं. (Ie5a59)
  • हमने EdgeButton एपीआई को इस तरह अपडेट किया है: ScreenScaffold पर पैरामीटर का नाम बदलकर bottomButton से edgeButton कर दिया है; EdgeButtonSize को वैल्यू क्लास बना दिया है. (Ieef15)
  • हमने wear material3 के कलर क्लास (I0287f) में, copy() के दिखने की सेटिंग को 'सार्वजनिक' पर सेट कर दिया है

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

  • क्लिक करने पर IconToggleButton और TextToggleButton के लिए, ऐनिमेशन की कम से कम अवधि जोड़ी गई (Ieb333)
  • IconButton और TextButton आकार के ऐनिमेशन (Iebcee) के लिए, कम से कम अवधि जोड़ी गई
  • DatePicker के दोहराए जाने के विकल्प की स्थिति को ठीक किया गया. (I3587c)
  • सूचना और पुष्टि करने वाले डायलॉग बॉक्स के लिए मोशन जोड़ा गया. (I173b1)

वर्शन 1.0.0-alpha27

16 अक्टूबर, 2024

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

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

  • हमने Wear Compose Foundation LazyColumn का नाम बदलकर TransformingLazyColumn करने के बाद, ScreenScaffold और ScrollIndicator को अपडेट कर दिया है. (I0608b)
  • EdgeButton के preferredHeight पैरामीटर का नाम बदलकर buttonSize कर दिया गया है. इसकी वैल्यू, हाल ही में लॉन्च की गई EdgeButtonSize वैल्यू क्लास में मौजूद चार कॉन्स्टेंट में से ही चुनी जा सकती है. (Icdd70)
  • हमने ListSubheader का नाम बदलकर ListSubHeader कर दिया है. साथ ही, ListHeader और ListSubHeader के लिए सार्वजनिक तौर पर ऐक्सेस की जा सकने वाली डिफ़ॉल्ट वैल्यू जोड़ी हैं. (I96730)
  • हमने Wear के लिए नए HorizontalPagerScaffold और VerticalPagerScaffold कॉम्पोनेंट जोड़े हैं. इनसे समय के टेक्स्ट और पेज इंडिकेटर कॉम्पोनेंट के बीच नए ऐनिमेशन और कोऑर्डिनेशन मिलता है. (Iff7d0)
  • हमने HorizontalPagerScaffold और VerticalPagerScaffold में रोटरी इनपुट डिवाइसों के साथ काम करने की सुविधा जोड़ी है. इससे उपयोगकर्ता, रोटरी इनपुट डिवाइसों का इस्तेमाल करके पेजर पर नेविगेट कर पाएंगे. (I9770d)
  • हमने MotionScheme एपीआई में बदलाव किए हैं, ताकि इसका इस्तेमाल आसान हो सके और यह एक जैसा काम करे. इनलाइन किए गए 'याद रखें' फ़ंक्शन हटा दिए गए हैं. साथ ही, पहले से मौजूद मोशन स्कीम को MotionScheme के साथी ऑब्जेक्ट में ले जाया गया है. standardMotionScheme और expressiveMotionScheme को स्टैंडर्ड और एक्सप्रेशन के नाम दिया गया है. (I5fd45)
  • हमने सिस्टम के रंगों के आधार पर, डाइनैमिक कलर स्कीम की सुविधा जोड़ी है. (I073e9)
  • हमने स्टेपर को यूज़र एक्सपीरियंस (UX) के नए स्पेसिफ़िकेशन के हिसाब से अपडेट किया है. (I622bb)

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

  • हमने कार्ड कंपोनेंट के लिए टाइपोग्राफ़ी और पैडिंग को अपडेट किया है. (I3ae48)
  • हमने UX स्पेसिफ़िकेशन (Ie55f0) के मुताबिक, AlertDialog में पुष्टि करने/खारिज करने वाले बटन और बाकी कॉन्टेंट के बीच पैडिंग को 8dp से 12dp पर सेट किया है
  • हमने स्लाइडर कॉम्पोनेंट के लिए, रंग की अपारदर्शिता को अपडेट किया है. (Idb383)

वर्शन 1.0.0-alpha26

2 अक्टूबर, 2024

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

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

  • हमने HorizontalPageIndicator के एपीआई और उसके दिखने के तरीके को अपडेट किया है. साथ ही, VerticalPager के साथ इस्तेमाल करने के लिए VerticalPageIndicator जोड़ा है (Ic9309)
  • AlertDialog अब बटन स्टैक वैरिएशन से, डिफ़ॉल्ट बॉटम बटन को हटाने की सुविधा देता है. यह सुविधा उन कस्टम लेआउट के लिए है जिनमें EdgeButton की ज़रूरत नहीं होती. (I34fa9)
  • हमने Wear Material 3 (Ic38b2) के लिए SwipeToReveal कॉम्पोनेंट जोड़ा है
  • हमने SwipeToReveal में, दोनों दिशाओं में स्वाइप करने की सुविधा जोड़ी है. ऐसा उन चुनिंदा मामलों के लिए किया गया है जहां मौजूदा स्क्रीन पर, 'हटाएं' के लिए स्वाइप करने की सुविधा काम नहीं करती. डिफ़ॉल्ट रूप से, सिर्फ़ दाईं से बाईं ओर स्वाइप करने पर, स्वाइप करके जानकारी देखने की सुविधा चालू रहती है. हमारा सुझाव है कि डिफ़ॉल्ट तरीके का इस्तेमाल करें, ताकि 'खारिज करने के लिए स्वाइप करें' सुविधा के साथ कोई गड़बड़ी न हो. (Ifac04)
  • हमने EdgeButton के buttonHeight पैरामीटर का नाम बदलकर preferredHeight कर दिया है. (I4fab3)
  • Kotlin का वर्शन 1.9 (I1a14c) पर अपडेट किया गया है
  • हमने OpenOnPhoneDialogDefaults.Icon का नाम बदलकर OpenOnPhoneDialogDefaults.OpenOnPhoneIcon कर दिया है, ताकि यह Icon(I0f391) से मेल न खाए
  • हमने LazyColumn में ScrollIndicator के काम करने की सुविधा जोड़ी है. (Ia546a)
  • हमने TextToggleButton और IconToggleButton के लिए डिफ़ॉल्ट वैल्यू अपडेट कर दी हैं. (I7aaa9)
  • हमने Picker और PickerGroup एपीआई को आसान बना दिया है. (Id0653)
  • हमने CardDefaults.Shape और CardDefaults.Height जोड़े हैं. ये टोकन हैं और लाइब्रेरी का इस्तेमाल करने वाले डेवलपर के लिए निजी थे. (I1594a, b/347649765)
  • हमने बाइनरी सेगमेंट वाले सर्कुलर प्रोग्रेस इंडिकेटर के प्रोग्रेस पैरामीटर का नाम बदलकर segmentValue कर दिया है. (Ib72d9)
  • हमने स्लाइडर के लिए रंग और लेआउट अपडेट कर दिए हैं. (Ic3eec)

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

  • हमने openOnPhone आइकॉन ऐनिमेशन (I66f85) को अपडेट कर दिया है
  • अब हम Slider, TimePicker, और DatePicker में Google के सिंबल आइकॉन का इस्तेमाल कर रहे हैं. (I46c7c)
  • हमने Confirmation और OpenOnPhoneDialog में पैडिंग अपडेट कर दी है. (Iaa82e)

वर्शन 1.0.0-alpha25

18 सितंबर, 2024

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

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

  • हमने एक ऐसा सर्कुलर प्रोग्रेस इंडिकेटर जोड़ा है जो प्रोग्रेस की स्थिति के बारे में नहीं बताता. (I427a7)
  • हमने CircularProgressIndicator और SegmentedCircularProgressIndicator, दोनों के लिए प्रोग्रेस ओवरफ़्लो (>100% प्रोग्रेस) की सुविधा जोड़ी है. जब प्रोग्रेस 1.0 से ज़्यादा हो जाएगी, तो इसे नए overflowTrack कलर से दिखाया जाएगा. (Iaaa3d)
  • गोल आकार वाले IconToggleButton और TextToggleButton आइकॉन के लिए, अब नए शेप वाले ऐनिमेशन का इस्तेमाल किया जा सकता है. इसमें अलग-अलग शेप, चुने गए, नहीं चुने गए, और दबाए गए स्टेटस को दिखाते हैं. सिर्फ़ दबाए जाने की स्थिति के लिए, पहले से मौजूद ऐनिमेशन वाले आकार का वैरिएशन अब भी काम करता है. (I29f03)
  • हमने Column के साथ EdgeButton का इस्तेमाल करने की सुविधा हटा दी है. ऐसा इसलिए किया गया है, क्योंकि ScreenScaffold में EdgeButton की ऊंचाई की जानकारी साफ़ तौर पर देना ज़रूरी है. (Ie353d)
  • हमने ScreenScaffold के साथ Wear Compose LazyColumn के लिए सहायता जोड़ी है. साथ ही, LazyColumnState के लिए ScrollInfoProvider को लागू किया है. (Ib8d29)
  • हमने LocalTextMaxLines, LocalTextAlign, LocalTextOverflow को एक ही LocalTextConfiguration कॉम्पोज़िशन लोकल में जोड़ा है, ताकि आने वाले समय में ज़्यादा स्केलेबल समाधान दिया जा सके. (I5edbc)
  • हमने एक और टाइपस्केल के तौर पर arc-large जोड़ा है. यह स्क्रीन के सबसे ऊपर या सबसे नीचे, हेडर की छोटी टेक्स्ट स्ट्रिंग के लिए है. जैसे, पुष्टि करने वाले ओवरले में. (I60e3e)
  • हमने बटन के लिए, सुझाए गए बड़े और बहुत बड़े आइकॉन साइज़ और कॉन्टेंट पैडिंग के लिए डिफ़ॉल्ट वैल्यू जोड़ी हैं. (I84675)

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

  • हमने IconButton और TextButton के लिए रंग अपडेट कर दिए हैं. (I48324)
  • हमने बटन के बेस ओवरलोड को वर्टिकल सेंटर अलाइन किया है, ताकि अन्य ओवरलोड के साथ एक जैसा दिखे. पहले जैसा करने के लिए, RowScope में जाकर Modifier.align का इस्तेमाल करें. (I66e57)

वर्शन 1.0.0-alpha24

4 सितंबर, 2024

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

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

  • हमने Material3 थीम में मोशन स्कीम जोड़ी है. इसका इस्तेमाल, लाइब्रेरी के सभी कॉम्पोनेंट में किया जाएगा, ताकि ऐनिमेशन की खास बातों को लागू किया जा सके. जैसे, बेहतर मोशन के लिए स्प्रिंग. (I54ff3)
  • हमने Material3 लाइब्रेरी में AppScaffold और ScreenScaffold कॉम्पोनेंट जोड़े हैं. इनमें TimeText और ScrollIndicator की लेयरिंग और ट्रांज़िशन को कोऑर्डिनेट करने की सुविधा शामिल है. AppScaffold, स्कैफ़ोल्ड कॉम्पोनेंट का टॉप लेवल उपलब्ध कराता है, जो सभी स्क्रीन पर सबसे ऊपर दिखता है. इसलिए, AppScaffold में TimeText जोड़ने से, स्क्रीन के बीच स्वाइप करते समय वह अपनी जगह पर बना रहता है. स्क्रीन, समय के टेक्स्ट को अपने-आप बदल सकती हैं या छिपा सकती हैं. ScreenScaffold, ScrollIndicator के लिए एक स्लॉट उपलब्ध कराता है. साथ ही, स्क्रोल करने पर स्क्रोल इंडिकेटर को अपने-आप ऐनिमेट करता है. इसमें, स्क्रोल इंडिकेटर को इस्तेमाल न करने पर छिपाने के लिए टाइम आउट भी शामिल है. (I047d6)
  • हमने ScrollIndicator को जोड़ा है, जिसमें Material3 का नया डिज़ाइन है. सूची के शुरुआती कॉन्टेंट के आधार पर, थंबनेल का साइज़ तय होता है. इससे, सूची में लेज़ी कॉन्टेंट लोड होने पर, साइज़ में अंतर नहीं होता. (Ic228d)
  • हमने ScrollAway एपीआई को इस तरह बदला है कि ScreenStage, enum क्लास के बजाय वैल्यू क्लास हो. इससे, आने वाले समय में ज़रूरत के हिसाब से अन्य चरणों को जोड़ा जा सकेगा. (I48c93)
  • हमने EdgeButton जोड़ा है. यह Wear के लिए खास तौर पर बनाया गया बटन है. इसका आकार, स्क्रीन के सबसे नीचे मौजूद कर्व के हिसाब से है (I16369)
  • हमने ScreenScaffold में एक नया स्लॉट जोड़ा है. यह स्लॉट, सबसे नीचे मौजूद बटन (जैसे, EdgeButton) के लिए है. यह स्लॉट, स्क्रोल किए जा रहे कॉन्टेंट के हिसाब से दिखेगा और उसका साइज़ बदलेगा (I032eb)
  • हमने Modifier.scrollTransform और Modifier.targetMorphingHeight को जोड़ा है, ताकि LazyColumn में मौजूद आइटम में Material3 मोशन इफ़ेक्ट जोड़े जा सकें. (Ie229a)
  • हमने CircularProgressIndicator के वैरिएशन के तौर पर SegmentedCircularProgressIndicator जोड़ा है. सेगमेंट वाला वैरिएशन, सभी सेगमेंट में एक ही प्रोग्रेस वैल्यू दिखाता है या हर सेगमेंट को चालू/बंद के तौर पर दिखाता है. (I6e059)
  • हमने मौजूदा CircularProgressIndicator के विकल्प के तौर पर LinearProgressIndicator जोड़ा है. (I89182)
  • हमने AlertDialog जोड़ा है, जो उपयोगकर्ता को अहम प्रॉम्प्ट दिखाने के लिए लेआउट उपलब्ध कराता है. इनमें, पुष्टि करने/खारिज करने वाले बटन के पेयर या विकल्पों के स्टैक के नीचे मौजूद एक बटन (आम तौर पर EdgeButton) के लिए वैरिएशन शामिल होते हैं. ज़्यादा जानकारी देने के लिए, दोनों वैरिएंट में आइकॉन, टाइटल, और अतिरिक्त टेक्स्ट के लिए स्लॉट होते हैं. (Ieb873)
  • हमने OpenOnPhoneDialog जोड़ा है. इसका इस्तेमाल, उपयोगकर्ता के फ़ोन पर जारी रहने वाली कार्रवाई के बारे में बताने के लिए किया जाना चाहिए. OpenOnPhoneDialog को तय किए गए टाइम आउट के बाद खारिज कर दिया जाता है. (I978fd)
  • हमने Confirmation जोड़ा है, जो एक डायलॉग कॉम्पोनेंट है. इसमें आइकॉन और कर्व या लीनियर टेक्स्ट के लिए स्लॉट होते हैं. प्रोसेस पूरी होने या न होने के मैसेज के लिए, खास वैरिएशन दिए गए हैं. टाइम आउट होने के बाद, पुष्टि करने के अनुरोध अपने-आप हट जाते हैं. (Ib43e8)
  • हमने TimeText में बैकग्राउंड जोड़ा है, ताकि उन समस्याओं को कम किया जा सके जिनमें वीडियो का मुख्य कॉन्टेंट और TimeText ओवरलैप हो जाता था और समय की जानकारी साफ़ तौर पर नहीं दिखती थी. (Ia11fd)
  • हमने LevelIndicator जोड़ा है, जो वॉल्यूम जैसी सेटिंग की वैल्यू दिखाता है. साथ ही, वॉल्यूम स्क्रीन बनाने के लिए, मौजूदा Stepper कॉम्पोनेंट के साथ इसका इस्तेमाल किया जा सकता है. LevelIndicator, ScrollIndicator से मिलता-जुलता है. हालांकि, यह स्क्रीन की दूसरी तरफ़ दिखता है. साथ ही, इसमें स्ट्रोक की चौड़ाई ज़्यादा होती है और डिफ़ॉल्ट रूप से इंडिकेटर का रंग अलग होता है. (I8a4ac)
  • हमने TimePicker जोड़ा है. इसमें 24 घंटे के समय (सेकंड के साथ या उसके बिना) या 12 घंटे के समय के लेआउट शामिल हैं. साथ ही, इसमें am/pm का विकल्प भी शामिल है. (Ia5124)
  • हमने DatePicker जोड़ा है.इसमें कॉलम के क्रम (जैसे, दिन-महीना-साल, महीना-दिन-साल या साल-महीना-दिन) और कम से कम/ज़्यादा से ज़्यादा तारीखों के लिए कॉन्फ़िगरेशन शामिल है. हालांकि, तारीखों का इस्तेमाल करना ज़रूरी नहीं है. (Ibf13b)
  • हमने TimeText के text फ़ंक्शन में वेट पैरामीटर जोड़ा है. अगर टाइम टेक्स्ट एक से ज़्यादा टेक्स्ट एलिमेंट से बना है, तो इसकी मदद से यह कंट्रोल किया जा सकता है कि स्पेस को कैसे बांटा जाए. (I36700)
  • हमने RadioButton और SplitRadioButton जोड़े हैं - ये कॉम्पोनेंट, (Split)SelectableButton और चाइल्ड रेडियो कंट्रोल (If7ae8) को मिलाकर, पिछले एपीआई को आसान बनाते हैं
  • हमने CheckboxButton और SplitCheckboxButton जोड़े हैं - ये कॉम्पोनेंट, (Split)ToggleButton और चाइल्ड चेकबॉक्स कंट्रोल (Ia8f70) को जोड़कर, पिछले एपीआई को आसान बनाते हैं
  • हमने SwitchButton और SplitSwitchButton जोड़े हैं - ये कॉम्पोनेंट, (Split)ToggleButton और चाइल्ड स्विच कंट्रोल (I0d349) को मिलाकर, पिछले एपीआई को आसान बनाते हैं
  • हमने AnimatedText दस्तावेज़ को अपडेट किया है, ताकि ओवरशूट करने के व्यवहार के बारे में बताया जा सके. (Iff30a)
  • हमने ButtonGroupको जोड़ा है, ताकि दो या तीन बटन को एक साथ जोड़ा जा सके. इससे बटन दबाने पर, एक साथ ऐनिमेशन चलता है. (Ie27db)
  • हमने IconButton और TextButton को दबाने पर, आकार का ऐनिमेशन जोड़ा है. हालांकि, यह ऐनिमेशन ज़रूरी नहीं है. (Iffca5)
  • हमने Button, IconButton, TextButton, CompactButton, और EdgeButton (I65fc3) में एक और रंग वैरिएशन, FilledVariant जोड़ा है
  • हमने ImageWithScrimPainter में forcedSize पैरामीटर जोड़ा है, ताकि बटन इमेज के बैकग्राउंड अब डिफ़ॉल्ट रूप से अपने कॉम्पोनेंट साइज़ को बनाए रखें. forcedSize = null सेट करने पर, Painter.instrinsicSize का इस्तेमाल किया जाता है. (Ic57af)
  • हमने बटन पर लंबे समय तक क्लिक करने की सुविधा जोड़ी है (Ib613d)
  • IconButton और TextButton में, क्लिक करके रखें सुविधा भी जोड़ी गई है. (I38891)
  • कार्ड में, लंबे समय तक दबाकर रखने की सुविधा जोड़ी गई है. (I305d5)
  • हमने LocalTextMaxLines, LocalTextAlign, LocalTextOverflow को CompositionLocals के तौर पर जोड़ा है और Text पर पैरामीटर के डिफ़ॉल्ट के तौर पर उनका इस्तेमाल किया है. यूज़र एक्सपीरियंस (UX) के दिशा-निर्देशों को लागू करने के लिए, कॉम्पोज़िशन लोकल का इस्तेमाल अब CheckboxButton, SwitchButton, RadioButton जैसे कॉम्पोनेंट कर सकते हैं. हालांकि, ज़रूरत पड़ने पर डेवलपर, पैरामीटर को बदल सकते हैं. (Iab841)
  • हमने Placeholder जोड़ा है, ताकि डेटा लोड होने तक बटन और कार्ड जैसे कॉम्पोनेंट के कॉन्टेंट को मास्क किया जा सके. (I1a532)
  • हमने ToggleButtonColors को हटाकर, IconToggleButtonColors और TextToggleButtonColors को जोड़ा है. (Ie0bf1)

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

  • हमने Button, FilledTonalButton, OutlinedButton, ChildButton, CompactButton को अपडेट किया है, ताकि यूज़र एक्सपीरियंस (यूएक्स) के दिशा-निर्देशों को लागू करने के लिए, नए CompositionLocals LocalTextMaxLines, LocalTextAlign, LocalTextOverflow का इस्तेमाल किया जा सके. ज़रूरत पड़ने पर, डेवलपर इन पैरामीटर को टेक्स्ट पर सीधे तौर पर बदल सकते हैं (Ie51f7)
  • हमने LevelIndicator के स्ट्रोक की डिफ़ॉल्ट चौड़ाई को 6dp में बदल दिया है, ताकि इसे ScrollIndicator से अलग किया जा सके. ScrollIndicator के स्ट्रोक की चौड़ाई 4dp है. (If6f63)
  • हमने TimeText में एक समस्या को ठीक कर दिया है, ताकि बड़े स्वीप ऐंगल काम कर सकें. (Ie489f)
  • EdgeButton को फिर से कॉम्पोज़ करने के दौरान आ रही समस्या को ठीक किया गया. (I4cdca)
  • पसंद के मुताबिक कॉन्टेंट पैडिंग उपलब्ध कराने पर, स्प्लिट टॉगल बटन के लेआउट ठीक किए गए. (Ia33d3)
  • प्रोग्रेस इंडिकेटर की लाइन की चौड़ाई के बराबर या उससे ज़्यादा होने पर, प्रोग्रेस की छोटी वैल्यू को राउंड अप किया जाता है. (I3bd84)

वर्शन 1.0.0-alpha23

14 मई, 2024

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

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

  • हमने ToggleButton और RadioButton एपीआई को अपडेट किया है, ताकि बंद किए गए रंगों को कॉन्फ़िगर किया जा सके. (If13a7)
  • हमने Material3 के लिए एक नया CircularProgressIndicator जोड़ा है. (Ib3bd7)

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

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

वर्शन 1.0.0-alpha22

1 मई, 2024

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

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

  • हमने Material3 ColorScheme को अपडेट कर दिया है. (I7b2b8)
  • हमने Material3 स्विच को अपडेट किया है. साथ ही, रंग में कुछ बदलाव किए हैं. अब सही का निशान, चेकबॉक्स के लिए इस्तेमाल किए गए निशान से मेल खाता है. (Icac7b)

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

  • नए rotaryScrollable मॉडिफ़ायर का इस्तेमाल करने के लिए, इंटिग्रेशन के सभी डेमो अपडेट करें. (I25090)

वर्शन 1.0.0-alpha21

17 अप्रैल, 2024

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

  • पिछली रिलीज़ में हुई तकनीकी समस्या की वजह से, यह रिलीज़ ट्रिगर हुई. इस समस्या की वजह से सोर्स जार मौजूद नहीं थे. इस रिलीज़ में कोई नया कमिट नहीं है.

वर्शन 1.0.0-alpha20

3 अप्रैल, 2024

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

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

  • हमने कंट्रास्ट के लिए, दबाए जाने पर और फ़ोकस होने पर रिपल की अल्फा वैल्यू में बदलाव किया है. (I59f0a)
  • हमने टाइपोग्राफ़ी स्टाइल और लाइन हाइट में किए गए नए बदलावों के हिसाब से, Button, ToggleButton, और RadioButton में प्राइमरी और सेकंडरी लेबल के बीच स्पेस जोड़ा है. (I2c0ba)

वर्शन 1.0.0-alpha19

6 मार्च, 2024

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

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

  • हमने Wear Compose Material3 लाइब्रेरी में TimeText जोड़ा है. यह कॉम्पोनेंट, स्क्रीन पर सबसे ऊपर मौजूदा समय (और अन्य स्थिति) दिखाता है. नया और छोटा Material3 API, लीनियर और कर्व कॉन्टेंट के बीच डुप्लीकेट कॉन्टेंट बनाने से बचाता है. (I4d7c3)
  • हमने RadioButton के लिए, पैरामीटर के नामों को onSelected से onSelect में अपडेट कर दिया है. (I1a971)
  • RadioButton और SplitRadioButton को टोकन में बदलें. साथ ही, मौजूदा तरीकों को फिर से तैयार करें, ताकि रंगों के कैश मेमोरी में सेव किए गए इंस्टेंस जोड़कर, CompositionLocal लुकअप की संख्या कम की जा सके. साथ ही, RadioButtonColors और SplitRadioButtonColors के तरीकों को इंटरनल बनाया जा सके. (I02b33)

वर्शन 1.0.0-alpha18

21 फ़रवरी, 2024

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

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

  • हमने CardColors, ToggleButtonColors, और SplitToggleButtonColors के लिए डिफ़ॉल्ट पैटर्न को फिर से तैयार किया है. इसके लिए, हमने कैश मेमोरी में सेव किए गए इंस्टेंस बनाए हैं और CompositionLocal के इस्तेमाल को कम किया है. (If3fec)

वर्शन 1.0.0-alpha17

7 फ़रवरी, 2024

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

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

  • हमने Button API को अपडेट किया है, ताकि डिफ़ॉल्ट रूप से buttonColors का इस्तेमाल किया जा सके. साथ ही, हमने डुप्लीकेट filledButtonColors को हटा दिया है. (I4fe3b)
  • हमने ButtonColors, IconButtonColors, और TextButtonColors के लिए डिफ़ॉल्ट पैटर्न को फिर से तैयार किया है. इसके लिए, हमने कैश मेमोरी में सेव किया गया इंस्टेंस बनाया है और CompositionLocal के इस्तेमाल को कम किया है. (I5f51c)
  • हमने कॉम्पोनेंट के हिसाब से कलर क्लास में rememberUpdatedState के ओवरहेड को हटा दिया है. साथ ही, कलर क्लास में ऐक्सेस करने वाले तरीकों को इंटरनल के तौर पर मार्क कर दिया है. (If6571)

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

  • हमने Modifier.node का इस्तेमाल करने के लिए, Modifier.minimumInteractiveComponentSize को अपडेट कर दिया है. (Iba6b7)

वर्शन 1.0.0-alpha16

24 जनवरी, 2024

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

नई सुविधाएं

  • हमने CompactButton जोड़ा है. इसमें, बटन के तौर पर इस्तेमाल किए जाने वाले, भरे हुए, भरे हुए टोनल, और आउटलाइन वाले रंगों का इस्तेमाल किया जा सकता है.(I05df0)

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

  • हमने रेडियो कंट्रोल जैसे चुनने के कंट्रोल के लिए, RadioButton/SplitRadioButton को कंटेनर के तौर पर जोड़ा है. यह मौजूदा ToggleButton से इस तरह अलग है कि RadioButton को चुना जा सकता है (और यह किसी चुनिंदा ग्रुप में काम करता है), जबकि ToggleButton को टॉगल किया जा सकता है (और यह स्वतंत्र है). (I61275)
  • हम Compose Material3 लाइब्रेरी के साथ एक जैसी बनाने के लिए, Wear Compose Material3 लाइब्रेरी से LocalContentAlpha को हटा रहे हैं. (I49a0a)
  • Wear Material और Wear Material3 कॉम्पोनेंट को अपडेट किया गया है. अब इनके एपीआई में MutableInteractionSource को दिखाया जा सकता है. हालांकि, यह MutableInteractionSource वैल्यू के तौर पर null दिखाएगा. यहां कोई सेमेटिक बदलाव नहीं किया गया है: शून्य पास करने का मतलब है कि आपको MutableInteractionSource को होस्ट नहीं करना है. ज़रूरत पड़ने पर, इसे कॉम्पोनेंट के अंदर बनाया जाएगा. वैल्यू को शून्य पर सेट करने से, कुछ कॉम्पोनेंट को कभी भी MutableInteractionSource नहीं दिया जाता. साथ ही, अन्य कॉम्पोनेंट को ज़रूरत पड़ने पर ही इंस्टेंस बनाने की अनुमति मिलती है. इससे इन कॉम्पोनेंट की परफ़ॉर्मेंस बेहतर होती है. अगर इन कॉम्पोनेंट में पास किए गए MutableInteractionSource का इस्तेमाल नहीं किया जा रहा है, तो हमारा सुझाव है कि आप इसके बजाय null पास करें. हमारा सुझाव है कि आप अपने कॉम्पोनेंट में भी इसी तरह के बदलाव करें. (Ib90fc, b/298048146)
  • wear:compose-material और wear:compose-material3 लाइब्रेरी में नया ripple API जोड़ा गया है. यह एपीआई, काम न करने वाले rememberRipple एपीआई की जगह लेगा. साथ ही, यह कुछ समय के लिए CompositionLocal, LocalUseFallbackRippleImplementation जोड़ता है, ताकि Material कॉम्पोनेंट को, बंद किए गए rememberRipple/RippleTheme एपीआई का इस्तेमाल करने के लिए वापस लाया जा सके. इसे अगले स्टेबल रिलीज़ में हटा दिया जाएगा. यह सिर्फ़ उन मामलों में माइग्रेशन में कुछ समय के लिए मदद करने के लिए है जहां कस्टम RippleTheme दिया जा रहा है. डेटा माइग्रेट करने के बारे में जानकारी और इस बदलाव के बारे में ज़्यादा जानकारी के लिए, developer.android.com पर जाएं. (af92b21)
  • हमने HorizontalPageIndicator API और उसके दस्तावेज़ में कुछ सुधार किए हैं. (I60efc)
  • हमने ColorScheme को अपडेट किया है, ताकि इसमें बदलाव न किया जा सके. इससे अलग-अलग रंगों में बदलाव करने की सुविधा कम असरदार हो गई है. हालांकि, रंगों के सामान्य इस्तेमाल को ज़्यादा असरदार बनाया गया है. इस बदलाव की वजह यह है कि ज़्यादातर ऐप्लिकेशन में, अलग-अलग रंगों को अपडेट करने की सुविधा का इस्तेमाल मुख्य तौर पर नहीं किया जाता. यह अब भी मुमकिन है, लेकिन यह पहले से ज़्यादा बार फिर से कॉम्पोज़ होगा. इससे, हम पूरे मटीरियल कोड के ज़रिए स्टेटस की सदस्यताओं की संख्या को काफ़ी कम कर देते हैं. साथ ही, इससे स्टैंडर्ड इस्तेमाल के उदाहरणों के शुरू होने और रनटाइम की लागत पर असर पड़ेगा. (Ibc2d6)
  • बंद किए गए रंगों को पसंद के मुताबिक बनाने की सुविधा देने के लिए, ToggleButton और SplitToggleButton एपीआई को अपडेट किया गया. इसके अलावा, कलर और टाइपोग्राफ़ी वैल्यू के लिए, अब मटीरियल डिज़ाइन टोकन का इस्तेमाल किया जाता है. (If087c)
  • Material Design टोकन का इस्तेमाल करने के लिए, बटन की इमेज के बैकग्राउंड के रंग अपडेट किए गए. (Iba215)
  • हमने क्लिक मैनेज करने की सुविधा हटाकर, Checkbox, Switch, और RadioButton कॉम्पोनेंट को सिर्फ़ डिसप्ले करने वाले कॉम्पोनेंट में बदल दिया है. इन कॉम्पोनेंट का इस्तेमाल (Split)ToggleButton में किया जा सकता है, जो क्लिक को मैनेज करता है. इसलिए, इन कॉम्पोनेंट को अब साफ़ तौर पर सिर्फ़ डिसप्ले के तौर पर दिखाया गया है. साथ ही, इन्हें Wear पर स्टैंडअलोन तौर पर इस्तेमाल करने के लिए नहीं बनाया गया है. (I2322e)

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

  • हमने Wear Compose Material 3 में, गति की अवधि और आसानी से होने वाली गति की वैल्यू के लिए टोकन जोड़े हैं. (I437cd)
  • हमने ToggleButton, SplitToggleButton, Checkbox, Switch, और RadioButton में एक गड़बड़ी को ठीक किया है, ताकि सुलभता से जुड़ी सूचनाएं दोहराई न जाएं. पहले, सेमैंटिक भूमिकाओं की डुप्लीकेट कॉपी बन जाती थी. (Ica281)
  • परफ़ॉर्मेंस को बेहतर बनाने के लिए, हमने CompactButton के लिए materialcore लेयर हटा दी है. (7902858)

वर्शन 1.0.0-alpha15

15 नवंबर, 2023

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

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

  • हमने फ़ाउंडेशन लेवल SwipeToDismissBox का नाम बदलकर BasicSwipeToDismissBox कर दिया है. इससे फ़ाउंडेशन लेवल कॉम्पोनेंट और Material3 लेवल SwipeToDismissBox के बीच का अंतर साफ़ तौर पर दिखता है. स्क्रीम में इस्तेमाल किए जाने के लिए, MaterialTheme से रंगों को खींचकर, BasicSwipeToDismissBox को बाकी काम सौंप दिया जाता है. (Ibecfc)

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

  • परफ़ॉर्मेंस को बेहतर बनाने के लिए, हमने Material3 बटन के लिए material-core लेयर हटा दी है. (I55555)

वर्शन 1.0.0-alpha14

18 अक्टूबर, 2023

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

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

  • हमने Material3 HorizontalPageIndicator से indicatorStyle पैरामीटर को हटा दिया है. इसके बजाय, यह डिवाइस की स्क्रीन के आकार (लीनियर या राउंड) के हिसाब से काम करेगा. (I83728)
  • हमने SplitToggleButton के रंगों को ToggleButton के रंगों से अलग कर दिया है. इसके लिए, हमने एक नई SplitToggleButtonColors क्लास जोड़ी है. (I78bee)

वर्शन 1.0.0-alpha13

4 अक्टूबर, 2023

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

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

  • हमने TitleCard में सबटाइटल फ़ील्ड जोड़ा है. हालांकि, इसे भरना ज़रूरी नहीं है. (Ifc45a)
  • हमने TextButton के लिए, Material Design के कलर टोकन जोड़े हैं. (I769dc)

वर्शन 1.0.0-alpha12

20 सितंबर, 2023

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

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

  • हमने Material Design टोकन इस्तेमाल करने के लिए, IconButton को अपडेट किया है. (I3f137)
  • हमने Material Design टोकन इस्तेमाल करने के लिए, IconToggleButton को अपडेट किया है. (I7d263)
  • हमने CheckboxColors, RadioButtonColors, SwitchColors के कन्स्ट्रक्टर को सार्वजनिक कर दिया है. (I82b73)

वर्शन 1.0.0-alpha11

6 सितंबर, 2023

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

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

  • हमने Material3 कार्ड के लिए टाइपोग्राफ़ी को TitleMedium पर अपडेट किया है. (I597bd)
  • हमने Material3 ListHeader और ListSubheader के लिए, टाइपोग्राफ़ी और अलाइनमेंट को अपडेट किया है. (Ib5ceb)

वर्शन 1.0.0-alpha10

23 अगस्त, 2023

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

नई सुविधाएं

  • Wear Material3 लाइब्रेरी में HorizontalPageIndicator जोड़ें. (Ifee99)

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

  • Material3 डिज़ाइन टोकन का इस्तेमाल करने के लिए, बटन का कोड अपडेट करें. (I92fe4)
  • Wear Material 3 के स्टेपर और स्लाइडर एपीआई को प्रयोग के तौर पर उपलब्ध कराया जा रहा है. ऐसा इसलिए किया जा रहा है, क्योंकि यूज़र इंटरफ़ेस की जानकारी अभी पूरी नहीं हुई है. (I84d54)
  • हमने राउंड TextButton और TextToggleButton से ExtraSmall साइज़ हटा दिए हैं, क्योंकि यह साइज़ सिर्फ़ IconButton पर लागू होता है. (Ibc7d5)

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

  • हमने TextToggleButton के लिए टाइपोग्राफ़ी के दिशा-निर्देशों को अपडेट किया है, ताकि LargeButtonSize (Ib10fa) के लिए LabelLarge का इस्तेमाल किया जा सके
  • हमने TextButton के लिए टाइपोग्राफ़ी के दिशा-निर्देशों को अपडेट किया है, ताकि LargeButtonSize (I8f3a7) के लिए LabelLarge का इस्तेमाल किया जा सके
  • हमने सुलभता के लिए, कार्ड के टच टारगेट का साइज़ कम से कम 48dp पर सेट किया है. (Ieb9b1)
  • इमेज डेमो के साथ ऐप्लिकेशन कार्ड जोड़ें. साथ ही, बैकग्राउंड डेमो वाले ऐप्लिकेशन कार्ड को हटाएं (Id735f)
  • राउंड बटन में मौजूद उस गड़बड़ी को ठीक किया गया है जिसमें मॉडिफ़ायर सही तरीके से चेन नहीं किए गए थे. (I5e162)

वर्शन 1.0.0-alpha09

9 अगस्त, 2023

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

नई सुविधाएं

  • हमने material3 (I6bed6) के लिए ToggleButton जोड़ा है

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

  • हमने एपीआई की पाबंदियों के तौर पर FloatRange एनोटेशन चालू कर दिया है. इस बारे में पहले टिप्पणियों में बताया गया था. (Icb401)
  • हमने Wear Material3 के लिए टाइपोग्राफ़ी को अपडेट किया है, ताकि Material3 के नए दिशा-निर्देशों का पालन किया जा सके. (I1bad6)

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

  • हमने Material3 डिज़ाइन के मुताबिक, Button, IconButton, और TextButton के रंग अपडेट कर दिए हैं. (Ib2495)
  • हमने बंद किए गए स्टेटस में चेकबॉक्स पर सही का निशान दिखने की समस्या को ठीक कर दिया है. (Ib25bf)

वर्शन 1.0.0-alpha08

26 जुलाई, 2023

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

नई सुविधाएं

  • हमने Material3 के लिए, चुनने के ये कंट्रोल जोड़े हैं - Switch, Checkbox, RadioButton. (Ib918c)
  • हमने Material3 में IconToggleButton और TextToggleButton जोड़े हैं. ये सर्कुलर टॉगल बटन हैं, जिनमें आइकॉन और टेक्स्ट के लिए एक-एक स्लॉट है. ToggleButton के अलग-अलग साइज़ के लिए, हमारा सुझाव है कि आप Modifier.touchTargetAwareSize का इस्तेमाल करें. इसके लिए, टॉगल बटन में दिए गए साइज़ का इस्तेमाल करें. (I9f015)
  • हमने अपने Material3 कॉम्पोनेंट में ListHeader और ListSubheader जोड़े हैं. (Ibaefe)
  • हमने Material3 SwipeToDismissBox जोड़ा है, जो नए फ़ाउंडेशन SwipeToDismissBox को कॉल करता है और अपनी थीम से डिफ़ॉल्ट रंग की वैल्यू देता है. (I275fb)
  • हमने Wear Compose में Material3 InlineSlider जोड़ा है. इसकी मदद से, उपयोगकर्ता किसी वैल्यू की रेंज में से कोई वैल्यू चुन सकते हैं. चुनने के लिए दी गई वैल्यू की रेंज, रेंज की सबसे कम और सबसे ज़्यादा वैल्यू के बीच एक बार के तौर पर दिखती है. इससे उपयोगकर्ता किसी एक वैल्यू को चुन सकते हैं. InlineSlider, वॉल्यूम या चमक जैसी सेटिंग में बदलाव करने के लिए बेहतर विकल्प है. (I7085f)

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

  • हमने Wear Material 3 थीम में आकार को अपडेट किया है, ताकि आकार के बजाय RoundedCornerShape का इस्तेमाल किया जा सके. (Idb133)
  • हमने बटन के लिए ऊंचाई के कॉन्स्टेंट को सार्वजनिक कर दिया है (Idbfde)
  • काम न करने वाले वर्शन के बारे में एनोटेट करने के लिए, एपीआई फ़ाइलों को अपडेट किया गया (I8e87a, b/287516207)
  • हमने Wear Compose Material 3 में InlineSliderColors को अपडेट किया है, ताकि सार्वजनिक कन्स्ट्रक्टर और सार्वजनिक प्रॉपर्टी का इस्तेमाल किया जा सके. (I6b632)
  • हमने Wear Compose Material 3 में सभी कलर क्लास को अपडेट किया है, ताकि सार्वजनिक कन्स्ट्रक्टर और सार्वजनिक प्रॉपर्टी शामिल की जा सकें. (I17702)
  • हमने बटन के हॉरिज़ॉन्टल और वर्टिकल पैडिंग कॉन्स्टेंट को सार्वजनिक कर दिया है. (Ieeaf7)

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

  • बटन अब अपनी ऊंचाई में बदलाव करेगा, ताकि ज़रूरत पड़ने पर, सुलभता के लिए बड़े फ़ॉन्ट की वजह से बढ़े हुए कॉन्टेंट को दिखाया जा सके (Iaf302)
  • हमने सुलभता से जुड़ी समस्याओं को हल करने के लिए, बटन के कई डेमो अपडेट किए हैं. (I61ce9)
  • Stepper और InlineSlider पर अब लंबे समय तक दबाकर, बार-बार क्लिक किया जा सकता है. इससे, + या - बटन को दबाकर, Stepper और InlineSlider की वैल्यू को तुरंत बढ़ाया या घटाया जा सकता है (I27359)

वर्शन 1.0.0-alpha07

21 जून, 2023

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

नई सुविधाएं

  • हमने Wear OS Material 3 लाइब्रेरी के लिए Compose में Stepper कॉम्पोनेंट जोड़ा है. यह Material के पिछले वर्शन से मिलता-जुलता है. हालांकि, डेवलपर के सुझाव के मुताबिक, यह डिफ़ॉल्ट रूप से रेंज सेमेंटेक्स को हटा देता है. हम Modifier.rangeSemantics उन मामलों में उपलब्ध कराते हैं जहां रेंज के सेमेंटेक्स की ज़रूरत होती है. (Ic39fd)
  • हमने Compose for Wear OS Material 3 लाइब्रेरी में curvedText जोड़ा है. (Ia8ae3)

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

  • हमने wear.compose.foundation को wear.compose.material3 के एपीआई डिपेंडेंसी के तौर पर अपडेट किया है (I72004, b/285404743)

वर्शन 1.0.0-alpha06

7 जून, 2023

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

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

  • हमने TextButton को अपडेट किया है, ताकि बंद किए गए अल्फा वैल्यू को सही तरीके से दिखाने के लिए, toDisabledColor एक्सटेंशन फ़ंक्शन का इस्तेमाल किया जा सके. (I814c8)

वर्शन 1.0.0-alpha05

24 मई, 2023

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

नई सुविधाएं

  • हमने Material3 में TextButton जोड़ा है. यह एक सर्कुलर बटन है, जिसमें टेक्स्ट के लिए एक स्लॉट है. TextButton के अलग-अलग साइज़ के लिए, हमारा सुझाव है कि आप TextButtonDefaults में दिए गए Modifier.touchTargetAwareSize और ExtraSmallButtonSize, SmallButtonSize, DefaultButtonSize, और LargeButtonSizeIcon का इस्तेमाल करें. डिफ़ॉल्ट TextButton में कोई बॉर्डर नहीं होता और कम अहमियत वाली कार्रवाइयों के लिए बैकग्राउंड पारदर्शी होता है. जिन कार्रवाइयों पर ज़्यादा ध्यान देने की ज़रूरत है उनके लिए filledTextButtonColors का इस्तेमाल करें. जिन कार्रवाइयों पर थोड़ा ध्यान देने की ज़रूरत है उनके लिए आउटलाइन वाली TextButton का इस्तेमाल करें. साथ ही, बॉर्डर को ButtonDefaults.outlinedButtonBorder पर सेट करें. जिन कार्रवाइयों पर ज़्यादा या कम ध्यान देने की ज़रूरत नहीं है उनके लिए filledTonalTextButtonColors का इस्तेमाल करें. (I667e4)
  • हमने Wear Compose Material3 लाइब्रेरी में Card, OutlinedCard, AppCard, और TitleCard को जोड़ा है. AppCard और TitleCard को CardDefaults.outlinedCardColors और CardDefaults.outlinedCardBorder(I80e72) का इस्तेमाल करके, आउटलाइन वाला लुक भी दिया जा सकता है

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

  • हमने बटन लेबल पैरामीटर को आखिर में ले जाकर, ट्रेलिंग लेम्ब्डा सिंटैक्स के साथ काम करने की सुविधा जोड़ी है. साथ ही, हमने भूमिका पैरामीटर को हटा दिया है, क्योंकि इसे Modifier.semantics का इस्तेमाल करके बदला जा सकता है. ButtonColors कन्स्ट्रक्टर अब सार्वजनिक हैं. (Ie1b6d)

वर्शन 1.0.0-alpha04

10 मई, 2023

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

नई सुविधाएं

  • हमने Material3 में IconButton जोड़ा है. यह एक सर्कुलर बटन है, जिसमें आइकॉन/इमेज के लिए एक स्लॉट है. चार वैरिएशन हैं: IconButton, FilledIconButton, FilledTonalIconButton, और OutlinedIconButton. IconButton के अलग-अलग साइज़ के लिए, हमारा सुझाव है कि आप IconButtonDefaults में दिए गए Modifier.touchTargetAwareSize और ExtraSmallButtonSize, SmallButtonSize, DefaultButtonSize, और LargeButtonSizeIcon का इस्तेमाल करें. हम IconButtonDefaults.iconSizeFor भी उपलब्ध कराते हैं, ताकि किसी बटन के साइज़ के लिए आइकॉन का सुझाया गया साइज़ तय किया जा सके. (I721d4)

वर्शन 1.0.0-alpha03

19 अप्रैल, 2023

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

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

  • हमने Material 3 बटन कॉम्पोनेंट जोड़ा है. यह स्टेडियम के आकार का बटन है. पहले इसे Wear Compose Material लाइब्रेरी में चिप कहा जाता था. Compose Material 3 लाइब्रेरी के साथ एक जैसा रखने के लिए, इसका नाम बदलकर बटन कर दिया गया है. डिफ़ॉल्ट बटन का बैकग्राउंड भरा हुआ होता है. साथ ही, FilledTonal (म्यूट बैकग्राउंड), आउटलाइन (पतली बॉर्डर के साथ पारदर्शी) और चाइल्ड (पारदर्शी बैकग्राउंड और कोई बॉर्डर नहीं, इसका इस्तेमाल कम अहमियत वाली अन्य कार्रवाइयों के लिए किया जाता है) के लिए बटन के अलग-अलग वैरिएशन होते हैं. आने वाले समय में, साधारण आइकॉन और टेक्स्ट कॉन्टेंट के लिए गोल बटन उपलब्ध कराए जाएंगे.(Ia6942)

वर्शन 1.0.0-alpha02

5 अप्रैल, 2023

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

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

  • हमने Wear Compose Material 3 में DefaultTextStyle जोड़ा है. इससे PlatformTextStyle.includeFontPadding की डिफ़ॉल्ट सेटिंग 'सही' (मौजूदा सेटिंग) हो जाती है. इससे, आने वाले समय में Compose लाइब्रेरी के साथ फ़ॉन्ट पैडिंग को डिफ़ॉल्ट रूप से बंद करने की सुविधा सिंक की जा सकेगी. ज़्यादा जानकारी के लिए, बैकग्राउंड के लिए Compose में फ़ॉन्ट पैडिंग की समस्या ठीक करना लेख पढ़ें. (I7e461)

वर्शन 1.0.0-alpha01

22 मार्च, 2023

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

नई सुविधाएं

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

    • मटीरियल थीम - लाइब्रेरी के सभी कॉम्पोनेंट के लिए, कलर स्कीम, टाइपोग्राफ़ी, और आकार को एक जैसा कॉन्फ़िगर करता है. Material3 थीम में, सुलभ कंट्रास्ट के साथ काम करने वाले रंगों में बदलाव किया गया है. (I84005)
    • टेक्स्ट/आइकॉन - Wear Compose ऐप्लिकेशन के लिए बिल्डिंग ब्लॉक (I8e06a)
  • हम Wear Material (androidx.wear.compose:compose-material) और Wear Material 3 (androidx.wear.compose:compose-material3) को एक साथ डेवलप करते रहेंगे. आने वाले समय में, material3 के रिलीज़ में विजेट सेट को बड़ा किया जाएगा. इसमें Wear OS के लिए Compose के जाने-पहचाने कॉम्पोनेंट शामिल किए जाएंगे. जैसे, बटन, पिकर, और स्लाइडर.

  • Wear Material और Wear Material 3 लाइब्रेरी, एक-दूसरे से अलग हैं. इसलिए, इन्हें एक ही ऐप्लिकेशन में इस्तेमाल नहीं किया जाना चाहिए. इसकी मुख्य वजह यह है कि ये अलग-अलग थीम का रेफ़रंस देती हैं. इससे, ऐप्लिकेशन में अनचाहे बदलाव हो सकते हैं.

Wear Compose का वर्शन 1.5

वर्शन 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.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 पैरामीटर लेता है. इसका इस्तेमाल RadioButton कंट्रोल के साथ किया जाना चाहिए, ताकि सुलभता (I1d6d9) के लिए टॉगल किए जा सकने वाले सेमेटिक्स के बजाय, चुने जा सकने वाले सेमेटिक्स दिए जा सकें
  • हमने 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 लाइब्रेरी में एक नया रिपल एपीआई जोड़ा है. यह एपीआई, अब काम न करने वाले 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 फ़ाउंडेशन के नए 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 वर्शन में ये बदलाव शामिल हैं.

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

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

  • expandableItem और expandableItems, दो नए Foundation कॉम्पोनेंट हैं. इनकी मदद से, ScalingLazyColumn में आइटम को बड़ा किया जा सकता है. expandableItem का इस्तेमाल, ऐसे आइटम के लिए करें जिसे बड़ा किया जा सकता है. जैसे, टेक्स्ट, जिसमें लाइनों की संख्या है. बड़ा किए जा सकने वाले आइटम के ग्रुप के लिए expandableItems का इस्तेमाल करें. साथ ही, कॉन्टेंट को बड़ा करने के बाद छोटा हो जाने वाला बटन बनाने के लिए expandableButton का इस्तेमाल करें.
  • HierarchicalFocusCoordinator - एक्सपेरिमेंट के तौर पर उपलब्ध यह कॉम्पोज़ेबल, कॉम्पोज़िशन के सब-ट्री को फ़ोकस चालू या फ़ोकस बंद के तौर पर मार्क करने की सुविधा देता है.
  • Picker - एपीआई में अब userScrollEnabled शामिल है, ताकि यह कंट्रोल किया जा सके कि उपयोगकर्ता के स्क्रोल करने पर पिकर चालू है या नहीं.
  • PickerGroup - एक नया कॉम्पोज़ेबल, जिससे एक साथ कई पिकर को हैंडल किया जा सकता है. यह HierarchicalFocusCoordinator एपीआई का इस्तेमाल करके, पिकर के बीच फ़ोकस को मैनेज करता है. साथ ही, पिकर आइटम को अपने-आप बीच में लाने की सुविधा चालू करता है.
  • 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 के साथ एनोटेट करने पर, झलक रेंडर नहीं होती. हम जल्द ही इस गड़बड़ी को ठीक करने के लिए एक अपडेट रिलीज़ करेंगे. कृपया ध्यान दें कि Android Studio Giraffe 2022.3.1 और उसके बाद के वर्शन में, Wear डिवाइसों के लिए बनाए गए अन्य एनोटेशन सही तरीके से काम करते हैं.

  • हमने 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 को एक्सपेरिमेंट के तौर पर मार्क किया है. हालांकि, इसे मुख्य compose लाइब्रेरी में शामिल किया जा सकता है, क्योंकि इसका इस्तेमाल कई जगहों पर किया जा सकता है. (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 वाले सूची आइटम के लिए, 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 वाले सूची आइटम के लिए, 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 के लिए डिफ़ॉल्ट ग्रेडिएंट को अपडेट किया है, ताकि उन्हें यूज़र एक्सपीरियंस (UX) के नए स्पेसिफ़िकेशन के मुताबिक बनाया जा सके. 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 के लिए डिफ़ॉल्ट ग्रेडिएंट को अपडेट किया है, ताकि उन्हें यूज़र एक्सपीरियंस (UX) की नई खास बातों के मुताबिक बनाया जा सके. 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 हो. ऐसा, सुलभता से जुड़े Material के दिशा-निर्देशों का पालन करने के लिए किया गया है. इससे, 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 का भी इस्तेमाल किया जा सकता है. आने वाले समय में, एपीआई के बदलावों में कंस्ट्रक्टर और कॉपी करने के तरीकों में इसे जोड़ा जा सकता है (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 के लिए, Material Design के विज़ुअल लेआउट के बुनियादी स्ट्रक्चर को लागू करता है. यह कॉम्पोनेंट, Wear Material के कई कॉम्पोनेंट (जैसे, TimeText, PositionIndicator, और Vignette) को एक साथ जोड़ने के लिए एपीआई उपलब्ध कराता है. इससे स्क्रीन बनाई जाती है और यह पक्का किया जाता है कि उनके लिए लेआउट की सही रणनीति अपनाई गई हो. साथ ही, ज़रूरी डेटा इकट्ठा किया जाता है, ताकि ये कॉम्पोनेंट एक साथ सही तरीके से काम कर सकें.
  • ScalingLazyColumn - यह स्क्रोल करने वाला स्केलिंग/फ़िशआई लिस्ट कॉम्पोनेंट है. यह Wear के Material Design की भाषा का एक अहम हिस्सा है. कॉन्टेंट आइटम को स्केल करने और पारदर्शी बनाने के इफ़ेक्ट देता है. ScalingLazyColumn को बड़ी संख्या में कॉन्टेंट आइटम को मैनेज करने के लिए डिज़ाइन किया गया है. ये आइटम ज़रूरत पड़ने पर ही मेटालाइज़ और कंपोज किए जाते हैं.
  • स्लाइडर - इससे उपयोगकर्ता, वैल्यू की रेंज में से कोई वैल्यू चुन सकते हैं. चुने गए विकल्पों की रेंज को बार के तौर पर दिखाया जाता है. इसे वैकल्पिक रूप से सेपरेटर के साथ दिखाया जा सकता है.
  • स्टेपर - यह एक फ़ुल-स्क्रीन कॉम्पोनेंट है. इसकी मदद से, उपयोगकर्ता स्क्रीन के ऊपर और नीचे मौजूद, बढ़ाएं/कम करें बटन का इस्तेमाल करके, वैल्यू की रेंज में से कोई वैल्यू चुन सकते हैं. इसके बीच में, टेक्स्ट या चिप के लिए एक स्लॉट होता है.
  • SwipeToDismissBox - 'खारिज करने के लिए स्वाइप करें' जेस्चर को मैनेज करता है. इसमें बैकग्राउंड (सिर्फ़ स्वाइप जेस्चर के दौरान दिखता है) और फ़ोरग्राउंड कॉन्टेंट के लिए एक ही स्लॉट लगता है. SwipeDismissableNavHost का इस्तेमाल करके, इसे androidx नेविगेशन लाइब्रेरी के साथ जोड़ा जा सकता है. इसके लिए, नीचे दी गई Wear Compose नेविगेशन लाइब्रेरी देखें.
  • टेक्स्ट - Compose के मटीरियल टेक्स्ट कॉम्पोनेंट को Wear पर लागू करने का तरीका. इसमें Wear की मटीरियल थीम से रंग और अल्फा लेवल लिया जाता है
  • TimeText - यह एक ऐसा कॉम्पोनेंट है जो स्क्रीन पर सबसे ऊपर समय और ऐप्लिकेशन की स्थिति दिखाता है. गोल स्क्रीन पर टेक्स्ट को घुमाकर, स्क्रीन के आकार के हिसाब से अडजस्ट करता है.
  • वाइनेट - स्caffold में इस्तेमाल करने के लिए स्क्रीन का एक तरीका. यह स्क्रोल किए जा सकने वाले कॉन्टेंट के इस्तेमाल के दौरान, स्क्रीन के ऊपर और नीचे वाले हिस्से को धुंधला कर देता है.

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

  • 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 enum को वैल्यू क्लास (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 वर्शन के लिए, ट्रैक कलर की ट्रांसपेरंसी (30%->10%) को अपडेट किया गया है. (I659cc)
  • हमने Wear Material Design UX की नई खास बातों के मुताबिक, 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 डिवाइसों के लिए उपलब्ध अन्य सुविधाओं के लिए भी सहायता दी जाएगी. जैसे, कर्व किए गए लेआउट और टेक्स्ट. साथ ही, डेवलपर को Wear डिवाइसों के लिए ऐप्लिकेशन/ओवरले बनाने में आसानी हो, इसके लिए स्कैफ़ोल्डिंग की सुविधा भी दी जाएगी.

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

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