রচনা উপাদান

মেটেরিয়াল ডিজাইন কম্পোনেন্ট ব্যবহারের জন্য প্রস্তুত জেটপ্যাক কম্পোজ UI তৈরি করুন। এটি রচনার উচ্চ স্তরের এন্ট্রি পয়েন্ট, যা www.material.io-তে বর্ণিত উপাদানগুলির সাথে মেলে এমন উপাদানগুলি প্রদান করার জন্য ডিজাইন করা হয়েছে৷
সর্বশেষ আপডেট স্থিতিশীল রিলিজ প্রার্থী মুক্তি বিটা রিলিজ আলফা রিলিজ
13 নভেম্বর, 2024 1.7.5 - - 1.8.0-আলফা06

গঠন

কম্পোজ হল androidx মধ্যে 7টি Maven Group Id-এর সংমিশ্রণ। প্রতিটি গোষ্ঠীতে কার্যকারিতার একটি লক্ষ্যযুক্ত উপসেট রয়েছে, প্রতিটির নিজস্ব রিলিজ নোটের সেট রয়েছে।

এই টেবিলটি রিলিজ নোটের প্রতিটি সেটের গ্রুপ এবং লিঙ্কগুলি ব্যাখ্যা করে।

গ্রুপ বর্ণনা
compose.animation ব্যবহারকারীর অভিজ্ঞতাকে সমৃদ্ধ করতে তাদের জেটপ্যাক রচনা অ্যাপ্লিকেশনগুলিতে অ্যানিমেশন তৈরি করুন।
compose.compiler @Composable ফাংশন ট্রান্সফর্ম করুন এবং একটি Kotlin কম্পাইলার প্লাগইন দিয়ে অপ্টিমাইজেশান সক্ষম করুন।
compose.foundation বিল্ডিং ব্লক ব্যবহার করার জন্য প্রস্তুত সহ জেটপ্যাক কম্পোজ অ্যাপ্লিকেশন লিখুন এবং আপনার নিজস্ব ডিজাইন সিস্টেম টুকরা তৈরি করতে ভিত্তি প্রসারিত করুন।
compose.material মেটেরিয়াল ডিজাইন কম্পোনেন্ট ব্যবহারের জন্য প্রস্তুত জেটপ্যাক কম্পোজ UI তৈরি করুন। এটি রচনার উচ্চ স্তরের এন্ট্রি পয়েন্ট, যা www.material.io-তে বর্ণিত উপাদানগুলির সাথে মেলে এমন উপাদানগুলি প্রদান করার জন্য ডিজাইন করা হয়েছে৷
compose.material3 মেটেরিয়াল ডিজাইন 3 উপাদান সহ জেটপ্যাক কম্পোজ UI তৈরি করুন, মেটেরিয়াল ডিজাইনের পরবর্তী বিবর্তন। মেটেরিয়াল 3-এ আপডেটেড থিমিং এবং উপাদান এবং মেটেরিয়াল ইউ ব্যক্তিগতকরণ বৈশিষ্ট্য রয়েছে যেমন ডায়নামিক কালার, এবং নতুন Android 12 ভিজ্যুয়াল স্টাইল এবং সিস্টেম UI এর সাথে সমন্বয় করার জন্য ডিজাইন করা হয়েছে।
compose.runtime কম্পোজের প্রোগ্রামিং মডেল এবং স্টেট ম্যানেজমেন্টের মৌলিক বিল্ডিং ব্লক এবং কম্পোজ কম্পাইলার প্লাগইনকে লক্ষ্য করার জন্য মূল রানটাইম।
compose.ui লেআউট, অঙ্কন এবং ইনপুট সহ ডিভাইসের সাথে ইন্টারঅ্যাক্ট করার জন্য কম্পোজ UI এর মৌলিক উপাদানগুলি প্রয়োজন।

নির্ভরতা ঘোষণা করা

রচনার উপর নির্ভরতা যোগ করতে, আপনাকে অবশ্যই আপনার প্রকল্পে Google Maven সংগ্রহস্থল যোগ করতে হবে। আরও তথ্যের জন্য Google এর Maven সংগ্রহস্থল পড়ুন।

আপনার অ্যাপ বা মডিউলের জন্য build.gradle ফাইলে আপনার প্রয়োজনীয় আর্টিফ্যাক্টগুলির জন্য নির্ভরতা যোগ করুন:

গ্রোভি

dependencies {
    implementation "androidx.compose.material:material:1.7.5"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

কোটলিন

dependencies {
    implementation("androidx.compose.material:material:1.7.5")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

নির্ভরতা সম্পর্কে আরও তথ্যের জন্য, বিল্ড নির্ভরতা যুক্ত করুন দেখুন।

প্রতিক্রিয়া

আপনার প্রতিক্রিয়া জেটপ্যাককে আরও ভাল করতে সাহায্য করে। আপনি যদি নতুন সমস্যা আবিষ্কার করেন বা এই লাইব্রেরির উন্নতির জন্য ধারনা পান তাহলে আমাদের জানান। আপনি একটি নতুন তৈরি করার আগে অনুগ্রহ করে এই লাইব্রেরিতে বিদ্যমান সমস্যাগুলি দেখুন৷ আপনি তারকা বোতামে ক্লিক করে একটি বিদ্যমান সমস্যায় আপনার ভোট যোগ করতে পারেন।

একটি নতুন সমস্যা তৈরি করুন

আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।

সংস্করণ 1.8

সংস্করণ 1.8.0-alpha06

13 নভেম্বর, 2024

androidx.compose.material:material-*:1.8.0-alpha06 প্রকাশিত হয়েছে। সংস্করণ 1.8.0-alpha06-এ এই কমিট রয়েছে।

সংস্করণ 1.8.0-alpha05

30 অক্টোবর, 2024

androidx.compose.material:material-*:1.8.0-alpha05 প্রকাশিত হয়েছে। সংস্করণ 1.8.0-alpha05-এ এই কমিট রয়েছে।

বাগ ফিক্স

  • contentPadding পরিবর্তিত হলে সর্বদা বডি কন্টেন্ট পুনরায় কম্পোজ করা এড়াতে স্ক্যাফোল্ড contentPadding আচরণ অপ্টিমাইজ করুন। ( I8c8e2 , b/373904168 )
  • কন্ট্রোল কী চাপলে উপাদান স্লাইডারটিকে এর মান পরিবর্তন করুন। ( I1c442 )

সংস্করণ 1.8.0-alpha04

অক্টোবর 16, 2024

androidx.compose.material:material-*:1.8.0-alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.8.0-alpha04-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • স্থিতিশীল ভিত্তি সংস্করণে পিন করতে TextFields থেকে readOnly সরান। ( I3aaba )

বাগ ফিক্স

  • অ্যান্ড্রয়েড এস+-এ প্রসারিত উপাদানগুলিতে লহরের জন্য সমর্থন যোগ করে, যেমন একটি কার্ড যা ক্লিকে প্রসারিত হয়। পূর্বে লহরটি নতুন আকার পূরণ করবে না কিন্তু এখন এটি নতুন সীমানায় প্রসারিত হবে। ( if509a , b/183019123 )

সংস্করণ 1.8.0-alpha02

সেপ্টেম্বর 18, 2024

androidx.compose.material:material-*:1.8.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.8.0-alpha02-এ এই কমিট রয়েছে।

সংস্করণ 1.8.0-alpha01

4 সেপ্টেম্বর, 2024

androidx.compose.material:material-*:1.8.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.8.0-alpha01-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • নিরাপদ আর্গস সহ একটি বটমশিট তৈরি করতে নতুন NavGraphBuilder.bottomSheet নির্মাতা যোগ করা হয়েছে (( I28589 , I777db , b/351858980 ))

সংস্করণ 1.7

সংস্করণ 1.7.5

30 অক্টোবর, 2024

androidx.compose.material:material-*:1.7.5 প্রকাশিত হয়েছে। সংস্করণ 1.7.5-এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.7.4

অক্টোবর 16, 2024

androidx.compose.material:material-*:1.7.4 প্রকাশিত হয়েছে। সংস্করণ 1.7.4-এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.7.2

সেপ্টেম্বর 18, 2024

androidx.compose.material:material-*:1.7.2 প্রকাশিত হয়েছে। সংস্করণ 1.7.2-এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.7.1

10 সেপ্টেম্বর, 2024

  • অ্যান্ড্রয়েড শিল্পকর্মে কোনো পরিবর্তন নেই। -desktop আর্টিফ্যাক্টগুলি সরানো হয়েছে এবং -jvmStubs এবং -linuxx64Stubs আর্টিফ্যাক্টগুলি যোগ করা হয়েছে। এই লক্ষ্যগুলির কোনটিই ব্যবহার করার জন্য নয়, তারা জেটব্রেইন রচনার প্রচেষ্টাকে সাহায্য করার জন্য স্থানধারক।

সংস্করণ 1.7.0

4 সেপ্টেম্বর, 2024

androidx.compose.material:material-*:1.7.0 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-এ এই কমিটগুলি রয়েছে।

1.6.0 থেকে গুরুত্বপূর্ণ পরিবর্তন

  • নতুন রিপল এপিআই ব্যবহার করার জন্য উপাদান উপাদান স্থানান্তরিত করা হয়েছে, এবং আর RippleTheme কোয়েরি করে না।
  • যে উপাদান উপাদানগুলি আগে একটি MutableInteractionSource গ্রহণ করেছিল এবং remember { MutableInteractionSource() } এখন একটি বাতিলযোগ্য MutableInteractionSource গ্রহণ করে এবং পরিবর্তে ডিফল্ট নাল করে৷ আপনি যদি MutableInteractionSource উত্থাপন এবং ব্যবহার না করেন, তাহলে আপনার নাল পাস করা উচিত। এটি কিছু উপাদানকে অলসভাবে একটি উদাহরণ তৈরি করার অনুমতি দেয় যখন প্রয়োজন হয়, কর্মক্ষমতা উন্নত করে। এটিও সুপারিশ করা হয় যে আপনি আপনার নিজের উপাদানগুলিতে অনুরূপ পরিবর্তন করুন৷
  • BottomDrawer , ModalBottomSheet , BackdropScaffold এবং স্ট্যান্ডার্ড Bottomsheet কে স্থিতিশীল API তে উন্নীত করা হয়েছে৷

সংস্করণ 1.7.0-rc01

আগস্ট 21, 2024

androidx.compose.material:material-*:1.7.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-rc01-এ এই কমিট রয়েছে।

সংস্করণ 1.7.0-beta07

7 আগস্ট, 2024

androidx.compose.material:material-*:1.7.0-beta07 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-beta07-এ এই কমিট রয়েছে।

সংস্করণ 1.7.0-beta06

জুলাই 24, 2024

androidx.compose.material:material-*:1.7.0-beta06 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-beta06-এ এই কমিট রয়েছে।

সংস্করণ 1.7.0-beta05

10 জুলাই, 2024

androidx.compose.material:material-*:1.7.0-beta05 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-beta05-এ এই কমিট রয়েছে।

সংস্করণ 1.7.0-beta04

জুন 26, 2024

androidx.compose.material:material-*:1.7.0-beta04 প্রকাশিত হয়েছে। 1.7.0-beta04 সংস্করণে এই কমিটগুলি রয়েছে।

সংস্করণ 1.7.0-beta03

জুন 12, 2024

androidx.compose.material:material-*:1.7.0-beta03 প্রকাশিত হয়েছে। 1.7.0-beta03 সংস্করণে এই কমিটগুলি রয়েছে।

সংস্করণ 1.7.0-beta02

29 মে, 2024

androidx.compose.material:material-*:1.7.0-beta02 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-beta02-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • লিঙ্কগুলি স্টাইল করার জন্য API আপডেট করুন: TextLinkStyles গুলিকে TextStyle এ সরানো হয়েছে এবং উপাদান থেকে TextDefaults সরিয়ে দেওয়া হয়েছে ( I5477b )

সংস্করণ 1.7.0-beta01

14 মে, 2024

androidx.compose.material:material-*:1.7.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-beta01-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • টেক্সটে মেটেরিয়াল থিমযুক্ত লিঙ্ক পাওয়ার জন্য API আপডেট করা হয়েছে। বিশেষত, থিমযুক্ত LinkAnnotations এবং থিমযুক্ত লিঙ্কগুলির সাথে HTML পার্স করার জন্য TextDefaults থেকে পদ্ধতিগুলি সরিয়ে দেওয়া হয়েছে। পরিবর্তে, একটি TextLinkStyles ক্লাস যোগ করা হয়েছে যা টেক্সট কম্পোজেবলের প্যারামিটার হিসাবে লিঙ্কগুলিকে স্টাইল করার অনুমতি দেয়। ( I31b93 )

সংস্করণ 1.7.0-alpha08

1 মে, 2024

androidx.compose.material:material-*:1.7.0-alpha08 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-alpha08-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • TextFieldDecorationBox এবং OutlinedTextFieldDecorationBox ডেকোরেশনবক্সে প্রযোজ্য না হওয়া backgroundColor ঠিক করুন। সজ্জা বাক্স এখন একটি shape পরামিতি গ্রহণ. ( I371c2 , b/307694651 )
  • RippleConfiguration#isEnabled সরানো হয়েছে, এবং LocalRippleConfiguration বাতিলযোগ্য করা হয়েছে। একটি রিপল নিষ্ক্রিয় করতে, isEnabled = false দিয়ে একটি RippleConfiguration প্রদানের পরিবর্তে, LocalRippleConfigurationnull প্রদান করুন। ( I22725 )
  • টেক্সট লিঙ্কগুলিতে সাধারণ স্টাইলিং ছাড়াও একটি চাপানো স্টেট স্টাইলিং বিকল্প রয়েছে, হোভার করা এবং ফোকাস করা। TextDefaults পদ্ধতিগুলির প্রতিটিতে এটিকে সমর্থন করার জন্য একটি pressedStyle আর্গুমেন্ট রয়েছে। ( Ic473f , b/139312671 )

বাগ ফিক্স

  • লেবেলের জন্য OutlinedTextField টপ প্যাডিং এখন সিস্টেম ফন্ট সাইজের জন্য হিসাব করে। ( আইডিসি৭৮১ )

সংস্করণ 1.7.0-alpha07

এপ্রিল 17, 2024

androidx.compose.material:material-*:1.7.0-alpha07 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-alpha07-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • সাধারণ স্টাইলিং ছাড়াও টেক্সট লিঙ্কগুলি চাপানো স্টেট স্টাইলিং বিকল্প পেয়েছে, হোভার করা এবং ফোকাস করা হয়েছে। ( I5f864 , b/139312671 )
  • একটি TextDefaults অবজেক্ট যোগ করা হয়েছে যাতে একটি LinkAnnotation তৈরি করার পদ্ধতি রয়েছে এবং HTML-ট্যাগযুক্ত স্ট্রিং পার্স করে যা লিঙ্কগুলিতে MaterialTheme প্রয়োগ করে। ( I98532 , b/139312671 )

সংস্করণ 1.7.0-alpha06

3 এপ্রিল, 2024

androidx.compose.material:material-*:1.7.0-alpha06 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-alpha06-এ এই কমিট রয়েছে।

ঘোষণা

  • androidx.compose.material জন্য আর প্রত্যেকটি শিল্পকর্মের একই সংস্করণ ব্যবহার করার প্রয়োজন নেই এই মাভেন গ্রুপ। ব্যবহারকারীরা কম্পোজ ফাউন্ডেশন লাইব্রেরি ( Ie5fba ) এর সংস্করণগুলি মিশ্রিত করতে এবং মেলাতে পারে

এপিআই পরিবর্তন

  • DrawerDefaults অবজেক্টে আরো ModalDrawer এবং BottomDrawer ডিফল্ট সরানো হয়েছে। ( Ib5b2e )

সংস্করণ 1.7.0-alpha05

20 মার্চ, 2024

androidx.compose.material:material-*:1.7.0-alpha05 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-alpha05-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • ScaffoldSubcomposeInMeasureFix পতাকা সরানো হয়েছে। ( I67363 )

সংস্করণ 1.7.0-alpha04

6 মার্চ, 2024

androidx.compose.material:material-*:1.7.0-alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-alpha04-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

সংস্করণ 1.7.0-alpha03

21 ফেব্রুয়ারি, 2024

androidx.compose.material:material-*:1.7.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-alpha03 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • BottomDrawer পরীক্ষামূলক থেকে স্থিতিশীলে উন্নীত করা হয়েছে। BottomDrawerState এখন একটি ফাংশন হিসাবে অগ্রগতি প্রকাশ করে, নির্দিষ্ট লক্ষ্যগুলির মধ্যে অগ্রগতি অনুসন্ধান করার অনুমতি দেয়। BottomDrawerState এখন অ্যানিমেশন স্পেক কাস্টমাইজ করার অনুমতি দেয়, এবং confirmStateChange আর কোনো ট্রেলিং ল্যাম্বডা নয়। ( I9c029 , b/261423850 )
  • BackdropScaffold পরীক্ষামূলক থেকে স্থিতিশীল উন্নীত করা হয়েছে. অ্যানিমেশন স্পেক এখন নির্দেশিকা অনুসারে একটি tween স্পেক। BackdropScaffold এর snackbarHost প্যারামিটারটি আর শেষ পরামিতি নয় যাতে ট্রেলিং ল্যাম্বডাসের সাথে বিভ্রান্তি এড়ানো যায়। BackdropScaffoldState অ্যাঙ্করগুলির মধ্যে অগ্রগতি অনুসন্ধান করার জন্য একটি progress(from, to) API প্রকাশ করে৷ ( I73f48 , b/261423218 )
  • স্ট্যান্ডার্ড নীচের শীট পরীক্ষামূলক থেকে স্থিতিশীল উন্নীত করা হয়েছে. অবচিত কনস্ট্রাক্টরদের সরিয়ে দেওয়া হয়েছে। অ্যানিমেশন স্পেক এখন নির্দেশিকা অনুসারে একটি টুইন স্পেক। ( I3c1a8 , b/278692145 , b/261409034 )
  • মডেল নীচের শীট পরীক্ষামূলক থেকে স্থিতিশীল উন্নীত করা হয়েছে. অবচিত কনস্ট্রাক্টরদের সরিয়ে দেওয়া হয়েছে। অ্যানিমেশন স্পেক এখন নির্দেশিকা অনুসারে একটি tween স্পেক। ( Ic53f4 , b/278692145 , b/266780235 , b/261409034 )

বাগ ফিক্স

  • একটি সমস্যা সমাধান করা হয়েছে যেখানে BackdropScaffold LookaheadScope এর সাথে সংমিশ্রণে নির্দিষ্ট পরিস্থিতিতে ক্র্যাশ হতে পারে। ( I51396 )
  • কর্মক্ষমতা উন্নত করতে BottomSheetScaffold ভিতরে সাবকম্পোজিশন সরানো হয়েছে। একটি সমস্যা সমাধান করা হয়েছে যেখানে BottomSheetScaffold LookaheadScope এর সাথে সংমিশ্রণে নির্দিষ্ট পরিস্থিতিতে ক্র্যাশ হবে। ( I2f90c )
  • ModalBottomSheetLayout এর মধ্যে সাবকম্পোজিশন সরানো হয়েছে, কর্মক্ষমতা উন্নত করছে। ( I7a025 )

সংস্করণ 1.7.0-alpha02

7 ফেব্রুয়ারি, 2024

androidx.compose.material:material-*:1.7.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-alpha02 এই কমিট ধারণ করে।

সংস্করণ 1.7.0-alpha01

24 জানুয়ারী, 2024

androidx.compose.material:material-*:1.7.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.7.0-alpha01 এই কমিট ধারণ করে।

আচরণ পরিবর্তন

  • নতুন রিপল এপিআই ব্যবহার করার জন্য উপাদান উপাদান স্থানান্তরিত করা হয়েছে, এবং আর RippleTheme কোয়েরি করে না।

এপিআই পরিবর্তন

  • মেটেরিয়াল এবং অন্যান্য ডিজাইন সিস্টেম লাইব্রেরিতে নতুন রিপল এবং RippleConfiguration এপিআই যুক্ত করে, rememberRipple -রিপল থেকে রিপল এবং RippleTheme অবমূল্যায়ন করা হয়েছে।

  • যে উপাদান উপাদানগুলি আগে একটি MutableInteractionSource গ্রহণ করেছিল এবং মনে রাখার জন্য ডিফল্ট ছিল { MutableInteractionSource() } এখন একটি বাতিলযোগ্য MutableInteractionSource গ্রহণ করে এবং পরিবর্তে ডিফল্ট নাল করে৷ আপনি যদি MutableInteractionSource উত্থাপন এবং ব্যবহার না করেন, তাহলে আপনার নাল পাস করা উচিত। এটি কিছু উপাদানকে অলসভাবে একটি উদাহরণ তৈরি করার অনুমতি দেয় যখন প্রয়োজন হয়, কর্মক্ষমতা উন্নত করে। এটিও সুপারিশ করা হয় যে আপনি আপনার নিজের উপাদানগুলিতে অনুরূপ পরিবর্তন করুন৷

সংস্করণ 1.6

সংস্করণ 1.6.8

জুন 12, 2024

androidx.compose.material:material-*:1.6.8 প্রকাশিত হয়েছে। সংস্করণ 1.6.8-এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.6.7

1 মে, 2024

androidx.compose.material:material-*:1.6.7 প্রকাশিত হয়েছে। সংস্করণ 1.6.7-এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.6.6

এপ্রিল 17, 2024

androidx.compose.material:material-*:1.6.6 প্রকাশিত হয়েছে। শেষ রিলিজ থেকে কোন পরিবর্তন.

সংস্করণ 1.6.5

3 এপ্রিল, 2024

androidx.compose.material:material-*:1.6.5 প্রকাশিত হয়েছে। সংস্করণ 1.6.5-এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.6.4

20 মার্চ, 2024

androidx.compose.material:material-*:1.6.4 প্রকাশিত হয়েছে। সংস্করণ 1.6.4-এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.6.3

6 মার্চ, 2024

androidx.compose.material:material-*:1.6.3 প্রকাশিত হয়েছে। সংস্করণ 1.6.3-এ এই কমিটগুলি রয়েছে।

বাগ ফিক্স

  • এটিকে আবার ফোকাসযোগ্য করতে ExposedDropdownMenu এ রিগ্রেশন ঠিক করুন। ( c0e0ed , b/323694447 )

সংস্করণ 1.6.2

21 ফেব্রুয়ারি, 2024

androidx.compose.material:material-*:1.6.2 প্রকাশিত হয়েছে। সংস্করণ 1.6.2-এ এই কমিট রয়েছে।

সংস্করণ 1.6.1

7 ফেব্রুয়ারি, 2024

androidx.compose.material:material-*:1.6.1 প্রকাশিত হয়েছে। সংস্করণ 1.6.1-এ এই কমিট রয়েছে।

সংস্করণ 1.6.0

24 জানুয়ারী, 2024

androidx.compose.material:material-*:1.6.0 প্রকাশিত হয়েছে। সংস্করণ 1.6.0 এই কমিট ধারণ করে.

সংস্করণ 1.6.0-rc01

জানুয়ারী 10, 2024

androidx.compose.material:material-*:1.6.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.6.0-rc01-এ এই কমিট রয়েছে।

সংস্করণ 1.6.0-beta03

13 ডিসেম্বর, 2023

androidx.compose.material:material-*:1.6.0-beta03 প্রকাশিত হয়েছে। 1.6.0-beta03 সংস্করণে এই কমিট রয়েছে।

সংস্করণ 1.6.0-beta02

নভেম্বর 29, 2023

androidx.compose.material:material-*:1.6.0-beta02 প্রকাশিত হয়েছে। সংস্করণ 1.6.0-beta02-এ এই কমিট রয়েছে।

সংস্করণ 1.6.0-beta01

15 নভেম্বর, 2023

androidx.compose.material:material-*:1.6.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.6.0-beta01-এ এই কমিট রয়েছে।

সংস্করণ 1.6.0-alpha08

18 অক্টোবর, 2023

androidx.compose.material:material-*:1.6.0-alpha08 প্রকাশিত হয়েছে। সংস্করণ 1.6.0-alpha08 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • একটি materialIcon ফাংশনকে এর ওভারলোডের পক্ষে অবমূল্যায়ন করুন যা একটি autoMirror প্যারামিটার নেয়। ( IA338d )

বাগ ফিক্স - বড় কন্টেন্টের জন্য নেভিগেশন আইটেমের উচ্চতা স্বয়ংক্রিয়ভাবে বৃদ্ধি। ( 0c4ecc , b/272336962 )

সংস্করণ 1.6.0-alpha07

4 অক্টোবর, 2023

androidx.compose.material:material-*:1.6.0-alpha07 প্রকাশিত হয়েছে। 1.6.0-alpha07 সংস্করণে এই কমিট রয়েছে।

  • নির্ভরতা আপডেট

সংস্করণ 1.6.0-alpha06

20 সেপ্টেম্বর, 2023

androidx.compose.material:material-*:1.6.0-alpha06 প্রকাশিত হয়েছে। সংস্করণ 1.6.0-alpha06 এই কমিট ধারণ করে।

আচরণ ব্রেকিং পরিবর্তন

  • BottomSheetScaffold থেকে ড্রয়ার-সম্পর্কিত কার্যকারিতা সরানো হয়েছে। পূর্ববর্তী কার্যকারিতা অর্জন করতে আপনার BottomSheetScaffold একটি ড্রয়ারে মোড়ানো। একটি উদাহরণের জন্য BottomSheetScaffoldWithDrawerSample দেখুন। ( I1dcc8 )

এপিআই পরিবর্তন

  • পরিমাপের সময় বা বসানোর সময় স্ক্যাফোল্ড তার বাচ্চাদের পরিমাপ করবে কিনা তা নিয়ন্ত্রণ করতে একটি অস্থায়ী পতাকা প্রবর্তন করেছে। ডিফল্টরূপে, এই পরিমাপ পরিমাপ করা হবে. আপনি যদি নতুন আচরণের সাথে সমস্যার সম্মুখীন হন তবে দয়া করে একটি সমস্যা ফাইল করুন। ( if6e3b )

সংস্করণ 1.6.0-alpha05

6 সেপ্টেম্বর, 2023

androidx.compose.material:material-*:1.6.0-alpha05 প্রকাশিত হয়েছে। সংস্করণ 1.6.0-alpha05 এই কমিট ধারণ করে।

নতুন বৈশিষ্ট্য

  • ডান-থেকে-বাম লেআউটে রেন্ডার করা হলে স্বয়ংক্রিয়-মিরর করা আইকনগুলির জন্য সমর্থন যোগ করা হয়েছে। উপাদান-আইকন-কোর এবং উপাদান-আইকন-প্রসারিত মডিউলগুলির আইকনগুলি এখন স্বয়ংক্রিয়-মিররিং সমর্থন করার জন্য অতিরিক্ত আইকন সেট সরবরাহ করছে যখন আইকন এটির অনুমতি দেয়। নতুন সেটগুলি Icons.AutoMirrored.Filled... ইত্যাদির সাথে প্রিফিক্স করা হয়েছে এবং RTL লেআউটে স্বয়ংক্রিয়ভাবে মিরর করা আইকনগুলিকে ধরে রাখুন৷ স্বয়ংক্রিয়ভাবে মিরর করা (এবং করা উচিত) আইকনের তালিকার জন্য উপাদান আইকনের তালিকা দেখুন।

এপিআই পরিবর্তন

  • ডান-থেকে-বাম লেআউটে রেন্ডার করা হলে স্বয়ংক্রিয়-মিরর করা আইকনগুলির জন্য সমর্থন যোগ করা হয়েছে। উপাদান-আইকন-কোর এবং উপাদান-আইকন-প্রসারিত মডিউলগুলির আইকনগুলি এখন স্বয়ংক্রিয়-মিররিং সমর্থন করার জন্য অতিরিক্ত আইকন সেট সরবরাহ করছে যখন আইকন এটির অনুমতি দেয়। নতুন সেটগুলি Icons.AutoMirrored.Filled... ইত্যাদির সাথে প্রিফিক্স করা হয়েছে এবং RTL লেআউটে স্বয়ংক্রিয়ভাবে মিরর করা আইকনগুলিকে ধরে রাখুন৷ স্বয়ংক্রিয়ভাবে মিরর করা (এবং করা উচিত) আইকনের তালিকার জন্য উপাদান আইকনের তালিকা দেখুন। এই আইকনগুলির জন্য পূর্বে প্রদত্ত আইকন বৈশিষ্ট্যগুলি এখন অবচয় হিসাবে চিহ্নিত করা হয়েছে, এবং স্থানান্তরের সাথে সাহায্য করার জন্য একটি প্রতিস্থাপন-ব্লক পরামর্শ প্রদান করে। RTL-এ মিররিং আইকনগুলির জন্য আপনার কোনো বিশেষ হ্যান্ডলিং না থাকলে, আমরা আইকনের নতুন সেটে স্থানান্তরিত করার পরামর্শ দিই। উদাহরণস্বরূপ, Icons.Filled.ArrowBack Icons.AutoMirrored.Filled.ArrowBack এ রিফ্যাক্টর করা উচিত। ( I4b511 )

সংস্করণ 1.6.0-alpha04

23 আগস্ট, 2023

androidx.compose.material:material-*:1.6.0-alpha04 প্রকাশিত হয়েছে। 1.6.0-alpha04 সংস্করণে এই কমিট রয়েছে।

বাগ ফিক্স

  • একটি সমস্যা সমাধান করা হয়েছে যেখানে LookaheadScope ভিতরে একটি স্ক্যাফোল্ডের ভিতরে Subcomposition (যেমন BottomSheetScaffold ) ব্যবহার করে কিছু উপাদান তাদের আকার খুব তাড়াতাড়ি পড়ার চেষ্টা করছে। ( if2c5d )
  • স্থির DropdownMenu offset গণনা তাই x অফসেটগুলি শুধুমাত্র স্থানীয় লেআউটের দিকনির্দেশের উপর নির্ভর করে, এবং মেনুটি স্ক্রিনের নীচের কাছাকাছি থাকলে y অফসেটগুলি আর বিপরীত করা হবে না। ( ICcc74 , b/294103942 )
  • BottomSheetScaffold এর অভ্যন্তরীণ লেআউট অপ্টিমাইজ করা হয়েছে এবং একটি LookaheadLayout ভিতরে BottomSheetScaffold এর সাথে একটি সম্ভাব্য সমস্যা সমাধান করা হয়েছে। ( Ic0afa )

সংস্করণ 1.6.0-alpha03

9 আগস্ট, 2023

androidx.compose.material:material-*:1.6.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.6.0-alpha03 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • অ্যান্ড্রয়েডে এজ-টু-এজ কার্যকারিতা সমর্থন করার জন্য Material2 উপাদানগুলির এখন windowInsets পাস করার জন্য একটি পৃথক API রয়েছে। material3 উপাদানের বিপরীতে, material2 উপাদানগুলি ডিফল্টরূপে ইনসেট সমর্থন করে না এবং মানটি ম্যানুয়ালি পাস করা উচিত। নির্দেশিকা জন্য সংশ্লিষ্ট নমুনা পড়ুন. ( I655e8 )

সংস্করণ 1.6.0-alpha02

জুলাই 26, 2023

androidx.compose.material:material-*:1.6.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.6.0-alpha02 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • আমরা ঘনত্ব নির্ভরতাকে উপাদান স্তরে নিয়ে যাচ্ছি। এটি নিম্নলিখিত উপাদানগুলির জন্য প্রযোজ্য: SwipeToDismiss এবং পত্রক ভিত্তিক উপাদান৷ অনুগ্রহ করে প্রদত্ত নতুন ওভারলোড ব্যবহার করুন যেখানে ঘনত্ব একটি পরামিতি। ( I1846e )
  • কম্পোজেবলে অনুমোদিত ইনপুট নির্দিষ্ট করতে অতিরিক্ত টীকা ( I51109 )
  • কম্প্যাটিবিলিটি সাপ্রেশন ( I8e87a , b/287516207 ) টীকা করতে API ফাইল আপডেট করা হয়েছে
  • FabPosition ( Ib7aea , b/170592777 ) এর জন্য নতুন স্টার্ট অ্যালাইনমেন্ট যোগ করা হয়েছে
  • উপাদান 2-এ TextFieldColorsWithIcons TextFieldColors এর পক্ষে অবমূল্যায়ন করা হয়েছে। leadingIconColor বা trailingIconColor ওভাররাইড করার সময়, interactionSource দিয়ে ওভারলোড ওভাররাইড করুন। ( Id57ed , b/199377790 )

সংস্করণ 1.6.0-alpha01

জুন 21, 2023

androidx.compose.material:material-*:1.6.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.6.0-alpha01-এ এই কমিট রয়েছে।

আচরণ পরিবর্তন

  • includeFontPadding এখন উপাদান 2 টাইপোগ্রাফিতে ডিফল্টরূপে false । ডিফল্ট লাইন উচ্চতা শৈলীও পরিবর্তিত হয়েছে Trim.None এবং Alignment.Center , এবং স্পষ্ট lineHeight (sp-এ) Typography এর TextStyle s-এ যোগ করা হয়েছে। আপনি যদি এই মানগুলি কাস্টমাইজ করতে চান তবে API ডক্সের সাথে পরামর্শ করুন এবং এই পরিবর্তনগুলির একটি গভীর ব্যাখ্যাকারীর জন্য ব্লগ পোস্টটি দেখুন৷ ( Icabc3 , I3f801 , I04c03 )

এপিআই পরিবর্তন

  • উপাদানের Swipeable API গুলিকে বাতিল করা হয়েছে৷ অনুগ্রহ করে ফাউন্ডেশনের AnchoredDraggable APIগুলি দেখুন যা সহজ এবং জটিল উভয় ক্ষেত্রেই ব্যবহারের জন্য অপ্টিমাইজ করা হয়েছে৷ ( I732e0 )

বাগ ফিক্স

  • BottomSheetState , ModalBottomSheetState এবং BottomDrawerState এখন একটি অগ্রগতি বৈশিষ্ট্য প্রকাশ করে যা বর্তমান (সেটেলড) অ্যাঙ্কর এবং সোয়াইপ দিক থেকে নিকটতম অ্যাঙ্করের মধ্যে অগ্রগতি নির্দেশ করে৷ ( I1b317 , b/271169225 , b/276375124 , b/276776071 , b/270066861 )

সংস্করণ 1.5

সংস্করণ 1.5.4

18 অক্টোবর, 2023

androidx.compose.material:material-*:1.5.4 প্রকাশিত হয়েছে। সংস্করণ 1.5.4 এই কমিট ধারণ করে.

সংস্করণ 1.5.3

4 অক্টোবর, 2023

androidx.compose.material:material-*:1.5.3 প্রকাশিত হয়েছে। এই সংস্করণে কোন পরিবর্তন নেই

সংস্করণ 1.5.2

27 সেপ্টেম্বর, 2023

androidx.compose.material:material-*:1.5.2 প্রকাশিত হয়েছে। সংস্করণ 1.5.2 এই কমিট ধারণ করে.

সংস্করণ 1.5.1

6 সেপ্টেম্বর, 2023

androidx.compose.material:material-*:1.5.1 কোনো পরিবর্তন ছাড়াই প্রকাশ করা হয়েছে। সংস্করণ 1.5.1 এই কমিট ধারণ করে.

সংস্করণ 1.5.0

9 আগস্ট, 2023

androidx.compose.material:material-*:1.5.0 প্রকাশিত হয়েছে। সংস্করণ 1.5.0 এই কমিট ধারণ করে.

1.4.0 থেকে গুরুত্বপূর্ণ পরিবর্তন

এপিআই পরিবর্তন

  • BottomSheetScaffold এ Swipeable1 API-তে পরিবর্তনগুলি অন্তর্ভুক্ত করা হয়েছে৷ BottomSheetState এর confirmStateChange প্যারামের নাম পরিবর্তন করে confirmValueChange চেঞ্জ করা হয়েছে। progress এখন একটি ফ্লোট মান হিসাবে উন্মুক্ত। animateTo এবং snapTo অভ্যন্তরীণ। পরিবর্তে expand() এবং collapse() ব্যবহার করুন। direction এবং overflow সরানো হয়েছে। offset requireOffset() দিয়ে প্রতিস্থাপিত হয়েছে। I323b4
  • ড্রয়ারে snapTo ফাংশনটিকে অ-পরীক্ষামূলক API হিসাবে চিহ্নিত করুন৷ ( Ib9c18 , b/261425368 )
  • বৃত্তাকার অগ্রগতি সূচকগুলির জন্য একটি ট্র্যাক রঙের প্যারামিটার এবং বৃত্তাকার এবং রৈখিক অগ্রগতি সূচক উভয়ের জন্য একটি স্ট্রোক ক্যাপ প্যারামিটার যোগ করা হয়েছে৷ ( IE668c , b/216325962 , b/222964817 )
  • ModalBottomSheetState , ModalBottomSheetState.Saver নামকরণ করুন এবং confirmValueChange করতেModalBottomSheetState-এর confirmStateChange rememberModalBottomSheetState । ( Ib48d1 )
  • Modifier.minimumInteractiveComponentSize যোগ করুন। উপাদানটি ছোট হলে স্পর্শ মিথস্ক্রিয়াকে দ্ব্যর্থিত করতে এটি কমপক্ষে 48.dp আকারে সংরক্ষণ করতে ব্যবহার করা যেতে পারে। ( I33f58 , b/258495559 )
  • ModalBottomSheetLayout এ সোয়াইপযোগ্য API-এ পরিবর্তনগুলি অন্তর্ভুক্ত করা হয়েছে। ModalBottomSheetState এর animateTo আর একটি animationSpec প্যারামিটার নেয় না এবং অফসেটটি এখন বাতিলযোগ্য। অফসেটের প্রয়োজনের জন্য requireOffset ব্যবহার করুন। ( IA2e79 )
  • @JvmDefaultWithCompatibility টীকা যোগ করা হচ্ছে ( I8f206 )
  • ModalDrawer. DrawerState animateTo খোলা এবং বন্ধ পদ্ধতি দ্বারা প্রতিস্থাপিত হয়েছে এবং অফসেট এখন বাতিলযোগ্য। অফসেটের প্রয়োজনের জন্য requireOffset ব্যবহার করুন। ( I3de9e )
  • সঠিকভাবে প্রেস বিলম্বিত করার জন্য ড্রয়ার এবং শীট আপডেট করা হয়েছে যদি অঙ্গভঙ্গিগুলি স্ক্রোল ইভেন্টে পরিণত হতে পারে।
  • উপাদান এবং উপাদান3 টেক্সট, TextField এবং OutlinedTextField minLines প্যারামিটার যোগ করা হয়েছে যা লাইনের সংখ্যার পরিপ্রেক্ষিতে উপাদানটির ন্যূনতম উচ্চতা নির্ধারণ করতে দেয় ( I4af1d )

বাগ ফিক্স

  • একটি সমস্যা সমাধান করে যেখানে pullRefresh বেগ ব্যবহার করছে না, যার ফলে ওভারস্ক্রোল দেখানো হচ্ছে। এছাড়াও ভোক্ত বেগের জন্য একটি ফ্লোট ফেরত দিতে Modifier.pullRefreshonRelease lambda-এর API স্বাক্ষর পরিবর্তন করা হয়েছে ( I7db65 , b/266874741 )
  • BottomSheetState , ModalBottomSheetState এবং BottomDrawerState এখন একটি অগ্রগতি বৈশিষ্ট্য প্রকাশ করে যা বর্তমান (সেটেলড) অ্যাঙ্কর এবং সোয়াইপ দিক থেকে নিকটতম অ্যাঙ্করের মধ্যে অগ্রগতি নির্দেশ করে৷ ( I1b317 , b/271169225 , b/276375124 , b/276776071 , b/270066861 )
  • সংলাপের প্রস্থের সাথে ফিট করার জন্য অ্যাকশনগুলি একে অপরের উপর স্ট্যাক করা হলে নিশ্চিতকরণ অ্যাকশনের নীচে উপস্থিত হওয়ার জন্য AlertDialog খারিজ অ্যাকশন স্থির করা হয়েছে। এই ফিক্সটি মেটেরিয়াল ডিজাইন স্পেকের সাথে বাস্তবায়নকে সারিবদ্ধ করে। ( I029de , b/235454277 )
  • BottomSheetScaffold আর নেস্টেড স্ক্রলে অংশগ্রহণ করবে না যখন gesturesEnabled মিথ্যাতে সেট করা থাকে। ( I634f3 , b/215403277 )
  • একটি বাগ সংশোধন করা হয়েছে যেখানে স্লটগুলির জন্য খালি সামগ্রী সরবরাহ করা হলে BottomSheetScaffold ক্র্যাশ হবে৷ ( Ib24a5 , b/235588730 )
  • PullRefreshIndicator ক্লিক/পয়েন্টার ইভেন্টে বাধা দেওয়ার সমাধান করে। ( 2494256 , b/271777421 )
  • একটি সমস্যা সমাধান করা হয়েছে যেখানে ModalBottomSheetLayout অভিযোজন পরিবর্তনের ক্ষেত্রে একটি প্রান্তের ক্ষেত্রে ক্র্যাশ হবে। লেআউট অ্যানিমেশনগুলি (যেমন Modifier.animateContentSize ) শীট সামগ্রীতে/এ এখন মসৃণভাবে কাজ করে৷ ( I2f981 , b/266780234 )

সংস্করণ 1.5.0-rc01

জুলাই 26, 2023

androidx.compose.material:material-*:1.5.0-rc01 প্রকাশিত হয়েছে। 1.5.0-rc01 সংস্করণে এই কমিট রয়েছে।

সংস্করণ 1.5.0-beta03

জুন 28, 2023

androidx.compose.material:material-*:1.5.0-beta03 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-beta03 এই কমিট ধারণ করে।

বাগ ফিক্স

  • BottomSheetState , ModalBottomSheetState এবং BottomDrawerState এখন একটি অগ্রগতি বৈশিষ্ট্য প্রকাশ করে যা বর্তমান (সেটেলড) অ্যাঙ্কর এবং সোয়াইপ দিক থেকে নিকটতম অ্যাঙ্করের মধ্যে অগ্রগতি নির্দেশ করে৷ ( I1b317 , b/271169225 , b/276375124 , b/276776071 , b/270066861 )

সংস্করণ 1.5.0-beta02

7 জুন, 2023

androidx.compose.material:material-*:1.5.0-beta02 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-beta02 এই কমিট ধারণ করে।

সংস্করণ 1.5.0-beta01

24 মে, 2023

androidx.compose.material:material-*:1.5.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-beta01-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • DrawerState 's এবং BottomDrawerState এর অফসেট আর বাতিলযোগ্য নয়। তারা পরিবর্তে অফসেটের অনুপস্থিতি নির্দেশ করতে Float.NaN ফেরত দেয়। ( IE9855 )
  • প্রদর্শিত মেনু আইটেমগুলির উল্লম্ব স্ক্রোল অবস্থা নিয়ন্ত্রণ করার জন্য একটি DropdownMenu বা একটি ExposedDropdownMenu তৈরি করার সময় একটি ScrollState পাস করার একটি বিকল্প যোগ করা হয়েছে৷ ( Idb009 , b/185304441 )
  • ModalBottomSheetLayout এর অঙ্গভঙ্গি সক্রিয়/অক্ষম করার জন্য সমর্থন যোগ করুন যাতে ব্যবহারকারী আরও বৈশিষ্ট্যযুক্ত বটমশীটের জন্য এটি কনফিগার করতে পারে ( I40af0 )
  • BasicText একটি রঙের প্যারামিটার যোগ করা হয়েছে যাতে দক্ষতার সাথে অ্যানিমেটিং বা পাঠ্যের রঙ সেট করা যায়। ( Iffd88 , b/246961787 )
  • শব্দার্থবিদ্যা সম্পত্তি isContainer নাম পরিবর্তন করে isTraversalGroup ( I121f6 )

বাগ ফিক্স

  • সংলাপের প্রস্থের সাথে ফিট করার জন্য অ্যাকশনগুলি একে অপরের উপর স্ট্যাক করা হলে নিশ্চিতকরণ অ্যাকশনের নীচে উপস্থিত হওয়ার জন্য AlertDialog খারিজ অ্যাকশন স্থির করা হয়েছে। এই ফিক্সটি মেটেরিয়াল ডিজাইন স্পেকের সাথে বাস্তবায়নকে সারিবদ্ধ করে। ( I029de , b/235454277 )

সংস্করণ 1.5.0-alpha04

10 মে, 2023

androidx.compose.material:material-*:1.5.0-alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha04 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • আমরা ঘনত্ব নির্ভরতাকে উপাদান স্তরে নিয়ে যাচ্ছি। এটি নিম্নলিখিত উপাদানগুলির জন্য প্রযোজ্য: BottomDrawer , ModalBottomSheetLayout , BottomSheetScaffold , Switch , ModalDrawer ৷ অনুগ্রহ করে প্রদত্ত নতুন ওভারলোড ব্যবহার করুন যেখানে ঘনত্ব একটি পরামিতি। ( I8fbd8 )

সংস্করণ 1.5.0-alpha03

এপ্রিল 19, 2023

androidx.compose.material:material-*:1.5.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha03 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • নতুন SwipeableV2 API ব্যবহার করতে BottomDrawer ইন্টারনাল আপডেট করুন। এই কারণে BottomDrawerState এখন শুধুমাত্র শ্রেণী স্তরে APIS সংজ্ঞায়িত থাকবে, এটি SwipeableState থেকে পদ্ধতি/সম্পত্তির উত্তরাধিকারী হবে না। আমরা একটি অভ্যন্তরীণ SwipeableV2State এর সাথে কম্পোজিশন ব্যবহার করছি। অফসেট এখন একটি বাতিলযোগ্য ফ্লোটিং পয়েন্ট প্রপার্টি, বর্তমান মান এবং একটি সোয়াইপ টার্গেট মান এখনও currentValue এবং targetValue বৈশিষ্ট্যের মাধ্যমে অ্যাক্সেস করা যেতে পারে। আগের ক্লাস লেভেল পদ্ধতি যেমন open/expand/close এবং বৈশিষ্ট্য যেমন isOpen/isClosed সমর্থিত হতে থাকে। ( Iad40c , b/178529942 , b/220676296 )

বাগ ফিক্স

  • স্যুইচ কম্পোনেন্টের অভ্যন্তরীণ আপডেট করা হয়েছে। টেনে আনার সময় সুইচটি এখন নিকটতম (টার্গেট স্টেট) পূর্বরূপ দেখাবে। ( Id90d4 )
  • BottomSheetScaffold এ অ্যানিমেটেড শীট বিষয়বস্তু (যেমন শীট সামগ্রীতে Modifier.animateContentSize ) অপ্টিমাইজ করা হয়েছে এবং এখন মসৃণভাবে কাজ করে৷ ( IA913c , b/270518202 , b/254446195 )
  • BottomSheetScaffold আর নেস্টেড স্ক্রলে অংশগ্রহণ করবে না যখন gesturesEnabled false সেট করা থাকে। ( I634f3 , b/215403277 )

সংস্করণ 1.5.0-alpha02

5 এপ্রিল, 2023

androidx.compose.material:material-*:1.5.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha02 এই কমিট ধারণ করে।

বাগ ফিক্স

  • একটি বাগ সংশোধন করা হয়েছে যেখানে স্লটগুলির জন্য খালি সামগ্রী সরবরাহ করা হলে BottomSheetScaffold ক্র্যাশ হবে৷ ( Ib24a5 , b/235588730 )
  • PullRefreshIndicator ক্লিক/পয়েন্টার ইভেন্টে বাধা প্রদানের সমাধান করে ( 2494256 , b/271777421 )

সংস্করণ 1.5.0-alpha01

22 মার্চ, 2023

androidx.compose.material:material-*:1.5.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha01 এই কমিট ধারণ করে।

বাগ ফিক্স

  • একটি চিপগ্রুপ রিফ্লো নমুনা যোগ করুন। একক লাইন চিপগ্রুপ নমুনায় চাইল্ড চিপগুলির মধ্যে অনুভূমিক প্যাডিং আপডেট করুন যাতে স্পেকের সাথে মিল থাকে। ( I3b155 )
  • একটি সমস্যা সমাধান করা হয়েছে যেখানে ModalBottomSheetLayout অভিযোজন পরিবর্তনের ক্ষেত্রে একটি প্রান্তের ক্ষেত্রে ক্র্যাশ হবে। লেআউট অ্যানিমেশনগুলি (যেমন Modifier.animateContentSize ) শীট সামগ্রীতে/এ এখন মসৃণভাবে কাজ করে৷ ( I2f981 , b/266780234 )

সংস্করণ 1.4

সংস্করণ 1.4.3

3 মে, 2023

androidx.compose.material:material-*:1.4.3 কোনো পরিবর্তন ছাড়াই প্রকাশিত হয়েছে (শুধুমাত্র একটি সংস্করণ বাম্প)।

সংস্করণ 1.4.2

এপ্রিল 19, 2023

androidx.compose.material:material-*:1.4.2 প্রকাশিত হয়েছে। সংস্করণ 1.4.2 এই কমিট ধারণ করে.

সংস্করণ 1.4.1

5 এপ্রিল, 2023

androidx.compose.material:material-*:1.4.1 প্রকাশিত হয়েছে। সংস্করণ 1.4.1 এই কমিট ধারণ করে.

সংস্করণ 1.4.0

22 মার্চ, 2023

androidx.compose.material:material-*:1.4.0 প্রকাশিত হয়েছে। সংস্করণ 1.4.0 এই কমিট ধারণ করে.

1.3.0 থেকে গুরুত্বপূর্ণ পরিবর্তন

এপিআই পরিবর্তন

  • Modifier.minimumInteractiveComponentSize যোগ করুন। উপাদানটি ছোট হলে স্পর্শ মিথস্ক্রিয়াকে দ্ব্যর্থিত করতে এটি কমপক্ষে 48.dp আকারে সংরক্ষণ করতে ব্যবহার করা যেতে পারে। ( I33f58 , b/258495559 )
  • ModalDrawer এ সোয়াইপযোগ্য API-এ পরিবর্তনগুলি অন্তর্ভুক্ত করা হয়েছে। DrawerState animateTo খোলা এবং বন্ধ পদ্ধতি দ্বারা প্রতিস্থাপিত হয়েছে এবং অফসেট এখন বাতিলযোগ্য। অফসেটের প্রয়োজনের জন্য requireOffset ব্যবহার করুন। ( I3de9e )
  • উপাদান এবং উপাদান3 টেক্সট, TextField এবং OutlinedTextField minLines প্যারামিটার যোগ করা হয়েছে যা লাইনের সংখ্যার পরিপ্রেক্ষিতে উপাদানটির ন্যূনতম উচ্চতা নির্ধারণ করতে দেয় ( I4af1d )
  • BasicText এবং BasicTextFieldminLines প্যারামিটার যোগ করা হয়েছে। এটি লাইনের সংখ্যার ( I24294 , b/122476634 ) পরিপ্রেক্ষিতে এই কম্পোজেবলগুলির ন্যূনতম উচ্চতা সেট করার অনুমতি দেয়

সংস্করণ 1.4.0-rc01

8 মার্চ, 2023

androidx.compose.material:material-*:1.4.0-rc01 কোনো পরিবর্তন ছাড়াই প্রকাশ করা হয়েছে। সংস্করণ 1.4.0-rc01-এ এই কমিট রয়েছে।

সংস্করণ 1.4.0-beta02

22 ফেব্রুয়ারি, 2023

androidx.compose.material:material-*:1.4.0-beta02 প্রকাশিত হয়েছে। 1.4.0-beta02 সংস্করণে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • BottomSheetScaffold এ সোয়াইপযোগ্য API-এ পরিবর্তনগুলি অন্তর্ভুক্ত করা হয়েছে৷ BottomSheetState এর confirmStateChange প্যারামের নাম পরিবর্তন করে confirmValueChange চেঞ্জ করা হয়েছে। progress এখন একটি ফ্লোট মান হিসাবে উন্মুক্ত। animateTo এবং snapTo অভ্যন্তরীণ। পরিবর্তে expand() এবং collapse() ব্যবহার করুন। direction এবং overflow সরানো হয়েছে। offset requireOffset() দিয়ে প্রতিস্থাপিত হয়েছে। ( I323b4 )

বাগ ফিক্স

  • ক্লিকযোগ্য এবং নির্বাচনযোগ্য সারফেস থেকে শব্দার্থিক ভূমিকা সরানো হয়েছে, modifier.semantics ( Ibb4ba ) ব্যবহার করে ভূমিকা সেট করতে তাদের ব্যবহৃত উপাদানগুলি আপডেট করা হয়েছে
  • বর্ধিত মেটেরিয়াল আইকনগুলিতে ছোটখাট আপডেট যা ভরা desktop_mac , directions এবং kitchen আইকনগুলিকে পরিবর্তন করে। ( I65f5e )

সংস্করণ 1.4.0-beta01

ফেব্রুয়ারী 8, 2023

androidx.compose.material:material-*:1.4.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-beta01-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • একটি সমস্যা সমাধান করে যেখানে pullRefresh বেগ ব্যবহার করছে না, যার ফলে ওভারস্ক্রোল দেখানো হচ্ছে। এছাড়াও ভোক্ত বেগের জন্য একটি ফ্লোট ফেরত দিতে Modifier.pullRefreshonRelease lambda-এর API স্বাক্ষর পরিবর্তন করা হয়েছে ( I7db65 , b/266874741 )
  • পুনরুদ্ধার করা সম্পত্তি গেটার LocalMinimuTouchTargetEnforcement এবং এটিকে অবনমন হিসাবে চিহ্নিত করুন এবং LocalMinimumInteractiveComponentEnforcement এ পুনঃনির্দেশ করুন। ( I60dd5 )

সংস্করণ 1.4.0-alpha05

25 জানুয়ারী, 2023

androidx.compose.material:material-*:1.4.0-alpha05 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha05 এই কমিট ধারণ করে।

বাগ ফিক্স

  • একটি সমস্যা সমাধান করা হয়েছে যেখানে ModalBottomSheetLayout's HalfExpanded অবস্থা ভুলভাবে গণনা করা হয়েছে এবং শীটটি ভাসমান বলে মনে হবে। ( I8c615 , b/265610459 )
  • ModalBottomSheetLayout এ একটি বাগ সংশোধন করা হয়েছে যেখানে কিছু পরিস্থিতিতে লুকানো থেকে দৃশ্যমান অবস্থায় যাওয়ার সময় শীটটি ক্র্যাশ হবে। ( IA9265 , b/265444789 )

সংস্করণ 1.4.0-alpha04

11 জানুয়ারী, 2023

androidx.compose.material:material-*:1.4.0-alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha04 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • সারফেসের উপর IsContainer শব্দার্থবিদ্যা সম্পত্তি যোগ করা হয়েছে. এই বৈশিষ্ট্যটি পরবর্তী পরিবর্তনে ব্যবহার করা হবে যা পৃষ্ঠতলের মতো উপাদানগুলির শব্দার্থগত অর্থের উপর ভিত্তি করে ট্রাভার্সাল অর্ডার নির্ধারণ করে। ( I63379 )
  • ড্রয়ারে snapTo ফাংশনটিকে অ-পরীক্ষামূলক API হিসাবে চিহ্নিত করুন৷ ( Ib9c18 , b/261425368 )
  • বৃত্তাকার অগ্রগতি সূচকগুলির জন্য একটি ট্র্যাক রঙের প্যারামিটার এবং বৃত্তাকার এবং রৈখিক অগ্রগতি সূচক উভয়ের জন্য একটি স্ট্রোক ক্যাপ প্যারামিটার যোগ করা হয়েছে৷ ( IE668c , b/216325962 , b/222964817 )
  • ModalBottomSheetState , ModalBottomSheetState.Saver নামকরণ করুন এবং confirmValueChange করতেModalBottomSheetState-এর confirmStateChange rememberModalBottomSheetState । ( Ib48d1 )
  • অবনমন-লুকানো ফাংশনগুলির আরও রিটার্ন টাইপ বাতিলযোগ্যতা ( Ibf7b0 )
  • Modifier.minimumInteractiveComponentSize যোগ করুন। উপাদানটি ছোট হলে স্পর্শ মিথস্ক্রিয়াকে দ্ব্যর্থিত করতে এটি কমপক্ষে 48.dp আকারে সংরক্ষণ করতে ব্যবহার করা যেতে পারে। ( I33f58 , b/258495559 )
  • ModalBottomSheetLayout এ সোয়াইপযোগ্য API-এ পরিবর্তনগুলি অন্তর্ভুক্ত করা হয়েছে। ModalBottomSheetState এর animateTo আর একটি animationSpec প্যারামিটার নেয় না এবং offset এখন বাতিলযোগ্য। offset প্রয়োজনের জন্য requireOffset ব্যবহার করুন। ( IA2e79 )

বাগ ফিক্স

  • একটি ModalBottomSheetLayout এর শীটের এখন সর্বোচ্চ প্রস্থ 640 dp। ( I71a4f , b/234927577 )
  • rememberPullRefreshState থ্রেশহোল্ড এবং refreshingOffset সময়ের সাথে সাথে refreshThreshold আপডেট করছে না এমন একটি সমস্যা সমাধান করে। ( Ifed10 , b/263159832 )
  • অগ্রগতি সূচকগুলির অগ্রগতি এখন সঠিকভাবে তার প্রত্যাশিত পরিসরে আবদ্ধ। ( I8a7eb , b/262262727 )
  • যখন ModalBottomSheetState এখনও কোনো অ্যাঙ্কর পায়নি, তখন এটি একটি অ্যানিমেশন ছাড়াই currentValue আপডেট করবে যখন snapTo বা animateTo একটি ব্যতিক্রম দেখানোর পরিবর্তে কল করা হবে। ( I2c91b )
  • উপাদান 2 FilterChip বাস্তবায়নে সক্রিয় অবস্থা স্থির করা হয়েছে। ( Id326a , b/261329817 )
  • একটি বাগ সংশোধন করা হয়েছে যেখানে ModalBottomSheetLayout যদি পোর্ট্রেট থেকে ল্যান্ডস্কেপে ঘোরার সময় HalfExpanded হয় তাহলে ক্র্যাশ হবে৷ অনুগ্রহ করে নিশ্চিত করুন যে আপনি সঠিক initialValue পাস করছেন, উদাহরণস্বরূপ কনফিগারেশন চেক করে। ( Ie8df7 , b/182882364 )
  • শীট বিষয়বস্তু খালি থাকলে ModalBottomSheetLayout ক্র্যাশ হবে এমন একটি সমস্যা সমাধান করা হয়েছে। ModalBottomSheetLayout এখন খালি শীট সামগ্রীর অনুমতি দেয়। শীট বিষয়বস্তু খালি হলে, এটি শুধুমাত্র একটি লুকানো অবস্থা থাকবে। ( Ic2288 , b/200980998 , b/216693030 )

পরিচিত সমস্যা

  • androidx.compose.foundation:1.4.0-alpha03 থেকে androidx.compose.foundation:1.4.0-alpha04 এ আপডেট করার সময়, আপনি একটি java.lang.NoSuchFieldError ত্রুটি অনুভব করতে পারেন। এখানেই সমস্যাটি অরগানিকভাবে রিপোর্ট করা হয়েছিল। একটি ফিক্স জমা দেওয়া হয়েছে, এবং পরবর্তী রচনা আপডেটে উপলব্ধ হবে। চারপাশে একটি কাজ হিসাবে, আপনার androidx.compose.material এবং androidx.compose.material3 লাইব্রেরিগুলিকে সর্বশেষ সংস্করণে (1.1.0-আলফা 04) আপডেট করুন বা আপনার androidx.compose.foundation 1.4.0-আলফা 03 এ ডাউনগ্রেড করুন।

সংস্করণ 1.4.0-আলফা 03

7 ডিসেম্বর, 2022

androidx.compose.material:material-*:1.4.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-Alpha03 এ এই কমিটগুলি রয়েছে।

এপিআই পরিবর্তন

  • @JvmDefaultWithCompatibility কমপ্যাটিবিলিটি টীকা যুক্ত করা হচ্ছে ( আই 8 এফ 206 )
  • ModalDrawer Swipeable এপিআইগুলিতে অন্তর্ভুক্ত পরিবর্তনগুলি। DrawerState animateTo open এবং close পদ্ধতি দ্বারা প্রতিস্থাপন করা হয়েছে এবং অফসেটটি এখন বাতিলযোগ্য। অফসেটের প্রয়োজনের জন্য requireOffset ব্যবহার করুন। ( I3de9e )
  • পূর্বপুরুষদের স্ক্রোল তথ্য জিজ্ঞাসা করতে একটি সংশোধক এপিআই যুক্ত করা হয়েছে। ( আই 2 বিএ 9 ডি , বি/203141462 )
  • ইন্টারঅ্যাকশনগুলি সঠিকভাবে বিলম্ব করতে Clickable করতে ব্যবহৃত হয়, যখন অঙ্গভঙ্গিগুলি স্ক্রোল ইভেন্টে পরিণত হতে পারে।
  • স্থির Clickables যখন কোনও Scrollable ViewGroup ভিতরে ব্যবহৃত হয় তখন সঠিকভাবে বিলম্বিত হয় না।
  • অঙ্গভঙ্গিগুলি স্ক্রোল ইভেন্টে পরিণত হতে পারে এমন ক্ষেত্রে প্রেসগুলি সঠিকভাবে বিলম্ব করতে আপডেট করা ড্রয়ার এবং শীটগুলি।

বাগ ফিক্স

  • এমন একটি সমস্যা স্থির করা হয়েছে যেখানে onRefresh পরে PullRefreshIndicator আটকে যেতে পারে, যদি সতেজতা রাষ্ট্রকে সত্যে পরিবর্তন না করা হয়। ( আই 2416 , বি/248274004 )

নির্ভরতা আপডেট

  • ইউআই রচনা করুন এবং রচনা উপাদান এখন লাইফসাইকেল 2.5.1 এর উপর নির্ভর করে। ( I05ab0 , খ/258038814 )

সংস্করণ 1.4.0-আলফা 02

9 নভেম্বর, 2022

androidx.compose.material:material-*:1.4.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-ALPHA02 এ এই কমিটগুলি রয়েছে।

এপিআই পরিবর্তন

  • awaitFirstDown এবং waitForUpOrCancellation এখন বৃহত্তর নমনীয়তার জন্য একটি PointerEventPass গ্রহণ করুন। ( I7579a , বি/212091796 )
  • উপাদান এবং উপাদান 3 পাঠ্য, TextField এবং OutlinedTextField minLines প্যারামিটার যুক্ত করা হয়েছে যা লাইনের সংখ্যার ক্ষেত্রে উপাদানটির সর্বনিম্ন উচ্চতা নির্ধারণের অনুমতি দেয় ( i4af1d )
  • BasicTex টি এবং BasicTextField minLines প্যারামিটার যুক্ত করা হয়েছে। এটি লাইনের সংখ্যার ক্ষেত্রে এই কম্পোজেবলগুলির সর্বনিম্ন উচ্চতা সেট করতে দেয় ( i24294 , বি/122476634 )

সংস্করণ 1.4.0-alpha01

24 অক্টোবর, 2022

androidx.compose.material:material-*:1.4.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-ALPHA01 এর মধ্যে এই কমিটগুলি রয়েছে।

এপিআই পরিবর্তন

  • অঙ্গভঙ্গি ডিটেক্টরগুলির জন্য একটি নতুন পদ্ধতি, awaitEachGesture() যুক্ত করা হয়েছিল। এটি forEachGesture() এর অনুরূপ কাজ করে তবে অঙ্গভঙ্গিগুলির ওভার লুপটি পুরোপুরি AwaitPointerEventScope মধ্যে কাজ করে যাতে ঘটনাগুলি পুনরাবৃত্তির মধ্যে হারিয়ে যেতে পারে না।
  • forEachGesture() awaitEachGesture() এর পক্ষে অবমূল্যায়ন করা হয়েছে কারণ এটি ইভেন্টগুলি অঙ্গভঙ্গির মধ্যে হারিয়ে যেতে দেয়। ( আইএফএফসি 3 এফ , বি/251260206 )

সংস্করণ 1.3

সংস্করণ 1.3.1

9 নভেম্বর, 2022

androidx.compose.material:material-*:1.3.1 প্রকাশিত হয়েছে। সংস্করণ 1.3.1 এই কমিট ধারণ করে.

সংস্করণ 1.3.0

24 অক্টোবর, 2022

androidx.compose.material:material-*:1.3.0 প্রকাশিত হয়েছে। সংস্করণ 1.3.0 এই কমিট ধারণ করে.

1.2.0 সাল থেকে গুরুত্বপূর্ণ পরিবর্তন

আচরণ ব্রেকিং পরিবর্তন

  • ডায়ালগ এবং পপআপগুলিতে সর্বাধিক সমর্থিত উচ্চতা 8 ডিপিতে হ্রাস করা হয়েছে।

এপিআই পরিবর্তন

  • রচনা করতে একটি পুল-টু-রেফ্রেশ উপাদান যুক্ত করুন ( i29168 )।
  • রেঞ্জস্লাইডারে মান থেকে মান থেকে প্যারামিটারের নাম পরিবর্তন করুন ( i3b79a )।

সংস্করণ 1.3.0-rc01

5 অক্টোবর, 2022

androidx.compose.material:material-*:1.3.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-rc01-এ এই কমিট রয়েছে।

সংস্করণ 1.3.0-BETA03

21শে সেপ্টেম্বর, 2022

androidx.compose.material:material-*:1.3.0-beta03 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-BETA03 এ এই কমিটগুলি রয়েছে।

এপিআই পরিবর্তন

  • রচনা করতে একটি পুল-টু-রেফ্রেশ উপাদান যুক্ত করুন ( i29168 )

সংস্করণ 1.3.0-BETA02

7 সেপ্টেম্বর, 2022

androidx.compose.material:material-*:1.3.0-beta02 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-BETA02 এর মধ্যে এই কমিট রয়েছে।

1.3.0-BETA01 এর পরে কোনও পরিবর্তন নেই

সংস্করণ 1.3.0-beta01

24 আগস্ট, 2022

androidx.compose.material:material-*:1.3.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-beta01-এ এই কমিট রয়েছে।

আচরণ ব্রেকিং পরিবর্তন

ডায়ালগ এবং পপআপগুলিতে সর্বাধিক সমর্থিত উচ্চতা 8 ডিপিতে হ্রাস করা হয়েছে।

কমপোজ ডায়ালগ এবং পপআপগুলির জন্য সর্বাধিক সমর্থিত উচ্চতা 30 ডিপি থেকে 8 ডিপিতে হ্রাস করা হয়েছে। এই পরিবর্তন উভয় উপাদান এবং ইউআই কাস্টম ডায়ালগ এবং পপআপগুলিকে প্রভাবিত করে। এই পরিবর্তনটি এস এর নীচে অ্যান্ড্রয়েড সংস্করণগুলিতে একটি অ্যাক্সেসিবিলিটি বাগ প্রশমিত করার জন্য তৈরি করা হয়েছে এবং সেই উইন্ডোজগুলির মধ্যে অ্যাক্সেসযোগ্যতা পরিষেবাগুলি ডায়ালগ বা পপআপের ভিতরে থাকা সামগ্রীর সাথে ইন্টারঅ্যাক্ট করতে সক্ষম হয়েছে তা নিশ্চিত করার জন্য তৈরি করা হয়েছে।

আপনি কেবল এই পরিবর্তন দ্বারা প্রভাবিত হবেন যদি আপনি 8DP এর চেয়ে বেশি স্তরে একটি উচ্চতা সেট সহ একটি কাস্টম ডায়ালগ বা পপআপ বাস্তবায়ন তৈরি করে থাকেন। আপনার ডায়ালগ বা পপআপের উচ্চতা হ্রাস করার বিষয়টি বিবেচনা করুন। আপনার যদি এই নতুন আচরণ থেকে অপ্ট-আউট করার প্রয়োজন হয় তবে পছন্দসই উচ্চতা সেটটি দিয়ে নিজের ডায়ালগ বা পপআপের জন্য চেষ্টা করা বিবেচনা করুন। এটি সুপারিশ করা হয় না, কারণ অ্যাক্সেসযোগ্যতা নেতিবাচকভাবে প্রভাবিত হতে পারে এবং ডায়ালগ বা পপআপের নীচের অংশটি অ্যাক্সেসিবিলিটি পরিষেবাদি দ্বারা ইন্টারেক্টেবল এবং পঠনযোগ্য তা নিশ্চিত করার জন্য এটি বিকাশকারীর উপর।

সংস্করণ 1.3.0-আলফা 03

10 আগস্ট, 2022

androidx.compose.material:material-*:1.3.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-ALPHA03 এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.3.0-আলফা 02

জুলাই 27, 2022

androidx.compose.material:material-*:1.3.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-ALPHA02 এ এই কমিটস রয়েছে।

বাহ্যিক অবদান

  • স্ক্যাফোল্ডে FloatingActionButton সাথে AnimatedVisibility ইস্যু ঠিক করুন ( i3a0ae , খ/224005027 )

সংস্করণ 1.3.0-alpha01

জুন 29, 2022

androidx.compose.material:material-*:1.3.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha01-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • RangeSlider মান থেকে মান থেকে প্যারামিটারের নাম পরিবর্তন করুন ( i3b79a )

বাগ ফিক্স

  • আরও অর্থবহ সামগ্রীর বিবরণ সরবরাহ করতে ব্যাজ নমুনা আপডেট করুন। ( I10b9d )

সংস্করণ 1.2

সংস্করণ 1.2.1

10 আগস্ট, 2022

androidx.compose.material:material-*:1.2.1 প্রকাশিত হয়েছে। সংস্করণ 1.2.1 এ এই কমিটস রয়েছে।

সংস্করণ 1.2.0

জুলাই 27, 2022

androidx.compose.material:material-*:1.2.0 প্রকাশিত হয়েছে। সংস্করণ 1.2.0 এই কমিট ধারণ করে.

সংস্করণ 1.2.0-আরসি 03

জুন 29, 2022

androidx.compose.material:material-*:1.2.0-rc03 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-আরসি 03 এ এই কমিটগুলি রয়েছে।

  • 1.2.0-আরসি 02 এর পরে কোনও পরিবর্তন নেই।

সংস্করণ 1.2.0-আরসি 02

22 জুন, 2022

androidx.compose.material:material-*:1.2.0-rc02 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-আরসি 02 এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.2.0-rc01

15 জুন, 2022

androidx.compose.material:material-*:1.2.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-rc01-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • রচনা গ্রন্থাগারগুলিতে ইন্টারফেসগুলি এখন জেডিকে 8 ডিফল্ট ইন্টারফেস পদ্ধতি ( i5bcf1 ) ব্যবহার করে নির্মিত হয়েছে

বাগ ফিক্স

  • আইকনের পরিবর্তে লেবেলে ব্যাজে নেতাযুক্ত আইকন ট্যাব সহ ব্যাজ আপডেট করে। ( I90993 )

সংস্করণ 1.2.0-BETA03

জুন 1, 2022

androidx.compose.material:material-*:1.2.0-beta03 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-BETA03 এ এই কমিটগুলি রয়েছে।

বাগ ফিক্স

  • একটি বাগ স্থির করে যেখানে শীর্ষ অ্যাপ্লিকেশন বারের ছায়া নিয়ে BottomSheetScaffold অঙ্কন করছিল। স্ন্যাকবার স্থাপন করার সময় BottomSheetScaffold এখন শীটের অবস্থাটিকে বিবেচনায় নিয়ে যায়: ধসে পড়া অবস্থায় স্নাকবারগুলি শীটের উপরে এবং ফ্যাবের উপরে স্থাপন করা হয়; প্রসারিত অবস্থায়, স্নাকবারগুলি শীটের নীচে নোঙ্গর করা হয়। ( আইএ 80 বি 5 , বি/187771422 )

সংস্করণ 1.2.0-BETA02

18 মে, 2022

androidx.compose.material:material-*:1.2.0-beta02 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-BETA02 এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.2.0-beta01

11 মে, 2022

androidx.compose.material:material-*:1.2.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-BETA01 এর মধ্যে এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

  • এটি 1.2 এর প্রথম বিটা রিলিজ!

এপিআই পরিবর্তন

  • TextFieldDefaults.BorderStroke OutlinedTextField করা হয়েছে TextFieldDefaults.BorderBox ( I5f295 )

সংস্করণ 1.2.0-আলফা 08

20 এপ্রিল, 2022

androidx.compose.material:material-*:1.2.0-alpha08 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-ALPHA08 এ এই কমিটগুলি রয়েছে।

এপিআই পরিবর্তন

  • আংশিক খরচ (ডাউন বা অবস্থান) PointerInputChange অবমূল্যায়ন করা হয়েছে। আপনি পরিবর্তনটি সম্পূর্ণরূপে গ্রাস করতে ব্যবহার করতে পারেন consume() । অন্য কেউ এর আগে পরিবর্তনটি গ্রাস করেছে কিনা তা নির্ধারণ করতে আপনি isConsumed ব্যবহার করতে পারেন।
  • PointerInputChange::copy() এখন সর্বদা একটি অগভীর অনুলিপি তৈরি করে। এর অর্থ হ'ল PointerInputChange অনুলিপিগুলি একবার গ্রাস করা হবে। আপনি যদি আনবাউন্ড PointerInputChange তৈরি করতে চান তবে পরিবর্তে কনস্ট্রাক্টর ব্যবহার করুন। ( Ie6be4 , খ/225669674 )

সংস্করণ 1.2.0-Alpha07

6 এপ্রিল, 2022

androidx.compose.material:material-*:1.2.0-alpha07 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-ALPHA07 এর মধ্যে এই কমিটগুলি রয়েছে।

সংস্করণ 1.2.0-আলফা 06

23 মার্চ, 2022

androidx.compose.material:material-*:1.2.0-alpha06 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-ALPHA06 এর মধ্যে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • সারফেস এপিআই ( i56bcb ) এ পরিবর্তনগুলি অনুসরণ করতে ক্লিকযোগ্য কার্ড এপিআইয়ের আপডেটগুলি
  • উপাদান 2 পৃষ্ঠের এপিআইয়ের আপডেটগুলি যা নির্বাচনযোগ্য এবং টগলযোগ্য পৃষ্ঠগুলির জন্য অতিরিক্ত ওভারলোডেড ফাংশন যুক্ত করে। ( আইএফসিসিএ 5 )

সংস্করণ 1.2.0-আলফা 05

9 মার্চ, 2022

androidx.compose.material:material-*:1.2.0-alpha05 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-ALPHA05 এর মধ্যে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • LazyVerticalGrid এবং LazyHorizontalGrid এখন স্থিতিশীল। ( I307c0 )
  • LazyVerticalGrid/LazyHorizontalGrid এবং সমস্ত সম্পর্কিত এপিআইগুলি .grid সাব -প্যাকেজে স্থানান্তরিত করা হয়েছিল। অ্যান্ড্রয়েডএক্স.কম.ফাউন্ডেশন.আপনি অ্যান্ড্রয়েডএক্স.কমপোজ.ফাউন্ডেশন.লাজি.গ্রিড থেকে আপনার আমদানি আপডেট করুন। ( আই 2 ডি 446 , বি/219942574 )
  • WindowInsetsControllerCompat জন্য সম্পূর্ণরূপে নির্ভর করার পূর্বের পরিবর্তনটি পুনরুদ্ধার করে এবং আবার একটি উইন্ডো প্রয়োজন যা কিছু উইন্ডো পতাকা পরিচালনার জন্য প্রয়োজনীয়। সঠিক উইন্ডোটি ব্যবহার করা হয়েছে কিনা তা নিশ্চিত করার জন্য ViewCompat.getWindowInsetsController WindowCompat.getInsetsController কন্ট্রোলারের পক্ষে অবমূল্যায়ন করা ( I660ae , বি/219572936 )
  • পাঠ্য: includeFontPadding এখন ডিফল্টরূপে বন্ধ করা হয়েছে। includeFontPadding=false এর ফলস্বরূপ ক্লিপিংয়ের সমস্যাগুলি পরিচালনা করা হয় এবং লম্বা স্ক্রিপ্টগুলির জন্য কোনও ক্লিপিং হওয়া উচিত নয়। ( I31c84 , খ/171394808 )
  • ক্রস অক্ষের আকারগুলি সংজ্ঞায়িত করতে একটি নতুন LazyVerticalGrid এপিআই যুক্ত করা হয়েছে ( i17723 )

সংস্করণ 1.2.0-আলফা 04

23 ফেব্রুয়ারি, 2022

androidx.compose.material:material-*:1.2.0-alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-ALPHA04 এর মধ্যে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • Add support for filter chips ( i39a6e , বি/192585545 )
  • TextFieldDecorationBox এবং OutlinedTextFieldDecorationBox যুক্ত করা হয়েছে। BasicTextField সাথে এগুলি একসাথে ব্যবহার করা আপনাকে উপাদান ডিজাইনের পাঠ্য ক্ষেত্রের উপর ভিত্তি করে কাস্টমাইজেশনের জন্য আরও বিকল্প সহ কাস্টম পাঠ্য ক্ষেত্র তৈরি করতে সহায়তা করবে।
  • পাঠ্য ক্ষেত্রে অনুভূমিক এবং উল্লম্ব প্যাডিংগুলি সামঞ্জস্য করার একটি উপায় সরবরাহ করেছে। ( আই 8 সি 9 এফ 1 , বি/203764564 , বি/191543915 , বি /189971673 , বি/183136600 , বি/179882597 , বি/168003617 )
  • যুক্ত ComposableTarget , ComposableTargetMarker এবং ComposableOpenTarget যা কোনও কমপোজেবল ফাংশনকে যখন কোনও অ্যাপলিয়ারকে লক্ষ্য করে বলা হয় তখন এটি ব্যবহার করার জন্য ডিজাইন করা হয়নি বলে সংকলনের সময় রিপোর্টিংয়ের অনুমতি দেয়।

    বেশিরভাগ ক্ষেত্রে টীকাগুলি রচনা সংকলক প্লাগইন দ্বারা অনুমান করা যায় তাই এই টীকাগুলি ব্যবহার করা সরাসরি বিরল হওয়া উচিত। যে কেসগুলি অনুমান করা যায় না সেগুলির মধ্যে একটি কাস্টম অ্যাপলিয়ার, অ্যাবস্ট্রাক্ট কমপোজেবল ফাংশন (যেমন ইন্টারফেস পদ্ধতি), ক্ষেত্রগুলি বা গ্লোবাল ভেরিয়েবলগুলি যা কমপোজেবল ল্যাম্বডাস (স্থানীয় ভেরিয়েবল এবং প্যারামিটারগুলি অনুমান করা হয়) তা অন্তর্ভুক্ত করা এবং ব্যবহার করার অন্তর্ভুক্ত রয়েছে, বা ComposeNode বা সম্পর্কিত কমপোজেবল ফাংশনগুলি ব্যবহার করার সময় অন্তর্ভুক্ত .

    কাস্টম অ্যাপলারের জন্য কমপোজেবল ফাংশনগুলি যা ComposeNode বা ReusableComposeNode কল করে ফাংশন এবং কোনও কমপোজেবল ল্যাম্বডা প্যারামিটার প্রকারের জন্য একটি CompoableTarget টীকা যুক্ত করতে হবে। তবে এটি প্রস্তাবিত যে একটি টীকা তৈরি করার জন্য যা ComposableTargetMarker সাথে টিকা দেওয়া হয় এবং তারপরে চিহ্নিত টীকাটি সরাসরি ComposableTarget পরিবর্তে ব্যবহার করা হয়। ComposableTargetMarker সাথে চিহ্নিত একটি কমপোজেবল টীকাটি অ্যাপলিয়ার প্যারামিটার হিসাবে অ্যাট্রিবিউট ক্লাসের সম্পূর্ণ যোগ্য নামের সাথে একটি ComposbleTarget সমতুল্য। ComposableTargetMarker ব্যবহারের উদাহরণের জন্য anroidx.compose.ui.UiComposable দেখুন। ( I38f11 )

সংস্করণ 1.2.0-Alpha03

ফেব্রুয়ারী 9, 2022

androidx.compose.material:material-*:1.2.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-ALPHA03 এ এই কমিটগুলি রয়েছে।

বাগ ফিক্স

  • চিপ গ্রুপের নমুনা যুক্ত করেছে ( i97080 , বি/192585545 )

সংস্করণ 1.2.0-আলফা 02

জানুয়ারী 26, 2022

androidx.compose.material:material-*:1.2.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-ALPHA02 এ এই কমিটগুলি রয়েছে।

এপিআই পরিবর্তন

  • জটিল যুক্তি ছাড়াই বিদ্যমান পদ্ধতির ওভারলোডগুলি এমন পদ্ধতিগুলিতে NonRestartableComposable যুক্ত করা হয়েছে। এটি সংকলক উত্পন্ন মেময়াইজেশন চেকগুলি (সমান) হ্রাস করে এমন সমস্ত পরামিতিগুলির জন্য যা অভ্যন্তরীণ ফাংশনে পুনরাবৃত্তি হয় যা বলা হয়। ( I90490 )
  • অ্যাকশন চিপের জন্য সমর্থন যুক্ত করুন ( i07100 , বি/192585545 )

সংস্করণ 1.2.0-Alpha01

জানুয়ারী 12, 2022

androidx.compose.material:material-*:1.2.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-ALPHA01 এর মধ্যে এই কমিট রয়েছে।

নির্ভরতা আপডেট

  • এখন কোটলিন 1.6.10 এর উপর নির্ভর করে।

বাহ্যিক অবদান

  • ModalBottomSheetState এখন একটি isSkipHalfExpanded পতাকা রয়েছে। এটি হয় কনস্ট্রাক্টরের মাধ্যমে সেট করা যেতে পারে বা ModalBottomSheetState isSkipHalfExpanded সম্পত্তিটিকে true সেট করে পরে আপডেট করা যেতে পারে। isSkipHalfExpanded মান আপডেট করার ফলে শীটটির পুনঃনির্মাণের কারণ হয়। ( I18b86 , বি/186669820 )

সংস্করণ 1.1

সংস্করণ 1.1.1

23 ফেব্রুয়ারি, 2022

androidx.compose.material:material-*:1.1.1 প্রকাশিত হয়েছে। সংস্করণ 1.1.1 এ এই কমিটস রয়েছে।

বাগ ফিক্স

  • androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList NullPointerException
  • অ্যান্ড্রয়েডের ক্লিপবোর্ড থেকে পড়ার সময় ক্লিপবোর্ড সামগ্রী দ্বারা সৃষ্ট ক্র্যাশটি ঠিক করুন। ( I06020 , বি/197769306 )
  • LazyVerticalGrid স্থির আরটিএল ( এওএসপি/1931080 , বি/207510535 )

সংস্করণ 1.1.0

ফেব্রুয়ারী 9, 2022

androidx.compose.material:material-*:1.1.0 প্রকাশিত হয়েছে। সংস্করণ 1.1.0 এ এই কমিটস রয়েছে।

1.0.0 থেকে গুরুত্বপূর্ণ পরিবর্তন

  • অ্যান্ড্রয়েড 12 ওভারক্রোল প্রভাবের জন্য স্থিতিশীল সমর্থন
  • টার্গেট সাইজিং স্পর্শ করার উন্নতি
  • নোট করুন যে, 1.0 রচনা সম্পর্কিত ক্ষেত্রে, উপাদান উপাদানগুলি স্পর্শের লক্ষ্য আকারের জন্য উপাদান অ্যাক্সেসযোগ্যতার নির্দেশিকাগুলি পূরণের জন্য তাদের লেআউট স্থানটি প্রসারিত করবে। উদাহরণস্বরূপ, বোতামের টাচ লক্ষ্যটি ন্যূনতম আকারে 48x48DP এ প্রসারিত হবে, এমনকি যদি আপনি বোতামটির আকারটি আরও ছোট করতে সেট করেন। এটি কম্পোজ ম্যাটেরিয়ালকে ম্যাটেরিয়াল ডিজাইন কম্পোনেন্টের একই আচরণের সাথে সারিবদ্ধ করে, যদি আপনি ভিউ এবং কম্পোজ মিশ্রিত করেন তাহলে সামঞ্জস্যপূর্ণ আচরণ প্রদান করে। এই পরিবর্তনটি নিশ্চিত করে যে আপনি যখন রচনা উপাদান উপাদান ব্যবহার করে আপনার UI তৈরি করবেন, তখন স্পর্শ লক্ষ্য অ্যাক্সেসযোগ্যতার জন্য ন্যূনতম প্রয়োজনীয়তা পূরণ করা হবে।
  • নেভিগেশন রেলের জন্য স্থিতিশীল সমর্থন
  • স্থিতিশীল থেকে পূর্বে পরীক্ষামূলক এপিআইগুলির একটি সংখ্যা স্নাতক
  • কোটলিনের নতুন সংস্করণগুলির জন্য সমর্থন

সংস্করণ 1.1.0-আরসি 03

জানুয়ারী 26, 2022

androidx.compose.material:material-*:1.1.0-rc03 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-আরসি 03 এ এই কমিটগুলি রয়েছে।

আচরণ পরিবর্তন

মনে রাখবেন, 1.0 রচনা সম্পর্কিত সম্মানের সাথে, উপাদান উপাদানগুলি উপাদান অ্যাক্সেসযোগ্যতার নির্দেশিকাগুলি মেটাতে তাদের লেআউট স্থানটি প্রসারিত করবে লক্ষ্য আকারকে স্পর্শ করবে । উদাহরণস্বরূপ, বোতামের টাচ লক্ষ্যটি ন্যূনতম আকারে 48x48DP এ প্রসারিত হবে, এমনকি যদি আপনি বোতামটির আকারটি আরও ছোট করতে সেট করেন। এটি কম্পোজ ম্যাটেরিয়ালকে ম্যাটেরিয়াল ডিজাইন কম্পোনেন্টের একই আচরণের সাথে সারিবদ্ধ করে, যদি আপনি ভিউ এবং কম্পোজ মিশ্রিত করেন তাহলে সামঞ্জস্যপূর্ণ আচরণ প্রদান করে। এই পরিবর্তনটি নিশ্চিত করে যে আপনি যখন রচনা উপাদান উপাদান ব্যবহার করে আপনার UI তৈরি করবেন, তখন স্পর্শ লক্ষ্য অ্যাক্সেসযোগ্যতার জন্য ন্যূনতম প্রয়োজনীয়তা পূরণ করা হবে।

বাগ ফিক্স

  • ন্যূনতম টাচ টার্গেট মডিফায়ারগুলি পরিদর্শন করার সময় লেআউট ইন্সপেক্টরের জন্য আরও ভাল ডিবাগ তথ্য যুক্ত করা হয়েছে। ( এওএসপি/1955036 )

সংস্করণ 1.1.0-rc01

15 ডিসেম্বর, 2021

androidx.compose.material:material-*:1.1.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-আরসি 01 এ এই কমিটগুলি রয়েছে।

বাগ ফিক্স

সংস্করণ 1.1.0-BETA04

ডিসেম্বর 1, 2021

androidx.compose.material:material-*:1.1.0-beta04 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-BETA04 এর মধ্যে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • কোটলিনের সাথে সামঞ্জস্যপূর্ণ হতে আপডেট হয়েছে 1.6.0

সংস্করণ 1.1.0-BETA03

17 নভেম্বর, 2021

androidx.compose.material:material-*:1.1.0-beta03 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-BETA03 এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.1.0-BETA02

3 নভেম্বর, 2021

androidx.compose.material:material-*:1.1.0-beta02 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-BETA02 এর মধ্যে এই কমিট রয়েছে।

বাগ ফিক্স

  • রিপলস এবং অন্যান্য ইঙ্গিতগুলি এখন কেবল তখনই বিলম্বিত হবে যদি তারা কোনও সংশোধক ols ক্রোলেবল () ধারকটির ভিতরে থাকে তবে সর্বদা ডাউন ইভেন্টের জন্য বিলম্বিত হওয়ার পরিবর্তে। ( Ibefe0 , খ/203141462 )

সংস্করণ 1.1.0-beta01

27 অক্টোবর, 2021

androidx.compose.material:material-*:1.1.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-BETA01 এর মধ্যে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • রিপলগুলি এখন হোভার এবং ফোকাস রাজ্যগুলিকে সমর্থন করে, তাই বোতামের মতো কোনও উপাদানকে ঘোরাঘুরি / ফোকাস করা এখন সঠিক অবস্থার ওভারলে প্রদর্শন করবে।

সংস্করণ 1.1.0-Alpha06

13 অক্টোবর, 2021

androidx.compose.material:material-*:1.1.0-alpha06 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-ALPHA06 এর মধ্যে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • লেআউটের জন্য একটি শিশু-কম ওভারলোড যুক্ত করা হয়েছিল, উন্নত দক্ষতার সাথে ( আইবি 0 ডি 9 এ )
  • ExposedDropdownMenu বাস্তবায়ন TextField এবং DropdownMenu সহ ExposedDropdownMenuBox উপর ভিত্তি করে ( if60b2 )
  • dismissOnOutsideClick PopupProperties যুক্ত করা হয়েছিল, dismissOnClickOutside যা অবমূল্যায়ন করা হয়েছিল। নতুন সম্পত্তিটি ক্লিক অবস্থান এবং অ্যাঙ্কর সীমানা গ্রহণ করে, অনডিসিমিস্রেকুয়েস্টের আহ্বান করা উচিত কিনা তা নিয়ে সূক্ষ্ম নিয়ন্ত্রণ সরবরাহ করে। উদাহরণস্বরূপ, অ্যাঙ্করগুলিতে স্পর্শগুলির জন্য অ্যাঙ্কর বরখাস্ত রোধ করতে এটি কার্যকর হতে পারে।
    • PopupPropertiesupdateAndroidWindowManagerFlags যুক্ত করা হয়েছিল, অ্যান্ড্রয়েড উইন্ডো ম্যানেজারে পপআপের মাধ্যমে পাস করা পতাকাগুলির উপর নিম্ন-স্তরের নিয়ন্ত্রণ সরবরাহ করে। ল্যাম্বডার প্যারামিটারটি পপপ্রোপার্টিরস মানগুলি থেকে গণনা করা পতাকাগুলি হবে যা উইন্ডো ম্যানেজার পতাকাগুলির ফলস্বরূপ: যেমন ফোকাসযোগ্য। ল্যাম্বডার ফলাফল চূড়ান্ত পতাকা হবে যা অ্যান্ড্রয়েড উইন্ডো ম্যানেজারে পাস করা হবে। ডিফল্টরূপে, আপডেট এবংড্রয়েডউইন্ডউইম্যানেজারফ্ল্যাগগুলি প্যারামিটারগুলি থেকে গণনা করা পতাকাগুলি অপরিবর্তিত থেকে ছেড়ে দেবে। এই এপিআই সাবধানতার সাথে ব্যবহার করা উচিত, কেবলমাত্র সেই ক্ষেত্রেই যেখানে পপআপের খুব নির্দিষ্ট আচরণের প্রয়োজনীয়তা রয়েছে। ( I6e9f9 )

সংস্করণ 1.1.0-Alpha05

29 সেপ্টেম্বর, 2021

androidx.compose.material:material-*:1.1.0-alpha05 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-ALPHA05 এর মধ্যে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • অ্যাক্সেসযোগ্য স্পর্শের লক্ষ্য নেই এমন উপাদানগুলির জন্য ন্যূনতম টাচ টার্গেট সাইজিং যুক্ত করে। যেহেতু এটি তাদের যথেষ্ট পরিমাণে স্পর্শের লক্ষ্য রয়েছে তা নিশ্চিত করার জন্য উপাদানগুলির চারপাশে অতিরিক্ত ব্যবধান যুক্ত করে, এটি বিদ্যমান ইউআইগুলিকে পরিবর্তন করতে পারে যা এই উপাদানগুলির আকারগুলি তাদের ভিজ্যুয়াল আকার বলে ধরে নিতে পারে এবং স্পর্শের লক্ষ্য আকারের জন্য অ্যাকাউন্ট করে না। আপনি এই আচরণটি একটি শ্রেণিবিন্যাস জুড়ে অক্ষম করার জন্য পরীক্ষামূলক LocalMinimumTouchTargetEnforcement কনপোজিশন স্থানীয় ব্যবহার করতে পারেন, তবে এটি কেবলমাত্র নতুন ন্যূনতম আকারের জন্য অ্যাকাউন্টে বিদ্যমান ইউআইএস আপডেট করার সময় কেবল অস্থায়ী পালানোর হ্যাচ হওয়ার উদ্দেশ্যে। ( I9b966 , বি/149691127 , বি/171509422 )
  • শীর্ষস্থানীয় পাঠ্যক্রম এবং ট্রেইলিং কালারকে ইন্টারঅ্যাকশনসোর্স সরবরাহ করতে টেক্সটফিল্ড সংগ্রহগুলি প্রসারিত করে পরীক্ষামূলক টেক্সটফিল্ড কালারসুইথিকনস ইন্টারফেস যুক্ত করা হয়েছে। এটি ফোকাস রাষ্ট্র অনুযায়ী টেক্সটফিল্ডের উপস্থিতি পরিবর্তন করতে সক্ষম করে। ( I66923 , বি/198402662 )

সংস্করণ 1.1.0-Alpha04

15 সেপ্টেম্বর, 2021

androidx.compose.material:material-*:1.1.0-alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-ALPHA04 এর মধ্যে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • অবমূল্যায়িত performGesture এবং GestureScope , যা performTouchInput এবং TouchInjectionScope দ্বারা প্রতিস্থাপিত হয়েছে। ( আইএ 5 এফ 3 এফ , বি/190493367 )
  • SemanticsNode touchBoundsInRoot যুক্ত করা হয়েছে যাতে ন্যূনতম স্পর্শ লক্ষ্য আকার অন্তর্ভুক্ত থাকে যাতে বিকাশকারীরা নিশ্চিত করতে পারে যে স্পর্শ লক্ষ্যগুলি অ্যাক্সেসযোগ্যতার ন্যূনতম পূরণ করে। ( আই 2 ই 14 বি , বি/197751214 )

বাগ ফিক্স

  • ক্লিপটি ন্যূনতম স্পর্শ লক্ষ্য উদ্দেশ্যে ক্লিপ অঞ্চল ছাড়িয়ে টাচ লক্ষ্য সীমানা প্রসারিত করার অনুমতি দিন। ( I43e10 , খ/171509422 )
  • ডিসপ্লে ঘনত্ব নির্বিশেষে একক পিক্সেল ডিভাইডার অঙ্কন সমর্থন করার জন্য বেধ প্যারামিটারের জন্য Dp.Hairline সম্মান করতে আপডেট করা Divider কমপোজার। ( আই 16 এফবি , বি/196840810 )

সংস্করণ 1.1.0-Alpha03

1 সেপ্টেম্বর, 2021

androidx.compose.material:material-*:1.1.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-ALPHA03 এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

  • কোটলিন 1.5.30 এর উপর নির্ভর করতে কমপোজ 1.1.0-alpha03 আপডেট হয়েছে। ( I74545 )

এপিআই পরিবর্তন

  • ক্লিপড সীমা পেতে পরীক্ষার পদ্ধতি যুক্ত করা হয়েছে। ( I6b28e )
  • অ্যাক্সেসযোগ্যতা নিশ্চিত করতে শব্দার্থবিজ্ঞান এবং পয়েন্টার ইনপুট ব্যবহারের জন্য ভিউ কনফিগারেশনে ন্যূনতম স্পর্শের লক্ষ্য আকার যুক্ত করা হয়েছে। ( Ie861c )

সংস্করণ 1.1.0-Alpha02

18 আগস্ট, 2021

androidx.compose.material:material-*:1.1.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-ALPHA02 এ এই কমিটগুলি রয়েছে।

বাহ্যিক অবদান

  • সোয়াইপ অফসেটটি অ্যাঙ্করটির একটি গোলাকার ত্রুটির মধ্যে রয়েছে এমন ক্ষেত্রে সোয়াইপিবেলস্টেটের আচরণটি ঠিক করুন। ( I03d39 , বি/191993377 )

সংস্করণ 1.1.0-alpha01

4 আগস্ট, 2021

androidx.compose.material:material-*:1.1.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-ALPHA01 এর মধ্যে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • আপডেট করা DrawScope#drawImage পদ্ধতি যা উত্স এবং গন্তব্য রেক্টগুলি একটি al চ্ছিক ফিল্টারকুয়েশন প্যারামিটার গ্রহণ করতে গ্রাস করে। এটি পিক্সেল আর্টের জন্য দরকারী যা পিক্সেল ভিত্তিক শিল্পের জন্য স্কেল আপ করার সময় পিক্সেলেটেড হওয়ার উদ্দেশ্যে। আপডেট বিটম্যাপেইন্টার + চিত্রটি কমপোজেবল একটি al চ্ছিক ফিল্টারকুয়েশন প্যারামিটার ( আই 4 এফবি 0 , বি/180311607 ) গ্রহণ করতে কমপোজেবল
  • ব্যাজবক্সে নামকরণ করা হয়েছে ব্যাজডবক্সে, ব্যাজ কমপোজেবল গ্রহণের জন্য প্যারামিটারগুলি পরিবর্তন করা হয়েছে। ব্যাজ উপাদানটি যুক্ত করা হয়েছে যা ব্যাজডবক্সের জন্য সাধারণ ব্যাজ সামগ্রী। ( I639c6 )
  • নেভিগেশন রেইল উপাদান যুক্ত করা হয়েছে, ব্যবহারের তথ্যের জন্য ডক্স এবং নমুনাগুলি দেখুন ( i8de77 )

বাগ ফিক্স

  • একটি নীচে প্রান্তিক নেভিগেশন রেইল নমুনা এবং ক্যাটালগ অ্যাপ ডেমো যুক্ত করা হয়েছে। ( I3cffc )
  • ডায়ালগগুলি এখন প্ল্যাটফর্মের আকারের আচরণ অনুসরণ করে। এই আচরণটিকে ওভাররাইড করতে মিথ্যা বলতে ব্যবহার করুন প্ল্যাটফর্ম ডিফল্টউইথ সেট করুন। ( Iffaed , খ/192682388 )
  • ক্যাটালগ অ্যাপে নেভিগেশন-রেল ডেমো যুক্ত করা হয়েছে। ( I04960 )
  • ক্যাটালগ অ্যাপে ব্যাজ ডেমো যুক্ত করা হয়েছে। ( আইএফ 285 ডি )

সংস্করণ 1.0

সংস্করণ 1.0.5

3 নভেম্বর, 2021

androidx.compose.material:material-*:1.0.5 প্রকাশিত হয়েছে। সংস্করণ 1.0.5 এ এই কমিটস রয়েছে।

বাগ ফিক্স

  • একটি ক্র্যাশ ট্র্যাকিং ডাইরিভডস্টেট অফ উদাহরণ স্থির করে। ( এওএসপি/1792247 )

সংস্করণ 1.0.4

13 অক্টোবর, 2021

androidx.compose.material:material-*:1.0.4 প্রকাশিত হয়েছে। সংস্করণ 1.0.4 এ এই কমিটস রয়েছে।

নির্ভরতা আপডেট

  • কোটলিন 1.5.31 এর উপর নির্ভর করতে আপডেট হয়েছে

সংস্করণ 1.0.3

29 সেপ্টেম্বর, 2021

androidx.compose.material:material-*:1.0.3 প্রকাশিত হয়েছে। সংস্করণ 1.0.3 এ এই কমিটস রয়েছে।

নির্ভরতা আপডেট

  • কোটলিন 1.5.30 এর উপর নির্ভর করতে আপডেট হয়েছে

সংস্করণ 1.0.2

1 সেপ্টেম্বর, 2021

androidx.compose.material:material-*:1.0.2 প্রকাশিত হয়েছে। সংস্করণ 1.0.2 এ এই কমিটস রয়েছে।

রচনা 1.0.2 রিলিজ সমর্থন করতে আপডেট হয়েছে। রচনা 1.0.2 এখনও কোটলিন 1.5.21 এর সাথে সামঞ্জস্যপূর্ণ।

সংস্করণ 1.0.1

4 আগস্ট, 2021

androidx.compose.material:material-*:1.0.1 প্রকাশিত হয়েছে। সংস্করণ 1.0.1 এ এই কমিটস রয়েছে।

নির্ভরতা আপডেট

  • কোটলিন 1.5.21 এর উপর নির্ভর করতে আপডেট হয়েছে।

সংস্করণ 1.0.0

28 জুলাই, 2021

androidx.compose.material:material-*:1.0.0 প্রকাশিত হয়েছে। সংস্করণ 1.0.0 এ এই কমিটস রয়েছে।

1.0.0 এর প্রধান বৈশিষ্ট্য

এটি রচনাটির প্রথম স্থিতিশীল প্রকাশ। আরও তথ্যের জন্য দয়া করে অফিসিয়াল রচনা প্রকাশের ব্লগটি দেখুন!

পরিচিত সমস্যা

  • আপনি যদি অ্যান্ড্রয়েড স্টুডিও বাম্বলবি ক্যানারি 4 বা এজিপি 7.1.0-alpha04 / 7.1.0-alpha05 ব্যবহার করছেন তবে আপনি নিম্নলিখিত ক্র্যাশটি আঘাত করতে পারেন:

      java.lang.AbstractMethodError: abstract method "void androidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)"
    

    ঠিক করতে, আপনার build.gradle ফাইলটিতে অস্থায়ীভাবে আপনার মিনিটডকভার্স 24+ এ বাড়ান। এই সমস্যাটি অ্যান্ড্রয়েড স্টুডিও বাম্বলবি এবং এজিপি 7.1 এর পরবর্তী সংস্করণে স্থির করা হবে। ( বি/194289155 )

সংস্করণ 1.0.0-আরসি 02

14 জুলাই, 2021

androidx.compose.material:material-*:1.0.0-rc02 প্রকাশিত হয়েছে। সংস্করণ 1.0.0.0-RC02 এ এই কমিটগুলি রয়েছে।

বাগ ফিক্স

  • ডায়ালগগুলি এখন প্ল্যাটফর্মের আকারের আচরণ অনুসরণ করে। এই আচরণটিকে ওভাররাইড করতে মিথ্যা বলতে ব্যবহার করুন usePlatformDefaultWidth সেট করুন। ( Iffaed , খ/192682388 )

সংস্করণ 1.0.0-আরসি 01

জুলাই 1, 2021

androidx.compose.material:material-*:1.0.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.0.0.0-RC01 এর মধ্যে এই কমিটগুলি রয়েছে।

এপিআই পরিবর্তন

  • BadgeBox উপাদান যুক্ত করা হয়েছে, ব্যবহারের তথ্যের জন্য ডক্স এবং নমুনাগুলি দেখুন ( i5e284 )
  • PopupProperties useDefaultMaxWidth নামকরণ করা হয়েছিল usePlatformDefaultWidth নামকরণ করা হয়েছিল। ( I05710 )
  • ডায়ালগগুলি এখন পুরো স্ক্রিনের প্রস্থটি ব্যবহার করতে সক্ষম। ( I83929 , বি/190810877 )
  • যুক্ত পরীক্ষামূলক পরিসীমা স্লাইডার বাস্তবায়ন ( i2f4b3 ) যুক্ত করা হয়েছে

বাগ ফিক্স

  • অবৈধ ইনপুট সহ উপাদান ডিজাইনের স্পেসগুলির সাথে সারিবদ্ধ করার জন্য যখন লেবেলটি স্থানধারক হিসাবে ব্যবহার করা হয় তখন লেবেলের জন্য ত্রুটি রঙ ব্যবহার বন্ধ করে দেওয়া বন্ধ করে দেয়। পাঠ্য ক্ষেত্রে যখন কোনও ইনপুট পাঠ্য না থাকে এবং পাঠ্য ক্ষেত্রটি ফোকাসে থাকে না তখন পরবর্তীটি সত্য। সেই false সাথে error:Boolean TextFieldColors.labelColor() ( I45f78 )

সংস্করণ 1.0.0-BETA09

16 জুন, 2021

androidx.compose.material:material-*:1.0.0-beta09 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-BETA09 এর মধ্যে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • সীমানার আকৃতিটি কাস্টমাইজ করতে সক্ষম হতে রূপরেখাযুক্ত টেক্সটফিল্ডে যুক্ত আকারের প্যারামিটার যুক্ত করা হয়েছে ( i8f39e , খ/181322957 )
  • টেক্সটওভারফ্লো একটি ইনলাইন ক্লাসে পরিবর্তন করা হয়। ( I433af )

বাগ ফিক্স

  • বটমড্রোয়ার, ব্যাকড্রপস্ক্যাফোল্ড এবং মডালবটমিটলয়আউটে স্ক্রিমটি অদৃশ্য হয়ে যাবে তবে রঙটি.অনস্পেসিফাইড পাস করা হয়েছে ( আই 2 ডি 899 , বি/182063309 )

যুক্ত প্রোফাইল বিধি

এই রিলিজটি নিম্নলিখিত রচনা মডিউলগুলিতে প্রোফাইল নিয়ম যুক্ত করে ( i14ed6 ):

  • androidx.compose.animation
  • androidx.compose.animation-core
  • androidx.compose.foundation
  • androidx.compose.foundation-layout
  • androidx.compose.material
  • androidx.compose.material-pipple
  • androidx.compose.runtime
  • androidx.compose.ui
  • androidx.compose.ui.geometry
  • androidx.compose.ui.graphics
  • androidx.compose.ui.text
  • androidx.compose.ui.text
  • androidx.compose.ui.unit
  • androidx.compose.ui.util

প্রোফাইল নিয়ম কি?

  • একটি লাইব্রেরির জন্য প্রোফাইল বিধিগুলি src/main বা সমতুল্য ডিরেক্টরিতে অবস্থিত একটি পাঠ্য ফাইল baseline-prof.txt নির্দিষ্ট করা আছে। ফাইলটি প্রতি লাইনে একটি নিয়ম নির্দিষ্ট করে, যেখানে এই ক্ষেত্রে একটি নিয়ম লাইব্রেরির পদ্ধতি বা শ্রেণীর সাথে মিলে যাওয়ার জন্য একটি প্যাটার্ন। এই বিধিগুলির সিনট্যাক্স হ'ল মানব-পঠনযোগ্য আর্ট প্রোফাইল ফর্ম্যাটের একটি সুপারসেট যা adb shell profman --dump-classes-and-methods ... ব্যবহার করার সময় ব্যবহৃত হয়। এই বিধিগুলি পদ্ধতি বা শ্রেণি উভয়কে লক্ষ্য করতে দুটি ফর্মের একটি নেয়।

  • একটি পদ্ধতির নিয়মের নিম্নলিখিত প্যাটার্ন থাকবে:

    <FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
    
  • এবং একটি শ্রেণীর নিয়মের নিম্নলিখিত প্যাটার্ন থাকবে:

    <CLASS_DESCRIPTOR>
    
  • এই পদ্ধতিটি "হট", "স্টার্টআপ", বা "পোস্ট স্টার্টআপ" হিসাবে পতাকাঙ্কিত করা উচিত কিনা তা নির্দেশ করার জন্য এখানে <FLAGS> H , S এবং P এক বা একাধিক অক্ষর।

  • <CLASS_DESCRIPTOR> লক্ষ্যযুক্ত পদ্ধতিটির সাথে সম্পর্কিত শ্রেণীর বর্ণনাকারী। উদাহরণস্বরূপ, ক্লাস androidx.compose.runtime.SlotTable Landroidx/compose/runtime/SlotTable; .

  • <METHOD_SIGNATURE> হ'ল পদ্ধতির স্বাক্ষর এবং এতে নাম, প্যারামিটারের ধরণ এবং পদ্ধতির রিটার্ন প্রকার অন্তর্ভুক্ত রয়েছে। উদাহরণস্বরূপ, পদ্ধতি fun isPlaced(): Boolean LayoutNode বুলিয়ান স্বাক্ষর isPlaced()Z রয়েছে।

  • এই নিদর্শনগুলিতে ওয়াইল্ডকার্ডগুলি ( ** , * , এবং ? ) থাকতে পারে যাতে একক নিয়ম একাধিক পদ্ধতি বা ক্লাস অন্তর্ভুক্ত থাকে।

নিয়মগুলি কী করে?

  • পতাকা H রয়েছে এমন একটি পদ্ধতি নির্দেশ করে যে এই পদ্ধতিটি একটি "হট" পদ্ধতি এবং এটি সময়ের আগে সংকলন করা উচিত।

  • পতাকা S রয়েছে এমন একটি পদ্ধতি ইঙ্গিত দেয় যে এটি এমন একটি পদ্ধতি যা স্টার্টআপে ডাকা হয় এবং সংকলনের ব্যয় এড়াতে এবং স্টার্টআপের সময় পদ্ধতিটির ব্যাখ্যা এড়াতে সময়ের আগে সংকলন করা উচিত।

  • পতাকা P রয়েছে এমন একটি পদ্ধতি ইঙ্গিত দেয় যে এটি এমন একটি পদ্ধতি যা স্টার্টআপের পরে বলা হয়।

  • এই ফাইলটিতে উপস্থিত একটি শ্রেণি ইঙ্গিত দেয় যে এটি স্টার্টআপের সময় ব্যবহৃত হয় এবং শ্রেণি লোডিংয়ের ব্যয় এড়াতে স্তরে প্রাক-বরাদ্দ করা উচিত।

এটা কিভাবে কাজ করে?

  • গ্রন্থাগারগুলি এই নিয়মগুলি সংজ্ঞায়িত করতে পারে যা এএআর শিল্পকর্মগুলিতে প্যাকেজ করা হবে। এরপরে যখন একটি এপিকে নির্মিত হয় যার মধ্যে এই শিল্পকর্মগুলি অন্তর্ভুক্ত থাকে, এই নিয়মগুলি একত্রিত হয় এবং একত্রিত নিয়মগুলি এপিকে নির্দিষ্ট একটি কমপ্যাক্ট বাইনারি আর্ট প্রোফাইল তৈরি করতে ব্যবহৃত হয়। আর্ট তখন এই প্রোফাইলটি লাভ করতে পারে যখন অ্যাপ্লিকেশনটির কার্যকারিতা উন্নত করতে বিশেষত প্রথম রানটি উন্নত করতে অ্যাপ্লিকেশনটির একটি নির্দিষ্ট সাবসেট সংকলন করার জন্য এপিকে ডিভাইসগুলিতে ইনস্টল করা হয়। নোট করুন যে এটি ডিবাগেবল অ্যাপ্লিকেশনগুলিতে কোনও প্রভাব ফেলবে না।

সংস্করণ 1.0.0-BETA08

2 জুন, 2021

androidx.compose.material:material-*:1.0.0-beta08 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-BETA08 এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

আচরণ বিরতি এপিআই পরিবর্তন

  • আচরণ-ব্রেকিং: কার্ড এখন ক্লিকগুলি গ্রাস করে, Card(Modifier.clickable) কোনও নো-ওপ হিসাবে যুক্ত করে। দয়া করে, অনক্লিক গ্রহণ করে এমন একটি কার্ডের নতুন পরীক্ষামূলক ওভারলোড ব্যবহার করুন। ( আইএ 8744 , বি/183775620 )
    • একটি নতুন কার্ড ওভারলোড যুক্ত করা হয়েছে যা ক্লিকের পাশাপাশি অন্যান্য ক্লিকযোগ্য কার্যকারিতা পরিচালনা করে: ইঙ্গিত, ইন্টারঅ্যাকশনসোর্স, সক্ষম/অক্ষম। Modifier.clickable সাথে নিয়মিত অ-ক্লিকযোগ্য কার্ড ব্যবহার করা সম্ভব ছিল না কারণ কার্ডটি সেই ক্ষেত্রে রিপল ইঙ্গিতটি ক্লিপ করবে না।
  • আচরণ-ব্রেকিং: সারফেস এখন ক্লিকগুলি গ্রাস করে, ক্লিকগুলি Surface(Modifier.clickable) কোনও নো-অপি হতে পারে। দয়া করে, অনক্লিক গ্রহণ করে এমন পৃষ্ঠের নতুন পরীক্ষামূলক ওভারলোড ব্যবহার করুন। ( I73e6c , খ/183775620 )
    • একটি নতুন পৃষ্ঠের ওভারলোড যুক্ত করা হয়েছে যা ক্লিকের পাশাপাশি অন্যান্য ক্লিকযোগ্য কার্যকারিতা পরিচালনা করে: ইঙ্গিত, ইন্টারঅ্যাকশনসোর্স, সক্ষম/অক্ষম। Modifier.clickable সাথে নিয়মিত অ-ক্লিকযোগ্য পৃষ্ঠ ব্যবহার করা সম্ভব ছিল না কারণ পৃষ্ঠটি সেই ক্ষেত্রে রিপল ইঙ্গিতটি ক্লিপ করবে না।

এপিআই পরিবর্তন

  • ভবিষ্যতে সম্ভাব্য প্রসারণকে সমর্থন করার জন্য এনাম থেকে ইনলাইন ক্লাসে রূপান্তরিত হয়েছিল ( আই 030 এফবি FabPosition
  • নতুন এনাম মান যুক্ত করা হলে বিবৃতিগুলি যখন বিবৃতিযুক্ত সমস্যাগুলি এড়াতে ইনলাইন ক্লাসগুলিতে রিফ্যাক্টরড এনাম ব্যবহার করে। ( I2b5eb )
  • স্ক্রোল / টেনে আনার সময় রিপল দেখানো রোধ করতে ক্লিকযোগ্য / টগলযোগ্যতে একটি ট্যাপের সময়সীমা যুক্ত করে ( আইএ 2704 , বি / 168524931 )
  • কন্টেন্টডেস্ক্রিপশন এবং পাঠ্য শব্দার্থবিজ্ঞানের বৈশিষ্ট্যগুলি আর একক মান নয় তবে তালিকা। এটি তাদের একত্রিত করতে সক্ষম করে কারণ তারা সংমিশ্রণের পরিবর্তে হয়। এই পরিবর্তনগুলি ব্যবহার করতে আরও ভাল পরীক্ষার এপিআই সরবরাহ করেছেন ( আইসিএ 6 বিএফ , বি/184825850 )
  • Modifier.focusModifier() অবমূল্যায়ন করা হয় এবং Modifier.focusTarget() ( i6c860 ) দ্বারা প্রতিস্থাপন করা হয়
  • FocusState এনামকে FocusState ইন্টারফেসের সাথে প্রতিস্থাপন করেছেন ( আইসিসিসি 1 এ , বি/187055290 )
  • LocalRippleNativeRendering সরানো হয়েছে এখন যে ভিউ-ব্যাকড রিপল বাস্তবায়ন স্থিতিশীল ( i7fab3 , বি/188569367 )

বাগ ফিক্স

  • Modifier.onGloballyPositioned() পরিবর্তিত হয়েছিল এই সংশোধকটির স্থানাঙ্কগুলি সংশোধক শৃঙ্খলে প্রতিবেদন করার জন্য, সমস্ত সংশোধক প্রয়োগের পরে লেআউট স্থানাঙ্ক নয়। এর অর্থ হ'ল এখন সংশোধনকারীগুলির ক্রমটি কী স্থানাঙ্কগুলি রিপোর্ট করা হবে তা প্রভাবিত করছে। ( আইইবি 67 ডি , বি/177926591 )
  • বিদ্যমান রচনা উপাদান ক্যাটালগের জন্য একটি README যুক্ত করা হয়েছে। ( আইএফ 9191 )

সংস্করণ 1.0.0-BETA07

18 মে, 2021

androidx.compose.material:material-*:1.0.0-beta07 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-BETA07 এর মধ্যে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • নেভিগেশন রচনায় রুট সহায়তার জন্য আপনাকে আর এক্সটেনশন পদ্ধতি ব্যবহার করার দরকার নেই। ( I22beb , খ/172823546 )

সংস্করণ 1.0.0-BETA06

5 মে, 2021

androidx.compose.material:material-*:1.0.0-beta06 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-BETA06 এর মধ্যে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • অ্যান্ড্রয়েড ডিভাইসে অভ্যন্তরীণভাবে RippleDrawable ব্যবহার করতে রিপলকে স্থানান্তরিত করা হয়েছে। এর অর্থ হ'ল রিপল অ্যানিমেশনগুলি রেন্ডারথ্রেডে ঘটবে এবং ইউআই থ্রেড লোডের অধীনে থাকলেও মসৃণ হবে, যেমন স্ক্রিনগুলির মধ্যে নেভিগেট করার সময়। এটি রিপলের এপিআই পৃষ্ঠকে পরিবর্তন করে না, তবে এই পরিবর্তনের ফলস্বরূপ আচরণ পরিবর্তন হতে পারে। মাইগ্রেশনকে সহায়তা করার জন্য, LocalRippleNativeRendering যুক্ত করা হয়েছে - রচনাটিলোকালপাইডারের অভ্যন্তরে পূর্ববর্তী রিপল বাস্তবায়নে ফিরে যাওয়ার জন্য এই রচনাটিলোকালকে false একটি মান সরবরাহ করুন। এই এপিআই অস্থায়ী এবং ভবিষ্যতে অপসারণ করা হবে, সুতরাং আপনি যদি এমন সমস্যাগুলিতে চলে যান যা আপনাকে এই এপিআই ব্যবহার করতে পারে তবে দয়া করে একটি বাগ ফাইল করুন । ( I902f8 , বি/168777351 , বি/183019123 )
  • যোগ করা সংগ্রহেরফো এবং সংগ্রহ আইমিনফো অ্যাক্সেসিবিলিটি এপিআই যা অ্যাক্সেসিবিলিটি পরিষেবাদির জন্য সংগ্রহ এবং এর আইটেমগুলি চিহ্নিত করতে দেয় ( আইডি 54 ইএফ , বি/180479017 )
  • যুক্ত অ্যাক্সেসযোগ্যতা এপিআই error যা একটি নোড চিহ্নিত করতে দেয় যাতে অবৈধ ইনপুট থাকে ( আই 12997 , বি/180584804 , বি/182142737 )

বাগ ফিক্স

  • আপডেট হওয়া রচনা উপাদান ক্যাটালগ ইনসেটগুলি বাস্তবায়ন থেকে: https://github.com/google/accompanist/pull/365। ( আই 25 ডিসি 3 )
  • ওজনযুক্ত সারি এবং কলাম শিশুরা (পূরণ = মিথ্যা) আর পিতামাতাকে পুরো উপলভ্য প্রধান অক্ষের স্থান পূরণ করে না। ( আইইডি 94 ডি , বি/186012444 , বি/184355105 )

সংস্করণ 1.0.0-BETA05

21 এপ্রিল, 2021

androidx.compose.material:material-*:1.0.0-beta05 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-BETA05 এর মধ্যে এই কমিট রয়েছে।

বাগ ফিক্স

  • উপাদান টাইল চিত্র, থিম পিকার এবং বিদ্যমান রচনা উপাদান ক্যাটালগটিতে আরও নির্দিষ্ট মেনু ইউআরএল যুক্ত করা হয়েছে। ( I9b58e )

সংস্করণ 1.0.0-BETA04

7 এপ্রিল, 2021

androidx.compose.material:material-*:1.0.0-beta04 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-BETA04 এর মধ্যে এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • এপিআই পরিবর্তন: DrawerState স্টেট আর পরীক্ষামূলক সোয়াইপিবেলস্টেট প্রসারিত করে না।
    • এপিআই পরিবর্তন: ইতিমধ্যে পরীক্ষামূলক বটড্রোয়ার উপাদান ( আই 81114 , বি/181656094 ) এর সাথে মেলে, BottomDrawerState এখন পরীক্ষামূলক হিসাবে চিহ্নিত করা হয়েছে
  • যথাক্রমে hide() জন্য hideSoftwareKeyboard এবং showSoftwareKeyboard নামকরণ করুন এবং show() SoftwareKeyboardController
    • এটি সেট করার অনুমতি দেয় (বিশেষত পরীক্ষায় দরকারী) ( i579a6 )
  • লিভারিজিয়ন অ্যাক্সেসিবিলিটি এপিআই যুক্ত করা হয়। যদি নোডকে একটি লাইভ অঞ্চল হিসাবে চিহ্নিত করা হয় তবে অ্যাক্সেসযোগ্যতা পরিষেবাগুলি স্বয়ংক্রিয়ভাবে ব্যবহারকারীকে তার পরিবর্তনগুলি সম্পর্কে অবহিত করবে ( আইডিসিএফ 6 এফ , বি/172590946 )

বাগ ফিক্স

  • বিদ্যমান মডিউলে রচনা উপাদান ক্যাটালগের প্রয়োগ যুক্ত করা হয়েছে। বর্তমানে অনুপস্থিত: উপাদান টাইল চিত্র, থিম পিকার (ফলো-আপ পরিবর্তনগুলিতে যুক্ত করা)। ( Ie7a94 )

সংস্করণ 1.0.0-BETA03

24 মার্চ, 2021

androidx.compose.material:material-*:1.0.0-beta03 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-BETA03 এ এই কমিটগুলি রয়েছে।

এপিআই পরিবর্তন

  • DefaultMonotonicFrameClock অবমূল্যায়ন করা হয়। withFrameNanos বা Recomposer.runRecomposeAndApplyChanges সহ কোনও MonotonicFrameClock সহ কল ​​করা এখন IllegalStateException নিক্ষেপ করবে। ( I4eb0d )
  • একটি ট্যাবে একটি আইকন এবং ইনলাইন পাঠ্য প্রদর্শন করতে সমর্থন করার জন্য একটি নতুন এপিআই LeadingIconTab যুক্ত করেছে। ( I23267 )

বাহ্যিক অবদান

  • [by Jossi Wolf] BottomDrawer now wraps the content of the drawer slot. BottomDrawer doesn't throw an IllegalStateException when the parent has infinite height. The bottom drawer will now open to an expanded state if it is smaller than 50% of its parent. Docs around BottomDrawerState and ModalBottomSheetLayoutState have been updated. BottomDrawerState#isOpen returns true now if it is in either open or expanded state. ( I87241 )

Version 1.0.0-beta02

10 মার্চ, 2021

androidx.compose.material:material-*:1.0.0-beta02 is released. Version 1.0.0-beta02 contains these commits.

API Changes

  • Added new LocalSoftwareKeyboardController composition local API to replace previous SoftwareKeyboardController interface on TextField. ( I5951e , b/168778053 )

বাগ ফিক্স

  • Enforce restrictions on public usage of experimental APIs ( I6aa29 , b/174531520 )
  • Changed the default horizontal alignment for TopAppBar and BottomAppBar to Start, consistent with Row ( Ib2dc7 )
  • Added a new module and placeholder UI for a Compose Material catalog, currently nested in existing integration test demos. ( Idfcb3 )
  • androidx.compose.ui:ui no longer depends on AppCompat or Fragment. If you are using a ComposeView in your application, and you are using Fragment and/or AppCompat, make sure that you are using AppCompat 1.3+ / Fragment 1.3+ - these versions are needed to correctly set lifecycle and saved state owners required for ComposeView. ( I1d6fa , b/161814404 )

Version 1.0.0-beta01

24 ফেব্রুয়ারি, 2021

androidx.compose.material:material-*:1.0.0-beta01 is released. Version 1.0.0-beta01 contains these commits.

This is the first release of Compose 1.0.0 Beta.

API Changes

  • Size modifiers were renamed. Modifier.width/height/size were renamed to requiredWidth/requiredHeight/requiredSize. Modifier.preferredWidth/preferredHeight/preferredSize were renamed to width/height/size. ( I5b414 )
  • imageResource and vectorResource are now extension functions on ImageBitmap and ImageVector companions respectively. load{Image,Vector,Font}Resource functions have been deleted. ( I89130 )
  • Modifiers for sizing to intrinsics are no longer experimental. ( I15744 )
  • Removed dp assertions ( I798d2 )
  • Removed SoftwareKeyboardController callback from all text fields to be replaced by a new API shortly. ( Iae869 , b/168778053 )
  • Switch, Checkbox and RadioButton action lambdas are now nullable. Checkbox-in-clickable-row samples updated to use this feature. ( If601b , b/171819073 )
  • InteractionState has been replaced with [Mutable]InteractionSource
    • Interfaces are responsible for emitting / collecting Interaction events.
    • Instead of passing interactionState = remember { InteractionState() } to components such as Button and Modifier.clickable() , use interactionSource = remember { MutableInteractionSource() } .
    • Instead of: Interaction.Pressed in interactionState you should instead use the extension functions on InteractionSource, such as InteractionSource.collectIsPressedAsState().
    • For complex use cases you can use InteractionSource.interactions to observe the stream of Interactions. See the InteractionSource documentation and samples for more information.
    • ( I85965 , b/152525426 , b/171913923 , b/171710801 , b/174852378 )
  • Add AccessibilityMananger interface and LocalAccessibilityMananger in CompositionLocals ( I53520 )
  • Removed deprecated LayoutCoordinates methods, use function instead of the property for positionInParent and boundsInParent ( I580ed , b/169874631 , b/175142755 )
  • Slider now supports enabled/disabled state ( I6d56b , b/179793072 )
  • Created new TextInputSession for input sessions from low level text components such as CoreTextField. ( I8817f , b/177662148 )
  • AnimationEndReason.Interrupted is removed. CancellationException will be throws if animation is interrupted. ( I2cbbc , b/179695417 )
  • Removed @ExperimentalRippleApi and changed RippleAlpha to be a class with properties instead of an interface. ( I6df7c )
  • Added TextFieldColors interface to represent different colors used in TextField and OutlinedTextField in different states. For defaut implementation see TextFieldDefaults.textFieldColors and TextFieldDefaults.outlinedTextFieldColors.
  • Add selectionGroup modifier that allows to mark collection of Tabs or RadioButtons for accessibility purposes ( Ie5c29 )
  • Add LazyListState.animateScrollToItem

    This method smooth scrolls to a specific item in the list. ( I4bfd7 )

  • ScrollableState.smoothScrollBy() was renamed to animateScrollBy() LazyListState.snapToItemIndex() was renamed to scrollToItem() ScrollState.smoothScrollTo() was renamed to animateScrollTo() ( I35ded )

  • Any composables marked with @ReadOnlyComposable are now compile-time validated to ensure that they only make calls to other @ReadOnlyComposables ( I58961 )

  • TargetAnimation API has been removed. ( If47d1 , b/177457083 )

  • Scroll position in Modifier.verticalScroll()/horizontalScroll() is represented with Ints now ( I81298 )

  • smoothScrollBy and scrollBy methods' packages changed to androidx.compose.foundation.gestures.* ( I3f7c1 , b/175294473 )

  • FlingConfig has been renamed to FlingBehavior now allows for customization of suspend animation rather than predefined Decays. ( I02b86 , b/175294473 )

  • Size modifiers were renamed. Modifier.width/height/size were renamed to requiredWidth/requiredHeight/requiredSize. Modifier.preferredWidth/preferredHeight/preferredSize were renamed to width/height/size. ( I5b414 )

  • defaultMinSizeConstraints was renamed to defaultMinSize. ( I4eaae )

  • Orientation has been moved to foundation package. VelocirtTracker moved from ui.gesture to ui.input.pointer. ( Iff4a8 , b/175294473 )

  • drawerState.open() and drawerState.close() are now suspending functions. Use rememberCoroutineScope() to get the scope of the composition to call them ( I16f60 , b/175294473 )

  • Providers has been renamed to CompositionLocalProvider

    • The Composition constructor no longer accepts a key parameter, and has been deprecated.
    • currentCompositeKeyHash has been turned into a composable top level property instead of a composable top level function.
    • CompositionData and CompositionGroup have been moved to the androidx.compose.runtime.tooling namespace
    • ComposableLambda has been made an interface instead of a concrete class, and no longer has type parameters.
    • ComposableLambdaN has been made an interface instead of a concrete class, and no longer has type parameters.
    • The snapshotFlow function has been moved to the androidx.compose.runtime namespace
    • the merge method of SnapshotMutationPolicy is no longer experimental
    • The @TestOnly top level clearRoots function has been removed. It is no longer necessary.
    • keySourceInfoOf and resetSourceInfo functions have been removed. তাদের আর প্রয়োজন নেই।
    • Composer.collectKeySourceInformation has been removed. It is no longer necessary.
    • isJoinedKey, joinedKeyLeft, and joinedKeyRight methods have been removed. তাদের আর প্রয়োজন নেই।
    • Various top level APIs have been moved and reorganized into different files. Due to Kotlin's file class semantics, this will break binary compatibility but not source compatibility, so should not be an issue for most users.
    • ( I99b7d , b/177245490 )
  • Modifier.scrollable has been reworked. Now it uses Scrollable interface instead of ScrollableController class ( I4f5a5 , b/174485541 , b/175294473 )

  • Modifier.draggable now accepts DraggableState instead of a simple lambda. you can create state via rememberDraggableState { delta -> } to get the same behaviour as before ( Ica70f , b/175294473 )

  • ZoomableController.smoothScaleBy and ZoomableController.stopAnimation are now suspend functions. ( I7f970 , b/177457083 )

  • Deleted some previously deprecated APIs ( Ice5da , b/178633932 )

  • Made the following Material API changes:

    • Added contentPadding parameter to Top/BottomAppBar to allow customizing the default padding.
    • Reordered parameters in BackdropScaffold to follow API guidelines for required parameters being before optional parameters.
    • Moved icon parameter in BottomNavigationItem to be after selected and onClick .
    • Renamed alwaysShowLabels parameter in BottomNavigationItem to alwaysShowLabel .
    • Renamed bodyContent parameters in a few components to just content .
    • Reordered parameters in ButtonDefaults.buttonColors() . Please note that because the type of the parameters have not changed, this will not cause an error in your code - please ensure you are either using named parameters or update the ordering manually, otherwise your code will not work the same as previously.
    • Added secondaryVariant parameter to darkColors() . This color is typically the same as secondary in dark theme, but adding for consistency and further customization.
    • Removed ElevationDefaults and animateElevation() from the public API surface since they were not commonly used / useful.
    • Renamed onValueChangeEnd in Slider to onValueChangeFinished and made it nullable.
    • Renamed text parameter in Snackbar to content for consistency.
    • Added contentPadding parameter to DropdownMenuItem to allow customizing the default padding and made content be an extension on RowScope .
    • Renamed ModalDrawerLayout to ModalDrawer .
    • Renamed BottomDrawerLayout to BottomDrawer .
    • ( I1cc66 )
  • BasicTextField now accepts Brush instead of Color for better customization ( I83a36 )

  • imageResource and vectorResource are now extension functions on ImageBitmap and ImageVector companions respectively. load{Image,Vector,Font}Resource functions have been deleted. ( I89130 )

  • Changed Indication#createIndication() to Indication#rememberUpdatedIndication(InteractionState) and removes InteractionState parameter from IndicationInstance#drawIndication(). IndicationInstance should only be responsible for drawing visual effects, and not launching animations / writing state in response to InteractionState changes. These animations and state writes should happen within rememberUpdatedIndication() instead. The indication parameter in Modifier.indication was also changed to be a required parameter. ( Ic1764 , b/152525426 )

বাগ ফিক্স

  • Added new LocalSoftwareKeyboardController composition local API to replace previous SoftwareKeyboardController interface on TextField. ( I658b6 , b/168778053 )

Version 1.0.0-alpha12

ফেব্রুয়ারী 10, 2021

androidx.compose.material:material-*:1.0.0-alpha12 is released. Version 1.0.0-alpha12 contains these commits.

API Changes

  • Modifier.pointerInput now requires remember keys to indicate when the pointer input detection coroutine should restart for new dependencies. ( I849cd )
  • BottomDrawerLayout and ListItem have been marked as @ExperimentalMaterialApi ( Id766e )
  • PaddingValues.Absolute was added and can be used in APIs accepting PaddingValues. ( Ia5f30 )
  • onImeActionPerformed is deprecated. use KeyboardActions instead ( If0bbd , b/179071523 )
  • In order to better match naming conventions with ImageBitmap and ImageVector, ImagePainter has been renamed to BitmapPainter to parallel VectorPainter. ( Iba381 , b/174565889 )
  • Animatable.snapTo and Animatable.stop are now suspend functions ( If4288 )
  • ComponentActivity.setContent has moved to androidx.activity.compose.setContent in the androidx.activity:activity-compose module. ( Icf416 )
  • Destructuring and copy() methods have been removed from several classes where they were rarely used. ( I26702 , b/178659281 )
  • Make halfExpand() and expand() in ModalBottomSheetState internal ( Ic914e )
  • Changed Indication#createInstance to be @Composable, and changed LocalIndication to contain an Indication, not () -> Indication. ( I5eeea , b/157150564 )
  • Moved AlertDialog and DropdownMenu to be Android only for now. Added PopupProperties parameter to DropdownMenu for further configuration of the underlying Popup. ( I9c443 )
  • loadFontResource is deprecated. Use fontResource instead. imageResource, loadImageResource, vectorResource, and loadVectorResource are deprecated. Use painterResource instead. ( I6b809 )
  • Removed toggle and toggleModifier parameter from DropdownMenu, and renamed dropdownModifier , dropdownOffset and dropdownContent to modifier , offset and content respectively. DropdownMenu now behaves consistently to Popup , where the parent layout is used for the position of the menu. In most cases you can move toggle to be a sibling of DropdownMenu and wrap both in a Box . See the updated sample in the documentation for more information on usage of this API. ( I884fb )
  • toIntPx() was renamed to roundToPx(). ( I9b7e4 , b/173502290 )
  • IntBounds was renamed to IntRect and the API was improved. ( I1f6ff )
  • Added expand and collapse semantics actions. Added expand and halfExpand in ModalBottomSheetState ( Ib5064 )
  • Modifier.dragGestureFilter has been deprecated. Use Modifier.pointerInput { detectDragGestures (...)} instead. Alternatively, use Modifier.draggable for one axis drags ( I0ba93 , b/175294473 )
  • Renamed Ambients to match the Ambient -> CompositionLocal rename. Ambients used to be named AmbientFoo, now CompositionLocals are named LocalFoo. ( I2d55d )
  • Selection was moved to foundation. ( I7892b )
  • Similarly to how we previously removed state { 0 } composable and now promote usage like remember { mutableStateOf(0) } we are going to remove savedInstanceState { 0 } composable. You should use rememberSaveable { mutableStateOf(0) } instead and it will save and restore automatically if the type used inside the MutableState can be stored in the Bundle. If previously you were passing a custom saver object now you need to use a new overload of rememberSaveable which has stateSaver parameter. The usage will look like this: val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) } ( Ib4c26 , b/177338004 )
  • Added ProgressBarRangeInfo.Indeterminate to mark indeterminate progress bars for accessibility ( I6fe05 )
  • @ComposableContract has been deprecated in favor of three more specific annotations.

    • @ComposableContract(restartable = false) has become @NonRestartableComposable
    • @ComposableContract(readonly = true) has become @ReadOnlyComposable
    • @ComposableContract(preventCapture = true) has become @DisallowComposableCalls
    • @ComposableContract(tracked = true) has been removed.
    • ( I60a9d )
  • emptyContent() and (@Composable () -> Unit).orEmpty() utilities have been deprecated as they no longer have any positive performance impact or value ( I0484d )

  • rememberSavedInstanceState() was renamed to rememberSaveable() and moved to androidx.compose.runtime.saveable package. ( I1366e , b/177338004 )

  • Saver, listSaver(), mapSaver(), autoSaver was moved from androidx.compose.runtime.savedinstancestate to androidx.compose.runtime.saveable ( I77fe6 )

  • Parameters on RounderCornerShape, CutCornerShape and CornerBasedShape were renamed from left/right to start/end in order to support the shape's auto mirroring in the rtl direction. AbsoluteRounderCornerShape and AbsoluteCutCornerShape were introduced for the cases when auto-mirroring is not desired. ( I61040 , b/152756983 )

  • Changed Tab's text and icon parameters, and BottomNavigationItem's label parameter to be nullable, to better convey the behavior of the component when these parameters are / are not provided, since it affects the size and layout of the component. If you are currently passing emptyContent() to represent no text / icon / label, you should use null instead. ( I57ed4 )

  • Renamed contentColorFor color parameter to backgroundColor ( I5bb67 )

  • Deprecated TabDefaults and replaced it with TabRowDefaults. ( I0f189 )

  • Introduced ColorMatrix API used to modify rgb values of source content Refactored ColorFilter API to be an interface and match the implementation of PathEffect. ( Ica1e8 )

  • AnimatedValue/Float is now deprecated. Please use Animatable instead. ( I71345 , b/177457083 )

  • Add SemanticsProperties.PaneTitle API. ( I20d5a )

  • Added enabled parameters to Tab and BottomNavigationItem, to prevent them from being clickable. Changed BottomNavigationItem to be RowScope.BottomNavigationItem to better express its layout requirements in its API. ( Id683d )

  • tapGestureFilter, doubleTapGestureFilter, longPressGestureFilter and pressIndicaitonGestureFilter have been deprecated. Use Modifier.clickable or Modifier.pointerInput with detectTapGestures function instead. ( I6baf9 , b/175294473 )

  • Add layoutDirection param to Shape's createOutline. This allows to create layout direction aware shapes. ( I57c20 , b/152756983 )

  • Removed Recomposer.current() . [Abstract]ComposeView now default to lazily created, window-scoped Recomposers driven by the ViewTreeLifecycleOwner for the window. Recomposition and withFrameNanos-based animation ticks are paused while the host Lifecycle is stopped. ( I38e11 )

বাগ ফিক্স

  • Icon will now scale up to fit its size, respecting size modifiers applied to it. For example Icon(.., modifier = Modifier.size(50.dp) will now draw in a 50x50dp space. ( Ib2ba9 , b/178796190 )

Version 1.0.0-alpha11

28 জানুয়ারী, 2021

androidx.compose.material:material-*:1.0.0-alpha11 is released. Version 1.0.0-alpha11 contains these commits.

API Changes

  • Promotes some Material APIs to no longer be @Experimental ( I5d20e )
  • Content description parameter has been added to the Image and Icon. It is used to provide description to the accessibility services ( I2ac4c )
  • Changes Material stateful parameter interfaces to have @Composable functions that return State<T> . Adds Animatable.asState() to make it easier to convert an Animatable to a State. Also changes animateElevation to be a suspend extension on Animatable. ( If613c )
  • Snackbar, SnackbarHost, SnackbarHostState are not @ExperimentalMaterialAPI anymore ( Id1fb5 )
  • Changes Typography, Shapes, and TabPosition to no longer be data classes. Adds copy function for Typography and Shapes to replace the generated ones. ( I40037 )
  • Deleted some previously deprecated Material APIs ( Ifaa25 )

বাগ ফিক্স

  • onCommit, onDispose, and onActive have been deprecated in favor of SideEffect and DisposableEffect APIs ( If760e )
  • TransitionDefinition-based Transition has been deprecated ( I0ac57 )
  • Initial State in updateTransition is now supported ( Ifd51d )
  • WithConstraints was reworked as BoxWithConstraints and moved to foundation.layout. ( I9420b , b/173387208 )
  • Deprecate non-suspend scrollBy, remove non-suspend scrollTo

    We now recommend using suspend functions to control scrolling and wait for the scroll to finish. We are deprecating and/or removing the non-suspend versions of these functions as part of this transition. ( Ie9ced )

  • Deprecate non-suspend smoothScrollBy We now recommend using suspend functions to control scrolling and wait for the scroll to finish. We are deprecating the non-suspend versions of these functions as part of this transition. ( I12880 )

  • Introduced ComposeContentTestRule , which extends ComposeTestRule and defines setContent , which has been removed from ComposeTestRule . Added a factory method createEmptyComposeRule() that returns a ComposeTestRule and does not launch an Activity for you. Use this when you want to launch your Activity during your test, eg using ActivityScenario.launch ( I9d782 , b/174472899 )

  • The ripple used in Button and FloatingActionButton can no longer be customized by providing a new Indication through AmbientIndication - this was never intended to be a way to customize these components and this now makes these components consistent with other Material components. To customize ripples across an application, see RippleTheme. ( I546c5 )

  • animateAsState is now animateFooAsState, where Foo is the type of the variable being animated. eg Float, Dp, Offset, etc ( Ie7e25 )

  • BasicTextField received a new parameter called decorationBox . It allows to add the decorations like icons, placeholder, label and similar to the text field and increase the hit target area of it. ( I16996 )

  • Fix for a bug which made it not possible to set the width of the material text field be less than 280.dp ( I78373 )

  • canDrag parameter has been removed from the Modifier.draggable ( Ic4bec , b/175294473 )

  • Remove displaySize as it should be avoided. Typically it is better to use size of onRoot() or window size at least. ( I62db4 )

  • Surface can now have multiple layout children. ( I66a92 , b/144488459 )

  • invalidate and compositionReference() are now deprecated in favor of currentRecomposeScope and rememberCompositionReference respectively. ( I583a8 )

  • Changes PopupPositionProvider to use window-relative coordinates, not global coordinates. Renames parentGlobalBounds to anchorBounds, and changes windowGlobalBounds to be windowSize: IntSize ( I2994a )

  • Duration and Uptime will be replace with Long milliseconds, and this step removes the dependency of pointer input on those classes. ( Ia33b2 , b/175142755 , b/177420019 )

  • AnimatedFloat.fling that accepts FlingConfig has been removed. Please use suspend Animatable.animateDecay instead. ( I4659b , b/177457083 )

  • clickable, toggleable and selectable can be created outside of composition now ( I0a130 , b/172938345 , b/175294473 )

  • Easing has been changed to a functional interface ( Ib14e5 )

  • ScrollableColumn/Row were deprecated. Using ScrollableColumn is less efficient comparing to LazyColumn when you have a large scrolling content because with LazyColumn we can only compose/measure/draw visible elements. To prevent users from going inefficient way we decided to deprecate ScrollableColumn and ScrollableRow and promote usages of LazyColumn and LazyRow instead. Users can still decide they don't need the lazy behaviour and use the modifiers directly like this: Column(Modifier.verticalScroll(rememberScrollState())) ( Ib976b , b/170468083 )

  • New items(count: Int) factory method for scope of LazyColumn/LazyRow/LazyVerticalGrid. items(items: List) and itemsIndexed(items: List) are now extension functions so you have to manually import them when used. New extension overloads for Arrays: items(items: Array) and itemsIndexed(Array) ( I803fc , b/175562574 )

  • Removed experimental monotonicFrameAnimationClockOf methods ( Ib753f , b/170708374 )

  • Deprecated global coordinates methods and made new window-based coordinates methods. ( Iee284 )

  • Added Modifier.toolingGraphicsLayer which adds a graphics layer modifier when inspection is turned on. ( I315df )

  • FocusRequester.createRefs is now marked as experimental as it might change. ( I2d898 , b/177000821 )

  • SemanticsPropertyReceiver.hidden was renamed to invisibleToUser and marked @ExperimentalComposeUiApi. AccessibilityRangeInfo was renamed to ProgressBarRangeInfo. stateDescriptionRange was renamed to progressBarRangeInfo. AccessibilityScrollState was renamed to ScrollAxisRange. horizontalAccessibilityScrollState was renamed to horizontalScrollAxisRange. verticalAccessibilityScrollState was renamed to verticalScrollAxisRange. ( Id3148 )

  • Leverage TestCoroutineDispatcher in testing ( I532b6 )

  • Updated vector graphics API to support parsing of tinting applied to root of vector graphics. ( Id9d53 , b/177210509 )

Version 1.0.0-alpha10

13 জানুয়ারী, 2021

androidx.compose.material:material-*:1.0.0-alpha10 is released. Version 1.0.0-alpha10 contains these commits.

API Changes

  • Modified Velocity to have component parts and mathematical operations. ( Ib0447 )
  • Renamed @ExperimentalTesting to @ExperimentalTestApi to be consistent with similar experimental api annotations ( Ia4502 , b/171464963 )
  • Renamed Position to DpOffset and removed getDistance() ( Ib2dfd )
  • Ranamed Color.useOrElse() to Color.takeOrElse() ( Ifdcf5 )
  • Add Toggle to foundation Strings.kt ( I4a5b7 , b/172366489 )
  • FlowRow and FlowColumn were deprecated. Please use a custom layout instead. ( I09027 )
  • Modifier.focus() and Modifier.focusRequester() are deprecated. Use Modifier.focusModifier() and Modifier.focusReference() instead. ( I75a48 , b/175160751 , b/175160532 , b/175077829 )
  • Moved nativeClass to ui module and made it internal. Updated usages of nativeClass in equals implementations to use 'is MyClass' instead. ( I4f734 )

বাগ ফিক্স

  • Added support for disabled and read-only text fields ( I35279 , b/171040474 , b/166478534 )
  • animate() is now replaced with animateAsState() , which returns a State<T> instead of T . This allows better performance, as the invalidation scope can be narrowed down to where the State value is read. ( Ib179e )
  • Add Semantics role API and add Role as a parameter to clickable, selectable and toggleable SemanticsModifier. Changed Modifier.progressSemantics so that Slider can also use it. ( I216cd )

Version 1.0.0-alpha09

16 ডিসেম্বর, 2020

androidx.compose.material:material-*:1.0.0-alpha09 is released. Version 1.0.0-alpha09 contains these commits.

API Changes

  • added API to manually trigger settle animation and drag in Modifier.swipeable ( Iaa17a , b/162408885 )
  • Renamed *Constants objects such as ButtonConstants to end with Defaults instead, such as ButtonDefaults. Also removes unnecessary default prefixes from properties in these new objects. ( Ibb915 , b/159982740 )
  • Compose supports property getters that can make composable invocations. Support for this is not going away, but the syntax for declaring a property getter as being @Composable is changing.

    The now-deprecated syntax for doing this was by annotating the property itself:

        @Composable val someProperty: Int get() = ...
    

    The now-correct syntax for doing this is by annotating the getter of the property:

       val someProperty: Int @Composable get() = ...
    

    Both syntaxes will work for some time, but the former deprecated syntax will eventually become a compile error. ( Id9197 )

  • Added androidx.compose.material:material-ripple library containing ripple APIs to allow building interactive components without needing the rest of the Material library. rememberRippleIndication has been deprecated and replaced with rememberRipple. ( Ibdf11 )

বাগ ফিক্স

  • Lambdas in offset modifiers now return IntOffset rather than Float. ( Ic9ee5 , b/174137212 , b/174146755 )
  • Refactored ShaderBrush to lazily create a shader instance when sizing information of the drawing environment is available. This is useful to define gradients that occupy the full drawing bounds of a composable at composition time, without having to implement custom DrawModifier implementations.

    Deprecated gradient function constructor APIs in favor of factory methods on a Gradient object. ( I511fc , b/173066799 )

  • Modifier.focusObserver is deprecated. Use Modifier.onFocusChanged or Modifier.onFocusEvent instead ( I30f17 , b/168511863 , b/168511484 )

  • Deprecate LazyColumnFor, LazyRowFor, LazyColumnForIndexed and LazyRowForIndexed. Use LazyColumn and LazyRow instead ( I5b48c )

  • Moved Dp.VectorConverter, Position.VectorConverter, etc to animation-core, and deprecated the old VectorConveters ( If0c4b )

  • Autofill API is now experimental API and requires opt-in ( I0a1ec )

  • Adding destructuring declarations to create FocusRequester instances ( I35d84 , b/174817008 )

  • accessibilityLabel has been renamed to contentDescription. accessibilityValue has been renamed to stateDescription. ( I250f2 )

  • New infiniteRepeatable function for creating an InfiniteRepeatableSpec ( I668e5 )

  • The positioning behaviour of DropdownMenus was slightly changed according to the Material spec. ( I34c72 , b/168594123 )

  • InteractionState support for TextFields has been added. ( I61d91 )

  • Added Modifier.clearAndSetSemantics to clear descendants' semantics and set new ones. ( I277ca )

  • Moved ContentDrawScope to ui-graphics module to be with DrawScope. ( Iee043 , b/173832789 )

Version 1.0.0-alpha08

2 ডিসেম্বর, 2020

androidx.compose.material:material:1.0.0-alpha08 , androidx.compose.material:material-icons-core:1.0.0-alpha08 , and androidx.compose.material:material-icons-extended:1.0.0-alpha08 মুক্তি দেওয়া হয় Version 1.0.0-alpha08 contains these commits.

API Changes

  • MaterialTheme now sets the correct colors for selection handles and selection background. Non-Material apps can manually use AmbientTextSelectionColors to customize the colors used for selection. ( I1e6f4 , b/139320372 , b/139320907 )
  • Added lint check for composable lambda parameter naming and position, to check for consistency with Compose guidelines. Also migrated some APIs using children as the name for their trailing lambda to content , according to the lint check and guidance. ( Iec48e )
  • Renamed VectorAsset to ImageVector Moved and renamed VectorAsset to Builder to be an inner class of ImageVector as per API council guidelines. Added typealias of VectorAssetBuilder to link to ImageVector.Builder for compat. ( Icfdc8 )
  • Renamed ImageAsset and related methods to ImageBitmap. ( Ia2d99 )
  • Moved foundation semantics properties to ui ( I6f05c )
  • fun RippleIndication() has been deprecated and replaced with rememberRippleIndication() for consistency with other APIs. ( Id8e2c )
  • Added a singeLine parameter into BasicTextField, TextField and OutlinedTextField. Set this parameter to true to make the text field a single horizontally scrollable line. ( I57004 , b/168187755 )

বাগ ফিক্স

  • Add semantics action Dismiss ( I2b706 )
  • Moved DrawModifier APIs from the androidx.compose.ui package to the androidx.compose.ui.draw package. Created DrawModifierDeprecated.kt file to include typealiases/helper methods to assist with the migration from the deprecated to the current APIs. ( Id6044 , b/173834241 )
  • Renamed Modifier.drawLayer to Modifier.graphicsLayer Also updated related classes to GraphicsLayer as per API feedback. ( I0bd29 , b/173834241 )
  • <T> was removed from SubcomposeLayout declaration. You can use it without specifying a type now. ( Ib60c8 )
  • Added Modifier.scale/rotate APIs as conveniences for drawLayer.
    • Renamed Modifier.drawOpacity to Modifier.alpha
    • Renamed Modifier.drawShadow to Modifier.shadow ( I264ca , b/173208140 )
  • The alignment parameter of Box was renamed to contentAlignment. ( I2c957 )
  • offsetPx modifiers were renamed to offset. They are now taking lambda parameters instead of State. ( Ic3021 , b/173594846 )
  • Introduced SweepGradientShader and SweepGradientBrush APIs. ( Ia22c1 )
  • Added lint check for Modifier parameters in Composable functions. This lint check checks the naming, return type, default value, and order of the parameter for consistency with Compose guidelines. ( If493b )
  • Updated TextFieldValue API
    • made TextFieldValue.composition readonly
    • removed exception thrown for invalid selection range ( I4a675 , b/172239032 )
  • Added a new Modifier.drawLayer() overload. It takes a lambda block on a new GraphicsLayerScope where you define the layer parameters in a way which allows to skip recomposition and relayout when the state change happens. DrawLayerModifier is now internal in preparation to migrating its logic into placeable.placeWithLayer() method of LayoutModifier ( I15e9f , b/173030831 )
  • Deprecated Ambients named with Ambient as their suffix, and replaced them with new properties prefixed with Ambient, following other Ambients and Compose API guidelines. ( I33440 )
  • Added lint check to check that Modifier factories use androidx.compose.ui.composed {} internally, instead of being marked as @Composable . ( I3c4bc )
  • Semantics argument mergeAllDescendants was renamed to mergeDescendants. ( Ib6250 )
  • Time control in tests (TestAnimationClock and its usages) is now experimental ( I6ef86 , b/171378521 )
  • Remove old ui-test module and its stubs ( I3a7cb )
  • TextUnit.Inherit is renamed to TextUnit.Unspecified for consistency with other units. ( Ifce19 )
  • The Alignment interface was updated and made functional. ( I46a07 , b/172311734 )
  • id was renamed to layoutId for LayoutIdParentData. Measurable.id was renamed to Measurable.layoutId. ( Iadbcb , b/172449643 )

Version 1.0.0-alpha07

11 নভেম্বর, 2020

androidx.compose.material:material:1.0.0-alpha07 , androidx.compose.material:material-icons-core:1.0.0-alpha07 , and androidx.compose.material:material-icons-extended:1.0.0-alpha07 মুক্তি দেওয়া হয় Version 1.0.0-alpha07 contains these commits.

API Changes

  • Emphasis has been deprecated and replaced with AmbientContentAlpha. AmbientContentAlpha is a simpler abstraction that represents the preferred content alpha for part of the hierarchy, similar to how AmbientContentColor represents the preferred content color. Text and Icon now consume the current value from AmbientContentAlpha by default, and you can manually do: color.copy(alpha = AmbientContentAlpha.current) to have the same effect in your components. Instead of using ProvideEmphasis, you can just directly provide a value through AmbientContentAlpha, and use the new default levels in ContentAlpha to replace the old EmphasisLevels. ( Idf03e , b/159017896 )
  • Adds androidx.compose.material.AmbientContentColor to replace androidx.compose.foundation.AmbientContentColor ( I84f7b , b/172067770 )
  • Adds androidx.compose.material.Text to replace androidx.compose.foundation.Text as a high level, themeable Text component. For a basic text component that does not consume color / text style from the theme, use BasicText. ( Ie6ae0 )
  • Added maxLines to TextFields ( Ib2a5b )
  • Update TextFields to accept KeyboardOptions ( Ida7f3 )
  • Surface now uses the absolute (total) elevation when calculating elevation overlays, so a Surface nested in another Surface will use the combined elevation to draw the overlay. ( I7bd2b , b/171031040 )

বাগ ফিক্স

  • captureToBitmap moved to captureToImage . ( I86385 )
  • The foundation AmbientTextStyle, ProvideTextStyle, and AmbientContentColor have been deprecated. Instead use the new versions available in the Material library. For non-Material applications, you should instead create your own design system specific theming ambients that can be consumed in your own components. ( I74acc , b/172067770 )
  • foundation.Text has been deprecated and replaced with material.Text. For a basic, unopinionated text API that does not consume values from a theme, see androidx.compose.foundation.BasicText. ( If64cb )
  • Rename KeyboardOptions as ImeOptions ( I82f36 )
  • Moved KeyboardType and ImeAction into KeyboardOptions ( I910ce )
  • BaseTextField has been deprecated. Use BasicTextField instead. ( I896eb )
  • ExperimentalSubcomposeLayoutApi annotation was removed. SubcomposeLayout can now be used without adding @OptIn ( I708ad )
  • FirstBaseline and LastBaseline were moved to androidx.compose.ui.layout package ( Ied2e7 )
  • Updated Icon API to take in Color.Unspecified as a possible tint color which will draw the provided asset or painter without a ColorFilter. Previously attempts to ignore tinting with Color.Unspecified would tint with a transparent color ending up with nothing rendered at all. ( I049e2 , b/171624632 )
  • relativePaddingFrom was renamed to paddingFrom. The paddingFromBaseline modifier was added, as convenience for specifying distances from layout bounds to text baselines. ( I0440a , b/170633813 )
  • LaunchedTask was renamed to LaunchedEffect for consistency with the SideEffect and DisposableEffect APIs. LaunchedEffect with no subject params is not permitted in order to encourage best practices. ( Ifd3d4 )
  • MeasureResult was moved out of MeasureScope. ( Ibf96d , b/171184002 )
  • Several layout related symbols were moved from androidx.compose.ui to androidx.compose.layout.ui. ( I0fa98 , b/170475424 )

Version 1.0.0-alpha06

অক্টোবর 28, 2020

androidx.compose.material:material:1.0.0-alpha06 , androidx.compose.material:material-icons-core:1.0.0-alpha06 , and androidx.compose.material:material-icons-extended:1.0.0-alpha06 মুক্তি দেওয়া হয় Version 1.0.0-alpha06 contains these commits.

API Changes

  • androidx.compose.foundation.Icon has been moved to androidx.compose.material.Icon. You can also use the Image component / Modifier.paint() with a Painter if you do not want to use the Material library. ( I9f622 )
  • Adds FloatingActionButtonElevation to represent elevation used by FABs in different states. See FloatingActionButtonConstants.defaultElevation() for the default implementation ( I2d4f5 )
  • Adds SwitchColors interface to represent colors used by a Switch in different states. See SwitchConstants.defaultColors to customize these colors. ( I93805 )
  • Adds ButtonElevation and ButtonColors interfaces to represent elevation and colors used by buttons in different states. See the default functions in ButtonConstants to customize these parameters. ( Ic5b7b )
  • Adds RadioButtonColors interface to represent colors used by a RadioButton in different states. See RadioButtonConstants.defaultColors() to customize the colors used in different states. ( I74130 )
  • Adds CheckboxColors interface to represent colors used by a checkbox in different states. See CheckboxConstants.defaultColors() to customize the colors used in different states. ( I7dbdb )

বাগ ফিক্স

  • Material components do not set the elevation as zIndex anymore. Which means that within the same parent the child with larger shadow size will not be drawn on top of the child with the smaller one automatically. If you still need such behavior please set Modifier.zIndex() manually where needed ( I70417 , b/170623932 )
  • Deprecate VectorPainter in favor of rememberVectorPainter to better indicate that the composable API internally leverages 'remember' to persist data across compositions. ( Ifda43 )
  • Enable transitions in ComposeTestRule; remove option to enable the blinking cursor from ComposeTestRule. ( If0de3 )
  • Added single line keyboard option to CoreTextField ( I72e6d )
  • Renamed Radius API to CornerRadius to better express how it is used throughout Compose. Updated documentation to indicate that negative corner radii are clamped to zero. ( I130c7 , b/168762961 )
  • Refactored DrawScope and ContentDrawScope to be interfaces instead of abstract classes
    • Created CanvasDrawScope implementation of DrawScope
    • Refactored implementations of DrawScope to use CanvasScope instead
    • Created DrawContext to wrap dependencies for DrawScope
    • Removed deprecated methods on DrawScope ( I56f5e )
  • Box was made an inline function. ( Ibce0c , b/155056091 )

Version 1.0.0-alpha05

অক্টোবর 14, 2020

androidx.compose.material:material:1.0.0-alpha05 , androidx.compose.material:material-icons-core:1.0.0-alpha05 , and androidx.compose.material:material-icons-extended:1.0.0-alpha05 মুক্তি দেওয়া হয় Version 1.0.0-alpha05 contains these commits.

API Changes

  • Popups and dialogs now inherit FLAG_SECURE from parent Window. Also added option to configure this explicitly ( I64966 , b/143778148 , b/143778149 )
  • Modifier.swipeable has 56.dp thresholds for states by default now ( Iab825 , b/168610267 )
  • all scaffold states marked as @Stable. drawerGesturesEnabled in ScaffoldState moved to Scaffold itself. ( I36645 , b/168297016 )
  • Removes nullable type from Scaffold lambda parameters, you can use emptyContent() to represent no content for a given parameter. ( I2b318 , b/157633857 , b/158551084 )
  • Deprecates contentColor() and currentTextStyle() APIs, and replaces them with AmbientContentColor and AmbientTextStyle ambients respectively. You can access the current value by using .current on the ambient property, as with any other ambient. This was change was made for consistency and to avoid having multiple ways to accomplish the same thing. Additionally renames some ambient properties to better describe their purpose as follows:

    • ContentColorAmbient -> AmbientContentColor
    • TextStyleAmbient -> AmbientTextStyle
    • IndicationAmbient -> AmbientIndication
    • EmphasisAmbient -> AmbientEmphasisLevels
    • RippleThemeAmbient -> AmbientRippleTheme ( I37b6d )
  • Adds AmbientElevationOverlay, allowing customizing / disabling the default elevation overlay applied to Surfaces in dark theme. ( I5b74d )

বাগ ফিক্স

  • As part of the standardization of sentinel values for inline classes, rename Color.Unset to Color.Unspecified for consistency with other inline classes ( I97611 , b/169797763 )
  • TextOverflow.None is introduced. When overflow is None, Text won't handle overflow anymore, and it will report its actual size to LayoutNode. ( I175c9 , b/158830170 )
  • launchInComposition renamed to LaunchedTask to match Compose API guidelines ( I99a8e )
  • OnPositionedModifier is renamed to OnGloballyPositionedModifier and onPositioned() is renamed to onGloballyPositioned(). ( I587e8 , b/169083903 )

Version 1.0.0-alpha04

অক্টোবর 1, 2020

androidx.compose.material:material:1.0.0-alpha04 , androidx.compose.material:material-icons-core:1.0.0-alpha04 , and androidx.compose.material:material-icons-extended:1.0.0-alpha04 মুক্তি দেওয়া হয় Version 1.0.0-alpha04 contains these commits.

API Changes

  • Exposes InteractionState parameters in stateful Material components, to allow hoisting the state and reading / controlling the state. ( Iaca5f , b/168025711 , b/167164434 )
  • Changes the *color parameters on RadioButton and TriStateCheckbox to allow fully customizing the colors used in each state, as well as changing how the colors animate between states if desired. See the new animateDefault* color functions in CheckboxConstants and RadioButtonConstants for more information. ( I1c532 )
  • Renamed rememberBackdropState to rememberBackdropScaffoldState and added an additional param for the animation clock. Renamed the param backdropScaffoldState of BackdropScaffold to just scaffoldState. Renamed BackdropConstants to BackdropScaffoldConstants. ( Ib644d )
  • Added experimental BottomSheetScaffold component. ( Ie02f0 , b/148996320 )
  • Added experimental ModalBottomSheetLayout component. ( Ic209e , b/148996320 )
  • Renames ButtonConstants/FloatingActionButtonConstants.defaultAnimatedElevation to defaultElevation, and now returns a Dp value instead of an AnimatedValue. ( I5f3ed )

বাগ ফিক্স

  • Updated many Graphics APIs
    • Updated scale and rotation transformation APIs to consume a single Offset parameter to represent the pivot coordinate instead of separate float parameters for the x/y coordinates in DrawScope and DrawTransform
    • Removed Rect.expandToInclude and Rect.join methods
    • Updated Radius documentation to say oval in addition to elliptical
    • Added documentation to indicate the public constructor for the inline Radius class is not to be called directly but instead Radius objects should be instantiated through their function constructors
    • Removed RoundRect APIs to query topRight, bottomRight, bottomCenter, etc.
    • Deprecated Rect.shift in favor of Rect.translate
    • Removed RoundRect.grow and Rect.shrink APIs
    • Renamed RoundRect.outerRect to Rect.boundingRect
    • Removed RoundRect.middleRect/tallMiddleRect/wideMiddleRect and Rect.isStadium methods
    • Renamed RoundRect.longestSide to RoundRect.maxDimension
    • Renamed RoundRect.shortestSide to RoundRect.minDimension
    • Changed RoundRect.center to be a property instead of a function
    • Updated RoundRect constructor to consume Radius properties instead of individual parameters for x/y radius values
    • Removed Size APIs that assumed it was a Rectangle with origin at 0,0
    • Added a destructing API to Radius
    • Migrated various RoundRect extension functions to be properties instead
    • ( I8f5c7 , b/168762961 )
  • foundation.Box was deprecated. Please use foundation.layout.Box instead. ( Ie5950 , b/167680279 )
  • Stack was renamed to Box. The previously existing Box will be deprecated in favor of the new Box in compose.foundation.layout. The behavior of the new Box is to stack children one on top of another when it has multiple children - this is different from the previous Box, which was behaving similar to a Column. ( I94893 , b/167680279 )
  • Box decoration parameters have been deprecated. If you want to have decorations/padding on your box, use Modifiers instead (Modifier.background, Modifier.border, Modifier.padding) ( Ibae92 , b/167680279 )
  • Updated many Graphics APIs
    • Updated DrawScope APIs with scoped transformation methods to indicate that the transformation is only applied within the callback and removed after the callback is invoked
    • Updated clipPath documentation to refer to Path instead of rounded rectangle
    • Fixed spacing in documentation for right parameter in clipPath
    • Renamed DrawScope.drawCanvas to drawIntoCanvas and removed size parameter
    • Renamed dx/dy parameters in inset method to horizontal and vertical
    • Added inset overload that provides the same inset value to all 4 bounds
    • Removed documentation on inset method indicating that inset would be applied to all 4 sides
    • Updated documentation for Rect class
    • Updated comments on Rect parameters to match kdoc style
    • Removed Rect.join and Rect.expandToInclude
    • Created overload for Rect.translate(offset) and deprecated Rect.shift
    • ( If086a , b/167737376 )
  • We prevented static imports of contents of layout scopes (eg alignWithSiblings in RowScope). The explicit scope alternative should be used instead: with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) } . ( I216be , b/166760797 )

Version 1.0.0-alpha03

16 সেপ্টেম্বর, 2020

androidx.compose.material:material:1.0.0-alpha03 , androidx.compose.material:material-icons-core:1.0.0-alpha03 , and androidx.compose.material:material-icons-extended:1.0.0-alpha03 মুক্তি দেওয়া হয় Version 1.0.0-alpha03 contains these commits.

API Changes

  • Renames BottomNavigationItem 's onSelect parameter to onClick ( I91925 , b/161809324 )
  • Adds InteractionState parameter to BottomNavigationItem and Tab, allowing hoisting this state and adjusting how the component appears in different states. ( Ia3e9e , b/168025711 )
  • Removes disabledBackgroundColor and disabledContentColor parameters from buttons. You should instead use the new default color functions inside ButtonConstants. If you are already setting contentColor / backgroundColor explicitly, you should instead use these default functions and customize some / all of the parameters to avoid overwriting the color for both enabled / disabled states. ( If9b52 )
  • Textfield's background color does not implicitly apply transparency alpha anymore. Instead, any color provided through the backgroundColor parameter will be applied directly. ( Iecee9 , b/167951441 )
  • InnerPadding was renamed to PaddingValues. ( I195f1 , b/167389171 )
  • The params resistanceFactorAtMin and resistanceFactorAtMax in Modifier.swipeable were replaced with a single resistance param. A new defaultResistanceConfig method was added in SwipeableConstants . ( I54238 )
  • Adds animated stateful elevation support for Button and FloatingActionButton. The elevation now animates between default and pressed states. To customize the elevation between states, please use ButtonConstants.defaultAnimatedElevation() and FloatingActionButtonConstants.defaultAnimatedElevation() instead of setting a flat Dp value in all cases. ( I37925 )
  • Label became an optional parameter inside TextField and OutlinedTextField ( I267f6 , b/162234081 )

বাগ ফিক্স

  • Global testing functions such as onNode or waitForIdle are now deprecated, please migrate to their new counterparts that are defined on ComposeTestRule ( I7f45a )
  • DpConstraints and APIs using it were deprecated. ( I90cdb , b/167389835 )
  • The parameters minWidth and maxWidth of widthIn were renamed to min and max. Similarly for preferredWidthIn, heightIn, preferredHeightIn. ( I0e5e1 , b/167389544 )
  • Remove scroll forward/backward semantics actions. Added steps in AccessibilityRangeInfo. ( Ia47b0 )
  • Usages of gravity were consistently renamed to align or alignment in layout APIs. ( I2421a , b/164077038 )
  • Added onNode and other global methods on ComposeTestRule as the current global ones are going to be deprecated. ( Ieae36 )
  • Moved createAndroidComposeRule and AndroidInputDispatcher from androidx.ui.test.android to androidx.ui.test ( Idef08 , b/164060572 )

Version 1.0.0-alpha02

2শে সেপ্টেম্বর, 2020

androidx.compose.material:material:1.0.0-alpha02 , androidx.compose.material:material-icons-core:1.0.0-alpha02 , and androidx.compose.material:material-icons-extended:1.0.0-alpha02 মুক্তি দেওয়া হয় Version 1.0.0-alpha02 contains these commits.

API Changes

  • Added an experimental BackdropScaffold component. ( Iad908 )

বাগ ফিক্স

  • Matrix4 was replaced with Matrix. All other parts of vectormath package have been removed. ( Ibd665 , b/160140398 )

Version 1.0.0-alpha01

আগস্ট 26, 2020

androidx.compose.material:material:1.0.0-alpha01 , androidx.compose.material:material-icons-core:1.0.0-alpha01 , and androidx.compose.material:material-icons-extended:1.0.0-alpha01 মুক্তি দেওয়া হয় Version 1.0.0-alpha01 contains these commits.

পরিচিত সমস্যা

= The first character in a material TextField cannot be removed using a backspace ( b/165956313 )

Version 0.1.0-dev

Version 0.1.0-dev17

আগস্ট 19, 2020

androidx.compose.material:material:0.1.0-dev17 , androidx.compose.material:material-icons-core:0.1.0-dev17 , and androidx.compose.material:material-icons-extended:0.1.0-dev17 মুক্তি দেওয়া হয় Version 0.1.0-dev17 contains these commits.

API Changes

  • Previously deprecated RadioGroup and RadioGroupItems have been removed. Use Row and RadioBotton instead ( I381b7 , b/163806637 )
  • Removed onFocusChanged callbacks from TextField. Use Modifier.focusObserver instead. ( I51089 , b/161297615 )
  • Modifier.drawBorder has been deprecated. Use Modifier.border instead. Border data class has been replaced by BorderStroke ( I4257d , b/158160576 )
  • Renamed some properties in SwipeableState: swipeTarget -> targetValue, swipeProgress -> progress, swipeDirection -> direction. Added a rememberSwipeableState function for creating SwipeableStates. ( I2fc9c , b/163129614 , b/163132293 )
  • Snackbar support with positioning and proper queueing has been added. Access it via SnackbarHostState.showSnackbar suspend function. অতিরিক্তভাবে:
    • SnackbarHost components has been added. It hosts Snackbars based on the state and is responsible for transition between snackbars.
    • SnackbarHostState has been added to allow for control over snackbars, snackbars hosts and to decouple it from the ScaffoldState. you can access this state via scaffoldState.snackbarHostState as well.
    • Snackbar overload has been added to support common interface between snackbarHostState and snackbars itself. ( I79aaa )
  • Adds enabled parameter to IconButton, and reorders parameters in IconToggleButton ( I0a941 , b/161809385 , b/161807956 )
  • ListItem version with String-based API has been removed. Use slot version instead. ( Ib8f57 , b/161804681 )
  • Removed deprecated FilledTextField component. Please use TextField instead to get the Material Design implementation of the Filled text field. ( I5e889 )
  • AlertDialog now uses FlowRow for buttons ( I00ec1 , b/161809319 , b/143682374 )
  • Added params in Modifier.swipeable for changing the amount of resistance when swiping past the bounds. Removed [min/max]Value params. ( I93d98 )
  • Added backgroundColor parameter to LinearProgressIndicator and removed internal padding from CircularProgressIndicator. Added new ProgressIndicatorConstants.DefaultProgressAnimationSpec which can be used as the default AnimationSpec when animating progress between values ( If38b5 , b/161809914 , b/161804677 )
  • Optional param velocityThreshold added to Modifier.swipeable. ( I698ba )
  • bottomBarSize, fabSize and others and not available anymore in ScaffoldState. Use Modifier.onPosition instead on the component you'd like to know the size of. contentColor and Modifier pamateres have been added to Scaffold ( Ic6f7b , b/161811485 , b/157174382 )
  • Renames and reorders some parameters in Tab for consistency with other APIs ( Ia2d12 , b/161807532 )
  • Splits TabRow into TabRow and ScrollableTabRow, removing isScrollable from TabRow. Also exposes edgePadding in ScrollableTabRow, which allows controlling the free space before / after the tabs. ( I583e8 , b/161809544 )
  • The TabRow object has been removed, replacing it with TabConstants. TabRow.TabPosition has moved to be top level (TabPosition), and indicatorContainer has been renamed to indicator . See the samples and documentation for detailed information on how to use the updated API, and defaults. ( I54d45 , b/161809544 )
  • The thresholds param in Modifier.swipeable was tweaked; it now takes a pair of states (of type T) and returns the threshold between them in the form of a ThresholdConfig. A param dismissThresholds was added to SwipeToDismiss, which is a lambda (DismissDirection) -> ThresholdConfig. ( Ie1080 )
  • Slider has more colors for granular customization ( I73e64 , b/161810475 )
  • Card's color param was renamed to backgroundColor ( I01fc1 , b/161809546 )
  • Snackbar has customizable background and content colors now ( I238f2 , b/161804381 )
  • modifier, backgroundColor, contentColor and scrimColor customization params has been added to Drawers ( I23655 , b/161804378 )
  • The state { ... } composable is now deprecated in favor of explicit calls to remember { mutableStateOf(...) } for clarity. This reduces the overall API surface and number of concepts for state management, and matches the by mutableStateOf() pattern for class property delegation. ( Ia5727 )
  • Button's padding param was renamed to contentPadding ( Id252e , b/161809394 )
  • Add an experimental material component SwipeToDismiss. ( I129e5 )

বাগ ফিক্স

  • Removed onChildPositioned and OnChildPositionedModifier . Developers should use onPositioned and OnPositionedModifier on the child layout instead. ( I4522e , b/162109766 )
  • Added mergePolicy lambda to SemanticsPropertyKey. This can be used to define a custom policy for mergeAllDescendants semantics merging. The default policy is to use the parent value if already present, otherwise the child value. ( Iaf6c4 , b/161979921 )
  • IntSize is now an inline class ( I2bf42 )
  • PlacementScope.placeAbsolute() was renamed to PlacementScope.place() , and the previous PlacementScope.place() was renamed to PlacementScope.placeRelative() . As a result, the PlacementScope.place() method will not automatically mirror the position in right-to-left contexts anymore. If this is desired, use PlacementScope.placeRelative() instead. ( I873ac , b/162916675 )
  • Deprecated PxBounds in favor of Rect. Updated all usages of PxBounds with rect and added proper deprecate/replace with annotations to assist with the migration. ( I37038 , b/162627058 )
  • Renamed RRect to RoundRect to better fit compose naming patterns Created similar function constructors to RRect and deprecated RRect function constructors ( I5d325 )

Version 0.1.0-dev16

আগস্ট 5, 2020

androidx.compose.material:material:0.1.0-dev16 , androidx.compose.material:material-icons-core:0.1.0-dev16 , and androidx.compose.material:material-icons-extended:0.1.0-dev16 মুক্তি দেওয়া হয় Version 0.1.0-dev16 contains these commits.

API Changes

  • Colors is now a final class instead of an interface. Instead of extending and providing a custom implementation, you should create a new ambient for your custom theme object, and access the theme object through the new ambient in your components, similar to how MaterialTheme works internally. ( Ibae84 )
  • Renamed ColorPalette to Colors, to better map to the Material color system and remove confusion over ColorPalette being a 'generic' theming object, as opposed to being a specific implementation of the Material color system. Additionally renames lightColorPalette and darkColorPalette to lightColors and darkColors respectively. ( I9e976 , b/161812111 )
  • Renames BottomNavigationItem's text parameter to label , onSelected to onSelect , activeColor to selectedContentColor , inactiveColor to unselectedContentColor and updates parameter ordering to match guidelines. ( Icb605 , b/161809324 )
  • Modifier.stateDraggable was completely reworked and renamed to Modifier.swipeable. A new SwipeableState class was introduced, and DrawerState and BottomDrawerState were refactored to inherit from it. [Modal/Bottom]DrawerLayout no longer takes an onStateChange parameter. ( I72332 , b/148023068 )
  • foundation.shape.corner package were flatten to foundation.share ( I46491 , b/161887429 )
  • Added ExperimentalMaterialApi annotation. RippleTheme marked as Experimental ( Ic5fa0 , b/161784800 )
  • Material FilledTextField was renamed to TextField and foundational TextField was renamed to BaseTextField to make simplest desired API easy to discover and use ( Ia6242 , b/155482676 )

বাগ ফিক্স

  • OnChildPositioned has been deprecated. Use OnPositioned on the child instead. ( I87f95 , b/162109766 )
  • Address broad API fixes ( I077bc )
    1. Remove unused OffsetBase interface
    2. Align Offset and IntOffset classes to have a consistent API surface
    3. Rename IntOffset.Origin to IntOffset.Zero to be consistent with Offset API
    4. Moved nativeCanvas method off of Canvas interface to support consumers to create their own Canvas instances
    5. Created stub EmptyCanvas class to refactor DrawScope to be a non-null parameter instead of lateinit and ensure non-nullability of the field
    6. Renamed ClipOp enums to be Pascal Case
    7. Renamed FilterQuality enums to be Pascal Case
    8. Renamed StrokeJoin enums to be Pascal Case
    9. Renamed PointMode enums to be Pascal Case
    10. Renamed PaintingStyle enums to be Pascal Case
    11. Renamed PathFillType enums to be Pascal Case
    12. Renamed StrokeCap enums to be Pascal Case
    13. Updated DrawCache implementation to no longer use lateinit params
    14. Updated DrawScope to no longer use lazy delegation for fillPaint and strokePaint internal parameters
    15. Updated Image composable to avoid Box usage for less overhead
    16. Updated Outline class to have @Immutable annotations
    17. Updated PathNode to have @Immutable annotations for each path instruction
    18. Updated Vector subcomposition to remove redundant conditional checks for equality as compose already handles them
    19. Deprecated Rect companion constructor methods in favor of function constructors
    20. Updated Brush classes and function constructors with @Immutable and @Stable APIs
    21. Updated VertexMode enum to be PascalCase
    22. Updated DrawScope selectPaint method to conditionally overwrite stroke parameters on the paint if they have changed
    23. Updated Size to add destructuring API, rename UnspecifiedSize to Unspecified and removed unused methods
  • Move dialog to ui ( I47fa6 )
  • Removed SemanticsNodeInteraction.performPartialGesture . Use SemanticsNodeInteraction.performGesture instead. ( Id9b62 )
  • Renamed SemanticsNodeInteraction.getBoundsInRoot() to SemanticsNodeInteraction.getUnclippedBoundsInRoot() ( Icafdf , b/161336532 )
  • The APIs for right-to-left support has been updated. LayoutDirectionAmbient has been added, which can be used to read and change the layout direction. Modifier.rtl and Modifier.ltr have been removed. ( I080b3 )
  • Modifier.deternimateProgress has been renamed to Modifier.progressSemantics ( I9c0b4 )
  • Updates material-icons-extended with the latest icons added to Material.io/icons ( I4b1d3 )
  • Require type T to be explicitly specified for transitionDefinition. ( I1aded )
  • Modifier.plus has been deprecated, use Modifier.then instead. 'Then' has a stronger signal of ordering, while also prohibits to type Modifier.padding().background() + anotherModifier , which breaks the chain and harder to read ( Iedd58 , b/161529964 )
  • Renamed AndroidComposeTestRule to createAndroidComposeRule. ( I70aaf )
  • Add isFocused() and isNotFocused() SemanticsMatcher. ( I0b760 )
  • Removed BaseGestureScope.globalBounds , which shouldn't be used from tests. Use coordinates local to the node with which you're interacting instead. ( Ie9b08 )
  • Fixed popup position on cut-out displays. ( Idd7dd )
  • Modifier.drawBackground has been renamed to Modifier.background ( I13677 )

Version 0.1.0-dev15

22 জুলাই, 2020

androidx.compose.material:material:0.1.0-dev15 , androidx.compose.material:material-icons-core:0.1.0-dev15 , and androidx.compose.material:material-icons-extended:0.1.0-dev15 মুক্তি দেওয়া হয় Version 0.1.0-dev15 contains these commits.

Dependencies Update

  • To use the 0.1.0-dev15 version of Compose, you will need to update your dependencies according to the new code snippets shown above in Declaring dependencies .

API Changes

  • @Model annotation is now deprecated. Use state and mutableStateOf as alternatives. This deprecation decision was reached after much careful discussion.

    ন্যায্যতা

    Rationale includes but is not limited to:

    • Reduces API surface area and concepts we need to teach
    • More closely aligns with other comparable toolkits (Swift UI, React, Flutter)
    • Reversible decision. We can always bring @Model back later.
    • Removes corner-case usage and difficult to answer questions about configuring @Model as things we need to handle
    • @Model data classes, equals, hashcode, etc.
    • How do I have some properties “observed” and others not?
    • How do I specify structural vs. referential equality to be used in observation?
    • Reduces “magic” in the system. Would reduce the likelihood of someone assuming system was smarter than it is (ie, it knowing how to diff a list)
    • Makes the granularity of observation more intuitive.
    • Improves refactorability from variable -> property on class
    • Potentially opens up possibilities to do hand-crafted State-specific optimizations
    • More closely aligns with the rest of the ecosystem and reduces ambiguity towards immutable or us “embracing mutable state”

    মাইগ্রেশন নোট

    Almost all existing usages of @Model are fairly trivially transformed in one of two ways. The example below has a @Model class with two properties just for the sake of example, and has it being used in a composable.

    @Model class Position(
     var x: Int,
     var y: Int
    )
    
    @Composable fun Example() {
     var p = remember { Position(0, 0) }
     PositionChanger(
       position=p,
       onXChange={ p.x = it }
       onYChange={ p.y = it }
     )
    }
    

    Alternative 1: Use State<OriginalClass> and create copies.

    This approach is made easier with Kotlin's data classes. Essentially, make all previously var properties into val properties of a data class, and then use state instead of remember , and assign the state value to cloned copies of the original using the data class copy(...) convenience method.

    It's important to note that this approach only works when the only mutations to that class were done in the same scope that the State instance is created. If the class is internally mutating itself outside of the scope of usage, and you are relying on the observation of that, then the next approach is the one you will want to use.

    data class Position(
     val x: Int,
     val y: Int
    )
    
    @Composable fun Example() {
     var p by state { Position(0, 0) }
     PositionChanger(
       position=p,
       onXChange={ p = p.copy(x=it) }
       onYChange={ p = p.copy(y=it) }
     )
    }
    

    Alternative 2: Use mutableStateOf and property delegates

    This approach is made easier with Kotlin's property delegates and the mutableStateOf API which allows you to create MutableState instances outside of composition. Essentially, replace all var properties of the original class with var properties with mutableStateOf as their property delegate. This has the advantage that the usage of the class will not change at all, only the internal implementation of it. The behavior is not completely identical to the original example though, as each property is now observed/subscribed to individually, so the recompositions you see after this refactor could be more narrow (a good thing).

    class Position(x: Int, y: Int) {
     var x by mutableStateOf(x)
     var y by mutableStateOf(y)
    }
    
    // source of Example is identical to original
    @Composable fun Example() {
     var p = remember { Position(0, 0) }
     PositionChanger(
       position=p,
       onXChange={ p.x = it }
       onYChange={ p.y = it }
     )
    }
    

    ( I409e8 , b/152050010 , b/146362815 , b/146342522 , b/143413369 , b/135715219 , b/143263925 , b/139653744 )

  • onFocusChange callback in text fields renamed to onFocusChanged ( Ida4a1 )

  • Added thresholds param in stateDraggable to specify thresholds between anchors. This was used to set a 56dp threshold in bottom drawer. Also BottomDrawerLayout now uses a separate BottomDrawerState enum. ( I533fa )

  • Removes previously deprecated Modifier.ripple. Clickable now uses ripple as the default indication (if you have a MaterialTheme {} set in your application) so in most cases you can just use clickable and get ripple indication for free. If you need to customize the color / size / bounded parameter for the ripple, you can manually create a RippleIndication and pass it to clickable as the indication parameter. ( I663b2 , b/155375067 )

  • Removed deprecated override of FilledTextField composable ( I7f8f8 )

  • Rename Button object (containing the defaults used by Button function) to ButtonConstants ( I7c5f7 , b/159687878 )

  • Button's content slot now behaves as Row (useful when you need to have an icon with a text, see samples on Button how to write it) ( I0ff10 , b/158677863 )

  • RadioGroup and RadioGroupItem have been deprecated. Use Box with Modifier.selectable, Row and Column to make proper set of radioButton choices by your design ( I7f5cf , b/149528535 )

  • Added Material Outlined Textfield ( I1a518 )

  • androidx.ui.foundation.TextFieldValue and androidx.ui.input.EditorValue is deprecated. TextField, FilledTextField and CoreTextField composables that uses that type is also deprecated. Please use androidx.ui.input.TextFieldValue instead ( I4066d , b/155211005 )

  • TabRow.TabPosition not contains position in Dp, not in IntPx ( I34a07 , b/158577776 )

  • Replaced usage of IntPx with Int. Replaced IntPxPosition with IntOffset. Replaced IntPxSize with IntSize. ( Ib7b44 )

  • In order to consolidate the number of classes used to represent sizing information, standardize on usage of the Size class instead of PxSize. This provides the benefits of an inline class to leverage a long to pack 2 float values to represent width and height represented as floats. ( Ic0191 )

  • Deprecates Modifier.ripple. Clickable now uses ripple as the default indication (if you have a MaterialTheme {} set in your application) so in most cases you can just use clickable and get ripple indication for free. If you need to customize the color / size / bounded parameter for the ripple, you can manually create a RippleIndication and pass it to clickable as the indication parameter. ( I101cd , b/155375067 )

  • Scaffold API has been reworked: few parameters changed their name, added new parameters for better customization. Added getter to query sizes of Fab, TopBar and BottomBar ( I0e7ce )

  • Added the DropdownMenu component in ui-material, a Material Design menu implementation. ( I9bb3d )

  • Allow to show/hide software keyboard manually using SoftwareKeyboardController ( Ifb9d6 , b/155427736 )

  • Modifier.indication has been added to foundation package. Use it to show press/drag/other indication on your custom interactable elements ( I8425f , b/155287131 )

  • Consolidated CanvasScope implementations so there is now just DrawScope and ContentDrawScope Renamed CanvasScope to DrawScope. Updated DrawScope to implement Density interface and provide LayoutDirection Deleted DrawScope subclass in ContentDrawScope Painter and PainterModifier have been updated to no longer maintain an RTL property themselves as DrawScope provides this already without manually providing it ( I1798e )

  • Renames Emphasis.emphasize() to Emphasis.applyEmphasis() ( Iceebe )

  • Disabled buttons now visually follows the Material Design specification ( I47dcb , b/155076924 )

  • FilledTextField gets ime action, visual transformation and keyboard type support ( I1f9cf , b/155075201 )

  • Adds strokeWidth parameter to CircularProgressIndicator to customize the stroke size. To change the stroke size (height) of a LinearProgressIndicator, you can use Modifier.preferredHeight() or another size modifier. ( Icea16 , b/154919081 )

  • Adds strokeWidth parameter to CircularProgressIndicator to customize the stroke size. To change the stroke size (height) of a LinearProgressIndicator, you can use Modifier.preferredHeight() or another size modifier. ( Icea16 , b/154919081 )

  • Added slot API for trailing and leading icons in the FilledTextField and handling of the error state ( Ic12e0 )

  • FAB's and Extended FAB's default color has been changed to MaterialTheme.colors.secondary. ( I3b9b9 , b/154118816 )

  • Replaced all nullable Color uses in API with non-nullable and use Color.Unset instead of null ( Iabaa7 )

  • Renamed EdgeInsets to InnerPadding. Renamed innerPadding parameter of Material Buttons to paddding. ( I66165 )

  • Slider is now stateless. Users will need to pass and update state by themselves, just like in any other control. ( Ia00aa )

  • StaticDrawer was removed. If you need it, use Box with material-spec'ed width instead ( I244a7 )

  • Added Material Design implementation of Filled Text Field ( Ic75cd )

  • Added modifier param to ListItem and reordered params to promote trailing lambda body ( I66e21 )

  • Adds defaultFontFamily constructor parameter to Typography, allowing specifying the default font family that will be used for any provided TextStyles that do not have a family set. ( I89d07 )

  • Temporarily removed Material Data Tables from the API surface. ( Iaea61 )

  • Renamed paramaters in Divider composable ( Ic4373 )

  • children ( Ia6d19 )

  • Removes MaterialTheme.emphasisLevels, instead use EmphasisAmbient.current to retrieve the emphasis levels ( Ib5e40 )

  • Shape theming system is updated according to the Material design specification. Now you can provide small, medium and large shapes to be used by most of the components ( Ifb4d1 )

  • Changed MaterialTheme APIs such as MaterialTheme.colors(), MaterialTheme.typography() to be properties instead of functions. Remove parentheses from existing calls, no behavioral change is expected. ( I3565a )

  • Refactored FloatingActionButton APIs to accept composable lambdas instead of primitives. See updated samples for usage information. ( I00622 )

  • add enabled param to Checkbox, Switch and Toggleable ( I41c16 )

  • Ripple is now a Modifier. While Clickable is not yet converted the recommended usage is Clickable(onClick = { ... }, modifier = ripple()) ( Ie5200 , b/151331852 , b/150060763 )

  • Surface and Card were moved from androidx.ui.material.surface to androidx.ui.material ( I88a6d , b/150863888 )

  • Button, FloatingActionButton and Clickable now have a separate enabled param. Some of the params on Button were renamed or reordered. ( I54b5a )

  • Renamed Image to ImageAsset to better differentiate the difference between the Image data and the upcoming Image composable used to participate in layout and draw content. _Body:Created extension method on android.graphics.Bitmap, Bitmap.asImageAsset(), to create an instance of an ImageAsset useful for combining traditional Android application development with the compose framework ( Id5bbd )

  • Removed Snackbar API with String parameters in favour of using the overload that accepts composable lambdas. See updated samples for usage information ( I55f80 )

  • Refactored Tab APIs to accept text and icon lambdas, ( Ia057e )

  • Added BottomNavigation component, see the docs and samples for usage information ( I731a0 )

  • Added Icon, IconButton and IconToggleButton, removing AppBarIcon. You can directly replace existing usages of AppBarIcon with IconButton, and they will now have the correct touch target. See the samples for usage information, and see Icons for the provided Material Icons you can use directly with these components. ( I96849 )

  • Replaced ButtonStyle with distinct functions and removed text (string) overload. See updated samples for usage information. ( If63ab , b/146478620 , b/146482131 )

  • rename Border modifier to DrawBorder ( I8ffcc )

  • LayoutCoordinates no longer has a position property. The position property does not make sense when considering LayoutModifiers, rotation, or scaling. Instead, developers should use parentCoordinates and childToLocal() to calculate the transform from one LayoutCoordinate to another.

    LayoutCoordinates uses IntPxSize for the size property instead of PxSize. Layouts use integer pixel sizes for layouts, so all layout sizes should use integers and not floating point values. ( I9367b )

  • Breaking changes to the ambients API. See log and Ambient<T> documentation for details ( I4c7ee , b/143769776 )

  • Scaffold material component has been added. Scaffold implements ( I7731b )

  • Replaced DrawBorder in favor of Border Modifier ( Id335a )

বাগ ফিক্স

  • FocusModifier is deprecated in favor of Modifier.focus, Modifier.focusRequester, Modifier.focusObserver. FocusState and FocusDetailedState are deprecated in favor of FocusState2 ( I46919 , b/160822875 , b/160922136 )
  • VerticalScroller and HoriziontalScroller have been deprecated. Use ScrollableColumn and ScrollableRow for build-in experience with Column/Row behaviour and parameters, or Modifier.verticalScroll and Modifier.horizontalScroll on your own element. Similarly, ScrollerPosition has been deprecated in favor of ScrollState' ( I400ce , b/157225838 , b/149460415 , b/154105299 )
  • Modifier.draggable and Modifier.scrollable APIs were reworked. DragDirection was removed in favor of Orientation. State required for scrollable has beed simplified. ScrollableState has been renamed to ScrollableController ( Iab63c , b/149460415 )
  • runOnIdleCompose renamed to runOnIdle ( I83607 )
  • Single-value semantics properties now use a calling style. For example, 'semantics { hidden = true }' is now written as: 'semantics { hidden() }'. ( Ic1afd , b/145951226 , b/145955412 )
  • Several testing APIs were renamed to be more intuitive. All findXYZ APIs were renamed to onNodeXYZ. All doXYZ APIs were renamed to performXYZ. ( I7f164 )
  • Transition API has been changed to return a TransitionState instead of passing the TransitionState to children. This makes the API more consistent with animate() APIs. ( I24e38 )
  • An IntBounds unit class has been added, representing integer pixel bounds from layout. The API of PopupPositionProvider has been updated to use it. ( I0d8d0 , b/159596546 )
  • A new optional flag useUnmergedTree was added to test finders. ( I2ce48 )
  • Removed obsolete size testing APIs. ( Iba0a0 )
  • Removed Shader inline class that wrapped the NativeShader expect class Renamed NativeShader to Shader. The wrapped Shader inline class did not add anything valuable to the API surface and was an inline class, so use the NativeShader class directly. ( I25e4d )
  • Popups, Dialogs and Menus are now inheriting the contextual MaterialTheme ( Ia3665 , b/156527485 )
  • Material DropdownMenu are now scrollable. ( Ide699 )
  • Removed layout direction parameter from the measure block of the Layout() function. Layout direction is however available inside the callback through the measure scope object ( Ic7d9d )
  • Use AnimationSpec instead of AnimationBuilder in the top level APIs to clarify the concept of static animation specification -Improve the transition DSL by removing the lambda requirement for creating AnimationSpecs such as tween, spring. They instead take constructor params directly. -Improve the overall ease of use of AnimationSpec opening up constructors instead of relying on builders -Change the duration and delay for KeyFrames and Tween to Int. This eliminates unnecessary type casts and method overloading (for supporting both Long and Int). ( Ica0b4 )
  • Switch now appears in a disabled state when enabled is set to false ( If4624 , b/155941869 , b/159331694 )
  • Modifier.tag was renamed to Modifier.layoutId, to avoid confusion with Modifier.testTag. ( I995f0 )
  • Alignment line Int positions returned from Placeable#get(AlignmentLine) are now non-null. If the queried alignment line is missing, AlignmentLine.Unspecified will be returned. ( I896c5 , b/158134875 )
  • Refactored Radius class to be an inline class. Removed companion creation methods in favor of function constructor with default parameter to have the radius along the y-axis match that of the mandatory x-axis radius parameter.

    Updated DrawScope.drawRoundRect to consume a single Radius parameter instead of 2 separate float values for the radius along the x and y axis ( I46d1b )

  • In order to consolidate the number of classes used to represent positioning information, standardize on usage of the Offset class instead of PxPosition. This provides the benefits of an inline class to leverage a long to pack 2 float values to represent x and y offsets represented as floats. ( I3ad98 )

  • Replaced usage of Px class in various compose classes as part of the large refactoring effort to only rely on Dp and primitive types for pixel parameters. Deleted Px class in its entirety ( I3ff33 )

  • Toggleable component has been deprecated. Use Modifier.toggleable instead ( I35220 , b/157642842 )

  • Replaced usage of Px class in various compose classes as part of the large refactoring effort to only rely on Dp and primitive types for pixel parameters ( I086f4 )

  • Replaced usage of Px class in various compose classes as part of the large refactoring effort to only rely on Dp and primitive types for pixel parameters ( Id3434 )

  • Replaced usage of Px class in various compose classes as part of the large refactoring effort to only rely on Dp and primitive types for pixel parameters ( I97a5a )

  • Fixed onClick not being invoked for DropdonMenuItems. ( I3998b , b/157673259 )

  • MutuallyExclusiveSetItem has been deprecated. Use Modifier.selectable instead. ( I02b47 , b/157642842 )

  • TestTag is now deprecated. Use Modifier.testTag instead. ( If5110 , b/157173105 )

  • TextField's cursor has a blinking animation ( Id10a7 )

  • Replaced usage of Px class in various compose classes as part of the large refactoring effort to only rely on Dp and primitive types for pixel parameters ( I19d02 )

  • VerticalScroller now provides Column out of the box. HorizontalScroller now provides Row out of the box. ( Ieca5d , b/157020670 )

  • Replaced usage of Px class in various compose classes as part of the large refactoring effort to only rely on Dp and primitive types for pixel parameters ( Iede0b )

  • Modifier.semantics has been undeprecated to allow usages for high level components. ( I4cfdc )

  • DrawLayer modifiers api has been changed: outlineShape renamed to shape and has the RectangleShape default value and now non-nullable; clipToOutline renamed to clip; clipToBounds removed as it is the same as clip == true with RectangleShape ( I7ef11 , b/155075735 )

  • Updated higher level compose APIs that expose a Canvas to expose CanvasScope instead. This removes the need for consumers to maintain their own Paint objects. For consumers that still require access to a Canvas they can use the drawCanvas extension method which provides a callback to issue drawing commands with the underlying Canvas. ( I80afd )

  • AlignmentLineOffset composable is deprecated, please use relativePaddingFrom() modifier instead. CenterAlignmentLine composable is removed. ( I60107 )

  • WithConstraints trailing lambda API has been changed. Now instead of two params it has a receiver scope which in addition to constraints and layoutDirection provides minWidth, maxWidth, minHeight and maxHeight properties in Dp ( I91b9a , b/149979702 )

  • Added defaultMinSizeConstraints layout modifier, which sets size constraints to the wrapped layout only when the incoming corresponding constraints are unspecified (0 for min constraints and infinity for max constraints). ( I311ea , b/150460257 )

  • FocusManagerAmbient is removed. Use FocusModifier.requestFocus to obtain focus. ( Ic4826 )

  • Created CanvasScope API that wraps a Canvas object to expose a stateless, declarative drawing API surface. Transformations are contained within their own receiver scope and sizing information is also scoped to corresponding inset bounds. It does not require a consumer to maintain its own Paint state object for configuring drawing operations.

    Added CanvasScopeSample as well as updated the demo app to include a declarative graphics demo ( Ifd86d )

  • Add cursor color customisation to the TextField ( I6e33f )

  • TextFieldValue used with TextField can now be survive activity recreation when used like this: var text by savedInstanceState(saver = TextFieldValue.Saver) { TextFieldValue() } ( I5c3ce , b/155075724 )

  • Renamed LayoutModifier2 to LayoutModifier. ( Id29f3 )

  • Removed deprecated LayoutModifier interface. ( I2a9d6 )

  • Replaced CoreTextField/TextField focusIdentifier parameter with FocusNode in order to integrate with focus subsystem. ( I7ea48 )

  • Intrinsic measurements functions in Layout and LayoutModifier2 have an IntrinsicMeasureScope receiver now which provides intrinsics query API with implicitly propagated layout direction. ( Id9945 )

  • New Modifier.zIndex() is added to control the drawing order of the children within the same parent layout. elevation property on DrawLayerModifier is renamed to shadowElevation and doesn't control the drawing order anymore. The params order fo DrawShadow is changed: elevation is now the first one and the shape is the second one with a RectangleShape default. ( I20150 , b/152417501 )

  • RectangleShape moved from androidx.ui.foundation.shape.* to androidx.ui.graphics.* ( Ia74d5 , b/154507984 )

  • TextField API update - merged onFocus and onBlur callbacks into a single onFocusChange(Boolean) callback with parameter ( I66cd3 )

  • Added verticalGravity and horizontalGravity parameters to Row and Column, respectively. ( I7dc5a )

  • Updated wrapContentWidth and wrapContentHeight to expect vertical or horizontal Alignment rather than any Alignment. The gravity modifier was updated to accept vertical or horizontal Alignment. Row, Column and Stack were updated to support custom continuous Alignments. ( Ib0728 )

  • Created PixelMap API to support querying pixel information from an ImageAsset. ( I69ad6 )

  • Removes ProvideContentColor, instead just use ContentColorAmbient directly with Providers ( Iee942 )

  • ui-text-compose module is renamed as ui-text. ui-text now contains CoreText and CoreTextField composables ( Ib7d47 )

  • ui-text module is renamed as ui-text-core ( I57dec )

  • Moved ui-framework/CoreText, CoreTextField composables under ui-text-compose. You might want to include ui-text-compose in your project. ( I32042 )

  • Improve DrawModifier API:

    • Made the receiver scope for draw() ContentDrawScope
    • Removed all parameters on draw()
    • DrawScope has same interface as former CanvasScope
    • ContentDrawScope has drawContent() method ( Ibaced , b/152919067 )
  • runOnIdleCompose and runOnUiThread are now global functions instead of methods on ComposeTestRule. ( Icbe8f )

  • [Mutable]State property delegate operators moved to extensions to support Kotlin 1.4 property delegate optimizations. Callers must add imports to continue using by state { ... } or by mutableStateOf(...) . ( I5312c )

  • Added positionInParent and boundsInParent for LayoutCoordinates. ( Icacdd , b/152735784 )

  • ColoredRect has been deprecated. Use Box(Modifier.preferredSize(width, height).drawBackground(color)) instead. ( I499fa , b/152753731 )

  • Renamed LayoutResult to MeasureResult. ( Id8c68 )

  • Added LayoutModifier2, a new API for defining layout modifiers; deprecated LayoutModifier ( If32ac )

  • Replaced Modifier plus operator with factory extension functions ( I225e4 )

  • Draggable has been moved to modifier ( Id9b16 , b/151959544 )

  • ParentData composable is deprecated. You should either create a modifier which implements ParentDataModifier interface, or use LayoutTag modifier if you simply need to tag layout children to recognize them inside the measure block. ( I51368 , b/150953183 )

  • Deprecated Center composable. It should be replaced either with the LayoutSize.Fill + LayoutAlign.Center modifier, or with one of the Box or Stack composables with suitable modifiers applied ( Idf5e0 )

  • Added VectorPainter API to replace existing subcomposition API for vector graphics. Result of subcomposition is a VectorPainter object instead of a DrawModifier. Deprecated previous DrawVector composables in favor of VectorPainter.

    Renamed Image(Painter) API to PaintBox(Painter) Created Vector composable that behaves like the Image composable except with a VectorAsset instead of an ImageAsset ( I9af9a , b/149030271 )

  • Renamed LayoutFlexible to LayoutWeight. Renamed tight parameter to fill. ( If4738 )

  • Removed RepaintBoundary in favor of DrawLayerModifier ( I00aa4 )

  • DrawVector has been changed from a regular composable function to returning a Modifier drawVector() that will draw the vector as a background to a layout. ( I7b8e0 )

  • The Opacity composable function has been replaced with the drawOpacity modifier. ( I5fb62 )

  • Replace composable function Clip with modifier drawClip(). DrawClipToBounds is a convenient modifier to use when you only need to clip to the layer bounds with a rectangle shape. ( If28eb )

  • Replaced DrawShadow composable function with drawShadow() modifier. Shadows are now drawn as part of LayerModifier. ( I0317a )

  • Added LayerModifier, a modifier that allows adding a RenderNode for a Layout. It allows setting clipping, opacity, rotation, scaling, and shadows. This will replace RepaintBoundary. ( I7100d , b/150774014 )

  • androidx.compose.ViewComposer has been moved to androidx.ui.node.UiComposer androidx.compose.Emittable has been removed. It was redundant with ComponentNode. androidx.compose.ViewAdapters has been removed. They are no longer a supported use case. Compose.composeInto has been deprecated. Use setContent or setViewContent instead. Compose.disposeComposition has been deprecated. Use the dispose method on the Composition returned by setContent instead. androidx.compose.Compose.subcomposeInto has moved to androidx.ui.core.subcomposeInto ComponentNode#emitInsertAt has been renamed to ComponentNode#insertAt ComponentNode#emitRemoveAt has been renamed to ComponentNode#removeAt ComponentNode#emitMode has been renamed to ComponentNode#move ( Idef00 )

  • Created Image composable to handle sizing/layout in addition to drawing a given ImageAsset to the screen. This composable also supports drawing any arbitrary Painter instance respecting its intrinsic size as well as supporting a given fixed size or minimum size ( Ibcc8f )

  • Deprecated Wrap composable. It can be replaced either with the LayoutAlign modifier or with the Stack composable ( Ib237f )

  • WithConstraints got LayoutDirection parameter ( I6d6f7 )

  • Made the layout direction be propagated from parent layout node to children. Added layout direction modifier. ( I3d955 )

  • Stack component supports right-to-left directionality ( Ic9e00 )

  • DrawShape composable was removed. Use DrawBackground modifier instead. ( I7ceb2 )

  • Support right-to-left direction in LayoutPadding modifier ( I9e8da )

  • Added AdapterList, a scrolling list component that only composes and lays out the visible items. Currently known issues include that it is vertical-only and does not fully handle all cases of changes to its children. ( Ib351b )

  • Updated the ComposeFlags.COMPOSER_PARAM flag to be true , which will change the code generation strategy for the compose plugin. At a high level, this causes @Composable functions to be generated with an additional synthetic parameter, which is passed through to subsequent @Composable calls in order for the runtime to properly manage execution. This is a significant binary breaking change, however, should preserve source-level compatibility in all sanctioned usage of compose. ( I7971c )

  • Added Canvas component. This composable takes up some size (provided by user) and allows you to draw using CanvasScope ( I0d622 )

  • Density and DensityScope were merged into one interface. Instead of ambientDensity() you can now use DensityAmbient.current. Instead of withDensity(density) just with(density) ( I11cb1 )

  • Changed LayoutCoordinates to make providedAlignmentLines a Set instead of a Map and have LayoutCoordinates implement the get() operator instead for retrieving a value. This makes it easier for modifiers to modify one or more value of the set without creating a new collection for each modifier. ( I0245a )

  • Scrollers now exhibit native Android fling motion behavior. ( I922af , b/147493715 )

  • Improvements to the API surface of Constraints ( I0fd15 )