কম্পোজ ফাউন্ডেশন

বিল্ডিং ব্লক ব্যবহার করার জন্য প্রস্তুত সহ জেটপ্যাক কম্পোজ অ্যাপ্লিকেশন লিখুন এবং আপনার নিজস্ব ডিজাইন সিস্টেম টুকরা তৈরি করতে ভিত্তি প্রসারিত করুন।
সর্বশেষ আপডেট স্থিতিশীল রিলিজ প্রার্থী মুক্তি বিটা রিলিজ আলফা রিলিজ
সেপ্টেম্বর 18, 2024 1.7.2 - - 1.8.0-আলফা02

গঠন

কম্পোজ হল 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.foundation:foundation:1.7.2"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

কোটলিন

dependencies {
    implementation("androidx.compose.foundation:foundation:1.7.2")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

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

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

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

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

সংস্করণ 1.8

সংস্করণ 1.8.0-alpha02

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

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

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

  • TextOverflow.StartEllipsis এবং TextOverflow.MiddleEllipsis এখন উপলব্ধ যা একক লাইন পাঠ্যের লাইনের শুরুতে বা মাঝখানে উপবৃত্তাকার স্থাপন করতে দেয় ( I38913 , b/185418980 )

সংস্করণ 1.8.0-alpha01

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

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

সংস্করণ 1.7

সংস্করণ 1.7.2

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

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

বাগ ফিক্স

  • ড্র্যাগেবলের সাথে সমস্যাটি ঠিক করুন যা ইভেন্টগুলি অনুপস্থিত ছিল যার ফলে ফ্লিংগুলি স্বাভাবিকের চেয়ে ধীর দেখায়।

সংস্করণ 1.7.1

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

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

সংস্করণ 1.7.0

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

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

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

  • Modifier.clickable , Modifier.focusable , Modifier.indication , Modifier.scrollable এবং Modifier.draggable এর কর্মক্ষমতা উল্লেখযোগ্যভাবে উন্নত করা হয়েছে। এই প্রচেষ্টার অংশ হিসাবে, অভ্যন্তরীণ পরিবর্তনগুলি ছাড়াও নিম্নলিখিত API পরিবর্তনগুলি করা হয়েছিল
    • একটি নতুন ইঙ্গিত API, IndicationNodeFactory যোগ করা হয়েছে। এটি পূর্ববর্তী (এখন অবচয়) rememberUpdatedInstance API-এর তুলনায় আরও বেশি পারফরম্যান্ট ইঙ্গিত বাস্তবায়নের দিকে নিয়ে যায়। মাইগ্রেশন সংক্রান্ত তথ্যের জন্য, developer.android.com দেখুন।
    • clickable / combinedClickable / selectable / toggleable এখন একটি বাতিলযোগ্য MutableInteractionSource প্যারামিটার গ্রহণ করে। যদি নাল থাকে, এবং প্রদত্ত ইঙ্গিতটি একটি IndicationNodeFactory হয়, তাহলে ইঙ্গিতটি অলসভাবে তৈরি করা যেতে পারে যখন প্রয়োজন হয়, যা কর্মক্ষমতা উন্নত করে। আপনি যদি MutableInteractionSource উত্তোলন না করে থাকেন এবং ব্যবহার না করেন, remember { MutableInteractionSource() } পাস করার পরিবর্তে নাল পাস করার পরামর্শ দেওয়া হয়।
    • Indication#rememberUpdatedInstance অবমুক্ত করা হয়েছে। এটি একটি উচ্চ অনিবার্য কর্মক্ষমতা শাস্তি আছে, এবং অন্যান্য অপ্টিমাইজেশান বাধা দেয়. পরিবর্তে, আপনার নতুন IndicationNodeFactory API ব্যবহার করা উচিত।
  • একটি TextFieldState ব্যবহার করে BasicTextField এখন স্থিতিশীল এবং আমরা সমস্ত কল-সাইটকে BasicTextField(value, onValueChange) থেকে BasicTextField(TextFieldState) এ মাইগ্রেশন শুরু করার পরামর্শ দিই।
  • ClickableText অবমুক্ত করা হয়েছে। আপনার লেখায় ক্লিকযোগ্য লিঙ্ক যোগ করতে, আপনার AnnotatedString এ নতুন LinkAnnotation টীকা সহ BasicText ব্যবহার করুন। LinkAnnotation লিঙ্ক অবস্থার উপর ভিত্তি করে কাস্টম স্টাইলিং করার অনুমতি দেয় (যেমন ফোকাস করা, হোভার করা)।
  • MaxLines এবং Overflow সহ ContextualFlowRow এবং Enhanced FlowRow/Column প্রবর্তন করা হচ্ছে। আমরা ContextualFlowRow এবং ContextualFlowColumn এর আত্মপ্রকাশের পাশাপাশি, এখন maxLines এবং ওভারফ্লো সমর্থন সমন্বিত পরীক্ষামূলক FlowRow এবং FlowColumn এ বর্ধিতকরণ ঘোষণা করতে পেরে উত্তেজিত। এই আপডেটটি পারফরম্যান্সের সর্বোত্তম উপাদান প্রদান করার জন্য ডিজাইন করা হয়েছে, যেখানে ContextualFlow* একটি ছোট ম্যাক্সলাইন কনফিগারেশন এবং গতিশীল +N আরও বোতাম ব্যবহার করে প্রচুর সংখ্যক আইটেমের জন্য উপযুক্ত, এবং FlowRow এবং FlowColumn অল্প সংখ্যক আইটেমের জন্য উপযুক্ত, কম 100 টিরও বেশি আইটেম। গুরুত্বপূর্ণ: FlowRow বা FlowColumn এ বিদ্যমান আচরণ বজায় রাখার জন্য যেখানে সমস্ত আইটেম তৈরি করা হয়েছে তা নির্বিশেষে তারা ক্রস অক্ষের সর্বোচ্চ মাপসই করে, ওভারফ্লো সেট করুন FlowRowOverflow.Visible বা FlowColumnOverflow.Visible .প্রাথমিককরণের সময় দৃশ্যমান। ক্রিয়াশীল এই নতুন বৈশিষ্ট্যগুলির উদাহরণগুলির জন্য ContextualFlowRowSample এবং FlowRowSample অন্বেষণ করুন৷ ( Ib9135 , b/293577082 )
  • LazyColumn এবং LazyRow এ আইটেমের উপস্থিতি এবং অন্তর্ধান অ্যানিমেশন সমর্থন যোগ করা হয়েছে। পূর্বে প্লেসমেন্ট (পুনঃক্রম) অ্যানিমেশন সমর্থন করার জন্য Modifier.animateItemPlacement() সংশোধক যোগ করা সম্ভব ছিল। আমরা এই সংশোধকটিকে অবমূল্যায়ন করেছি এবং Modifier.animateItem() নামে একটি নতুন অ-পরীক্ষামূলক সংশোধক প্রবর্তন করেছি যা আপনাকে তিনটি অ্যানিমেশন প্রকারকে সমর্থন করতে দেয়: চেহারা (ফেড ইন), অদৃশ্য হওয়া (বিবর্ণ হওয়া) এবং পুনরায় সাজানো৷ ( I2d7f7 , b/150812265 )
  • অফিসিয়াল Android API ( ScrollCaptureCallback ) ব্যবহার করে কম্পোজ স্ক্রোল পাত্রে দীর্ঘ স্ক্রিনশটগুলির জন্য পরীক্ষামূলক সমর্থন প্রয়োগ করা হয়েছে।
  • NestedScroll উত্সগুলির বর্ধিত সংজ্ঞা যা এখন অ্যানিমেশন (সাইড ইফেক্ট) এবং মাউস হুইল এবং কীবোর্ড ( UserInput ) অন্তর্ভুক্ত করে সেই উত্সগুলির বর্ধিত সংজ্ঞার জন্য মিটমাট করতে UserInput এবং SideEffect দ্বারা ড্র্যাগ এবং ফ্লিং প্রতিস্থাপিত হচ্ছে৷
  • LazyLayout প্রিফেচ অনুরোধগুলি এখন জরুরী হিসাবে চিহ্নিত করা যেতে পারে, যার অর্থ আমরা আশা করি এই আইটেমটি পরবর্তী ফ্রেমে প্রয়োজন হবে এবং আগে থেকে আরও কাজ করা নিশ্চিত করতে ফ্রেম বাজেট উপেক্ষা করতে চাই ( Id513f )
  • অ্যান্ড্রয়েড ইউ ( I002e4 ) এর পরে ডিভাইসগুলিতে স্টাইলাস হস্তাক্ষর বৈশিষ্ট্য সমর্থন করে
  • বিভিন্ন API গুলিকে স্থিতিশীল হিসাবে উন্নীত করা হয়েছে
    • পেজার, স্ন্যাপিং, উইন্ডো ইনসেট

সংস্করণ 1.7.0-rc01

আগস্ট 21, 2024

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

বাগ ফিক্স

  • একটি রিগ্রেশন স্থির করা হয়েছে যেখানে ক্র্যাশ ঘটেছে যখন কোনো উপাদান একটি অভিভাবকের ভিতরে ফোকাস করা হয় যা ফোকাসযোগ্য (বা ক্লিকযোগ্য) এবং অক্ষম। ( b/317561689 )

সংস্করণ 1.7.0-beta07

7 আগস্ট, 2024

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

বাগ ফিক্স

  • টেক্সট ইনপুট সম্পর্কিত SemanticsNodeInteraction ফাংশনগুলি performTextReplacement , performTextInput , এবং performTextClearance এখন দাবী ত্রুটিগুলি ফেলতে চলেছে যখন সেগুলিকে শুধুমাত্র TextFields কল করা হয়৷ ( I4ae8f )
  • হাইপারলিঙ্কগুলিতে একটি চাক্ষুষ ত্রুটি সংশোধন করা হয়েছে। ( I23311 )
  • কিছু আইএমই-এর সাথে স্থির contentReceiver মডিফায়ার কাজ করছে না।
  • বেগ জেনারেশন: কম্পোজ UI এবং ফাউন্ডেশনে NaN মানগুলির প্রচার রোধ করুন।

সংস্করণ 1.7.0-beta06

জুলাই 24, 2024

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

সংস্করণ 1.7.0-beta05

10 জুলাই, 2024

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

বাগ ফিক্স

  • SnapFlingBehavior এবং পেজারে ন্যান মানগুলির চিকিত্সার জন্য ঠিক করুন।

সংস্করণ 1.7.0-beta04

জুন 26, 2024

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

বাগ ফিক্স

  • খুব বড় টেক্সট লাইন (যেমন 10k অক্ষর) পরিমাপ করার সময় ক্র্যাশ এড়িয়ে চলুন ( 8157ab )
  • নতুন BasicTextField ( 6b7575 ) এ ক্র্যাশ সৃষ্টিকারী খুব বড় পাঠের পরিমাপ ঠিক করে
  • সারি/কলাম পরিমাপের একটি আচরণ পরিবর্তনকে ফিরিয়ে দেয় যা নির্দিষ্ট পরিস্থিতিতে পাঠ্যের ব্যবহারকে ভেঙে দেয় ( 69e8ba )

সংস্করণ 1.7.0-beta03

জুন 12, 2024

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

সংস্করণ 1.7.0-beta02

29 মে, 2024

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

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

  • LazyLists এর জন্য বিদ্যমান পরীক্ষামূলক API-এর অনুরূপ LazyGrids এর প্রিফেচ আচরণ কনফিগার করার জন্য একটি পরীক্ষামূলক API যোগ করে। এর মধ্যে রয়েছে নেস্টেড LazyGrids এ আইটেম প্রিফেচ করার জন্য সমর্থন। LazyListPrefetchStrategy মতই, বাস্তবায়নের ডিফল্ট হল প্রতিটি গ্রিডের প্রথম 2টি নেস্টেড আইটেম প্রিফেচ করা, কিন্তু এটি নতুন LazyGridPrefetchStrategy(nestedPrefetchItemCount) এবং LazyListPrefetchStrategy#onNestedPrefetch দ্বারা কনফিগার করা যেতে পারে। ( I591c4 )
  • নাম পরিবর্তন করে SemanticsProperties.EditableIsEditable এবং SemanticsPropertyReceiver.editable val isEditable এ পরিবর্তন করা হয়েছে। সম্পত্তি এখন একটি বুলিয়ান এবং সর্বদা পাঠ্য ক্ষেত্র দ্বারা নির্দিষ্ট করা হয়। ( I8acd8 )
  • basicMarquee ডিফল্ট মানগুলিকে MarqueeDefaults অবজেক্টে সরানো হয়েছে। ( I12ff6 )
  • basicMarquee delayMillis পরামিতির নাম রিপিট করে repeatDelayMillis । ( I12ff6 )
  • লিঙ্কগুলি স্টাইল করার জন্য API আপডেট করুন: TextLinkStyles গুলিকে TextStyle এ সরানো হয়েছে এবং উপাদান থেকে TextDefaults সরিয়ে দেওয়া হয়েছে ( I5477b )

বাগ ফিক্স

  • এর উদ্দেশ্যকে আরও ভালভাবে প্রতিফলিত করার জন্য LayoutCoordinates.introducesFrameOfReference নাম পরিবর্তন করে LayoutCoordinates.introducesMotionFrameOfReference করা হয়েছে। সেই পতাকার উপর ভিত্তি করে স্থানাঙ্ক গণনা করতে সম্পর্কিত ফাংশনের নাম পরিবর্তন করা হয়েছে। ( I3a330 )
  • MarqueeDefaults বৈশিষ্ট্য থেকে 'ডিফল্ট' সরানো হয়েছে। ( I1d8a0 )
  • MarqueeDefaults বৈশিষ্ট্য থেকে 'Marquee' সরানো হয়েছে। ( Iad4f4 )
  • TextStyle ক্লাস থেকে TextLinkStyles সরানো হয়েছে। পরিবর্তে, TextLinkStyles হল LinkAnntation কনস্ট্রাক্টরের অংশ এবং AnnotatedString.fromHtml পদ্ধতি ( I90b2b )
  • একটি বাগ সংশোধন করা হয়েছে যেখানে পেজার একটি বাউন্ডের দিকে ঝাঁপিয়ে পড়ার সময় স্ন্যাপ করবে যখন ইতিমধ্যেই বাউন্ডে সেটেল হয়ে গেছে। ( I9f373 , b/339171222 )
  • BTF2 এখন সঠিক মাউস নির্বাচন অঙ্গভঙ্গি আছে. ( Ibe8c6 )

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

  • পুনরায় জমা দিন 'নির্ভুলতা উন্নত করতে প্রিফেচে ভিত্তিক কম্পোজ/মেজার সময় গণনা বিষয়বস্তু-টাইপ' ( Iea622 )
  • নির্ভুলতা উন্নত করতে প্রিফেচ-এর উপর ভিত্তি করে কম্পোজ/মেজার সময় গণনার বিষয়বস্তু-টাইপ করুন ( Ibccb1 )
  • সাধারণ উৎস সেট ( I070b2 ) থেকে WindowInsetsPadding মডিফায়ার উপলব্ধ করুন

সংস্করণ 1.7.0-beta01

14 মে, 2024

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

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

  • যোগ করা হয়েছে KeyboardOptions.shouldShowKeyboardOnFocus প্রপার্টি বাইনারি সামঞ্জস্যের জন্য লুকানো অবচয় হিসাবে ফিরে এসেছে। ( I15cfe )
  • Modifier.anchoredDraggable এখন RTL লেআউটে ব্যবহার করা হলে অনুভূমিক অভিযোজন সহ উপাদানগুলির জন্য ডিফল্টরূপে ড্র্যাগ ডেল্টাকে বিপরীত করে। ( I3c6d9 )
  • AnnotatedString.hasEqualsAnnotations এখন hasEqualAnnotations . ( I685c0 )
  • টেক্সটে মেটেরিয়াল থিমযুক্ত লিঙ্ক পাওয়ার জন্য API আপডেট করা হয়েছে। বিশেষত, থিমযুক্ত LinkAnnotations এবং থিমযুক্ত লিঙ্কগুলির সাথে HTML পার্স করার জন্য TextDefaults থেকে পদ্ধতিগুলি সরিয়ে দেওয়া হয়েছে। পরিবর্তে, একটি TextLinkStyles ক্লাস যোগ করা হয়েছে যা টেক্সট কম্পোজেবলের প্যারামিটার হিসাবে লিঙ্কগুলিকে স্টাইল করার অনুমতি দেয়। ( I31b93 )
  • onDragStarted এবং onDragStopped নন-সাসপেন্ড কলব্যাকগুলির সাথে প্রতিস্থাপিত। ( I59de8 )

বাগ ফিক্স

  • contentPadding ইনকামিং সীমাবদ্ধতার চেয়ে বড় হলে পেজার ক্র্যাশ করবে যেখানে একটি বাগ সংশোধন করা হয়েছে। পেজার এখন PageSize থেকে 0-তে ফেরত নেতিবাচক মানগুলিকে জোর করে। ( Iba5d8 , b/314008560 )

সংস্করণ 1.7.0-alpha08

1 মে, 2024

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

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

  • কাটা, অনুলিপি, পেস্ট এবং নির্বাচন-সমস্ত ক্রিয়াগুলির জন্য আইটেম সহ BasicTextField এবং SelectionContainer এ রাইট-ক্লিক প্রসঙ্গ মেনু যোগ করা হয়েছে। ( if8c93 , Ia2b49 , I6f268 )

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

  • LazyLayout প্রিফেচ অনুরোধগুলি এখন জরুরী হিসাবে চিহ্নিত করা যেতে পারে, যার অর্থ আমরা আশা করি এই আইটেমটি পরবর্তী ফ্রেমে প্রয়োজন হবে এবং আগে থেকে আরও কাজ করা নিশ্চিত করতে ফ্রেম বাজেট উপেক্ষা করতে চাই ( Id513f )
  • introducesFrameOfReference জন্য isPositionedByParentWithDirectManipulation নাম পরিবর্তন করা হয়েছে। মনে রাখবেন যে এটির এখন বিপরীত প্রভাব রয়েছে, যার অর্থ ডিফল্টরূপে, বেশিরভাগ LayoutCoordinates রেফারেন্সের একটি ফ্রেম প্রবর্তন করে এবং, শুধুমাত্র যখন সরাসরি ম্যানিপুলেশনের অধীনে স্থাপন করা হয় তখন সম্পত্তিটি মিথ্যা হবে। শুধুমাত্র একটি রেফারেন্সের ফ্রেম প্রবর্তনকারীর সাথে অবস্থান অনুসন্ধান করতে, positionInLocalFrameOfReference(...) ব্যবহার করুন। অথবা একটি LookaheadScope থেকে positionInLocalLookaheadFrameOfReference । ( ifc5f7 )
  • LinkInteractionListener ( Iaa35c ) এর ভিতরে onClicked to onClick নাম পরিবর্তন করা হয়েছে
  • API কাউন্সিল প্রতিক্রিয়া অনুযায়ী getScrollViewportLength এর জন্য অ্যাকশন ল্যাম্বডা পরিবর্তন করুন। ( Ibc74a )
  • স্টাইলাস হ্যান্ডরাইটিং ডেলিগেশন API-এর নাম পরিবর্তন করা হয়েছে। ( Ica45f , b/327271923 )
  • TextInclusionStrategy.isInside এর নাম পরিবর্তন করে isIncluded করুন। Paragraph/MultiParagraph#getRangeForRect() রিটার্ন টাইপটি বাতিলযোগ্য নয়। ( I51f26 )

বাগ ফিক্স

  • SelectionContainer এ সমস্ত পাঠ্য প্রাসঙ্গিক মেনুতে "সব নির্বাচন করুন" যোগ করা হয়েছে। ( Ib750e , b/240143283 )
  • reverseScrolling=true সহ পাত্রে স্ক্রল করার জন্য স্থায়ী দীর্ঘ স্ক্রিনশট ক্যাপচার। ( I7c59c )
  • একটি সমস্যা সমাধান করা হয়েছে যেখানে AnchoredDraggableState এর currentValue রাজ্যের সীমার কাছে যাওয়ার সময় পরিবর্তিত হবে। ( IEA30b , b/333846848 )

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

  • এর দায়িত্বগুলিকে আরও ভালভাবে প্রতিফলিত করার জন্য PrefetchExecutor -> PrefetchScheduler নামকরণ করা হয়েছে। ( Ib9154 )
  • নেস্টেড LazyLists এ আইটেম প্রিফেচ করার জন্য সমর্থন যোগ করা হয়েছে (যেমন একটি LazyColumn যা নেস্টেড LazyRows রেন্ডার করে)। এই LazyLists জন্য স্ক্রল করার সময় এই পরিবর্তনটি ফ্রেম ড্রপ কমিয়ে দেবে বলে আশা করা হচ্ছে। বাস্তবায়ন ডিফল্ট হল প্রথম 2টি নেস্টেড আইটেম প্রিফেচ করা, তবে এই আচরণটি নতুন LazyLayoutPrefetchStrategy(nestedPrefetchItemCount) এবং LazyListPrefetchStrategy#onNestedPrefetch APIs দ্বারা নিয়ন্ত্রিত হতে পারে। ( I51952 )

সংস্করণ 1.7.0-alpha07

এপ্রিল 17, 2024

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

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

  • একটি TextDefaults অবজেক্ট যোগ করা হয়েছে যাতে একটি LinkAnnotation তৈরি করার পদ্ধতি রয়েছে এবং HTML-ট্যাগযুক্ত স্ট্রিং পার্স করে যা লিঙ্কগুলিতে MaterialTheme প্রয়োগ করে। ( I98532 , b/139312671 )
  • LazyVerticalGrid এবং LazyHorizontalGrid এ আইটেমের উপস্থিতি এবং অন্তর্ধান অ্যানিমেশন সমর্থন যোগ করা হয়েছে। পূর্বে প্লেসমেন্ট (পুনঃক্রম) অ্যানিমেশন সমর্থন করার জন্য Modifier.animateItemPlacement() সংশোধক যোগ করা সম্ভব ছিল। আমরা এই সংশোধকটিকে অবমূল্যায়ন করেছি এবং Modifier.animateItem() নামে একটি নতুন অ-পরীক্ষামূলক সংশোধক প্রবর্তন করেছি যা আপনাকে তিনটি অ্যানিমেশন প্রকারকে সমর্থন করতে দেয়: চেহারা (ফেড ইন), অদৃশ্য হওয়া (বিবর্ণ হওয়া) এবং পুনরায় সাজানো৷ ( Ib7d12 , b/330510929 )
  • আইটেমের উপস্থিতি এবং অন্তর্ধান অ্যানিমেশন সমর্থন LazyVerticalStaggeredGrid এবং LazyHorizontalStaggeredGrid এ যোগ করা হয়েছে। পূর্বে প্লেসমেন্ট (পুনঃক্রম) অ্যানিমেশন সমর্থন করার জন্য Modifier.animateItemPlacement() সংশোধক যোগ করা সম্ভব ছিল। আমরা এই সংশোধকটিকে অবমূল্যায়ন করেছি এবং Modifier.animateItem() নামে একটি নতুন অ-পরীক্ষামূলক সংশোধক প্রবর্তন করেছি যা আপনাকে তিনটি অ্যানিমেশন প্রকারকে সমর্থন করতে দেয়: চেহারা (ফেড ইন), অদৃশ্য হওয়া (বিবর্ণ হওয়া) এবং পুনরায় সাজানো৷ ( I69bc9 , b/330511290 )

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

  • ContextMenuColors এবং সংশ্লিষ্ট LocalContextMenuTheme ProvidableCompositionLocal যোগ করে। টেক্সট ক্ষেত্র এবং নির্বাচনযোগ্য পাঠ্যের প্রসঙ্গ মেনুর রং স্থানীয় রচনা প্রদান করে পরিবর্তন করা যেতে পারে। ( IFa154 )
  • সাধারণ স্টাইলিং ছাড়াও টেক্সট লিঙ্কগুলি চাপানো স্টেট স্টাইলিং বিকল্প পেয়েছে, হোভার করা এবং ফোকাস করা হয়েছে। ( I5f864 , b/139312671 )
  • হাতের লেখার অঙ্গভঙ্গির জন্য ViewConfiguration.HandwritingGestureLineMargin প্রবর্তন করুন। BasicTextField জন্য হাতের লেখার অঙ্গভঙ্গি সমর্থন করুন। ( Ie6e13 , b/325660505 )
  • 1.7 রিলিজের জন্য DelegatableNode.scrollIntoView সরানো হয়েছে যেহেতু আমাদের কাছে সংশ্লিষ্ট API পৃষ্ঠের বাকি অংশ স্থিতিশীল করার সময় নেই। এই ফাংশনটি 1.8 ( I6cf61 , b/333421581 , b/332900232 ) এ পুনরায় চালু করা হবে
  • লেআউট স্থানাঙ্ক অনুসন্ধান করার সময়, আপনি এখন প্যারেন্ট লেআউট দ্বারা সেট করা অফসেট বাদ দিতে excludeDirectManipulationOffset আর্গুমেন্ট ব্যবহার করতে পারেন যা Placeable.PlacementScope.withDirectManipulationPlacement ব্যবহার করে তাদের সন্তানদের রেখেছে। একইভাবে, একটি লেআউট যা তার বাচ্চাদের অবস্থান ঘন ঘন পরিবর্তন করে এখন withDirectManipulationPlacement (যেমন স্ক্রোল, ডিফল্টরূপে বাস্তবায়িত) ব্যবহার করে তাদের স্থাপন করতে পারে। এটি অ্যানিমেট করার জন্য কী অফসেট করতে হবে এবং তাদের পদ্ধতির অ্যানিমেট করার সিদ্ধান্ত নেওয়ার সময় সরাসরি কী প্রয়োগ করতে হবে তা আলাদা করার সুযোগ পেয়ে এটি approachLayout ভিত্তিক অ্যানিমেশনগুলিকে আরও স্বজ্ঞাত হতে সাহায্য করে৷ ( I60ec7 )
  • LazyStaggeredGrid এর জন্য requestScrollToItem প্রবর্তন করুন। প্রতিটি পরিমাপ-পাসের জন্য, ক্লায়েন্ট এখন requestScrollToItem কল করে কী-এর উপর ভিত্তি করে সূচক বজায় রাখা থেকে অপ্ট-আউট করতে পারে। requestScrollToItem কল না করা পর্যন্ত এটি কোনোভাবেই বিদ্যমান আচরণ পরিবর্তন করে না। ( I63983 )
  • পেজারে requestScrollToPage প্রবর্তন করুন। প্রতিটি পরিমাপ-পাসের জন্য, ক্লায়েন্ট এখন requestScrollToPage কল করে কী-এর উপর ভিত্তি করে সূচক বজায় রাখা থেকে অপ্ট-আউট করতে পারে। requestScrollToPage কল না করা পর্যন্ত এটি কোনোভাবেই বিদ্যমান আচরণ পরিবর্তন করে না। ( IC4213 )
  • LazyGrids এর জন্য requestScrollToItem চালু করা হয়েছে। প্রতিটি পরিমাপ-পাসের জন্য, ক্লায়েন্ট এখন requestScrollToItem কল করে কী-এর উপর ভিত্তি করে সূচক বজায় রাখা থেকে অপ্ট-আউট করতে পারে। requestScrollToItem কল না করা পর্যন্ত এটি কোনোভাবেই বিদ্যমান আচরণ পরিবর্তন করে না। ( I0a7a0 )
  • ClickableText অবচিত হিসাবে চিহ্নিত করা হয়েছে। পাঠ্যটিতে লিঙ্ক যুক্ত করতে, আপনার লিঙ্কের সাথে সম্পর্কিত একটি LinkAnnotation সহ একটি AnnotatedString তৈরি করুন এবং এই AnnotatedString Text রচনাযোগ্য ( I34d4b , b/323346994 ) এ পাস করুন।
  • UrlAnnotation বাতিল করা হয়েছে, পরিবর্তে LinkAnnotation.Url ব্যবহার করুন। আপনি যদি ম্যাটেরিয়াল থিমিং ব্যবহার করে থাকেন, তাহলে TextDefaults অবজেক্ট ব্যবহার করুন যাতে ম্যাটেরিয়াল থিমিং এর সাথে টীকা তৈরি করা যায় ( I8d180 , b/323346545 )
  • String.parseAsHtml নাম পরিবর্তন করে AnnotatedString.Companion.fromHtml ( I43dcd )
  • parseAsHtml পদ্ধতিতে স্টাইলিং আর্গুমেন্ট ( linkStyle , focusedLinkStyle , hoveredLinkStyle ) এবং একটি লিঙ্ক ইন্টারঅ্যাকশন লিসেনার যোগ করা হয়েছে। HTML-ট্যাগযুক্ত স্ট্রিংকে <a> ট্যাগের সাথে পার্স করার সময়, পদ্ধতিটি এই জাতীয় প্রতিটি ট্যাগের জন্য একটি LinkAnnotation.Url তৈরি করবে এবং প্রতিটি টীকাতে স্টাইলিং অবজেক্ট এবং লিঙ্ক ইন্টারঅ্যাকশন লিসেনারকে পাস করবে। ( I7c977 )
  • LinkAnnotation এখন স্টেট-ভিত্তিক স্টাইলিং আর্গুমেন্ট এবং একটি LinkInteractionListener নেয়। একটি হাইপারলিঙ্ক পেতে AnnotatedString এ এই টীকা যোগ করুন। focusedState এবং/অথবা hoveredState পাস করে আপনি লিঙ্কগুলির জন্য ভিজ্যুয়াল কনফিগারেশন নির্ধারণ করতে পারেন যখন সেগুলি ফোকাস করা হয় এবং/অথবা হোভার করা হয়। ( I81ce4 , b/139312671 )
  • দীর্ঘ স্ক্রিনশটগুলির জন্য বৈশিষ্ট্য পতাকা সরানো হয়েছে৷ ( I28648 , b/329128246 )
  • LazyColumn এখন লম্বা স্ক্রিনশটে স্টিকি হেডার সঠিকভাবে রেন্ডার করবে। ( I8d239 , b/329296635 )
  • নতুন BasicTextField সাথে প্রবর্তিত বাকী পরীক্ষামূলক APIগুলির বেশিরভাগই স্থিতিশীল। ( I714e2 )
  • BasicSecureTextFieldtextObfuscationCharacter প্যারামিটার যোগ করা হয়েছে যা বিষয়বস্তু অস্পষ্ট করার সময় কোন অক্ষর ব্যবহার করতে হবে তা নিয়ন্ত্রণ করে। ( I0588b )
  • NestedScroll উত্সগুলির বর্ধিত সংজ্ঞা যা এখন অ্যানিমেশন (সাইড ইফেক্ট) এবং মাউস হুইল এবং কীবোর্ড ( UserInput ) অন্তর্ভুক্ত করে সেই উত্সগুলির বর্ধিত সংজ্ঞার জন্য মিটমাট করতে UserInput এবং SideEffect দ্বারা ড্র্যাগ এবং ফ্লিং প্রতিস্থাপিত হচ্ছে৷ ( I40579 )
  • LocalBringIntoViewSpec প্রবর্তন করুন, একটি প্ল্যাটফর্ম নির্ভর ফোকাস স্ক্রোলিং আচরণ যা স্ক্রোলযোগ্য মডিফায়ার স্তরে প্রয়োগ করা হয়। ( I27aa5 , b/317453911 )
  • TextFieldCharSequence সরানো হয়েছে। TextFieldBuffer.originalValues TextFieldBuffer.originalText এবং TextFieldBuffer.originalSelection দিয়ে প্রতিস্থাপিত করা হয়েছে। ( I2c7d6 )
  • ImeOptions.hintLocales আর বাতিলযোগ্য নয়। আপনি যদি একটি খালি লোকেল তালিকা পাস করতে চান, তাহলে অনুগ্রহ করে LocaleList.Empty ব্যবহার করুন। ( IC5bc4 )
  • getOffsetDistanceInPagesgetOffsetFractionForPage নাম পরিবর্তন করা হয়েছে। ( IA05e2 )

বাগ ফিক্স

  • যখন InputTransformations next এর সাথে যুক্ত হয়, তখন তাদের KeyboardOptions এখন নতুন KeyboardOptions.merge পদ্ধতি ব্যবহার করে পৃথক বিকল্প দ্বারা সঠিকভাবে মার্জ করা হয়। ( IE5304 , b/295951492 )
  • AnchoredDraggableState এর targetValue এখন আর অবস্থানগত থ্রেশহোল্ড বিবেচনা করে না । এটির এখন 50% এর অন্তর্নিহিত থ্রেশহোল্ড রয়েছে, যার অর্থ দুটি অ্যাঙ্করের মধ্যবিন্দুতে targetValue পরিবর্তিত হয়। ( I82c2c )

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

  • 2টি স্ক্রোল API ( I56a75 ) পুনঃনামকরণ করা হয়েছে

সংস্করণ 1.7.0-alpha06

3 এপ্রিল, 2024

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

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

  • LazyColumn এবং LazyRow এ আইটেমের উপস্থিতি এবং অন্তর্ধান অ্যানিমেশন সমর্থন যোগ করা হয়েছে। পূর্বে প্লেসমেন্ট (পুনঃক্রম) অ্যানিমেশন সমর্থন করার জন্য Modifier.animateItemPlacement() সংশোধক যোগ করা সম্ভব ছিল। আমরা এই সংশোধকটিকে অবমূল্যায়ন করেছি এবং Modifier.animateItem() নামে একটি নতুন অ-পরীক্ষামূলক সংশোধক প্রবর্তন করেছি যা আপনাকে তিনটি অ্যানিমেশন প্রকারকে সমর্থন করতে দেয়: চেহারা (ফেড ইন), অদৃশ্য হওয়া (বিবর্ণ হওয়া) এবং পুনরায় সাজানো৷ ( I2d7f7 , b/150812265 )
  • LazyColumn/LazyRow এর ক্লায়েন্টরা এখন একটি নন-সাসপেন্ড LazyListState.requestToScroll কল করে আসন্ন পরিমাপ-পাসের কী-এর উপর ভিত্তি করে একটি সূচক বজায় রাখা থেকে অপ্ট-আউট করতে পারে। ( I98036 , b/209652366 )
  • স্টাইল করা স্ট্রিংগুলির জন্য parseAsHtml পদ্ধতি যোগ করা হয়েছে: এটি HTML ট্যাগ দ্বারা চিহ্নিত একটি স্ট্রিংকে AnnotatedString এ রূপান্তর করতে দেয়। মনে রাখবেন যে সমস্ত ট্যাগ সমর্থিত নয়, উদাহরণস্বরূপ আপনি এখনও বুলেট তালিকা প্রদর্শন করতে সক্ষম হবেন না। ( I84d3d )
  • অফিসিয়াল Android API ( ScrollCaptureCallback ) ব্যবহার করে কম্পোজ স্ক্রোল পাত্রে দীর্ঘ স্ক্রিনশটগুলির জন্য পরীক্ষামূলক সমর্থন প্রয়োগ করা হয়েছে। এই বৈশিষ্ট্যটি পরীক্ষামূলক এবং বর্তমানে সমস্ত ক্ষেত্রে সঠিকভাবে পরিচালনা নাও করতে পারে৷ যে কারণে এটি বর্তমানে ডিফল্টরূপে অক্ষম করা হয়েছে। অপ্ট-ইন করতে, ComposeFeatureFlag_LongScreenshotsEnabled পতাকাটিকে সত্যে সেট করুন৷ এই পতাকা 1.7 বিটা আগে সরানো হবে. ( I2b055 , b/329296471 )
  • GraphicsLayer দৃষ্টান্ত স্থাপন এবং রেন্ডারিংয়ে আরও নমনীয়তা প্রদান করতে নতুন GraphicsLayer API প্রবর্তন করুন এবং GraphicsLayer সংশোধক দৃষ্টান্তগুলি নির্দিষ্ট করতে কম্পোজেবল বাস্তবায়নের সাথে সমন্বয় করার প্রয়োজন ছাড়াই অন্তর্নিহিত রেন্ডারিং বৈশিষ্ট্যগুলিকে সমর্থন করুন৷

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

  • সমস্ত KeyboardOptions প্যারামিটারের এখন ডিফল্টরূপে একটি অনির্দিষ্ট মান রয়েছে। KeyboardOptions.merge পদ্ধতি যোগ করা হয়েছে।
  • KeyboardOptions.autoCorrect থেকে autoCorrectEnabled এ পুনঃনামকরণ করা হয়েছে এবং এটিকে বাতিলযোগ্য করা হয়েছে, যেখানে নাল নির্দেশ করে কোনো মান নির্দিষ্ট করা হয়নি। ( IA8ba0 , b/295951492 )
  • outOfBoundsPageCount নাম পরিবর্তন করে beyondViewportPageCount করা হয়েছে। ( I129c6 )
  • fun ClipEntry.getMetadata() val ClipEntry.clipMetadata এ পরিবর্তিত হয়েছে। ( I50155 )
  • TextFieldState.valueAsFlow() সরানো হয়েছে। snapshotFlow { state.text } , অথবা snapshotFlow { TextFieldCharSequence(state.text, state.selection) } ( I7d629 ) ব্যবহার করতে পছন্দ করুন
  • পুনর্গঠিত InputTransformation.transformInput পরামিতি। সরানো হয়েছে originalValue: TextFieldCharSequence । পরিবর্তে TextFieldBuffer এখন একই নামের সাথে এই মান বহন করে। এছাড়াও valueWithChanges: TextFieldBuffer প্যারামিটার মুছে ফেলা হয়েছে। TextFieldBuffer এখন ফাংশনের রিসিভার সুযোগ। ( I919cc )
  • BasicTextField(state) ভেরিয়েন্ট এবং BasicSecureTextField এখন সফ্টওয়্যার কীবোর্ড দ্বারা গৃহীত পদক্ষেপগুলি প্রক্রিয়া করতে KeyboardActions এর পরিবর্তে KeyboardActionHandler ব্যবহার করে। ( I58dda )
  • "জাল" টেক্সট ইনপুট ক্ষেত্রগুলিতে স্টাইলাস হস্তাক্ষর সমর্থন করার জন্য স্টাইলাস হস্তাক্ষর প্রতিনিধি API। ( I9c09c , b/327271923 )
  • showKeyboardOnFocus দেখাতে KeyboardOptions.shouldShowKeyboardOnFocus নাম পরিবর্তন করা হয়েছে। ( Ib4b7a , b/295951492 )
  • Modifier.contentReceiver থেকে hintMediaTypes প্যারামিটার সরানো হয়েছে। ডেভেলপারদের ইতিমধ্যেই প্রাপ্ত TransferableContent এর মিডিয়া টাইপ চেক করতে উৎসাহিত করা হয়েছে কারণ এটি কনফিগার করা hintMediaTypes এর সাথে বেমানান হতে পারে। ( I82f99 )
  • BasicSecureTextField এর পরামিতি পুনরায় সাজানো হয়েছে। BasicSecureTextField এর জন্য একই ডিফল্টগুলি যথাযথ রেখে সম্পূর্ণ KeyboardOptions ক্লাসের পক্ষে keyboardType এবং imeAction প্যারামিটারগুলি সরানো হয়েছে। এছাড়াও scrollState প্যারামিটার মুছে ফেলা হয়েছে। ( Ibbfa9 )
  • TextFieldState.text এর ধরন TextFieldCharSequence থেকে শুধু CharSequence এ পরিবর্তিত হয়েছে। অতএব, যোগ করা TextFieldState.selection: TextRange এবং TextFieldState.composition: TextRange? রাষ্ট্রীয় বস্তু থেকে সরাসরি বর্তমান নির্বাচন এবং রচনা মান পড়তে।
  • TextFieldState.forEachTextValue সরানো হয়েছে। ( আইডিবি২এ২ )
  • ClipboardManager.getClipMetadata এবং ClipboardManager.hasClip ফাংশন সরানো হয়েছে। বর্তমান ক্লিপ এন্ট্রির মেটাডেটা পড়তে অনুগ্রহ করে clipEntry.getMetadata() ব্যবহার করুন। এছাড়াও ClipboardManager.getClip এর ফলাফল পরীক্ষা করুন যদি এটি শূন্য হয় বা না বোঝার জন্য ক্লিপবোর্ডে বর্তমান ক্লিপ আছে কিনা। ( I50498 )
  • ClipboardManager.setClip এখন ক্লিপবোর্ড সাফ করতে সক্ষম হওয়ার জন্য নাল গ্রহণ করে। ( I7d2e9 )
  • ReceiveContentListener একটি ফাংশন ইন্টারফেসে রূপান্তরিত হয়. এছাড়াও Modifier.receiveContent ওভারলোড যা একটি ল্যাম্বডা নেয় তা সরিয়ে ফেলা হয় যেহেতু ReceiveContentListener এখন একটি ফাংশন ইন্টারফেস।
  • Modifier.receiveContent নাম পরিবর্তন করে Modifier.contentReceiver রাখা হয়েছে। ( I1e6af )
  • TransferableContent.consumeEach নাম পরিবর্তন করে TransferableContent.consume করা হয়েছে। ( I1e462 )
  • rememberTextFieldState একটি স্থিতিশীল API এ স্নাতক হয়েছে। ( I37999 )

বাগ ফিক্স

  • একটি বাগ সংশোধন করা হয়েছে যেখানে BasicTextField(state) ভেরিয়েন্ট CJK(কম্পোজিশন ভিত্তিক) কীবোর্ডের সাথে কাজ করে না। ( I54425 )
  • একটি বাগ সংশোধন করা হয়েছে যেখানে Modifier.dragAndDropTarget() Modifier.Node পুনঃব্যবহারের সাথে নির্দিষ্ট পরিস্থিতিতে পুরানো ডেটা উল্লেখ করতে পারে। ( I05bb1 )
  • একটি সাম্প্রতিক চুক্তি পরিবর্তন প্রত্যাবর্তন করা হয়েছে যেখানে AnchoredDraggableState#anchoredDrag কলগুলি একটি anchoredDrag অপারেশনের শেষে স্ন্যাপ হবে৷ ( I95715 )

সংস্করণ 1.7.0-alpha05

20 মার্চ, 2024

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

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

  • হাইপারলিঙ্ক স্টাইল করার জন্য পরীক্ষামূলক LocalTextLinkStyle কম্পোজিশন স্থানীয় সরানো হয়েছে। ( Iebfa7 )
  • onLinkClicked যুক্তি দিয়ে BasicText এর পরীক্ষামূলক ওভাররাইড সরানো হয়েছে। হাইপারলিঙ্ক সমর্থনের জন্য একটি প্রতিস্থাপন API ভবিষ্যতে অনুসরণ করবে। ( I107d5 )
  • TextFieldState এবং TextFieldBuffer এর অধীনে কোডপয়েন্ট সম্পর্কিত পদ্ধতি এবং বৈশিষ্ট্যগুলি সরানো হয়েছে। এছাড়াও অবশিষ্ট নির্বাচন এবং রচনা সম্পর্কিত API থেকে inChars প্রত্যয়গুলি সরানো হয়েছে। ( Ief7ce )
  • AnchoredDraggable এর currentValue এখন একটি অ্যাঙ্কর পয়েন্টের মধ্য দিয়ে যাওয়ার সময় আপডেট হবে। পূর্ববর্তী currentValue শব্দার্থবিদ্যা পেতে settledValue ব্যবহার করুন, শুধুমাত্র একটি অ্যাঙ্করে সেটেল করার সময় আপডেট করা হয়। অগ্রগতি এখন একটি বৈশিষ্ট্যের পরিবর্তে একটি ফাংশন (একটি শুরু এবং শেষ বিন্দু প্রয়োজন) হিসাবে উন্মুক্ত করা হয়েছে। ( Ibe6e8 , b/318707189 , b/298271489 , b/294991954 )
  • BasicTextField(state) , TextFieldState , InputTransformation , OutputTransformation , TextFieldLineLimits , TextFieldDecorator স্থিতিশীল হতে স্নাতক হয়েছে৷ ( I9582b )
  • নিম্ন-স্তরের IME-সম্পর্কিত পরীক্ষা এবং অন্যান্য নিম্ন-স্তরের IME ব্যবহারের ক্ষেত্রে লিখতে সাহায্য করার জন্য InterceptPlatformTextInput চালু করা হয়েছে। PlatformTextInputTestOverride বাতিল করা হয়েছে। ( I862ed , b/322680547 )
  • restrictedConstraints() দুটি পদ্ধতিতে বিভক্ত করুন: fitPrioritizingWidth() এবং fitPrioritizingHeight() ( I6d7fd )

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

  • সর্বশেষ স্ক্রোল অ্যাকশনের জন্য স্ক্রোলের দিক পরীক্ষা করতে 2টি নতুন API isLastScrollForward / isLastScrollBackward যোগ করা হয়েছে, এখনও স্ক্রোল অ্যাকশন না থাকলে মিথ্যা ফেরত দিন। ( I63a0e )

সংস্করণ 1.7.0-alpha04

6 মার্চ, 2024

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

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

  • অ্যান্ড্রয়েড ইউ ( I002e4 ) এর পরে ডিভাইসগুলিতে স্টাইলাস হস্তাক্ষর বৈশিষ্ট্য সমর্থন করে
  • একটি পছন্দের ভাষা প্রিসেট করতে নির্দিষ্ট লোকেল সহ IME গুলিকে ইঙ্গিত করার ক্ষমতা সহ TextFields প্রদান করতে KeyboardOptionshintLocales যোগ করা হয়েছে৷ ( Id18c2 )
  • এক্সপেরিমেন্টাল BasicTextField2 এবং BasicSecureTextField ওভারলোডগুলি সরানো হয়েছে যা value: String এবং onValueChange: () -> String প্যারামিটার৷ ( I568b4 )
  • InputTransformation এ একটি ঐচ্ছিক applySemantics ফাংশন যোগ করুন যাতে এটি প্রয়োগ করা হয়েছে BasicTextField2 এর শব্দার্থবিদ্যাকে প্রভাবিত করতে। ( I74a2f , b/170648072 )
  • এই CL-তে আমরা GetScrollViewportLength শব্দার্থিক ক্রিয়া যুক্ত করছি যাতে আমরা a11y সিস্টেমে কম্পোজে স্ক্রোল করা উপাদানগুলির সম্পর্কে তথ্য পাইপ করতে পারি। এই CL ফাউন্ডেশন স্ক্রোলযোগ্য তালিকায় উল্লিখিত সম্পত্তির ব্যবহারও প্রযোজ্য। ( IC5fa2 )
  • BasicTextField2 নাম পরিবর্তন করে BasicTextField রাখা হয়েছে। ( IE5713 )
  • FocusRequester.createRefs এখন স্থিতিশীল ( I4d92c , b/261436820 )
  • সংশোধক নোডগুলিকে সরাসরি scrollIntoView অনুরোধ করার অনুমতি দেওয়ার জন্য DelegatableNode.scrollIntoView() চালু করা হয়েছে। ( I2b3b7 , b/299939840 )
  • সংশোধক নোডগুলিকে স্থানীয় কম্পোজিশন না পড়ে বর্তমান অ্যান্ড্রয়েড View পেতে অনুমতি দেওয়ার জন্য DelegatableNode.requireView() চালু করা হয়েছে৷ ( I40768 )
  • প্রাসঙ্গিক ফ্লো রো স্কোপ এবং কনটেক্সচুয়াল ফ্লো কলাম স্কোপের মধ্যে প্রাসঙ্গিক লেআউট তথ্য প্রবর্তন, নির্দিষ্ট অবস্থানে থাকার জন্য রেখা সূচক, অবস্থান এবং সর্বোচ্চ প্রস্থ এবং উচ্চতার সীমাবদ্ধতা রয়েছে। সর্বাধিক প্রস্থ/উচ্চতা অতিক্রম করা আইটেমগুলি পরবর্তী লাইনে প্রবাহিত হতে পারে বা ওভারফ্লো সেটিংসের উপর ভিত্তি করে বাদ দেওয়া যেতে পারে। ( Id13f8 , b/292114798 )

বাগ ফিক্স

  • একটি বাগ সংশোধন করা হয়েছে যেখানে নির্দিষ্ট পরিস্থিতিতে TextField টগলিং enabled বা readOnly অ্যাট্রিবিউট ক্র্যাশের কারণ হবে৷ ( Iae17b )

সংস্করণ 1.7.0-alpha03

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

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

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

  • একটি Modifier.Node এর বর্তমান LayoutCoordinates পেতে একটি উপায় হিসাবে DelegatableNode.requireLayoutCoordinates() চালু করা হয়েছে onPlaced ওভাররাইড করার প্রয়োজন ছাড়াই এবং স্থানাঙ্কগুলিকে একটি সম্পত্তিতে সঞ্চয় করার প্রয়োজন নেই৷ ( IA8657 )
  • একটি Modifier.Node পাওয়ার উপায় হিসাবে DelegatableNode.currentLayoutCoordinates প্রবর্তন করা হয়েছে। onPlaced ওভাররাইড করার প্রয়োজন ছাড়াই নোডের বর্তমান LayoutCoordinates নিজে একটি সম্পত্তিতে স্থানাঙ্কগুলি সংরক্ষণ করা হয়েছে। ( আইয়াইবা )
  • AnchoredDraggable দ্বারা ব্যবহৃত DraggableAnchors পারফরম্যান্স অপ্টিমাইজেশন। ( I89cff )
  • androidx.compose.foundation.text2 প্যাকেজের অধীনে BasicTextField2 এবং সম্পর্কিত APIগুলিকে androidx.compose.foundation.text এ সরানো হয়েছে। ( I9f635 )
  • BasicTextField2 আর CodepointTransformation প্যারামিটার গ্রহণ করে না। BasicSecureTextField বা OutputTransformation ব্যবহার করুন। ( Id34ff )
  • শুধুমাত্র দুটি AnnotatedStrings এর টীকা তুলনা করার পদ্ধতি যোগ করা হয়েছে। ( I32659 )
  • MaxLines এবং Overflow সহ ContextualFlowRow এবং বর্ধিত FlowRow / Column সাথে পরিচয় করিয়ে দেওয়া হচ্ছে। আমরা ContextualFlowRow এবং ContextualFlowColumn এর আত্মপ্রকাশের পাশাপাশি, এখন maxLines এবং ওভারফ্লো সমর্থন সমন্বিত পরীক্ষামূলক FlowRow এবং FlowColumn এ বর্ধিতকরণ ঘোষণা করতে পেরে উত্তেজিত। এই আপডেটটি পারফরম্যান্সের সর্বোত্তম উপাদান প্রদান করার জন্য ডিজাইন করা হয়েছে, যেখানে ContextualFlow* একটি ছোট maxLines কনফিগারেশন এবং গতিশীল +N আরও বোতাম ব্যবহার করে প্রচুর সংখ্যক আইটেমের জন্য উপযুক্ত, এবং FlowRow এবং FlowColumn অল্প সংখ্যক আইটেমের জন্য উপযুক্ত, কম 100 টিরও বেশি আইটেম। গুরুত্বপূর্ণ: FlowRow বা FlowColumn এ বিদ্যমান আচরণ বজায় রাখার জন্য যেখানে সমস্ত আইটেম তৈরি করা হয়েছে তা নির্বিশেষে তারা ক্রস অক্ষের সর্বোচ্চ মাপসই করে, overflow সেট করুন FlowRowOverflow.Visible বা FlowColumnOverflow.Visible .প্রাথমিককরণের সময় দৃশ্যমান। ক্রিয়াশীল এই নতুন বৈশিষ্ট্যগুলির উদাহরণগুলির জন্য ContextualFlowRowSample এবং FlowRowSample অন্বেষণ করুন৷ ( Ib9135 , b/293577082 )

বাগ ফিক্স

  • কার্সার অ্যানিমেশন আর অন এবং অফ স্টেটের মধ্যে ফ্রেমের অনুরোধ করে না। ( IA2253 )
  • KeyboardOptions 'অপ্রচলিত কপি কনস্ট্রাক্টর এখন সঠিকভাবে সমস্ত বৈশিষ্ট্য কপি করবে। ( if12de )

সংস্করণ 1.7.0-alpha02

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

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

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

  • HorizontalPager , VerticalPager এবং PagerState স্থিতিশীল হিসাবে উন্নীত হয়৷ ( I67660 , b/316966909 )
  • LocalTextLinkStyle কম্পোজিশন স্থানীয় যোগ করা হয়েছে যা অ্যাপ জুড়ে টেক্সটে লিঙ্কের স্টাইল পরিবর্তন করতে দেয়। আপনি যদি অ্যাপে আপনার নিজস্ব থিম ব্যবহার করেন, তাহলে আপনার থিমিং অনুসারে এই রচনাটি স্থানীয়ভাবে সেট করা উচিত। উপাদান থিম ব্যবহার করার সময় ডিফল্টভাবে লিঙ্কের রঙ উপাদানের প্রাথমিক রঙে সেট করা হবে। ( I7eb10 )
  • receiveContent মডিফায়ার চালু করা হয়েছে যা ডেভেলপারদের জেটপ্যাক কম্পোজে সমৃদ্ধ কন্টেন্ট পাওয়ার উপায় প্রদান করে।
  • receiveContent সফ্টওয়্যার কীবোর্ড দ্বারা বা ক্লিপবোর্ড পেস্ট অ্যাকশনের মাধ্যমে প্রদত্ত সমৃদ্ধ সামগ্রী গ্রহণ করতে BasicTextField2 এর সাথে একীভূত হয়। ( I81b72 )
  • এই পরিবর্তনে আমরা অন্যান্য ব্যবহারের ক্ষেত্রে আনলক করতে এবং আরও বেশি নমনীয়তা প্রদান করতে পেজারে SnapFlingBehavior TargetedFlingBehavior এর সাথে প্রতিস্থাপন করছি। ( I762ea )
  • এই পরিবর্তনে আমরা স্ন্যাপিং এপিআইগুলিকে স্থিতিশীল করে তুলছি। আমরা কিছু টেস্টিং কোডও পরিষ্কার করছি এবং Snapping-এ আরও নমুনা যোগ করছি। ( Id8da9 )
  • TargetedFlingBehavior প্রবর্তন করুন, একটি FlingBehavior যা চলমান অ্যানিমেশনের অবস্থা এবং এটির টার্গেট স্ক্রোল অফসেট সম্পর্কে তথ্য প্রচারের অনুমতি দেয়। ( I6a207 )

বাগ ফিক্স

  • BasicTextField2 এখন টাইপ করার সময় কার্সারটিকে দৃশ্যের বাইরে রাখে বা ইনপুটের কারণে দৃশ্যের বাইরে চলে যায়। ( Ieb856 , b/237190748 )

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

  • LazyLists এর প্রিফেচ আচরণ কনফিগার করার জন্য একটি পরীক্ষামূলক API যোগ করে। ( I022a4 )

সংস্করণ 1.7.0-alpha01

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

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

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

  • একটি নতুন Indication API যোগ করা হয়েছে, IndicationNodeFactory । এটি পূর্ববর্তী (এখন অবচয়) rememberUpdatedInstance API-এর তুলনায় আরও বেশি পারফরম্যান্ট Indication বাস্তবায়নের দিকে নিয়ে যায়। মাইগ্রেশন সংক্রান্ত তথ্যের জন্য, developer.android.com দেখুন।
  • clickable / combinedClickable / selectable / toggleable এখন একটি বাতিলযোগ্য MutableInteractionSource প্যারামিটার গ্রহণ করে। যদি নাল থাকে, এবং প্রদত্ত Indication একটি IndicationNodeFactory হয়, তাহলে Indication অলসভাবে তৈরি করা যেতে পারে যখন প্রয়োজন হয়, যা কর্মক্ষমতা উন্নত করে। আপনি যদি MutableInteractionSource উত্থাপন না করেন এবং ব্যবহার না করেন, তাহলে নাল পাস করার পরামর্শ দেওয়া হয়।

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

  • AnchoredDraggableDecayAnimation প্রবর্তন করুন, এই পরিবর্তনটি AnchoredDraggable এ একটি decayAnimationSpec প্যারামিটার যোগ করে যা অ্যাঙ্করগুলির একটিতে সেটেল করার সময় ক্ষয় অ্যানিমেশন ব্যবহার করার অনুমতি দেয়। পরিবর্তনের মধ্যে রয়েছে বিদ্যমান animationSpec নাম পরিবর্তন করে snapAnimationSpec এ প্রতিটি স্পেকের ব্যবহারের ক্ষেত্রে বোঝার জন্য।
  • BasicTextField2 পরীক্ষামূলক ব্যবহারের জন্য উপলব্ধ। এটি BasicTextField সাথে মোটামুটি বৈশিষ্ট্যের সমতা থাকা উচিত এবং আচরণ উত্পাদন-প্রস্তুত হওয়া উচিত। যাইহোক, API আপাতত পরীক্ষামূলক রয়ে গেছে। স্থিতিশীল করার আগে, এটির নাম পরিবর্তন করে BasicTextField করা হবে এবং একই প্যাকেজে সরানো হবে।
  • BasicTextField2 এর জন্য OutputTransformation API-এর প্রথম খসড়া প্রবর্তন করেছে। এই API পুরানো BasicTextField VisualTransformation বেশিরভাগ ব্যবহারের ক্ষেত্রে প্রতিস্থাপন করে। তবে এটি এখনও সম্পূর্ণ হয়নি, এবং কিছু জিনিস সঠিকভাবে কাজ করবে না, তবে আমরা আপনার ব্যবহারের ক্ষেত্রে API ব্যবহারযোগ্যতার বিষয়ে কোনো প্রতিক্রিয়ার প্রশংসা করব। ( aosp/2708848 )
  • চালু করা হয়েছে LinkAnnotation যা টেক্সটে লিঙ্ক এবং ক্লিকযোগ্য যোগ করার অনুমতি দেয়। লিঙ্ক বৈশিষ্ট্য এখনও সম্পূর্ণ হয়নি এবং আরো API পরিবর্তন আসছে.
  • receiveContent মডিফায়ার চালু করা হয়েছে যা ডেভেলপারদের জেটপ্যাক কম্পোজে সমৃদ্ধ কন্টেন্ট পাওয়ার উপায় প্রদান করে।
  • receiveContent সফ্টওয়্যার কীবোর্ড দ্বারা প্রদত্ত সমৃদ্ধ সামগ্রী গ্রহণ করতে বা ক্লিপবোর্ড থেকে পেস্টের মাধ্যমে BasicTextField2 এর সাথে একীভূত হয়।
  • KeyboardOptions.shouldShowKeyboardOnFocus আপনাকে ফোকাসে একটি সফ্টওয়্যার কীবোর্ডের অনুরোধ করার জন্য BasicTextField এর ডিফল্ট আচরণ নিষ্ক্রিয় করতে দেয়।
  • TextInputService এবং LocalTextInputService এখন অবহেলিত। পরিবর্তে প্ল্যাটফর্ম IME API-এর সাথে সরাসরি একীভূত করতে PlatformTextInputModifierNode ব্যবহার করুন। ( aosp/2862698 )
  • Indication#rememberUpdatedInstance অবমুক্ত করা হয়েছে। এটি একটি উচ্চ অনিবার্য কর্মক্ষমতা শাস্তি আছে, এবং অন্যান্য অপ্টিমাইজেশান বাধা দেয়. পরিবর্তে, আপনার নতুন IndicationNodeFactory API ব্যবহার করা উচিত।

বাগ ফিক্স

  • VisualTransformation পাস হলে BasicTextField এখন অফসেট ম্যাপিংয়ের একটি ছোট নির্বাচন প্রাক-প্রমাণ করবে। এটি সাধারণ কোডিং ত্রুটিগুলি ধরতে সাহায্য করে যা পরবর্তী পরিমাপ বা ড্র পাসে অপুনরুদ্ধারযোগ্য ব্যতিক্রমের দিকে নিয়ে যায়। কম্পোজিশনের সময় থ্রো করার মাধ্যমে, ডেভেলপাররা প্রোডাকশন ক্র্যাশ এড়াতে সাহায্য করে ডেভেলপমেন্টের সময় এই ত্রুটিগুলি দেখতে পাবেন। ( I0fd42 )
  • যদি আপনি একটি অবৈধ সূচক ( b/316401857 ) এর জন্য একটি অবৈধ সূচক ফেরত দেন তাহলে VisualTransformation নিক্ষেপ করবে না

সংস্করণ 1.6

সংস্করণ 1.6.8

জুন 12, 2024

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

সংস্করণ 1.6.7

1 মে, 2024

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

সংস্করণ 1.6.6

এপ্রিল 17, 2024

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

বাগ ফিক্স

  • একটি বাগ সংশোধন করা হয়েছে যেখানে নির্দিষ্ট পরিস্থিতিতে TextField টগলিং enabled বা readOnly অ্যাট্রিবিউট ক্র্যাশের কারণ হবে৷ ( Iae17b )

সংস্করণ 1.6.5

3 এপ্রিল, 2024

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

বাগ ফিক্স

  • সারি/কলামে হার্ড-টু-প্রোডাক্স বাগগুলিতে ডিবাগিং লগ যুক্ত করে: ( বি/300280216 এবং বি/297974033 )

সংস্করণ 1.6.4

20 মার্চ, 2024

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

বাগ ফিক্স

  • একটি দীর্ঘ-প্রেস-তারপর-ড্রাগ নির্বাচনের অঙ্গভঙ্গি যা টেক্সটের লেআউট সীমা থেকে ড্রাগের প্রথম ফ্রেমের বাইরে চলে যায় আর ক্র্যাশ হয় না। ( আইসিডিএফ 90 , বি/325307463 )

সংস্করণ 1.6.3

6 মার্চ, 2024

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

সংস্করণ 1.6.2

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

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

বাগ ফিক্স

  • সঠিকভাবে পুনরায় সেট না করে AnimateContentSize করুন। ( I07051 )
  • সমস্যাটি সমাধান করুন যেখানে পাঠ্যের intrinsicHeight কিছু পরিস্থিতিতে অতিরিক্ত ক্যাশে করা হবে। ( 3 সিডি 398 , বি/217910352 )

সংস্করণ 1.6.1

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

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

বাগ ফিক্স

  • সীমা ছাড়িয়ে স্ক্রোল করা হলে স্তম্ভিত গ্রিড পরিমাপ ঠিক করুন। ( বিএফএফসি 39 )
  • বড় মাত্রা সহ লেআউটের জন্য চেক যুক্ত করুন। ( E74AF5 )
  • স্তম্ভিত গ্রিডের শুরুতে 0-আকারের আইটেমগুলির স্থান নির্ধারণ করুন। ( 785F94 )
  • অনফোরগটেন হিসাবে একই ক্রমে অনরিলিজ কলব্যাককে কল করুন। ( 31ce3b )

সংস্করণ 1.6.0

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

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

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

  • নতুন মডিফায়ার Modifier.anchoredDraggable । এই সংশোধকটি Modifier.swipeable প্রতিস্থাপনের উদ্দেশ্যে। এটি কীভাবে ব্যবহার করবেন তা শিখুন এবং মাইগ্রেশন গাইডে Modifier.swipeable থেকে মাইগ্রেট করুন।
  • অ্যাপ্লিকেশন এবং উপাদানগুলির মধ্যে টেনে আনুন এবং ড্রপ কার্যকারিতা যুক্ত করা হয়েছে। শুরু করার জন্য DragAndDropTarget , Modifier.dragAndDropSource এবং অন্যান্য এপিআইগুলি দেখুন
  • Modifier.draggable2D হ'ল নতুন মডিফায়ার যা সহজ 2D টেনে আনার সমর্থন দেয়। নমুনা দেখুন।
  • AndroidExternalSurface এবং AndroidEmbeddedExternalSurface কমপোজে পৃষ্ঠ-চালিত উপাদানগুলি যুক্ত করা আরও সহজ করার জন্য যুক্ত করা হয়েছে
  • Pager এবং snapFlingBehaviour বিভিন্ন এপিআই পরিবর্তন এবং উন্নতি
  • বিভিন্ন ফোকাস, পাঠ্য এবং পোকামাকড় এপিআইগুলিকে স্থিতিশীল এপিআইগুলিতে প্রচার করা হয়েছে

সংস্করণ 1.6.0-rc01

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

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

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

  • DragAndDropTarget() এক্সটেনশন কনস্ট্রাক্টর সরানো হয়েছে। object: DragAndDropTarget {} ( I32318 )

সংস্করণ 1.6.0-beta03

13 ডিসেম্বর, 2023

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

বাগ ফিক্স

  • অসীম সীমাবদ্ধতার সাথে পরিমাপ করা খুব বড় পাঠ্যকে প্রভাবিত করে এমন ক্রাশ ঠিক করুন। ( আই 1 এ 7 ডিএফ , বি/312294386 )
  • PlatformImeOptions এখন ইন্টারফেসের পরিবর্তে একটি কংক্রিট শ্রেণি। ( If40a4 )

সংস্করণ 1.6.0-beta02

নভেম্বর 29, 2023

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

বাগ ফিক্স

  • কেবল রিলেআউট-স্ক্রোলের পরে আপডেট না করা canScroll জন্য ঠিক করুন। ( I60a86 )
  • Modifier.animateItemPlacement() জন্য ঠিক করুন LookaheadScope ( I3a2b7 )

সংস্করণ 1.6.0-beta01

15 নভেম্বর, 2023

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

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

  • DragAndDropTarget মডিফায়ার এখন গ্রহণকারী DragAndDropTarget স্পষ্টভাবে গ্রহণ করে এবং একটি ড্রাগ এবং ড্রপ সেশনটি বেছে নেওয়ার জন্য একটি ল্যাম্বডা রয়েছে। DragAndDropModifierNode জন্য এখন দুটি কারখানার ফাংশন রয়েছে। একটি স্থানান্তর গ্রহণের জন্য একটি এবং একটি ডেটা স্থানান্তর করার জন্য ( i69481 )
  • ফ্লোট হিসাবে প্রতিনিধিত্ব করার জন্য আপডেট করা maximumFlingVelocitymaximumFlingVelocity unity ক্য সম্পর্কে আরও স্পষ্ট হতে আপডেট করা ডকুমেন্টেশন। ( I8adc7 )
  • DragAndDropModifierNode কারখানায় onDragAndDropStart নামকরণ করা হয়েছে acceptDragAndDropTransfer

    একটি ড্র্যাগ এবং ড্রপ সেশন থেকে গ্রহণ করার জন্য dragAndDropTarget Modifier acceptsDragAndDropTransfer যুক্ত করা হয়েছে। এই ল্যাম্বদা একটি ড্র্যাগ এবং ড্রপ সেশনে আগ্রহী হলে একটি কার্যকর DragAndDropTarget ফেরত দেয়। ড্র্যাগ ইভেন্টগুলি প্রক্রিয়াজাতকরণের জন্য অন্যান্য ল্যাম্বডাস এটি দ্বারা প্রতিস্থাপন করা হয়েছে।

    ড্র্যাগ এবং ড্রপ সেশনগুলি ( আইইবিএফ 3 এ ) থেকে গ্রহণের জন্য একটি DragAndDropTarget কারখানা ফাংশন যুক্ত করা হয়েছে

  • AnchoredDraggable startDragImmediately প্রকাশ করা এটি ব্যবহার করার সময় টেনে আনার অঙ্গভঙ্গিগুলি সনাক্ত করার জন্য নিয়ন্ত্রণ দেয়। যখন উইজেটটি কোনও লক্ষ্য নোঙ্গরে অ্যানিমেট করা হয় তখন এটি সেট করা দরকারী। নমুনা দেখুন। ( আই 6 ডি 13 , বি/285139987 )

  • ফাউন্ডেশন টুলটিপ এপিআইগুলি এখন @ExperimentalFoundationApi ( আই 30 বি 0 বি )

  • DragAndDropInfo সরানো হয়েছে টাইপ DragAndDropModifierNode.drag DrawScope transferData

    DragAndDropTarget একক বিমূর্ত পদ্ধতি হওয়ার পরিবর্তে নির্দিষ্ট ড্রাগ এবং ড্রপ ইভেন্টগুলির জন্য পদ্ধতি রয়েছে

    DragAndDropModifierNode জন্য কারখানার ফাংশনে onDragAndDropEvent onDragAndDropStart নামকরণ করা হয়েছে আরও ভালভাবে যোগাযোগ করার জন্য যে প্রদত্ত DragAndDropTarget কেবলমাত্র প্রদত্ত ড্র্যাগ এবং ড্রপ সেশনের জন্য বৈধ, কেবলমাত্র

    DragAndDropEventType সরানো হয়েছে ( i645b1 )

  • PlatformTextInputModifierNode.runTextInputSession establishTextInputSession নামকরণ করা হয়েছে। ( I03cd0 )

  • TextSubstitution দ্বারা OriginalText প্রতিস্থাপন করুন। ( Ifa5a8 )

  • PlatformTextInputModifierNode.textInputSession runTextInputSession নামকরণ করা হয়েছে। ( Ie9c6b )

  • ভবিষ্যতে পুনরায় ব্যবহার করার জন্য ধরে রাখা SubcomposeLayout বাচ্চারা (এবং এটির উপর ভিত্তি করে LazyColumn মতো লেআউটগুলি) নিষ্ক্রিয় বলে বিবেচিত হয়। এই জাতীয় নোডগুলি পরীক্ষা করার জন্য নতুন assertIsDeactivated() টেস্ট এপিআই চালু করা হয়েছিল। পরীক্ষার বাকি এপিআইগুলি ডিফল্টরূপে নিষ্ক্রিয় নোডগুলি ফিল্টার করবে। ( I2EF84 , ​​খ/187188981 )

  • Modifier.magnifier clippingEnabled প্যারামিটারটির নামকরণ করা হয়েছে clip

  • Modifier.magnifier এর magnifierCenter প্যারামিটার.ম্যাগনিফায়ারকে একই ডিফল্ট আচরণ সংরক্ষণ করা বাতিল করা হয়। ( I6aa66 )

  • মেটেরিয়াল SwipeToReveal এপিআই (কার্ড এবং চিপগুলির জন্য) এখন স্লট ভিত্তিক এপিআই (কমপোজ দ্বারা প্রস্তাবিত হিসাবে) উপর নির্ভর করে সেই স্লটগুলি তৈরি করার জন্য ডেটা ক্লাস ভিত্তিক দৃষ্টান্তের পরিবর্তে। এটি একটি ব্রেকিং পরিবর্তন, দয়া করে নতুন এপিআই কীভাবে ব্যবহার করবেন সে সম্পর্কে উদাহরণগুলির জন্য ডেমো এবং নমুনা কোডটি দেখুন। ( Ia8943 )

বাগ ফিক্স

  • PageSize.Fixed জন্য সমান এবং হ্যাশকোড বাস্তবায়ন করুন। ( Ie3ede , খ/300134276 )
  • এমন একটি বাগ স্থির করে যা BasicText লেআউটটি সঙ্কুচিত না হয়ে যায় যখন minWidth পরিবর্তিত হয় এবং minWidth প্রাথমিক পরিমাপের সীমাবদ্ধতা maxWidth ( আইডিবি 19 সি ) এর চেয়ে কম
  • ArcLine সুইপ গ্রেডিয়েন্টের জন্য রেন্ডারার সমর্থন যুক্ত করুন। ( I4d5bb )
  • উইন্ডো ইনসেট পরিবর্তনের সাথে বাইনারি সামঞ্জস্যতার সমস্যাটি ঠিক করুন ( আইইইই 695 )
  • মাইক্রোব্যাঞ্চমার্কগুলি এটি ছাড়া আরও ভাল পারফরম্যান্স দেখায় বলে মেটেরিয়াল 3 চিপ/বোতামের জন্য উপাদান কোর স্তর সরান। ( I55555 )

সংস্করণ 1.6.0-alpha08

18 অক্টোবর, 2023

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

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

  • Modifier.draggable2D হ'ল নতুন মডিফায়ার যা সহজ 2D টেনে আনার সমর্থন দেয়। নমুনা দেখুন ( ID95F5 , বি/214412658 )

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

  • Modifier.dragAndDrawSource onDrawDragShadow লাম্বদাটির নামকরণ করা হয়েছে drawDragDecoration এবং DragAndDropInfo আকারের প্যারামিটারটি dragDecorationSize নামকরণ করা হয়েছে। ( ID0E30 , খ/303904810 )
  • BasicTextField2 2 এর decorationBox প্যারামিটারটির নামকরণ করা হয়েছে decorator । এর ধরণটিও একটি সমতুল্য মজাদার ইন্টারফেস TextFieldDecorator পরিবর্তিত হয়েছে। ( আই 23 সি 1 সি )

বাগ ফিক্স

  • onValueChange প্রয়োজনীয়তা সম্পর্কিত BasicTextField উন্নত ডকুমেন্টেশন। ( I90fc9 , বি/160257648 )

সংস্করণ 1.6.0-alpha07

4 অক্টোবর, 2023

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

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

  • কাস্টম পাঠ্য সম্পাদকদের জন্য পরীক্ষা লেখার জন্য PlatformTextInputMethodTestOverride প্রবর্তিত। ( আইডি 159 বি )
  • AndroidExternalSurface GraphicsSurface নামকরণ করা হয়েছে ( আই 11680 )
  • অ-লিনিয়ার ফন্ট স্কেলিং অক্ষম করতে অস্থায়ী পতাকাটি DisableNonLinearFontScalingInCompose আপনার যদি সেগুলি পরিষ্কার করার জন্য সময় প্রয়োজন হয় তবে আপনার পরীক্ষাগুলিতে DisableNonLinearFontScalingInCompose = true সেট করুন। এই পতাকাটি রচনা 1.6.0-BETA01 এ সরানো হবে। ( আইসি 9486 )
  • ColorList এবং ColorSet সংগ্রহগুলি যুক্ত করা হয়েছে যা বরাদ্দ এড়ায়। ( I744 বিডি )
  • এই পরিবর্তনটি shortSnapVelocityThreshold সরিয়ে দেয় যা SnapLayoutInfoProvider বাস্তবায়নের বাস্তবায়নের বিশদ হিসাবে রূপান্তরিত হয়েছে। ( I65f6d )
  • ড্র্যাগ এবং ড্রপ সেশনগুলি শুরু করার জন্য dragAndDropSource মডিফায়ার যুক্ত করে এবং ড্র্যাগ এবং ড্রপ সেশনগুলি থেকে প্রাপ্তির জন্য dragAndDropTarget মডিফায়ার ( আইবি 7828 , বি/286038936 )
  • SnapPositionInLayout ডকুমেন্টেশন এবং অবস্থান পদ্ধতি আপডেট করুন। SnapPositionInLayout পজিশন পদ্ধতিতে সামগ্রী প্যাডিংগুলি পরিচয় করিয়ে দিন। ( ID7938 , খ/300116110 )
  • TextFieldState UndoState যুক্ত করা হয়েছে যা ব্যবহারকারীর দ্বারা করা পরিবর্তনগুলি পূর্বাবস্থায়/পুনরায় করার ক্ষমতা সরবরাহ করে। ( আইসিসি 024 )

বাগ ফিক্স

সংস্করণ 1.6.0-alpha06

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

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

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

  • SurfaceView এবং TextureView: GraphicsSurface() এবং EmbeddedGraphicsSurface() । এটি একটি পরীক্ষামূলক এপিআই এবং এটি পরিবর্তন এবং পরিবর্তনের সাপেক্ষে। ( I9ddb2 )
  • Modifier.magnifier() এখন একটি স্থিতিশীল এপিআই। এর মধ্যে সংশোধক নিজেই ইনলাইন প্যারামিটারগুলির পক্ষে MagnifierStyle অপসারণ অন্তর্ভুক্ত। ( I83bec , খ/298381260 , বি/262367109 , বি/261438887 )

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

  • ScrollScope updateCurrentPage এবং updateTargetPage প্রবর্তিত, এটি PagerState.scroll মাধ্যমে অ্যানিমেটেড স্ক্রোলের কাস্টমাইজেশনের অনুমতি দেওয়ার জন্য প্রয়োজনীয় শেষ টুকরা। ( I9cad5 , খ/267744105 , বি/243786897 )
  • SnapFlingBehavior থেকে ঘনত্ব সরান। SnapLayoutInfoProvider সমস্ত বাস্তবায়নের ইতিমধ্যে ঘনত্ব অ্যাক্সেস করার একটি উপায় রয়েছে, রিসিভার স্কোপটি সরানো যেতে পারে যা SnapFlingBehavior এবং SnapLayoutInfoProviders উভয়েরই কম জটিল বাস্তবায়নের দিকে পরিচালিত করবে। ( I153c3 )
  • আরও সংশোধক স্থিতিশীল হিসাবে চিহ্নিত। ( I56af1 , খ/298046462 )
  • SnapLayoutInfoProvider থেকে SnapStepSize সরানো হয়েছে। গণনাটি লেআউট তথ্য ব্যবহার করে করা উচিত এবং অ্যাপ্রোচ বা অফসেটগুলি স্ন্যাপিংয়ের মাধ্যমে সরবরাহ করা উচিত। ( আইএফ 320 সি)

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

  • কমপোজ এখন আরও ভাল পঠনযোগ্যতা এবং অ্যাক্সেসযোগ্যতার জন্য অ-রৈখিক ফন্ট স্কেলিং ব্যবহার করে। যখন ফন্ট স্কেল> 100% সিস্টেম সেটিংসে, ছোট পাঠ্য সাধারণত আকারে বৃদ্ধি পাবে তবে ইতিমধ্যে-বৃহত্তর পাঠ্যটি কেবল কিছুটা বাড়বে। এছাড়াও, এসপিতে সংজ্ঞায়িত লাইন উচ্চতাগুলি স্বয়ংক্রিয়ভাবে 100% স্কেল উদ্দেশ্যযুক্ত উচ্চতার সাথে সমানুপাতিক থাকার জন্য সামঞ্জস্য করবে। আরও তথ্যের জন্য ফন্ট স্কেলিং সেরা অনুশীলনগুলি দেখুন। ( আই 11518 )

বাগ ফিক্স

সংস্করণ 1.6.0-alpha05

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

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

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

  • BasicSecureTextField জন্য ওভারলোডগুলি যুক্ত করুন যা বর্তমান BasicTextField এপিআইয়ের মতোই সেই মানটি পরিবর্তন করতে একটি অপরিবর্তনীয় মান এবং একটি কলব্যাক গ্রহণ করে। ( আইএ 4882 )
  • এপিআই 33 এবং তারও বেশি উপরে ভাসমান উইন্ডোগুলি পরিষ্কার রাখতে পছন্দ করে হিসাবে চিহ্নিত করতে Modifier.preferKeepClear() যুক্ত করুন। ( আইবি 51 ডি 5 , বি/297260115 )
  • ScrollView এবং RecyclerView মতো ভিউ উপাদানগুলিতে ঝাঁকুনির বেগ ভিউ ViewConfiguration.ScaledMaximumFlingVelocity ক্যাপড করা হয় C রচনাটি এখন maximumFlingVelocity নিজস্ব সংস্করণ রয়েছে যা এখন Draggable জন্য প্রযোজ্য। ( আইবিএফ 974 )
  • অবনমিত Pager এবং PagerState ওভারলোডগুলি সরানো হয়েছে। ( Iea07e )
  • compose.foundation BasicTooltipBox TooltipBox RichTooltipBox PlainTooltip PlainTooltipBox RichTooltip ( I79e1d )

সংস্করণ 1.6.0-alpha04

23 আগস্ট, 2023

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

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

  • লাইফসাইকেল পরিচালনা এবং সাবকোপজিশনগুলির পুনরায় ব্যবহারের জন্য ReusableComposition ইন্টারফেস যুক্ত করুন। ( I812d1 , খ/252846775 )
  • Modifier.focusGroup স্থিতিশীল এপিআইগুলিতে পদোন্নতি দেওয়া হয়েছে। ( I7ffa3 )
  • BasicTextField2 এর জন্য ওভারলোডগুলি যুক্ত করুন যা বর্তমান BasicTextField এপিআইয়ের মতোই সেই মানটি পরিবর্তন করতে একটি অপরিবর্তনীয় মান এবং একটি কলব্যাক গ্রহণ করে। ( I3f2b8 )
  • GridItemSpan::currentLineSpan এখন একটি স্থিতিশীল এপিআই। ( আইসিসি 29 সি )
  • contentDescription গ্রহণ করে এমন ক্যানভাস এখন একটি স্থিতিশীল এপিআই। ( আইবি 3 ডি 29 )
  • ScrollState viewportSize প্রবর্তিত, পরিমাপের পরে ScrollState ব্যবহার করে এমন উপাদানটির viewPort আকার জানার একটি উপায়। ( I8b85a , খ/283102682 )
  • এমন একটি সমস্যা স্থির করেছেন যেখানে পেজারে প্রিফেচিং দৃষ্টিভঙ্গিতে আচরণের সাথে মেলে না। ( I93352 , বি/289088847 )
  • Modifier.consumeWindowInsets(PaddingValues) এখন স্থিতিশীল।
    • Deprecated Modifier.consumedWindowInsets এপিআই এখন সরানো হয়েছে। পরিবর্তে Modifier.consumeWindowInsets ব্যবহার করুন। ( Id72bb )

সংস্করণ 1.6.0-alpha03

9 আগস্ট, 2023

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

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

  • LazyLayout ওভারলোড যুক্ত হয়েছে, এটি LazyLayoutItemProvider একটি ল্যাম্বডা গ্রহণ করে, এটি আগের মতো সাধারণ বস্তু নয়। পূর্ববর্তী ওভারলোডটি হ্রাস করা হয়। ( I42a5a )
  • privateImeOptions কনফিগার করার জন্য সমর্থন যুক্ত করা হয়েছে ( আইডিবি 772 )

বাগ ফিক্স

  • স্থির পাঠ্য ক্ষেত্রগুলি কীবোর্ড দেখায় এবং যখন readOnly সত্য হয় তখন সম্পাদনাযোগ্য হওয়া। ফোকাস করার সময় readOnly সত্য থেকে মিথ্যা পরিবর্তিত হলে কীবোর্ডটি দেখানো হয়নি তাও স্থির করে। ( I34a19 , খ/246909589 )

সংস্করণ 1.6.0-alpha02

জুলাই 26, 2023

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

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

  • Pager একটি পরিমাপ পাসের পরে সংগৃহীত তথ্য সহ PagerLayoutInfo পরিচয় করিয়ে দেয়। PageInfo , Pager একক পরিমাপ করা পৃষ্ঠা সম্পর্কে তথ্যও পরিচয় করিয়ে দেয়। ( IAD003 , খ/283098900 )
  • কম্পোজেবলে অনুমোদিত ইনপুট নির্দিষ্ট করতে অতিরিক্ত টীকা ( I51109 )
  • টেস্টগুলিতে ফোকাসের জন্য অনুরোধ করার জন্য আরও সুবিধাজনক এবং আবিষ্কারযোগ্য উপায় হিসাবে SemanticsNodeInteraction.requestFocus যুক্ত করা হয়েছে। ( Ie8722 )
  • সম্পূর্ণরূপে পুনরায় ডিজাইন করা PlatformTextInput* এপিআই। ( I6c93a , বি/274661182 , বি/267235947 , বি/277380808 )
  • SoftwareKeyboardController এবং LocalSoftwareKeyboardController আর পরীক্ষামূলক নয়। LocalSoftwareKeyboardController এখন একটি সঠিক CompositionLocal । ( I4c364 )
  • Modifier.transformable এখন canPan প্যারামিটারে প্যান ডেল্টা সরবরাহ করে যাতে প্যানের দিকনির্দেশ নির্ধারণ বা এটি অস্বীকার করার জন্য সহায়তা করে। ( I692aa , খ/266829800 )
  • সুপারক্লাস AbstractComposeView ( আইএসিডি 74 , বি/269479941 ) প্রসারিত করতে মডিফায়ার consumeWindowInsets আপডেট করে

সংস্করণ 1.6.0-alpha01

জুন 21, 2023

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

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

  • ফাউন্ডেশনে একটি নতুন AnchoredDraggable এপিআই প্রবর্তন করেছে। এটি এমন উপাদানগুলি তৈরি করতে ব্যবহার করা যেতে পারে যা মডেল নীচের শিটগুলির মতো পৃথক রাজ্যের মধ্যে টেনে আনতে পারে। এই এপিআই উপাদানের Swipeable এপিআই প্রতিস্থাপন করে। ( I4a2ed )

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

  • সমর্থন InputConnection#requestCursorUpdates ( আই 0 সি 69 বি )
  • কাস্টম অ্যানিমেশন স্পেসগুলির অনুমতি দেওয়ার জন্য scrollAnimationSpec প্রবর্তন করেছে। BringIntoViewCalculator আপডেট BringIntoViewScroller ( আইডিবি 741 )
  • লোড করতে ব্যর্থ হওয়া সম্পদ পাথের বিবরণ সহ বিটম্যাপ সম্পদগুলি লোড করার চেষ্টা করার সময় নিক্ষিপ্ত থ্রোয়েবলগুলি মোড়ানো মোড়কে ResourceResolutionException টাইপ যুক্ত করুন। ( I19f44 , খ/230166331 , বি/278424788 )
  • পাঠ্য অনুবাদ সমর্থন করার জন্য শব্দার্থবিজ্ঞানের বৈশিষ্ট্য এবং ক্রিয়া যুক্ত করা হয়েছে। ( I4a6bc )
  • একটি BringIntoViewCalculator এপিআই প্রবর্তন করেছে যা Scrollable মতো উপাদানগুলি কীভাবে bringIntoView অনুরোধগুলিতে প্রতিক্রিয়া জানায় তা কাস্টমাইজ করতে ব্যবহার করা যেতে পারে। BringIntoViewCalculator একটি উদাহরণকে acception চ্ছিকভাবে গ্রহণ করতে স্ক্রোলযোগ্য ওভারলোড পরিবর্তন করেছে। ( আইএএফ 5 এএফ )

বাগ ফিক্স

  • আপনি যদি এটি স্মরণ না করে রচনাটিতে একটি MutableInteractionSource তৈরি করে থাকেন তবে সতর্ক করার জন্য একটি লিন্ট চেক যুক্ত করেছেন, মিউটেবল স্টেট / Animatable তৈরির জন্য লিন্ট চেকগুলির অনুরূপ। ( I5daae )
  • মাউস দ্বারা নির্বাচনের জন্য সমর্থন যুক্ত করা হয়েছে। স্পর্শ ভিত্তিক নির্বাচন শব্দ দ্বারা প্রসারিত হবে এবং চরিত্র দ্বারা সঙ্কুচিত হবে। ( আইসি 0 সি 6 সি , বি/180639271 )
  • যুক্ত FocusTargetModifierNode ইন্টারফেস যা কাস্টম FocusTarget তৈরি করতে ব্যবহার করা যেতে পারে। ( I9790e )

সংস্করণ 1.5

সংস্করণ 1.5.4

18 অক্টোবর, 2023

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

সংস্করণ 1.5.3

4 অক্টোবর, 2023

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

সংস্করণ 1.5.2

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

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

বাগ ফিক্স

  • পাঠ্যটিতে একটি বাগ স্থির করে যা শব্দার্থবিজ্ঞানগুলি অবৈধ হলে নির্দিষ্ট পরিস্থিতিতে ক্র্যাশ হয়ে যায়।

সংস্করণ 1.5.1

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

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

বাগ ফিক্স

  • স্থির পাঠ্য ক্ষেত্রগুলি কীবোর্ড দেখায় এবং যখন readOnly সত্য হয় তখন সম্পাদনাযোগ্য হওয়া। ফোকাস করার সময় readOnly সত্য থেকে মিথ্যা পরিবর্তিত হলে কীবোর্ডটি দেখানো হয়নি তাও স্থির করে। ( I34a19 , খ/246909589 )

সংস্করণ 1.5.0

9 আগস্ট, 2023

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

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

  • Modifier.clickable Modifier.draggable Modifier.scrollable Modifier.Node
  • পেজার স্থায়িত্বের উন্নতি। অনেক বাগ সম্বোধন করা হয়েছে।
  • pageCount প্যারামিটারগুলি এখন পেজারের পরিবর্তে PagerState বাস করে

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

জুলাই 26, 2023

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

বাগ ফিক্স

  • প্রিমিটিভগুলির জন্য তাদের সম্পর্কিত বিশেষায়িত ধরণের কলগুলি mutableStateOf() কল করার পরামর্শ দেওয়ার জন্য একটি al চ্ছিক পরিদর্শন উপলব্ধ। এর লিন্ট আইডি হ'ল AutoboxingStateCreation । পূর্বে, এই পরিদর্শনটি সমস্ত প্রকল্পের জন্য ডিফল্টরূপে সক্ষম করা হয়েছিল। অ্যান্ড্রয়েড স্টুডিওর সম্পাদক এবং আপনার প্রকল্পের লিন্ট আউটপুটগুলিতে এই সতর্কতাটি দেখতে, আপনার build.gradle অভ্যন্তরে warning "AutoboxingStateCreation" build.gradle.kts করে তথ্যগত থেকে সতর্কতা (বা উচ্চতর) এ তার তীব্রতা পরিবর্তন করুন grad

        android {
            lint {
                warning "AutoboxingStateCreation"
            }
            ...
        }
    

সংস্করণ 1.5.0-beta03

জুন 28, 2023

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

সংস্করণ 1.5.0-beta02

7 জুন, 2023

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

সংস্করণ 1.5.0-beta01

24 মে, 2023

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

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

  • হার্ট রেট এবং প্রতিদিনের পদক্ষেপগুলি সরবরাহ করতে PlatformDataProvider প্রয়োগ করুন। SensorGateway ইন্টারফেসটি পাবলিক এপিআই থেকে সরানো হয়েছে। ( I55b84 )

বাগ ফিক্স

  • অলস তালিকা/গ্রিড/ইত্যাদি চলাকালীন বরাদ্দ হ্রাস করুন। পরিমাপ ( iaf9e2 )
  • স্ন্যাপশট প্রয়োগ করার সময় হ্রাস হ্রাস ( i65C09 )
  • স্প্রিং অ্যানিমেশনগুলি থেকে বরাদ্দ সরানো হয়েছে ( ie9431 )
  • TextLayout থেকে বরাদ্দ সরানো হয়েছে ( i0fd11 )
  • পয়েন্টার বেগ ট্র্যাকিংয়ে একাধিক বরাদ্দ মুছে ফেলা ( i26bae )

সংস্করণ 1.5.0-alpha04

10 মে, 2023

androidx.compose.foundation:foundation:1.5.0-alpha04 :1.5.0-Alpha04 এবং androidx.compose.foundation:foundation-layout:1.5.0-alpha04 Foundation-Layout:1.5.0-Alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha04 এই কমিট ধারণ করে।

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

  • সম্পূর্ণ প্যারামিটার তালিকার সাথে অপ্টিমাইজড TextStyle.merge(...) যুক্ত করা হয়েছে। ( আইএডি 234 , বি/246961787 )
  • একটি SnapLayoutInfoProvider পরিচয় করিয়ে দিন যা LazyGridState সাথে ব্যবহার করা যেতে পারে। ( I92134 , বি/269237141 , বি/260914964 )
  • অলস স্তম্ভিত গ্রিডস আইটেমের সুযোগের জন্য পরীক্ষামূলক Modifier.animateItemPlacement() যুক্ত করা হয়েছিল। অটোমেশন অবস্থান পরিবর্তন/পুনরায় অর্ডার অ্যানিমেশনগুলি অর্জনের জন্য আপনি এটি আইটেমগুলিতে প্রয়োগ করতে পারেন। ( আই 4 বি 62 ডি , বি/257034719 )
  • GridCells.FixedSize স্থিতিতে প্রচার করুন। FixedSize একটি LazyGrid সংজ্ঞায়িত করে যেখানে প্রতিটি কোষ ক্রস অক্ষের উপর সঠিক আকার নেয়, ক্রস অক্ষের বিন্যাস দ্বারা বিতরণ করা অবশিষ্ট স্থান সহ। ( I8542f )
  • পেজারের জন্য রিসিভার স্কোপ PagerScope এবং একটি প্রদত্ত পৃষ্ঠা অফসেট গণনার জন্য একটি ইউটিলিটি ফাংশন প্রবর্তিত। ( আইএফ 2577 )
  • স্ন্যাপ ফ্লিং আচরণ তৈরি করার সময় snapPositionalThreshold পরিচয় করিয়ে দিন। পেজারে শর্ট স্ন্যাপিংয়ের জন্য একটি অবস্থানগত প্রান্তিক নির্দিষ্ট করতে এই প্যারামিটারটি ব্যবহার করুন। ( If8f7f )
  • calculateSnappingOffset সাথে SnapLayoutInfoProvider.calculateSnappingOffsetBounds প্রতিস্থাপন করেছেন। এই নতুন পদ্ধতিতে আমরা কেবল পরবর্তী অফসেটটিতে স্ন্যাপ করার জন্য অনুরোধ করছি। সীমাগুলির গণনা বাস্তবায়ন স্তরে সম্পাদন করা উচিত কারণ এটি কীভাবে ঘটতে পারে তার উপর নির্ভর করে এটি পৃথক হতে পারে। ( I923a4 )
  • LazyStaggeredGrid এপিআইগুলিকে স্থিতিশীল হিসাবে পদোন্নতি দেওয়া হয়েছে। ( I633a5 )
  • Horizontal/VerticalPager থেকে pageCount সরান। এটি রাজ্য সৃষ্টিতে সরবরাহ করা উচিত। pageCount গ্রহণ করার জন্য আপডেট করা PagerState এবং rememberPagerState । ( আইইবি 52 ডি , বি/266965072 )
  • Horizontal/VerticalPager থেকে pageCount সরান। এটি রাজ্য সৃষ্টিতে সরবরাহ করা উচিত। pageCount গ্রহণ করার জন্য আপডেট করা PagerState এবং rememberPagerState । ( আইএফএ 3 সিবি , বি/266965072 )
  • পেজারের SnapFlingBehavior shortSnapVelocityThreshold পরিচয় করিয়ে দিন। ( I7379e , বি/275579012 )
  • একটি FlowRowScope এবং FlowColumnScope যুক্ত করে। ( I54fe2 )

বাগ ফিক্স

  • যখন সীমাবদ্ধতাগুলি minWidth এবং minHeight আর ক্র্যাশ হয় না তখন পাঠ্যে শব্দার্থবিজ্ঞান পেতে কল করে। ( আইবিডি 072 )
  • স্থির রিগ্রেশন যেখানে কীবোর্ড ডায়ালগগুলির মধ্যে Dialog তৈরি করা হয় না এমন ডায়ালগগুলির ভিতরে পাঠ্য ক্ষেত্রগুলির জন্য প্রদর্শন করছিল না। ( I82551 , খ/262140644 )

সংস্করণ 1.5.0-alpha03

এপ্রিল 19, 2023

androidx.compose.foundation:foundation:1.5.0-alpha03 :1.5.0-Alpha03 এবং androidx.compose.foundation:foundation-layout:1.5.0-alpha03 Foundation-Layout:1.5.0-Alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha03 এই কমিট ধারণ করে।

এই প্রকাশটি রচনাটির জন্য নতুন পাঠ্য রেন্ডারিং স্ট্যাক সক্ষম করে। নতুন স্ট্যাকটি পারফরম্যান্স অপ্টিমাইজড এবং আপনার কোনও দৃশ্যমান পরিবর্তন দেখা উচিত নয়।

আপনি যদি রেন্ডারযুক্ত পাঠ্যের পরিবর্তনগুলি দেখতে পান তবে আচরণের পার্থক্যটি নিশ্চিত করতে আপনি NewTextRendering1_5 = false সেট করে ডিবাগ করতে পারেন। এটি সেট করা পুনরুদ্ধার জোর করবে। বাগ হিসাবে কোনও আচরণের পার্থক্য ফাইল করুন।

ডিবাগ পতাকাটি 1.5 বিটা 01 রিলিজের আগে সরানো হবে (( আইএডিএ 23 , বি/246960758 )

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

সংস্করণ 1.5.0-alpha02

5 এপ্রিল, 2023

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

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

  • LazyGrid স্থির আকারের কোষগুলির জন্য সমর্থন যুক্ত করা এবং ক্রস অক্ষের বিন্যাসের সাথে তাদের সাজানো। ( I83ed9 , খ/235121277 , বি/267942510 )
  • LazyStaggeredGrid স্থির আকারের লেনগুলির জন্য সমর্থন যুক্ত করা এবং ক্রস অক্ষের বিন্যাসের সাথে তাদের সাজানো। ( I7d519 )
  • TalkBack মতো অ্যাক্সেসিবিলিটি পরিষেবাদির মাধ্যমে এখন AnnotatedString এস -তে UrlAnnotation s খোলা যেতে পারে। ( আইএফ 4 ডি 82 , বি/253292081 )
  • পাঠ্য ক্ষেত্রগুলির জন্য InsertTextAtCursor শব্দার্থবিজ্ঞানের ক্রিয়া যুক্ত করা হয়েছে। ( আই 11 এড 5 )
  • পাঠ্য সম্পর্কিত পরীক্ষার ক্রিয়াগুলি (যেমন performTextInput ) এখন ক্ষেত্রটিতে ক্লিক করার পরিবর্তে শব্দার্থবিজ্ঞানের ক্রিয়াটি ব্যবহার করে সরাসরি ফোকাসের জন্য অনুরোধ করবে। ( I6ed05 )
  • FlowRow এবং FlowColumn verticalArrangement এবং horizontalArrangement ব্যবহার করে ক্রস অক্ষের ব্যবধান/বিন্যাসের জন্য সমর্থন যুক্ত করে। আমরা FlowRow/FlowColumn শীর্ষ-স্তরের verticalAlignment এবং অনুভূমিককরণ horizontalAlignment সরিয়ে ফেলি। বিকাশকারীরা পরিবর্তে Modifier.align ব্যবহার করতে পারেন। এটি verticalAlignment এবং verticalArrangement নামকরণ কনভেনশনগুলির মধ্যে বিভ্রান্তি হ্রাস করে। ( I87b60 , বি/268365538 )

সংস্করণ 1.5.0-alpha01

22 মার্চ, 2023

androidx.compose.foundation:foundation:1.5.0-alpha01 :1.5.0-Alpha01 এবং androidx.compose.foundation:foundation-layout:1.5.0-alpha01 Foundation-Layout:1.5.0-Alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha01 এই কমিট ধারণ করে।

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

  • নতুন মডিফায়ার সিস্টেমটি ব্যবহার করার জন্য পাঠ্য এবং BasicText রিফ্যাক্ট করা হয়েছে। এটি অনেক ক্ষেত্রে যথেষ্ট পারফরম্যান্সের উন্নতির দিকে পরিচালিত করে। কোনও পরিবর্তন দৃশ্যমান হওয়া উচিত। ( আইএফ 1 ডি 17 , বি/246961435 )
  • পাঠ্য সম্পাদক নোডগুলিতে আইএমই অ্যাকশনটি অনুরোধ করার জন্য PerformImeAction শব্দার্থবিজ্ঞানের ক্রিয়া যুক্ত করেছে। ( আইসি 606 এফ , বি/269633506 )

বাগ ফিক্স

  • Modifier.hoverable ইন্টার্নাল আপডেট হয়েছে। hoverable মডিফায়ার কেবল পরিদর্শককে সক্ষম করা থাকলে প্রদর্শিত হবে। ( I82103 )

সংস্করণ 1.4

সংস্করণ 1.4.3

3 মে, 2023

androidx.compose.foundation:foundation:1.4.3 :1.4.3 এবং androidx.compose.foundation:foundation-layout:1.4.3 Foundation-layout:1.4.3 কোনও পরিবর্তন ছাড়াই প্রকাশিত হয় না (কেবল একটি সংস্করণ বাম্প)।

সংস্করণ 1.4.2

এপ্রিল 19, 2023

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

সংস্করণ 1.4.1

5 এপ্রিল, 2023

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

সংস্করণ 1.4.0

22 মার্চ, 2023

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

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

  • Text এবং TextField ইমোজি কমপ্যাট ইন্টিগ্রেশন যুক্ত করা হয়েছে, পাশাপাশি নিম্ন স্তরের অনুচ্ছেদ। ইমোজিকম্প্যাট কনফিগার করা হলে এটি ডিফল্টরূপে সক্ষম করা হয়।
  • EmojiCompat PlatformParagraphStyle ব্যবহার করে একটি নির্দিষ্ট পাঠ্যে কনফিগার করা যেতে পারে।
  • LazyStaggeredGrid সম্পূর্ণ লাইন স্প্যান সমর্থন যুক্ত করা হয়েছে (i28252)
  • ClickableText (i6938f) এ পরীক্ষামূলক onHover যুক্ত করা হচ্ছে
  • runComposeUiTest ফাংশনের জন্য নতুন পরীক্ষামূলক ওভারলোডগুলি প্রবর্তন করে এবং create*ComposeRule যা CoroutineContext প্যারামিটারগুলি গ্রহণ করে। প্রসঙ্গটি পরীক্ষার রচনা এবং যে কোনও LaunchedEffect এবং rememberCoroutineScope() সংমিশ্রণে কলগুলির জন্য ব্যবহৃত হবে। ( আই 10614 , বি/265177763 )
  • FlowRow এবং FlowColumn এখন @ExperimentalFoundationApi হিসাবে উপলব্ধ যা মূল অক্ষগুলিতে পর্যাপ্ত জায়গা না থাকলে একটি নতুন লাইনে ভেঙে যাবে এমন উপাদানগুলির আরও নমনীয় সারি এবং কলাম ভিত্তিক বিন্যাসের অনুমতি দেয়। ( I3a7b2 )
  • Modifier.basicMarquee() একটি স্ক্রোলিং মার্কি প্রভাব সহ সামগ্রী প্রদর্শনের জন্য পরীক্ষামূলক হিসাবে উপলব্ধ। ( আই 2 ডিএফ 44 , বি/139321650 )

সংস্করণ 1.4.0-rc01

8 মার্চ, 2023

androidx.compose.foundation:foundation:1.4.0-rc01 :1.4.0-rc01 এবং androidx.compose.foundation:foundation-layout:1.4.0-rc01 Foundation-Layout:1.4.0-RC01 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-rc01-এ এই কমিট রয়েছে।

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

  • প্ল্যাটফর্ম এপিআই-তে সরাসরি কথা বলে কাস্টম পাঠ্য ইনপুট বাস্তবায়নগুলি তৈরির জন্য নতুন নিম্ন-স্তরের PlatformTextInputAdapter এপিআই প্রবর্তন করেছে। ( I58df4 )
  • LazyStaggeredGrid বিপরীত বিন্যাসের জন্য সমর্থন যুক্ত করুন। ( I3ef4a )

বাগ ফিক্স

  • BasicTextField SetText শব্দার্থবিজ্ঞান অ্যাকশন এখন আইএমই আপডেট এবং পরীক্ষার ফাংশন (যেমন performTextReplacement ) হিসাবে একই কোড পাথ ব্যবহার করে পাঠ্য বাফারটি আপডেট করবে।
  • পাঠ্য পরীক্ষার ফাংশনগুলি performTextClearance , performTextReplacement এবং performTextSelection এখন SemanticsActions ব্যবহার করে। ( I0807d , খ/269633168 , বি/269624358 )

সংস্করণ 1.4.0-beta02

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

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

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

  • একটি নতুন Modifier.Node.onReset() কলব্যাক যুক্ত করা হয়েছে যাতে আপনাকে কিছু স্থানীয় রাষ্ট্রকে পুনরায় সেট করতে দেয় যখন Layout পুনরায় ব্যবহার করা হবে (উদাহরণস্বরূপ LazyColumn এর আইটেম হিসাবে) কেসটি সঠিকভাবে পরিচালনা করতে দেয়। ফোকাসযুক্ত রাষ্ট্রটি সঠিকভাবে পুনরায় সেট করতে ফিক্স FocusTargetModifierNode । ( I65495 , বি/265201972 )
  • ক্যানভাসে পাঠ্য অঙ্কন করার সময় বিভিন্ন মিশ্রণ অ্যালগরিদমগুলিকে সমর্থন করার জন্য DrawScope.drawText , Paragraph.paint এবং MultiParagraph.paint পদ্ধতিগুলিতে BlendMode প্যারামিটার যুক্ত করা হয়েছে। ( I57508 )
  • modifierElementOf() এপিআই মুছে ফেলা। পরিবর্তে সরাসরি ModifierNodeElement থেকে প্রসারিত করুন। ( Ie6d21 )

বাগ ফিক্স

  • নির্বাচন হ্যান্ডলগুলি সামঞ্জস্য করা আর কোনও আংশিক চরিত্র নির্বাচন করতে পারে না। ( আইডিড 1 )
  • খালি TextField সিটিআরএল+ব্যাকস্পেস ( আই 0427 এফ , বি/244185537 ) ক্র্যাশ করুন

সংস্করণ 1.4.0-beta01

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

androidx.compose.foundation:foundation:1.4.0-beta01 :1.4.0-beta01 এবং androidx.compose.foundation:foundation-layout:1.4.0-beta01 Foundation-Layout:1.4.0-BETA01 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-beta01-এ এই কমিট রয়েছে।

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

  • ১.৩ সাল থেকে, Text এবং TextField ইমোজি কমপ্যাট ইন্টিগ্রেশন, পাশাপাশি নিম্ন স্তরের অনুচ্ছেদে যুক্ত হয়েছে। ইমোজিকম্প্যাট কনফিগার করা হলে এটি ডিফল্টরূপে সক্ষম করা হয়।
  • EmojiCompat PlatformParagraphStyle ব্যবহার করে একটি নির্দিষ্ট পাঠ্যে কনফিগার করা যেতে পারে।

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

  • রচনাগুলি প্রস্থান করে এমন আইটেমগুলি ধরে রাখতে সমস্ত LazyLayouts ব্যবহৃত PinnableContainer এপিআইয়ের সাধারণ বাস্তবায়ন যুক্ত করা হয়েছে, তবে এখনও সক্রিয় হওয়া দরকার। ( If45a4 )
  • PinnableContainer.PinnedHandle.unpin() নামকরণ করা হয়েছিল release() ( i4667a ) প্রকাশের জন্য।

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

  • LazyListLayoutInfo , LazyGridLayoutInfo এবং LazyStaggeredGridItemInfo ( আই 52fad ) এ mainAxisItemSpacing সম্পত্তি যুক্ত করা হয়েছে

সংস্করণ 1.4.0-alpha05

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

androidx.compose.foundation:foundation:1.4.0-alpha05 :1.4.0-Alpha05 এবং androidx.compose.foundation:foundation-layout:1.4.0-alpha05 Foundation-Layout:1.4.0-Alpha05 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha05 এই কমিট ধারণ করে।

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

  • LazyStaggeredGrid সম্পূর্ণ লাইন স্প্যান সমর্থন যুক্ত করা হয়েছে ( i28252 )
  • ClickableText ( i6938f ) এ পরীক্ষামূলক onHover যুক্ত করা হচ্ছে
  • runComposeUiTest ফাংশনের জন্য নতুন পরীক্ষামূলক ওভারলোডগুলি প্রবর্তন করে এবং create*ComposeRule যা CoroutineContext প্যারামিটারগুলি গ্রহণ করে। প্রসঙ্গটি পরীক্ষার রচনা এবং যে কোনও LaunchedEffect এবং rememberCoroutineScope() সংমিশ্রণে কলগুলির জন্য ব্যবহৃত হবে। ( আই 10614 , বি/265177763 )

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

  • OverscrollEffect প্রাক/পোস্ট এপিআইগুলিকে সম্মিলিত 'ডেকোরেটর' applyToScroll এবং applyToFling ক্রিয়াকলাপগুলিতে মার্জ করে। নতুন এপিআই আকারের সাথে কীভাবে একটি ওভারক্রোল প্রভাব প্রয়োগ করা যায় তার উদাহরণগুলির জন্য ডকুমেন্টেশনে আপডেট হওয়া নমুনাগুলি দেখুন। ( I8a9c4 , খ/255554340 )
  • ইনলাইন/অবমূল্যায়িত-লুকানো ফাংশনগুলির আরও প্রকার/বাতিলযোগ্যতা ( i24f91 )
  • TextStyle LineBreak এবং Hyphens এপিআইগুলি স্থিতিতে স্নাতক হয়। ( আইসি 1 ই 1 ডি )

বাগ ফিক্স

  • টেক্সট ক্ষেত্রগুলিতে কার্সারটি এখন অ্যানিমেশনগুলি অক্ষম থাকলেও ঝলকানো চালিয়ে যাবে। ( I95e70 , বি/265177763 )
  • Modifier.basicMarquee এখন অ্যানিমেশনগুলি সিস্টেম সেটিংসে অক্ষম থাকলেও অ্যানিমেট করে। ( আই 23389 , বি/262298306 , বি/265177763 )

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

  • TextInputSession এবং TextInputService notifyFocusedRect পদ্ধতিগুলি আবার অবমূল্যায়ন করা হয় না। ( I23a04 , খ/262648050 )

সংস্করণ 1.4.0-alpha04

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

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

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

  • FlowRow এবং FlowColumn এখন @ExperimentalFoundationApi হিসাবে উপলব্ধ যা মূল অক্ষগুলিতে পর্যাপ্ত জায়গা না থাকলে একটি নতুন লাইনে ভেঙে যাবে এমন উপাদানগুলির আরও নমনীয় সারি এবং কলাম ভিত্তিক বিন্যাসের অনুমতি দেয়। ( I3a7b2 )
  • Modifier.basicMarquee() একটি স্ক্রোলিং মার্কি প্রভাব সহ সামগ্রী প্রদর্শনের জন্য পরীক্ষামূলক হিসাবে উপলব্ধ। ( আই 2 ডিএফ 44 , বি/139321650 )

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

  • FocusRequesterModifier FocusRequesterNode ( আই 7 এফ 4 ডি 7 , বি/247708726 , বি/255352203 , বি/ 253043481, বি/24716483, বি/25452934 , বি/2518401112 , বি/2580112 , বি/2580112 এর পক্ষে অবমূল্যায়িত হয়
  • variationSettings সহ AndroidFont কনস্ট্রাক্টর এখন একটি স্থিতিশীল এপিআই, এবং নতুন ধরণের ফন্ট বর্ণনাকারী তৈরি করতে ব্যবহার করা যেতে পারে। ( I5adcc , খ/261565807 )
  • PinnableContainer এপিআই প্রবর্তিত একটি রচনা স্থানীয় মাধ্যমে অলস তালিকা দ্বারা প্রচারিত যা বর্তমান আইটেমটি পিন করতে দেয়। এর অর্থ এই জাতীয় আইটেমটি যখন ভিউ থেকে দূরে স্ক্রোল করা হয় তখন নিষ্পত্তি করা হবে না। উদাহরণস্বরূপ, Modifier.focusable() এই প্রক্রিয়াটির মাধ্যমে বর্তমান ফোকাসযুক্ত আইটেমটি পিন করবে। ( আইবি 8881 , বি/259274257 , বি/195049010 )
  • এই অপারেশনগুলির জটিলতা আরও ভাল মডেল করতে এবং আরও প্রান্তের কেসগুলি পরিচালনা করার জন্য স্ক্রোলেবলগুলি যেভাবে bringIntoViewRequesters এবং ফোকাসেবলগুলিতে প্রতিক্রিয়া জানায় তা পুনরায় লিখুন। ( I2e5fe , খ/241591211 , বি/192043120 , বি/237190748 , বি/230756508 , বি/239451114 )
  • অবনমন-লুকানো ফাংশনগুলির আরও রিটার্ন টাইপ বাতিলযোগ্যতা ( Ibf7b0 )
  • Static(default) বা অ্যানিমেটেড হিসাবে পাঠ্যকে সংজ্ঞায়িত করতে TextStyle পরীক্ষামূলক TextMotion যুক্ত করা হয়েছে। TextMotion.Animated ব্যবহার করুন an অ্যানিমেশনের মাধ্যমে পাঠ্য স্কেল, অনুবাদ বা ঘোরানো হলে অ্যানিমেটেড। ( I24dd7 )
  • অ্যান্ড্রয়েড প্ল্যাটফর্মের জন্য ফোকাস নেভিগেশন আচরণটি ঠিক করতে TextFieldFocusModifier যুক্ত করুন ( I00303 )
  • প্রতিস্থাপন maxSize: IntSize আকারের সাথে drawText ইন্টিজ আর্গুমেন্ট size: Size অন্যান্য DrawScope ফাংশনগুলির সাথে ইনলাইন হতে হবে। size সেট করা হয় Size.Unspecified ( আইসিডি 27 ডি )

বাগ ফিক্স

  • আরও প্রাকৃতিক অনুভূতির জন্য SnapFlingBehaviour স্ন্যাপিং ফিজিক্সে সামঞ্জস্য।

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

  • 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-alpha04) আপডেট করুন বা আপনার androidx.compose.foundation 1.4.0-alpha03 এ ডাউনগ্রেড করুন৷

সংস্করণ 1.4.0-alpha03

7 ডিসেম্বর, 2022

androidx.compose.foundation:foundation:1.4.0-alpha03 :1.4.0-Alpha03 এবং androidx.compose.foundation:foundation-layout:1.4.0-alpha03 Foundation-Layout:1.4.0-Alpha03 প্রকাশিত হয়েছে। 1.4.0-alpha03 সংস্করণে এই কমিট রয়েছে।

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

  • একটি কমপোজ বিধি ব্যবহার করে ইউআই পরীক্ষায়, সমস্ত ফ্রেম কলব্যাকগুলি চলমান শেষ না হওয়া পর্যন্ত withFrameNanos কলব্যাকস চলাকালীন পুনরায় শুরু করা ধারাবাহিকতা প্রেরণ করা হবে না। এটি সাধারণত চলাকালীন রচনার আচরণের সাথে মেলে। যাইহোক, পুরানো আচরণের উপর নির্ভর করে এমন পরীক্ষাগুলি ব্যর্থ হতে পারে। এটি কেবলমাত্র কোডকে প্রভাবিত করবে যা সরাসরি withFrameNanos বা withFrameMillis কল ​​করে এবং কলব্যাকের বাইরে যুক্তিযুক্ত সেই ফাংশনগুলিতে পাস করা উচিত যা কলব্যাকগুলির ভিতরে সরানোর প্রয়োজন হতে পারে। উদাহরণগুলির জন্য এই সিএল -এ অ্যানিমেশন পরীক্ষার পরিবর্তনগুলি দেখুন।
  • On চ্ছিক onPerformTraversals: (Long) -> Unit withFrameNanos কলব্যাকগুলির পরে কোড চালানোর জন্য TestMonotonicFrameClock কনস্ট্রাক্টর এবং ফ্যাক্টরি ফাংশনে ইউনিট প্যারামিটার তবে কলারদের করুটাইনগুলি পুনরায় শুরু করার আগে কোড চালানোর জন্য। ( আইডিবি 413 , বি/254115946 , বি/222093277 , বি/255802670 )
  • পৃষ্ঠা অ্যাক্সেসযোগ্যতার ক্রিয়াগুলি প্রবর্তন করুন: PageUp , PageDown , PageLeft , PageRight । নোট করুন যে এগুলি কেবল এপিআই 29 থেকে পাওয়া যায়। ( আইডিএ 4 অ্যাব )
  • পেজার পদ্ধতিতে কমপোজেবলগুলি দেখানোর একটি উপায় HorizontalPager এবং VerticalPager পরিচয় করিয়ে দিন। পেজারদের নিয়ন্ত্রণের পাশাপাশি পেজারের বর্তমান অবস্থা সম্পর্কে ক্যোয়ারী সম্পর্কিত PagerState প্রবর্তিত। প্রবর্তিত PageSize , কোনও পেজারের পৃষ্ঠার আকার নিয়ন্ত্রণের একটি উপায়, এটি পেজারগুলির মতো ক্যারোসেল তৈরি করতে ব্যবহার করা যেতে পারে। PagerSnapDistance প্রবর্তিত, পেজারের ঝাঁকুনির আচরণে কীভাবে স্ন্যাপিং কাজ করবে তা নিয়ন্ত্রণের একটি উপায়। ( I01120 )
  • ঝাঁকুনিটি কোথায় স্থির হবে তা বুঝতে সহায়তা করার জন্য SnapFlingBehavior.performFling একটি ওভারলোডের পরিচয় করিয়ে দেয়। ( I569f6 )
  • OverscrollEffect#isEnabled অপসারণ করা হয়েছে। এই পতাকাটি মনে রাখতে এবং সেট করার প্রয়োজনের পরিবর্তে, আপনি যেসব ক্ষেত্রে ওভারক্রোলটি দেখাতে চান না সে ক্ষেত্রে কেবল ইভেন্টগুলি ওভারক্রোল এফেক্টে প্রেরণ করবেন না (উদাহরণস্বরূপ যদি ScrollableState#canScrollForward/backward উভয়ই মিথ্যা প্রত্যাবর্তন করে)। ( আই 1 এ 4 বি 0 , বি/255554340 , বি/255557085 )
  • ScrollableState#canScrollForward এবং ScrollableState#canScrollBackward যুক্ত করা হয়েছে যে কোনও ScrollableState উভয় দিকের স্ক্রোল করার ঘর আছে কিনা তা জিজ্ঞাসা করতে (এটি তার পরিসরের সর্বনিম্ন / সর্বোচ্চ সর্বাধিক কিনা)। এই ScrollableState বিদ্যমান বাস্তবায়নের সাথে পিছনের সামঞ্জস্যের জন্য সত্যের ডিফল্ট। গ্রাহকরা এটি ব্যবহারকারীর কাছে ইঙ্গিতটি দেখানোর জন্য এটি ব্যবহার করতে পারেন যে এখনও স্ক্রোল করার জায়গা রয়েছে এবং এটি অপ্রয়োজনীয় কাজ হ্রাস করার জন্য কোনও প্রদত্ত দিকের স্ক্রোল করার কোনও জায়গা নেই এমন ScrollableStates ডেল্টা প্রেরণ এড়াতেও ব্যবহার করা যেতে পারে। ( আইডিএফ 1 এ 0 , বি/255557085 )
  • পূর্বপুরুষদের স্ক্রোল তথ্য জিজ্ঞাসা করতে একটি সংশোধক API যোগ করা হয়েছে। ( I2ba9d , b/203141462 )
  • প্রেস ইন্টারঅ্যাকশনকে সঠিকভাবে বিলম্বিত করতে Clickable -এ ব্যবহার করা হয়, যখন অঙ্গভঙ্গিগুলি স্ক্রোল ইভেন্টে পরিণত হতে পারে।
  • Scrollable ViewGroup ভিতরে ব্যবহার করা হলে স্থির Clickables সঠিকভাবে লহরকে বিলম্বিত করে না।
  • সঠিকভাবে প্রেস বিলম্বিত করার জন্য ড্রয়ার এবং শীট আপডেট করা হয়েছে যদি অঙ্গভঙ্গিগুলি স্ক্রোল ইভেন্টে পরিণত হতে পারে।
  • snapStepSize নামকরণ আপডেট করুন SnapLayoutInfoProvider অন্যান্য পদ্ধতির সাথে সামঞ্জস্যপূর্ণ হতে। ( Ife67c )
  • Compose করতে EmojiCompat যুক্ত করা হয়েছে ( আইবিএফ 6 এফ 9 , বি/139326806 )
  • consumedWindowInsets() consumeWindowInsets() এবং withConsumedWindowInsets()onConsumedWindowInsetsChanged() এ এবং সংশোধকগুলিকে সর্বজনীন করে তুলেছে। ( Ie44e1 )

বাগ ফিক্স

  • Modifier.animateItemPlacement() এবং অলস গ্রিডগুলির সাথে ক্র্যাশটি স্থির করা হয়েছিল। এটি কিছু পরিস্থিতিতে ঘটছিল যখন নতুন আইটেমগুলি গণনা ছোট হয় তবে আগেরটি। ( I0bcac , খ/253195989 )

সংস্করণ 1.4.0-alpha02

9 নভেম্বর, 2022

androidx.compose.foundation:foundation:1.4.0-alpha02 :1.4.0-Alpha02 এবং androidx.compose.foundation:foundation-layout:1.4.0-alpha02 Foundation-Layout:1.4.0-Alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha02 এই কমিট ধারণ করে।

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

  • awaitFirstDown এবং waitForUpOrCancellation এখন বৃহত্তর নমনীয়তার জন্য একটি PointerEventPass গ্রহণ করুন। ( I7579a , b/212091796 )
  • অলস* এপিআইএস ( আই 12197 ) থেকে beyondBoundCount এপিআই ছাড়িয়ে যান
  • ভিউপোর্ট আইটেমগুলি রচনা এবং স্থাপনের জন্য অলস এপিআইগুলিতে প্যারামিটার প্রবর্তিত ( i69e89 , বি/172029355 )
  • BasicText এবং BasicTextFieldminLines প্যারামিটার যোগ করা হয়েছে। এটি লাইনের সংখ্যার ( I24294 , b/122476634 ) পরিপ্রেক্ষিতে এই কম্পোজেবলগুলির ন্যূনতম উচ্চতা সেট করার অনুমতি দেয়

সংস্করণ 1.4.0-alpha01

24 অক্টোবর, 2022

androidx.compose.foundation:foundation:1.4.0-alpha01 and androidx.compose.foundation:foundation-layout:1.4.0-alpha01 are released. 1.4.0-alpha01 সংস্করণে এই কমিট রয়েছে।

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

  • অঙ্গভঙ্গি আবিষ্কারকগুলির জন্য একটি নতুন পদ্ধতি, awaitEachGesture() যোগ করা হয়েছে৷ এটি forEachGesture() এর মতোই কাজ করে, কিন্তু লুপ ওভার জেসচার সম্পূর্ণভাবে AwaitPointerEventScope মধ্যে কাজ করে যাতে ইভেন্টগুলি পুনরাবৃত্তির মধ্যে হারিয়ে যেতে না পারে।
  • forEachGesture() awaitEachGesture() এর পক্ষে অবহেলিত হয়েছে কারণ এটি ইভেন্টগুলিকে অঙ্গভঙ্গির মধ্যে হারিয়ে যেতে দেয়। ( IFfc3f , b/251260206 )
  • Added WindowInsets.imeAnimationSourc e and WindowInsets.imeAnimationTarget to determine the animation progress and know where the IME will be after animation completes. ( I356f1 , b/217770337 )

সংস্করণ 1.3

সংস্করণ 1.3.1

9 নভেম্বর, 2022

androidx.compose.foundation:foundation:1.3.1 and androidx.compose.foundation:foundation-layout:1.3.1 are released. সংস্করণ 1.3.1 এই কমিট ধারণ করে.

বাগ ফিক্স

  • Fix performance issue in BeyondBoundsLayout ( aosp/2255266 )
  • ContentInViewModifier will not read layout coordinates unless attached ( aosp/2241316 )

সংস্করণ 1.3.0

24 অক্টোবর, 2022

androidx.compose.foundation:foundation:1.3.0 and androidx.compose.foundation:foundation-layout:1.3.0 are released. সংস্করণ 1.3.0 এই কমিট ধারণ করে.

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

  • Experimental versions of LazyVerticalStaggeredGrid and LazyHorizontalStaggeredGrid were introduced.
  • SnapFlingBehavior , rememberSnapFlingBehavior and other corresponding APIs were added as experimental.
  • Modifier.clickable , Modifier.toggleable , and Modifier.selectable now show ripples if clicked with the keyboard or d-pad on a remote control.

সংস্করণ 1.3.0-rc01

5 অক্টোবর, 2022

androidx.compose.foundation:foundation:1.3.0-rc01 and androidx.compose.foundation:foundation-layout:1.3.0-rc01 are released. সংস্করণ 1.3.0-rc01-এ এই কমিট রয়েছে।

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

  • Introduced lowVelocityAnimationSpec used by the approach step when there's not enough fling velocity to decay. ( Iaeb27 )
  • Added new experimental API Hyphens to support automatic hyphenation in Text ( Iaa869 )

সংস্করণ 1.3.0-beta03

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

androidx.compose.foundation:foundation:1.3.0-beta03 and androidx.compose.foundation:foundation-layout:1.3.0-beta03 are released. সংস্করণ 1.3.0-beta03-এ এই কমিট রয়েছে।

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

  • Add options to customize line breaking in Text. ( I86907 )
  • BringIntoViewResponder s are now able to get the most up-to-date bounds of a request while processing it. ( If86a5 , b/241591211 )
  • Introduce support for spacings between items to experimental Staggered Grid ( I10b82 )
  • Introduce content padding to experimental Staggered Grid ( I342ea )
  • Changed size:IntSize argument with constraints: Constraints in TextMeasurer.measure method to support minimum width constraints. ( I37530 , b/242707525 )
  • Added Modifier.withConsumedWindowInsets() to get consumed WindowInsets for use outside windowInsetsPadding .
  • Added MutableWindowInsets to allow easily changing WindowInsets without recomposition. ( I7fd28 , b/237019262 , b/243119659 )

সংস্করণ 1.3.0-beta02

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

androidx.compose.foundation:foundation:1.3.0-beta02 and androidx.compose.foundation:foundation-layout:1.3.0-beta02 are released. সংস্করণ 1.3.0-beta02-এ এই কমিট রয়েছে।

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

  • Initial version of experimental StaggeredGrid ( Ia48be )
  • Renamed FocusDirection.In and FocusDirection.Out to FocusDirection.Enter and FocusDirection.Exit ( Ia4262 , b/183746982 )
  • Introduced a rememberSnapFlingBehavior overload that provides a quick way of enabling snapping in LazyLists . ( Ifb48a )
  • Replaced the snapFlingBehavior factory with a concrete SnapFlingBehavior class. Scoped SnapLayoutInfoProvider methods to Density to make Dp<->Px conversions easier for the API users. ( I54a11 )
  • Update LazyLayoutMeasureScope.measure to return list of placeables, highlighting desired immutability of the returned value. ( I48b7c )
  • Introduced SnapLayoutInfoProvider which takes a LazyListState to create an instance of SnapLayoutInfoProvider that can be used to enable a snap FlingBehavior for LazyLists . ( I2dd10 )

বাগ ফিক্স

  • Refactors AwaitPointerEventScope#awaitLongPressOrCancellation to match other await functions ( I646e6 )

সংস্করণ 1.3.0-beta01

24 আগস্ট, 2022

androidx.compose.foundation:foundation:1.3.0-beta01 and androidx.compose.foundation:foundation-layout:1.3.0-beta01 are released. সংস্করণ 1.3.0-beta01-এ এই কমিট রয়েছে।

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

  • Removed pointerPosition from OverscrollEffect - effects that care about pointer position can use Modifier.pointerInput { } in the effectModifier to get the current pointer position instead. ( I9f606 , b/241239306 )
  • Exposed AwaitPointerEventScope#awaitLongPressOrCancellation as additional building block for more complex gesture detection ( I04374 , b/181577176 )
  • Introduced lazyListSnapLayoutInfoProvider to enable snapping in Lazy Lists. ( I3ecdf )
  • Introduced SnapFlingBehavior , a fling behavior that enables list snapping. Provide an instance of SnapLayoutInfoProvider with information about your snapping layout. ( Ie754c )

সংস্করণ 1.3.0-alpha03

10 আগস্ট, 2022

androidx.compose.foundation:foundation:1.3.0-alpha03 and androidx.compose.foundation:foundation-layout:1.3.0-alpha03 are released. সংস্করণ 1.3.0-alpha03 এই কমিট ধারণ করে।

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

  • Resource Fonts now support setting font variation settings (API 26+). ( I900dd , b/143703328 )
  • Variable font support in DeviceFontFamilyNameFont ( Ic1279 , b/143703328 )
  • Removed experimental annotation from PlatformTextStyle and LineHeightStyle . ( I64bef )
  • Text fields will now throw more detailed exceptions when the OffsetMapping provided by a VisualTransformation returns invalid indices. ( Ie73f9 , b/229378536 )
  • Introduce experimental APIs to share item provider logic between Lazy layouts. ( Ic891c )
  • ScrollableDefaults.reverseDirection() is not experimental anymore. ( Iba646 )
  • Deprecated SemanticsModifier.id and moved the semantics id to LayoutInfo.semanticsId instead. ( Iac808 , b/203559524 )
  • checkScrollableContainerConstraints() is not experimental anymore. ( I2c290 )
  • Modifier.clipScrollableContainer() is not experimental anymore. ( Ia2b44 )
  • Deprecate TextInputService.show|hideSoftwareKeyboard . Please use SoftwareKeyboardController instead in app code and TextInputSession in IME-management code. ( I14e4c , b/183448615 )

সংস্করণ 1.3.0-alpha02

জুলাই 27, 2022

androidx.compose.foundation:foundation:1.3.0-alpha02 and androidx.compose.foundation:foundation-layout:1.3.0-alpha02 are released. সংস্করণ 1.3.0-alpha02 এই কমিট ধারণ করে।

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

  • Added drawText extension function on DrawScope to provide a way to draw multi-styled text on composables and modifiers that operate on a DrawScope like Canvas and drawBehind . ( I16a62 , b/190787898 )

বাগ ফিক্স

  • Soft keyboard will now be hidden when a text field is disabled while focused. ( I6e3e4 , b/237308379 )
  • When adding InputEventChange events to Velocity Tracker we will consider now deltas instead of positions, this will guarantee the velocity is correctly calculated for all cases even if the target element moves ( Icea9d , b/216582726 , b/223440806 , b/227709803 )
  • When a scrollable has a focused child, it will now correctly scroll to keep the focused child in view when its size is decreased, even when the size is animated. ( I80867 , b/230756508 , b/220119990 )
  • Fixed a crash where TextField is cleared and refilled while selection is active. ( I1235b , b/208655565 , b/214253689 )

সংস্করণ 1.3.0-alpha01

জুন 29, 2022

androidx.compose.foundation:foundation:1.3.0-alpha01 and androidx.compose.foundation:foundation-layout:1.3.0-alpha01 are released. সংস্করণ 1.3.0-alpha01-এ এই কমিট রয়েছে।

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

  • Introduced the UrlAnnotation annotation type and associated methods to support TalkBack link support in AnnotatedString s. ( I1c754 , b/231495122 )

বাগ ফিক্স

  • BasicTextField cursorBrush may now be animated without restarting the cursor timer. ( I812e6 , b/236383522 )

সংস্করণ 1.2

সংস্করণ 1.2.1

10 আগস্ট, 2022

androidx.compose.foundation:foundation:1.2.1 and androidx.compose.foundation:foundation-layout:1.2.1 are released. সংস্করণ 1.2.1 এই কমিট ধারণ করে.

সংস্করণ 1.2.0

জুলাই 27, 2022

androidx.compose.foundation:foundation:1.2.0 and androidx.compose.foundation:foundation-layout:1.2.0 are released. সংস্করণ 1.2.0 এই কমিট ধারণ করে.

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

  • LazyVerticalGrid and LazyHorizontalGrid are stable now.
  • You can now specify a content type for items in Lazy lists and grids. This will allow the components to reuse elements more efficiently.
  • Lazy lists and grids now have userScrollEnabled param which allows to disable scrolling via the user gestures.
  • A new experimental API called LazyLayout was added. It It is the API we use internally to power Lazy lists and grids.
  • OverscrollEffect API has been introduced as experimental. You can define custom overscroll effects as well as adding a standard platform one to custom scrollable containers.
  • Nested scrolling interoperability APIs have been introduced to allow for interoperability between views and compose scrolling actors.
  • Mouse and trackpad scrolling has been added to all scrolling containers.

সংস্করণ 1.2.0-rc03

জুন 29, 2022

androidx.compose.foundation:foundation:1.2.0-rc03 and androidx.compose.foundation:foundation-layout:1.2.0-rc03 are released. সংস্করণ 1.2.0-rc03 এই কমিট ধারণ করে।

  • 1.2.0-rc02 থেকে কোন পরিবর্তন নেই।

সংস্করণ 1.2.0-rc02

22 জুন, 2022

androidx.compose.foundation:foundation:1.2.0-rc02 and androidx.compose.foundation:foundation-layout:1.2.0-rc02 are released. সংস্করণ 1.2.0-rc02 এই কমিট ধারণ করে।

সংস্করণ 1.2.0-rc01

15 জুন, 2022

androidx.compose.foundation:foundation:1.2.0-rc01 and androidx.compose.foundation:foundation-layout:1.2.0-rc01 are released. সংস্করণ 1.2.0-rc01-এ এই কমিট রয়েছে।

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

  • An experimental OverscrollEffect has been introduced to allow for custom overscroll effects, alongside the Modifier.scrollable overloads that accept it.
  • Experimental LocalOverScrollConfiguration has been moved from foundation.gesture to foundation package and renamed to LocalOverscrollConfiguration ( If19fb , b/204650733 )
  • কম্পোজ লাইব্রেরির ইন্টারফেসগুলি এখন jdk8 ডিফল্ট ইন্টারফেস পদ্ধতি ব্যবহার করে তৈরি করা হয়েছে ( I5bcf1 )
  • Introduced an experimental api checkScrollableContainerConstraints() which allows to check that we do not nest scrollable containers. You can use it when create your own scrollable lazy layouts via LazyLayout . ( Id6fab , b/233352497 )
  • Removed deprecated LazyVerticalGrid from androidx.compose.foundation.lazy package. The new stable api is located in androidx.compose.foundation.lazy.grid ( I73c76 , b/225192009 )

সংস্করণ 1.2.0-beta03

জুন 1, 2022

androidx.compose.foundation:foundation:1.2.0-beta03 and androidx.compose.foundation:foundation-layout:1.2.0-beta03 are released. সংস্করণ 1.2.0-beta03 এই কমিট ধারণ করে।

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

  • Added new experimental IntervalList and MutableIntervalList . It allows to represent some list of values via multiple intervals. It will be useful when you want to define your own dsl similar to the one used by LazyColumn where list items can be defined via multiple item/items calls. ( I2d05e , b/228580728 )

বাগ ফিক্স

  • Clarified the documentation for WindowInsets.ime to state that ime insets are reported as far back as API 23, but only animated on 30+. ( Ia7fc0 , b/230756508 )
  • Pressing the forward delete key when the cursor is at the end of a text field will no longer crash.
  • DeleteSurroundingTextCommand and DeleteSurroundingTextInCodePointsCommand now require their constructor arguments to be non-negative. ( Ica8e6 , b/199919707 )

সংস্করণ 1.2.0-beta02

18 মে, 2022

androidx.compose.foundation:foundation:1.2.0-beta02 and androidx.compose.foundation:foundation-layout:1.2.0-beta02 are released. সংস্করণ 1.2.0-beta02-এ এই কমিট রয়েছে।

  • Downloadable font resolution that does not change the layout size of Text or TextField previously would not redraw, leading to stale font display. This bugfix ensures that text layout always triggers redraw (b/229727404). ( I1d49e , b/229727404 )

সংস্করণ 1.2.0-beta01

11 মে, 2022

androidx.compose.foundation:foundation:1.2.0-beta01 and androidx.compose.foundation:foundation-layout:1.2.0-beta01 are released. সংস্করণ 1.2.0-beta01-এ এই কমিট রয়েছে।

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

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

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

  • Added experimental BeyondBoundsInterval that can be used by custom implementations of LazyList when they layout items beyond visible bounds ( Ifabfb , b/184670295 )
  • LineHeightBehavior is renamed as LineHeightStyle
  • LineVerticalAlignment is renamed as LineHeightStyle.Alignment
  • Renames LineHeightTrim is renamed as LineHeightStyle.Trim
  • Default constructor values from LineHeightStyle is removed ( I582bf , b/181155707 )
  • Added default values for the optional members of LazyLayoutItemProvider interface. ( Iba8a0 )
  • In the LazyLayoutItemProvider api instead of a factory returning the composable lambda by index we now have a simpler composable function Item accepting the index. ( Id2196 )
  • LazyLayoutItemsProvider is renamed to LazyLayoutItemProvider ( I0638c )
  • LazyLayoutItemsProvider.itemsCount is renamed to itemCount ( Id409c )
  • Added Brush to TextStyle and SpanStyle to provide a way to draw text with gradient coloring. ( I53869 , b/187839528 )
  • trimFirstLineTop , trimLastLineBottom attributes of LineHeightBehavior changed into a single enum: LineHeightTrim . LineHeightTrim have values of 4 states defined by two booleans: FirstLineTop , LastLineBottom , Both and None ( Ifc6a5 , b/181155707 )
  • Added LineHeightBehavior to the TextStyle and ParagraphStyle. LineHeightBehavior controls whether line height is applied to the top of the first line and to the bottom of the last line. It also defines the alignment of line in the space provided by TextStyle ( lineHeight ).

    For example it is possible to get a behavior similar to what CSS defines via LineHeightBehavior(alignment = LineVerticalAlignment.Center, trimFirstLineTop=false, trimLastLineBottom = false) .

  • trimFirstLineTop , trimLastLineBottom configurations works correctly only when includeFontPadding is false. ( I97332 , b/181155707 )

  • Added experimental imeNestedScroll() modifier so that developers can control the IME through scrolling. ( I60759 )

বাগ ফিক্স

  • Fixed regression where text fields would not hide the keyboard when removed from the composition while focused. ( I7a410 , b/230536793 , b/225541817 )
  • Support ellipsis when height is limited and doesn't fit all text lines ( Ie528c , b/168720622 )
  • BringIntoViewRequester.bringIntoView will now always suspend until the request is either completed or was interrupted by a newer, non-overlapping request. Overlapping requests will be queued. ( I43e7f , b/216790855 )
  • Concurrent BringIntoViewRequester.bringIntoView calls for rectangles that are completely overlapping will now only honor the larger rectangle's request. ( I34be7 , b/216790855 , b/184760918 )
  • Turned on default includeFontPadding . It is possible to turn off the includeFontPadding using TextStyle.platformTextStyle attribute. In the near future we will change the default behavior however until that time this allows us to better integrate line height improvements (aosp/2058653) and solve TextField clipping issues. ( I01423 , b/171394808 )
  • Modifier.bringIntoViewRequester no longer uses onGloballyPositioned . ( I630f5 )

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

  • MouseInjectionScope.scroll(delta = someDelta) is now inverted on Android if we scroll vertically (if someDelta is positive, it will scroll downward) ( Ifb697 , b/224992993 )

সংস্করণ 1.2.0-alpha08

20 এপ্রিল, 2022

androidx.compose.foundation:foundation:1.2.0-alpha08 and androidx.compose.foundation:foundation-layout:1.2.0-alpha08 are released. সংস্করণ 1.2.0-alpha08 এই কমিট ধারণ করে।

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

  • Display all available weights for systems fonts on Android when using FontFamily.SansSerif . This will use fallback font names like sans-serif-medium internally on API 21-28. This is a behavior change as previously only weights 400 and 700 were supported on API 21-28. ( I380fe , b/156048036 , b/226441992 )
  • Paragraph and MultiParagraph are now accepting Constraints parameter. Passing Constraints.maxHeight is a no-op at the moment but will allow to do some calculation in the future, like ellipsizing based on the height. ( I6afee , b/168720622 )
  • SubcomposeSlotReusePolicy.getSlotsToRetain() now accepts a custom MutableSet-like class which doesn't allow adding new items in it. ( Icd314 )
  • PointerInputChange এ আংশিক খরচ (নিচে বা অবস্থান) অবচয় করা হয়েছে। পরিবর্তনটি সম্পূর্ণরূপে গ্রাস করতে আপনি consume() ব্যবহার করতে পারেন। অন্য কেউ পূর্বে পরিবর্তনটি গ্রহণ করেছে কিনা তা নির্ধারণ করতে আপনি isConsumed ব্যবহার করতে পারেন।
  • PointerInputChange::copy() এখন সর্বদা একটি অগভীর অনুলিপি তৈরি করে। এর মানে হল যে একটি কপি খাওয়া হয়ে গেলে PointerInputChange এর কপিগুলি ব্যবহার করা হবে। আপনি যদি একটি আনবাউন্ড PointerInputChange তৈরি করতে চান তবে পরিবর্তে কনস্ট্রাক্টর ব্যবহার করুন। ( Ie6be4 , b/225669674 )
  • New experimental LazyLayout API is introduced. This allows you to build your own components like LazyColumn of LazyVerticalGrid . Note that the API is in its early stages and can be changed in the future releases. ( Iba2bc , b/166591700 )
  • AndroidFont now takes typefaceLoader as a constructor parameter. ( I2c971 )
  • WindowInsets companion now exposes the visibility (whether they are on the screen, regardless of whether they intersect with the window) and the size they could be if they are available on the device, but not currently active. ( I65182 , b/217770337 )

সংস্করণ 1.2.0-alpha07

6 এপ্রিল, 2022

androidx.compose.foundation:foundation:1.2.0-alpha07 and androidx.compose.foundation:foundation-layout:1.2.0-alpha07 are released. সংস্করণ 1.2.0-alpha07 এই কমিট ধারণ করে।

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

  • Added a PinnableParent API that allows children of lazy layouts to prevent the currently composed items from being disposed ( Ibbdd0 , b/184670295 )
  • LazyListLayoutInfo and LazyGridLayoutInfo now have beforeContentPadding and afterContentPadding fields ( I3b628 , b/200920410 )
  • Added KeyboardType.Decimal as an alternative to Keyboard.Number for specifically including decimal separator in IME. ( Iec4c8 , b/209835363 )
  • Add new font descriptor Font(DeviceFontFamilyName) to optionally lookup system-installed fonts during font fallback chains. ( I30468 , b/219754572 )
  • PointerEventType.Scroll and PointerEvent.scrollDelta are stable APIs now ( I574c5 , b/225669674 )
  • Added temporary compatibility configuration for includeFontPadding in TextStyle/ParagraphStyle. includeFontPadding can be changed via TextStyle(platformStyle = PlatformTextStyle(includeFontPadding = true/false)) . This is a temporary configuration option to enable migration and will be removed. ( If47be , b/171394808 )
  • Updated FontFamily.Resolver to integrate System-wide bold text accessibility setting ( I6c1e7 )
  • The consumeWindowInsets extension property of ComposeView allows developers to disable consumption of Android WindowInsets. This allows separate ComposeViews in the hierarchy to each apply WindowInsets without interfering with each other. ( I0ef08 , b/220943142 )

সংস্করণ 1.2.0-alpha06

23 মার্চ, 2022

androidx.compose.foundation:foundation:1.2.0-alpha06 and androidx.compose.foundation:foundation-layout:1.2.0-alpha06 are released. সংস্করণ 1.2.0-alpha06 এই কমিট ধারণ করে।

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

  • Added RequestFocus semantics action to request focus on the focusable target. ( I17b71 )
  • FocusOrder has now been merged into FocusProperties and focusProperties() now has all the capabilities of focusOrder() . FocusOrder and focusOrder() have been deprecated. focusOrder() that accepts a focusRequester should be replaced with a focusRequester() modifier in combination with focusProperties() . This allows the modifiers to have a stronger separation of concerns. ( I601b7 )
  • WindowInsets.asPaddingValues(Density) was added to allow developers to do the conversion without needing to be in composition. ( I94c35 )
  • Updated parsing of vector drawables to support auto mirroring to flip the content of a VectorPainter if the current layout direction is RTL. ( I79cd9 , b/185760237 )

বাগ ফিক্স

  • Scroll modifiers ( Modifier.verticalScroll() , Modifier.horizontalScroll() , and Modifier.scrollable() ) will now scroll to keep the focused composable visible if the scroll area is resized and the focused composable was previously visible.
  • TextFields will now be kept above the keyboard when they are focused and the keyboard is shown, when inside a non-lazy scrollable and the soft input mode is ADJUST_RESIZE . ( I4a485 , b/190539358 , b/192043120 , b/216842427 )

সংস্করণ 1.2.0-alpha05

9 মার্চ, 2022

androidx.compose.foundation:foundation:1.2.0-alpha05 and androidx.compose.foundation:foundation-layout:1.2.0-alpha05 are released. সংস্করণ 1.2.0-alpha05 এই কমিট ধারণ করে।

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

  • LazyVerticalGrid এবং LazyHorizontalGrid এখন স্থিতিশীল। ( I307c0 )
  • LazyGridItemInfo.Unknown was replaced with separate LazyGridItemInfo.UnknownRow and LazyGridItemInfo.UnknownColumn ( I56d51 )
  • LazyVerticalGrid / LazyHorizontalGrid and all related apis were moved into .grid subpackage. Please update your imports from androidx.compose.foundation.lazy to androidx.compose.foundation.lazy.grid . ( I2d446 , b/219942574 )
  • পাঠ্য: includeFontPadding এখন ডিফল্টরূপে বন্ধ করা হয়েছে। includeFontPadding=false এর ফলে ক্লিপিং সমস্যাগুলি পরিচালনা করা হয় এবং লম্বা স্ক্রিপ্টগুলির জন্য কোনও ক্লিপিং করা উচিত নয়। ( I31c84 , b/171394808 )
  • Measured interface now exposes parentData property ( I3313f )
  • Introduced experimental Modifier.onFocusedBoundsChanged to allow observing the bounds of child focusables. ( I14283 , b/220030968 , b/190539358 , b/192043120 , b/216842427 )
  • LazyHorizontalGrid was added. ( I61ae7 , b/191238807 )
  • ক্রস অক্ষের আকার ( I17723 ) নির্ধারণ করতে একটি নতুন LazyVerticalGrid API যোগ করা হয়েছে
  • Added FocusGroup modifier ( I64bc0 , b/213508274 , b/184670295 )

বাগ ফিক্স

  • WindowInsets.toString() will now show the correct values. ( I1585d )

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

  • Updated to use Kotlinx coroutines 1.6.0 ( I3366d )

সংস্করণ 1.2.0-alpha04

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

androidx.compose.foundation:foundation:1.2.0-alpha04 and androidx.compose.foundation:foundation-layout:1.2.0-alpha04 are released. সংস্করণ 1.2.0-alpha04 এই কমিট ধারণ করে।

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

  • BringIntoViewResponders are no longer required to manually pass requests up to parent responders, and are instead required to immediately return the rectangle they want their parent to bring into view. ( I8e66a )
  • Support async font loading in Text ( I77057 , b/214587005 )
  • LazyVerticalGrid now supports line breaking before items with span not fitting inside the current line. ( I05c40 , b/207462103 )
  • Renamed excludeFromSystemGestures to systemGesturesExclusion ( I19526 )
  • LazyVerticalGrid now supports reverseLayout. ( I6d7d7 , b/215572963 , b/211753558 )
  • Add WindowInsets.only() method to allow developers to include only dimensions from the WindowInsets. ( I14c94 , b/217768486 )
  • ComposableTarget , ComposableTargetMarker এবং ComposableOpenTarget যোগ করা হয়েছে যা কম্পাইল টাইম রিপোর্টিংয়ের অনুমতি দেয় যখন একটি কম্পোজেবল ফাংশনকে টার্গেটিং বলা হয় একটি অ্যাপ্লায়ারের ব্যবহার করার জন্য ডিজাইন করা হয়নি।

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

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

বাগ ফিক্স

  • Now it is allowed to pass negative scroll offsets into LazyGridState.scrollToItem() and LazyGridState.animateScrollToItem() . ( I025c6 , b/211753558 )
  • Support async font loading for TextField. ( Icc4bf , b/214587005 )

সংস্করণ 1.2.0-alpha03

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

androidx.compose.foundation:foundation:1.2.0-alpha03 and androidx.compose.foundation:foundation-layout:1.2.0-alpha03 are released. সংস্করণ 1.2.0-alpha03 এই কমিট ধারণ করে।

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

  • notifyFocusedRect methods in TextInputSession and TextInputService are now deprecated and won't be called. Use BringIntoViewRequester instead. ( Ia4302 , b/192043120 , b/216842427 , b/178211874 )
  • Animations were enabled for items of lazy grids with Modifier.animateItemPlacement(). ( Ib6621 , b/211753218 )
  • BringIntoViewRequester now propagates requests to the hosting Android View. ( Ia7a51 )
  • FontFamilyResolver is now available via LocalFontFamilyResolver.current
    • Added createFontFamilyResolver(context) and createFontFamilyResolver(context, coroutineScope) to create new FontFamily resolvers outside of compose usage.
    • Paragraph and MultiParagraph now take FontFamily.Resolver
    • TextLayoutResult.layoutInput.fontFamilyResolver now contains the resolver used for this layout, deprecated TextLayoutResult.layoutInput.resourceLoader as it is no longer used. ( Id5a45 , b/174162090 )
  • Added AndroidFont , a new low-level API for providing new types of font resource descriptors on Android. For example, loading fonts from an app-specific backend, optionally locating pre-installed fonts on-device, or loading a font from a resource not provided by the current Font factories.
    • Expanded Font.ResourceLoaded API to support optional and async font loading. It is not recommended that application developers use this API directly. To add new types of fonts see AndroidFont.
    • Font.AndroidResourceLoader extension function allows construction of a Font.ResourceLoader when outside of composition.
    • Added loadingStrategy parameter to resource-based fonts, to allow async loading when resource font references downloadable fonts XML. ( Ie5aea , b/174162090 )
  • Typeface(FontFamily) constructor is deprecated. This was previously used to preload fonts, which may take up to 10 seconds for downloadable fonts. With downloadable fonts, this call may block for 10 seconds. Instead use FontFamilyResolver.preload
    • fontResource(FontFamily): Typeface is deprecated. This was previously used to preload fonts, which may take up to 10 seconds for downloadable fonts. Instead use FontFamilyResolver.preload ( If8e7c , b/174162090 )
  • You can now specify the content type for the items of LazyVerticalGrid - item/items functions on LazyGridScope now accept such parameter. Providing such information helps item composition reusing logic to make it more efficiently and only reuse the content between the items of similar type. ( I7b355 , b/215372836 )
  • LazyListLayoutInfo and LazyGridLayoutInfo now have new properties: viewportSize , orientation , reverseLayout ( Ifc8ed , b/200920410 )
  • You can now specify the content type for the items of LazyColumn/LazyRow - item/items functions on LazyListScope now accept such parameter. Providing such information helps item composition reusing logic to make it more efficiently and only reuse the content between the items of similar type. ( I26506 )
  • SubcomposeLayoutState constructor accepting maxSlotsToRetainForReuse is now deprecated. Instead there is a new constructor accepting SubcomposeSlotReusePolicy - a new interface allowing more granular control on what slots should be retained for the future reuse. ( I52c4d )
  • Adds Modifiers for WindowInsets, both for padding and sizing. This allows some content to extend into the inset area, and still have primary content stay out of the inset area. For example, windowInsetsPadding can be used to pad the content area to avoid areas that may be fully or partially covered. ( Id0395 , b/213942085 )

বাগ ফিক্স

  • TextFields will now be kept above the keyboard when they are focused and the keyboard is shown, when the soft input mode is ADJUST_PAN . ( I8eaeb , b/190539358 , b/192043120 )
  • Desktop uses composition local for FontFamily.Resolver
    • Desktop FontLoader is deprecated
    • New createFontFamilyResolver factory on Desktop ( I6bbbb , b/174162090 )
  • The soft keyboard input type no longer flickers when changing focus between text fields. ( I1bf50 , b/187746439 )
  • Text fields no longer require an extra back press when the cursor handle is showing. ( Ideb4b , b/205726883 )
  • Text selection magnifier behavior has been polished to match the platform magnifier. ( Idd918 , b/206833278 )

সংস্করণ 1.2.0-alpha02

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

androidx.compose.foundation:foundation:1.2.0-alpha02 and androidx.compose.foundation:foundation-layout:1.2.0-alpha02 are released. সংস্করণ 1.2.0-alpha02 এই কমিট ধারণ করে।

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

  • জটিল যুক্তি ছাড়া বিদ্যমান পদ্ধতির ওভারলোড পদ্ধতিতে NonRestartableComposable যোগ করা হয়েছে। এটি সমস্ত প্যারামিটারের জন্য কম্পাইলার জেনারেটেড মেমোাইজেশন চেক (সমান) হ্রাস করে যা বলা হয় ভিতরের ফাংশনে পুনরাবৃত্তি হয়। ( I90490 )
  • Added excludeFromSystemGesture Modifiers for easy access to Android's setSystemGestureExclusionRects ( I46f07 )

বাগ ফিক্স

  • Text selection magnifier behavior has been polished to match the platform magnifier. ( Idd918 , b/206833278 )
  • LazyColumn , LazyRow , Modifier.verticalScroll and other containers that use Modifier.scrollable now support mouse wheel scrolling. ( I2b5e1 , b/198214718 )

সংস্করণ 1.2.0-alpha01

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

androidx.compose.foundation:foundation:1.2.0-alpha01 and androidx.compose.foundation:foundation-layout:1.2.0-alpha01 are released. সংস্করণ 1.2.0-alpha01-এ এই কমিট রয়েছে।

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

  • New parameter userScrollEnabled was added to LazyColumn , LazyRow , and LazyVerticalGrid in order to allow users to temporarily or permanently disable the user initiated scroll via touch gestures or accessibility actions. Scrolling programmatically via the methods on the state will still be allowed. ( I7eae9 , b/201150093 )
  • Add onSizeChanged callback to magnifier modifier. ( I6879f )
  • The magnifier widget now shows when dragging selection handles in a SelectionContainer . ( I30b38 , b/139320979 )

বাগ ফিক্স

  • Fixes TextField cursor handle not hiding when scrolled out of view. ( I14552 , b/208883748 )

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

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

সংস্করণ 1.1

সংস্করণ 1.1.1

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

androidx.compose.foundation:foundation:1.1.1 and androidx.compose.foundation:foundation-layout:1.1.1 are released. সংস্করণ 1.1.1 এই কমিট ধারণ করে.

বাগ ফিক্স

  • androidx.compose.ui.platform.RenderNodeLayer.updateDisplayListNullPointerException ঠিক করুন ( aosp/1947059 , b/206677462 )
  • অ্যান্ড্রয়েডে ক্লিপবোর্ড থেকে পড়ার সময় ক্লিপবোর্ড সামগ্রীর কারণে সৃষ্ট ক্র্যাশের সমাধান করুন। ( I06020 , b/197769306 )
  • LazyVerticalGrid এ স্থির RTL ( aosp/1931080 , b/207510535 )

সংস্করণ 1.1.0

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

androidx.compose.foundation:foundation:1.1.0 and androidx.compose.foundation:foundation-layout:1.1.0 are released. সংস্করণ 1.1.0 এই কমিট ধারণ করে.

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

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

সংস্করণ 1.1.0-rc03

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

androidx.compose.foundation:foundation:1.1.0-rc03 and androidx.compose.foundation:foundation-layout:1.1.0-rc03 are released. সংস্করণ 1.1.0-rc03 এই কমিট ধারণ করে।

বাগ ফিক্স

  • কম্পোজ ম্যাটেরিয়াল 1.1.0-rc03 সমর্থন করার জন্য আপডেট করা হয়েছে

সংস্করণ 1.1.0-rc01

15 ডিসেম্বর, 2021

androidx.compose.foundation:foundation:1.1.0-rc01 and androidx.compose.foundation:foundation-layout:1.1.0-rc01 are released. সংস্করণ 1.1.0-rc01-এ এই কমিট রয়েছে।

বাগ ফিক্স

  • Now it is allowed to pass negative scroll offsets into LazyListState.scrollToItem() and LazyListState.animateScrollToItem() . ( Iceb90 , b/184252837 )
  • Fixed a bug that caused missing accessibility scroll actions ( I7cbfb )

সংস্করণ 1.1.0-beta04

ডিসেম্বর 1, 2021

androidx.compose.foundation:foundation:1.1.0-beta04 and androidx.compose.foundation:foundation-layout:1.1.0-beta04 are released. সংস্করণ 1.1.0-beta04-এ এই কমিট রয়েছে।

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

  • Kotlin 1.6.0 এর সাথে সামঞ্জস্যপূর্ণ হতে আপডেট করা হয়েছে

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

  • Cleaned up nullability in androidx.core.view ( I7078a , b/204917439 )
  • Experimental APIs were added that allow to consume PointerInputchange as a whole or check whether it was consumed or not. ( I2e59d )
  • Show a magnifier widget when dragging the cursor or selection handles inside text fields. ( I5391e , b/203781358 )

বাগ ফিক্স

  • Fix text handles not moving when IME visibility changes. ( I25f2e )

সংস্করণ 1.1.0-beta03

17 নভেম্বর, 2021

androidx.compose.foundation:foundation:1.1.0-beta03 and androidx.compose.foundation:foundation-layout:1.1.0-beta03 are released. সংস্করণ 1.1.0-beta03-এ এই কমিট রয়েছে।

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

  • Support for horizontal spans was added to LazyVerticalGrid. ( I7e2fa , b/176758183 )
  • Experimental ability to animate Lazy lists item positions was added. There is a new modifier available within LazyItemScope called Modifier.animateItemPlacement() . ব্যবহারের উদাহরণ:

      var list by remember { mutableStateOf(listOf("A", "B", "C")) }
      LazyColumn {
          item {
              Button(onClick = { list = list.shuffled() }) {
                  Text("Shuffle")
              }
          }
          items(list, key = { it }) {
              Text("Item $it", Modifier.animateItemPlacement())
          }
      }
    
    • When you provide a key via LazyListScope.item or LazyListScope.items this modifier will enable item reordering animations. Aside from item reordering all other position changes caused by events like arrangement or alignment changes will also be animated. ( I59e7b , b/150812265 )

সংস্করণ 1.1.0-beta02

3 নভেম্বর, 2021

androidx.compose.foundation:foundation:1.1.0-beta02 and androidx.compose.foundation:foundation-layout:1.1.0-beta02 are released. 1.1.0-beta02 সংস্করণে এই কমিট রয়েছে।

বাগ ফিক্স

  • লহর এবং অন্যান্য ইঙ্গিতগুলি এখন কেবল তখনই বিলম্বিত হবে যদি সেগুলি একটি Modifier.scrollable() কন্টেইনারের মধ্যে থাকে, একটি ডাউন ইভেন্টের জন্য সর্বদা বিলম্বিত হওয়ার পরিবর্তে। ( Ibefe0 , b/203141462 )
  • Added experimental BringIntoView API that lets you send a request to parents so that they scroll to bring an item into view ( Ib918d , b/195353459 )

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

  • Added Modifier.pointerHoverIcon ( I95f01 )

সংস্করণ 1.1.0-beta01

27 অক্টোবর, 2021

androidx.compose.foundation:foundation:1.1.0-beta01 and androidx.compose.foundation:foundation-layout:1.1.0-beta01 are released. সংস্করণ 1.1.0-beta01-এ এই কমিট রয়েছে।

বাগ ফিক্স

  • Added experimental BringIntoView API that lets you send a request to parents so that they scroll to bring an item into view ( Ib918d , b/195353459 )

সংস্করণ 1.1.0-alpha06

13 অক্টোবর, 2021

androidx.compose.foundation:foundation:1.1.0-alpha06 and androidx.compose.foundation:foundation-layout:1.1.0-alpha06 are released. সংস্করণ 1.1.0-alpha06-এ এই কমিট রয়েছে।

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

  • লেআউটের জন্য একটি শিশু-কম ওভারলোড যোগ করা হয়েছে, উন্নত দক্ষতার সাথে ( Ib0d9a )
  • SemanticsNodeInteraction.performSemanticsAction now returns the SemanticsNodeInteraction on which the function was called. ( I9e5db )
  • Added performScrollToNode(matcher: SemanticsMatcher) that scrolls a scrollable container to the content that is matched by the given matcher. ( Ic1cb8 )

সংস্করণ 1.1.0-alpha05

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

androidx.compose.foundation:foundation:1.1.0-alpha05 and androidx.compose.foundation:foundation-layout:1.1.0-alpha05 are released. সংস্করণ 1.1.0-alpha05 এই কমিট ধারণ করে।

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

বাগ ফিক্স

  • Fixed accessibility support for scrollables (both lazy and non-lazy) with respect to scrolling ( I6cdb0 )

সংস্করণ 1.1.0-alpha04

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

androidx.compose.foundation:foundation:1.1.0-alpha04 and androidx.compose.foundation:foundation-layout:1.1.0-alpha04 are released. সংস্করণ 1.1.0-alpha04 এই কমিট ধারণ করে।

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

  • অপ্রচলিত performGesture এবং GestureScope , যা performTouchInput এবং TouchInjectionScope দ্বারা প্রতিস্থাপিত হয়েছে। ( IA5f3f , b/190493367 )
  • SemanticsNodetouchBoundsInRoot যোগ করা হয়েছে যাতে ন্যূনতম টাচ টার্গেট সাইজ অন্তর্ভুক্ত থাকে যাতে ডেভেলপাররা নিশ্চিত করতে পারে যে টাচ টার্গেট অ্যাক্সেসযোগ্যতা ন্যূনতম পূরণ করে। ( I2e14b , b/197751214 )

বাগ ফিক্স

  • Support for stretch overscroll has been added on Android 12 devices. ( Iccf3c , b/171682480 )

সংস্করণ 1.1.0-alpha03

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

androidx.compose.foundation:foundation:1.1.0-alpha03 and androidx.compose.foundation:foundation-layout:1.1.0-alpha03 are released. সংস্করণ 1.1.0-alpha03 এই কমিট ধারণ করে।

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

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

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

  • Glow effect for scroll has been added. New experimental OverScrollConfiguration API has been added to allow for configuration of the overscroll visual effect. Provide null to turn off the overscroll effect. ( I0c304 , b/171682480 )
  • AwaitPointerEventScope now has withTimeout() and withTimeoutOrNull() ( I507f0 , b/179239764 , b/182397793 )
  • ক্লিপ করা সীমানা পেতে পরীক্ষার পদ্ধতি যোগ করা হয়েছে। ( I6b28e )
  • অ্যাক্সেসযোগ্যতা নিশ্চিত করতে শব্দার্থবিদ্যা এবং পয়েন্টার ইনপুটে ব্যবহারের জন্য ভিউ কনফিগারেশনে ন্যূনতম টাচ টার্গেট আকার যোগ করা হয়েছে। ( IE861c )

সংস্করণ 1.1.0-alpha02

18 আগস্ট, 2021

androidx.compose.foundation:foundation:1.1.0-alpha02 and androidx.compose.foundation:foundation-layout:1.1.0-alpha02 are released. সংস্করণ 1.1.0-alpha02 এই কমিট ধারণ করে।

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

সংস্করণ 1.1.0-alpha01

4 আগস্ট, 2021

androidx.compose.foundation:foundation:1.1.0-alpha01 and androidx.compose.foundation:foundation-layout:1.1.0-alpha01 are released. সংস্করণ 1.1.0-alpha01-এ এই কমিট রয়েছে।

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

  • আপডেট করা DrawScope#drawImage পদ্ধতি যা একটি ঐচ্ছিক ফিল্টার কোয়ালিটি প্যারামিটার ব্যবহার করতে উৎস এবং গন্তব্য রেক্ট ব্যবহার করে। এটি পিক্সেল শিল্পের জন্য উপযোগী যা পিক্সেল ভিত্তিক শিল্পের জন্য স্কেল আপ করার সময় পিক্সেল করার উদ্দেশ্যে করা হয়। একটি ঐচ্ছিক ফিল্টার কোয়ালিটি প্যারামিটার ( Ie4fb0 , b/180311607 ) ব্যবহার করার জন্য আপডেট করা BitmapPainter + চিত্র কম্পোজযোগ্য
  • TextField now clears selection when back button is pressed, which matches Android EditText behavior. ( I3ca16 , b/174173645 )
  • Add Cursor Handle. ( I07a82 , b/173016579 )

বাগ ফিক্স

  • Scrolling via semantics actions for lazy lists and regular scrolling components is now animated ( Id9066 , b/190742024 )

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

  • LazyVerticalGrid now accepts both horizontal and vertical arrangement parameters. ( If9c92 )

সংস্করণ 1.0

সংস্করণ 1.0.5

3 নভেম্বর, 2021

androidx.compose.foundation:foundation:1.0.5 and androidx.compose.foundation:foundation-layout:1.0.5 are released. সংস্করণ 1.0.5 এই কমিট ধারণ করে.

বাগ ফিক্স

  • একটি ক্র্যাশ ট্র্যাকিং derivedStateOf দৃষ্টান্ত সংশোধন করা হয়েছে. ( aosp/1792247 )

সংস্করণ 1.0.4

13 অক্টোবর, 2021

androidx.compose.foundation:foundation:1.0.4 and androidx.compose.foundation:foundation-layout:1.0.4 are released. সংস্করণ 1.0.4 এই কমিট ধারণ করে.

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

  • Kotlin 1.5.31 এর উপর নির্ভর করার জন্য আপডেট করা হয়েছে

সংস্করণ 1.0.3

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

androidx.compose.foundation:foundation:1.0.3 and androidx.compose.foundation:foundation-layout:1.0.3 are released. সংস্করণ 1.0.3 এই কমিট ধারণ করে.

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

  • Kotlin 1.5.30 এর উপর নির্ভর করে আপডেট করা হয়েছে

সংস্করণ 1.0.2

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

androidx.compose.foundation:foundation:1.0.2 and androidx.compose.foundation:foundation-layout:1.0.2 are released. সংস্করণ 1.0.2 এই কমিট ধারণ করে.

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

সংস্করণ 1.0.1

4 আগস্ট, 2021

androidx.compose.foundation:foundation:1.0.1 and androidx.compose.foundation:foundation-layout:1.0.1 are released. সংস্করণ 1.0.1 এই কমিট ধারণ করে.

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

  • Kotlin 1.5.21 এর উপর নির্ভর করার জন্য আপডেট করা হয়েছে।

সংস্করণ 1.0.0

28 জুলাই, 2021

androidx.compose.foundation:foundation:1.0.0 and androidx.compose.foundation:foundation-layout:1.0.0 are released. সংস্করণ 1.0.0 এই কমিট ধারণ করে.

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

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

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

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

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

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

সংস্করণ 1.0.0-rc02

14 জুলাই, 2021

androidx.compose.foundation:foundation:1.0.0-rc02 and androidx.compose.foundation:foundation-layout:1.0.0-rc02 are released. সংস্করণ 1.0.0-rc02 এই কমিট ধারণ করে।

  • Updated border rendering for generic shapes to address issues with paths defined with fixed dimensions. ( aosp/1748871 , b/191817116 )

সংস্করণ 1.0.0-rc01

জুলাই 1, 2021

androidx.compose.foundation:foundation:1.0.0-rc01 and androidx.compose.foundation:foundation-layout:1.0.0-rc01 are released. সংস্করণ 1.0.0-rc01 এই কমিট ধারণ করে।

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

  • Canvas now supports a contentDescription parameter for accessibility. ( Ib547c )

বাগ ফিক্স

  • Disabled Button, Card, Checkboxes and overall Modifier.clickable(enabled=false) will block clicks from going up to the parent. ( Ic2c3b , b/183908811 )

সংস্করণ 1.0.0-beta09

16 জুন, 2021

androidx.compose.foundation:foundation:1.0.0-beta09 and androidx.compose.foundation:foundation-layout:1.0.0-beta09 are released. সংস্করণ 1.0.0-beta09-এ এই কমিট রয়েছে।

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

  • Removed ManualFrameClock . If you need to control animations, use composeTestRule.mainClock instead. ( I3c3e8 , b/189951065 )
  • change enum Role and LiveRegionMode to inline classes with private constructor ( Id1890 )
  • KeyboardCapitalization is converted into inline class. ( Id5a1c )
  • TextOverflow একটি ইনলাইন ক্লাসে পরিবর্তিত হয়। ( I433af )

বাগ ফিক্স

  • Now when you specify the unique keys for LazyColumn/Row items the scroll position will be maintained based on the key, which means if you add/remove items before the current visible item the item with the given key will be kept as the first visible one . ( Id263f , b/184257857 )
  • Key constants are @ExperimentalComposeUiApi for now. Consuming code can declare private constants prior to stabilization. ( Ia5d48 )
  • Added IdlingStrategy to AndroidComposeTestRule that can be used by testing frameworks to install an alternative mechanism to await or achieve quiescence. Use AndroidComposeTestRule.setIdlingStrategyFactory() before your test starts to install your own strategy. ( I608fa )

প্রোফাইল নিয়ম যোগ করা হয়েছে

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

  • androidx.compose.animation
  • androidx.compose.animation-core
  • androidx.compose.foundation
  • androidx.compose.foundation-লেআউট
  • androidx.compose.material
  • androidx.compose.material-ripple
  • 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 এ নির্দিষ্ট করা আছে। ফাইলটি প্রতি লাইনে একটি নিয়ম নির্দিষ্ট করে, যেখানে এই ক্ষেত্রে একটি নিয়ম হল লাইব্রেরির মেথড বা ক্লাসের সাথে মেলানোর জন্য একটি প্যাটার্ন। এই নিয়মগুলির জন্য সিনট্যাক্স হল মানব-পঠনযোগ্য ART প্রোফাইল বিন্যাসের একটি সুপারসেট যা 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 আছে এমন একটি পদ্ধতি নির্দেশ করে যে এটি একটি পদ্ধতি যা স্টার্টআপের পরে বলা হয়।

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

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

  • লাইব্রেরিগুলি এই নিয়মগুলি সংজ্ঞায়িত করতে পারে যা AAR আর্টিফ্যাক্টগুলিতে প্যাকেজ করা হবে৷ When an app is then built which includes these artifacts, these rules are merged together and the merged rules are used to build a compact binary ART profile that is specific to the app. ART can then leverage this profile when the app is installed on devices in order to ahead-of-time compile a specific subset of the application to improve the performance of the application, especially the first run. মনে রাখবেন যে এটি ডিবাগযোগ্য অ্যাপ্লিকেশনগুলিতে কোন প্রভাব ফেলবে না৷

সংস্করণ 1.0.0-beta08

2 জুন, 2021

androidx.compose.foundation:foundation:1.0.0-beta08 and androidx.compose.foundation:foundation-layout:1.0.0-beta08 are released. সংস্করণ 1.0.0-beta08-এ এই কমিট রয়েছে।

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

  • NestedScrollSource enum is replaced by an inline class. ( Ie321b , b/187055290 )
  • বিবৃতি যখন নতুন enum মান যোগ করা হয় তখন সম্পূর্ণ সমস্যা এড়াতে ইনলাইন ক্লাসে refactored enum ব্যবহার করে। ( I2b5eb )
  • একটি স্ক্রল/ড্র্যাগের সময় একটি লহর দেখানো রোধ করতে ক্লিকযোগ্য/টগলযোগ্য করার জন্য একটি ট্যাপ টাইমআউট যোগ করে ( Ia2704 , b/168524931 )
  • ContentDescription এবং Text semantics বৈশিষ্ট্য আর একক মান নয় বরং তালিকা। এটি তাদের একত্রীকরণ করতে সক্ষম করে যেমন তারা সংযুক্তির পরিবর্তে। এছাড়াও এই পরিবর্তনগুলি ব্যবহার করার জন্য আরও ভাল টেস্টিং API প্রদান করা হয়েছে ( Ica6bf , b/184825850 )
  • Modifier.focusModifier() বাতিল করা হয়েছে এবং Modifier.focusTarget() ( I6c860 ) দ্বারা প্রতিস্থাপিত হয়েছে
  • KeyboardType enum is replaced by an inline class. ( I73045 , b/187055290 )
  • একটি FocusState ইন্টারফেস দিয়ে প্রতিস্থাপিত FocusState enum ( Iccc1a , b/187055290 )
  • ImeAction enum is replaced by an inline class. ( I18be5 , b/187055290 )
  • AnnotatedString.withAnnotation functions are now ExperimentalTextApi instead of ExperimentalComposeApi. ( I0cd0a )
    • TextUnit constructor with TextUnitType is now ExperimentalTextApi instead of ExperimentalComposeApi.
  • PaddingValues is now @Stable rather than @Immutable ( I88c50 )

বাগ ফিক্স

  • Fix crashes of long press the blank area in non-empty text. ( I33ab5 , b/187437299 )
  • Show Toolbar after SelectAll ( I495d9 , b/185919613 )
  • Fix for scrollable containers clipping its children on the cross axis. It was easily reproducible if you have a LazyRow with Card items. now the shadow will not be clipped. ( Icb635 , b/186318448 )
  • Fixed an issue where ripples / other indication would sometimes get stuck on a long click when using Modifier.combinedClickable ( I2298c , b/186223077 )
  • Now detectDragGesures , detectVerticalGestures , and detectHorizontalGestures will consume the position change automatically, no need to call change.consumePositionChange in the onDrag callbacks ( I42fc4 , b/185096350 , b/187320697 )
  • Modifier.onGloballyPositioned() পরিবর্তন করা হয়েছে এই মডিফায়ারের স্থানাঙ্কগুলিকে মডিফায়ার চেইনে রিপোর্ট করার জন্য, সমস্ত মডিফায়ার প্রয়োগ করার পরে লেআউট স্থানাঙ্কগুলি নয়৷ এর মানে হল যে এখন সংশোধকগুলির ক্রম কী স্থানাঙ্ক রিপোর্ট করা হবে তা প্রভাবিত করছে। ( Ieb67d , b/177926591 )

সংস্করণ 1.0.0-beta07

18 মে, 2021

androidx.compose.foundation:foundation:1.0.0-beta07 and androidx.compose.foundation:foundation-layout:1.0.0-beta07 are released. সংস্করণ 1.0.0-beta07-এ এই কমিট রয়েছে।

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

বাগ ফিক্স

  • LazyColumn/Row will now keep up to 2 previously visible items active (not disposed) even when they are scrolled out already. This allows the component to reuse the active subcompositions when we will need to compose a new item which improves the scrolling performance. ( Ie5555 )
  • Remove paintBackground. ( I38660 )
  • Draw Selection Background using DrawScope. ( I73c61 , b/186674472 )
  • A beta06 regression affecting Row/Column using spacedBy arrangements to layout weighted children was fixed. ( Ifaf8c , b/187326588 )

সংস্করণ 1.0.0-beta06

5 মে, 2021

androidx.compose.foundation:foundation:1.0.0-beta06 and androidx.compose.foundation:foundation-layout:1.0.0-beta06 are released. সংস্করণ 1.0.0-beta06-এ এই কমিট রয়েছে।

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

  • Solve Conflict with Navigation Gesture ( I1145e )
  • যোগ করা হয়েছে CollectionInfo এবং CollectionItemInfo অ্যাক্সেসিবিলিটি API যা অ্যাক্সেসিবিলিটি পরিষেবার জন্য সংগ্রহ এবং এর আইটেমগুলিকে চিহ্নিত করার অনুমতি দেয় ( Id54ef , b/180479017 )
  • Added SemanticsActions.ScrollToIndex to scroll a list with indexed items to the item with a certain index, and SemanticsProperties.IndexForKey to get the index of an item in a list with keyed items. Both actions are implemented by LazyList.
    • Added SemanticsNodeInteraction.performScrollToIndex that scrolls a list to the given index, and SemanticsNodeInteraction.performScrollToKey that scrolls a list to the item with the given key. ( I4fe63 , b/178483889 , b/161584524 )
  • AnnotatedString save support to TextFieldValue.Saver. Added addTtsAnnotation and withAnnotation utility functions to AnnotatedString.Builder ( I8cbdc , b/178446304 )
  • Default 0.dp parameter values were added to PaddingValues(horizontal, vertical) ( I05571 , b/181336792 )

বাগ ফিক্স

  • সারি ও কলামের weight(fill = false) সহ বাচ্চারা আর অভিভাবককে পুরো উপলব্ধ মূল অক্ষের স্থান পূরণ করতে বাধ্য করছে না। ( Ied94d , b/186012444 , b/184355105 )

সংস্করণ 1.0.0-beta05

21 এপ্রিল, 2021

androidx.compose.foundation:foundation:1.0.0-beta05 and androidx.compose.foundation:foundation-layout:1.0.0-beta05 are released. সংস্করণ 1.0.0-beta05-এ এই কমিট রয়েছে।

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

  • FlingBehavior interface is now marked as @Stable. All implementations should comply with the @Stable contract. ( I93354 , b/184830577 )

বাগ ফিক্স

  • Fixed ACTION_SCROLL_FORWARD , ACTION_SCROLL_BACKWARD , accessibilityActionScrollLeft , accessibilityActionScrollUp , accessibilityActionScrollRight and accessibilityActionScrollDown accessibility scroll actions. Instead of scrolling to the end of the scrollable, it will now scroll by one screen in the given direction. ( Ieccb0 )
  • The AndroidManifest files from ui-test-manifest and ui-tooling-data are now compatible with Android 12 ( I6f9de , b/184718994 )

সংস্করণ 1.0.0-beta04

7 এপ্রিল, 2021

androidx.compose.foundation:foundation:1.0.0-beta04 and androidx.compose.foundation:foundation-layout:1.0.0-beta04 are released. সংস্করণ 1.0.0-beta04-এ এই কমিট রয়েছে।

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

  • যথাক্রমে hide() এবং show() করতে সফটওয়্যারকিবোর্ড কন্ট্রোলারে hideSoftwareKeyboard এবং showSoftwareKeyboard এর নাম পরিবর্তন করুন।
    • LocalSoftwareKeyboardController-এর জন্য সম্পূর্ণ CompositionLocal ইন্টারফেস প্রদান করুন, এটি সেট করার অনুমতি দিন (বিশেষ করে পরীক্ষায় উপযোগী) ( I579a6 )
  • TextOverflow.Visible is introduced. ( Ic8f89 )
  • Public instances of RowScope , ColumnScope , BoxScope , BoxWithConstraintsScope were removed. ( I4e83e , b/181869067 )

বাগ ফিক্স

  • Fixed the issue when items of LazyColumn / LazyRow located on the edges were incorrectly positioned after fast fling ( Ie4d13 , b/183877420 )
  • Prior to this change, local composable functions were skippable based on their parameters. After this change, no local composable functions will skip. This change is done because it is common and expected for local functions to capture parameters from the parent and them skipping is a common source of bugs.

    To summarize, consider the example:

    @Composable fun Counter(count: Int, onCountChange: (Int) -> Unit) {
      @Composable fun ShowCount() { Text("Count: $count") }
      ShowCount()
      Button(onClick={ onCountChange(count + 1) }) {
        Text("Increment")
      }
    }
    

    Prior to this change, the ShowCount composable function would always skip, even after the count parameter was updated. এখন আর সেই অবস্থা নেই। ( I5648a )

সংস্করণ 1.0.0-beta03

24 মার্চ, 2021

androidx.compose.foundation:foundation:1.0.0-beta03 and androidx.compose.foundation:foundation-layout:1.0.0-beta03 are released. সংস্করণ 1.0.0-beta03 এই কমিট ধারণ করে।

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

  • DefaultMonotonicFrameClock বাতিল করা হয়েছে। withFrameNanos বা Recomposer.runRecomposeAndApplyChanges সাথে কল করা কোনো MonotonicFrameClock ছাড়াই এখন IllegalStateException নিক্ষেপ করবে। ( I4eb0d )

বাগ ফিক্স

  • FlingBehavior.performFling() is now called even when velocity is 0 ( I0b6e5 , b/181237123 )

সংস্করণ 1.0.0-beta02

10 মার্চ, 2021

androidx.compose.foundation:foundation:1.0.0-beta02 and androidx.compose.foundation:foundation-layout:1.0.0-beta02 are released. সংস্করণ 1.0.0-beta02-এ এই কমিট রয়েছে।

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

  • Multiple small optimizations in LazyColumn measuring logic were added ( Ic6889 )
  • TextField-এ আগের SoftwareKeyboardController ইন্টারফেস প্রতিস্থাপন করতে নতুন LocalSoftwareKeyboardController রচনা স্থানীয় API যোগ করা হয়েছে। ( I5951e , b/168778053 )
  • TextField-এ আগের SoftwareKeyboardController ইন্টারফেস প্রতিস্থাপন করতে নতুন LocalSoftwareKeyboardController রচনা স্থানীয় API যোগ করা হয়েছে। ( I84472 , b/168778053 )

বাগ ফিক্স

  • পরীক্ষামূলক API ( I6aa29 , b/174531520 ) এর সর্বজনীন ব্যবহারের উপর বিধিনিষেধ প্রয়োগ করুন

সংস্করণ 1.0.0-beta01

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

androidx.compose.foundation:foundation:1.0.0-beta01 and androidx.compose.foundation:foundation-layout:1.0.0-beta01 are released. সংস্করণ 1.0.0-beta01-এ এই কমিট রয়েছে।

এটি কম্পোজ 1.0.0 বিটা-এর প্রথম প্রকাশ।

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

  • onStart callback has been added to detectDragGestures ( I67269 , b/179995594 )
  • অভ্যন্তরীণ আকারের জন্য পরিবর্তনকারীগুলি আর পরীক্ষামূলক নয়। ( I15744 )
  • সরানো dp দাবী ( I798d2 )
  • সমস্ত পাঠ্য ক্ষেত্র থেকে সফ্টওয়্যারকিবোর্ড কন্ট্রোলার কলব্যাক সরানো হয়েছে শীঘ্রই একটি নতুন API দ্বারা প্রতিস্থাপিত হবে৷ ( IAe869 , b/168778053 )
  • MeasureBlocks was renamed to MeasurePolicy which became a fun interface. Layout APIs were updated / simplified to use MeasurePolicy. ( Icab48 , b/167662468 , b/156751158 )
  • InteractionState [Mutable]InteractionSource দিয়ে প্রতিস্থাপিত করা হয়েছে
    • ইন্টারফেসগুলি মিথস্ক্রিয়া ইভেন্টগুলি নির্গত / সংগ্রহের জন্য দায়ী।
    • Button এবং Modifier.clickable() এর মত কম্পোনেন্টে interactionState = remember { InteractionState() } পাস করার পরিবর্তে, interactionSource = remember { MutableInteractionSource() } ব্যবহার করুন।
    • এর পরিবর্তে: Interaction.Pressed in interactionState আপনার পরিবর্তে InteractionSource-এ এক্সটেনশন ফাংশন ব্যবহার করা উচিত, যেমন InteractionSource.collectIsPressedAsState()।
    • জটিল ব্যবহারের ক্ষেত্রে আপনি ইন্টারঅ্যাকশনের স্ট্রীম পর্যবেক্ষণ করতে InteractionSource.interactions ব্যবহার করতে পারেন। আরও তথ্যের জন্য ইন্টারঅ্যাকশন সোর্স ডকুমেন্টেশন এবং নমুনা দেখুন।
    • ( I85965 , b/152525426 , b/171913923 , b/171710801 , b/174852378 )
  • অপসারিত LayoutCoordinates পদ্ধতিগুলি সরানো হয়েছে, positionInParent এবং boundsInParent ( I580ed , b/169874631 , b/175142755 ) এর জন্য সম্পত্তির পরিবর্তে ফাংশন ব্যবহার করুন
  • নিম্ন স্তরের পাঠ্য উপাদান যেমন CoreTextField থেকে ইনপুট সেশনের জন্য নতুন TextInputSession তৈরি করা হয়েছে। ( I8817f , b/177662148 )
  • Placeable now exposes measuredSize, representing the size which the child layout actually measured to. This size might not respect the measurement constraints. ( Ib2729 , b/172560206 , b/172338608 )
  • নির্বাচন গোষ্ঠী সংশোধক যোগ করুন যা অ্যাক্সেসযোগ্যতার উদ্দেশ্যে ট্যাব বা রেডিও বোতামের সংগ্রহ চিহ্নিত করতে দেয় ( Ie5c29 )
  • LazyListState.animateScrollToItem যোগ করুন

    এই পদ্ধতিটি তালিকার একটি নির্দিষ্ট আইটেমে স্ক্রোল করে। ( I4bfd7 )

  • ScrollableState.smoothScrollBy() এর নাম পরিবর্তন করে animateScrollBy() LazyListState.snapToItemIndex() করা হয়েছে scrollToItem() ScrollState.smoothScrollTo() এনিমেটScrollTo() ( I35ded )

  • Modifier.zoomable has been replaced my Modifier.transformable. smoothPanBy, smoothRotationBy have been added as a functionality. ( Ifc32b , b/175294473 )

  • The defaultFactory for compositionLocalOf and staticCompositionLocalOf is now required instead of optional.

    This changes removes a potential type error for non-nullable types where no default factory was provided. Previously this would provide a null reference for a non-nullable type.

    For nullable types consider supplying { null } as the default factory.

    We do not recommend using locals with non-nullable types unless a sensible default can be provided. If no sensible default exists, the defaultFactory lambda should throw an exception. However throwing an exception means that consumers of the local will have an implicit dependency on it being provided that is not enforced by the type system. ( Ifbd2a )

  • Changed Indication#createIndication() to Indication#rememberUpdatedIndication(InteractionState) and removes InteractionState parameter from I ndicationInstance#drawIndication() . IndicationInstance শুধুমাত্র ভিজ্যুয়াল এফেক্ট আঁকার জন্য দায়ী হওয়া উচিত, এবং ইন্টারঅ্যাকশনস্টেট পরিবর্তনের প্রতিক্রিয়া হিসেবে অ্যানিমেশন/লেখার অবস্থা চালু না করা উচিত। এই অ্যানিমেশনগুলি এবং স্টেট রাইটগুলি rememberUpdatedIndication() উচিত। Modifier.indicationindication প্যারামিটারটিও একটি প্রয়োজনীয় প্যারামিটার হিসাবে পরিবর্তিত হয়েছে। ( Ic1764 , b/152525426 )

  • Text actions now check focus automatically ( I13777 , b/179648629 )

  • Removed runBlockingWithManualClock ( I15cdc , b/179664814 )

  • Modifier.verticalScroll()/horizontalScroll() এ স্ক্রোল পজিশন এখন Ints ( I81298 ) দিয়ে উপস্থাপন করা হয়েছে

  • smoothScrollBy এবং scrollBy পদ্ধতির প্যাকেজগুলি androidx.compose.foundation.gestures.* ( I3f7c1 , b/175294473 )

  • FlingConfig-এর নাম পরিবর্তন করে FlingBehavior করা হয়েছে এখন পূর্বনির্ধারিত Decays-এর পরিবর্তে সাসপেন্ড অ্যানিমেশন কাস্টমাইজ করার অনুমতি দেয়। ( I02b86 , b/175294473 )

  • আকার পরিবর্তনকারীর নাম পরিবর্তন করা হয়েছে। Modifier.width/height/size-এর নাম পরিবর্তন করে প্রয়োজনীয়Width/requiredHeight/requiredSize করা হয়েছে। Modifier.preferredWidth/preferredHeight/preferredSize-এর নাম পরিবর্তন করে width/height/size করা হয়েছে। ( I5b414 )

  • defaultMinSizeConstraints-এর নাম পরিবর্তন করে defaultMinSize করা হয়েছে। ( I4eaae )

  • Modifier.tapGestureFilter has been removed. Use Modifier.pointerInput { detectTapGestures(...) } instead. ( I266ed , b/175294473 )

  • partial consumption was removed from pointer input system. The recommended way of coordinating partial consumtion is Modifier.nestedScroll. ( Ie9c9b )

  • ওরিয়েন্টেশন ফাউন্ডেশন প্যাকেজে সরানো হয়েছে। VelocirtTracker ui.gesture থেকে ui.input.pointer-এ সরানো হয়েছে। ( Iff4a8 , b/175294473 )

  • AnimationClockObservable and subclasses have been removed. AnimatedFloat has been removed. ( Icde52 , b/177457083 )

  • drawerState.open() এবং drawerState.close() এখন ফাংশন সাসপেন্ড করছে। তাদের কল করার জন্য কম্পোজিশনের সুযোগ পেতে RememberCoroutineScope() ব্যবহার করুন ( I16f60 , b/175294473 )

  • প্রদানকারীদের নাম পরিবর্তন করে CompositionLocalProvider করা হয়েছে

    • কম্পোজিশন কনস্ট্রাক্টর আর একটি কী প্যারামিটার গ্রহণ করে না, এবং অবচয় করা হয়েছে।
    • currentCompositeKeyHash একটি কম্পোজেবল টপ লেভেল ফাংশনের পরিবর্তে একটি কম্পোজেবল টপ লেভেল প্রপার্টিতে পরিণত হয়েছে।
    • CompositionData এবং CompositionGroup কে androidx.compose.runtime.tooling নামস্থানে সরানো হয়েছে
    • ComposableLambda একটি কংক্রিট ক্লাসের পরিবর্তে একটি ইন্টারফেস তৈরি করা হয়েছে, এবং আর টাইপ প্যারামিটার নেই।
    • ComposableLambdaN একটি কংক্রিট ক্লাসের পরিবর্তে একটি ইন্টারফেস তৈরি করা হয়েছে, এবং আর টাইপ প্যারামিটার নেই।
    • snapshotFlow ফাংশন androidx.compose.runtime নামস্থানে সরানো হয়েছে
    • SnapshotMutationPolicy-এর মার্জ পদ্ধতি আর পরীক্ষামূলক নয়
    • @TestOnly শীর্ষ স্তরের clearRoots ফাংশন সরানো হয়েছে। এর আর প্রয়োজন নেই।
    • keySourceInfoOf এবং resetSourceInfo ফাংশন মুছে ফেলা হয়েছে। তাদের আর প্রয়োজন নেই।
    • Composer.collectKeySourceInformation সরানো হয়েছে। এর আর প্রয়োজন নেই।
    • isJoinedKey, joinedKeyLeft এবং joinedKeyRight পদ্ধতিগুলি সরানো হয়েছে। তাদের আর প্রয়োজন নেই।
    • বিভিন্ন শীর্ষ স্তরের APIগুলি সরানো হয়েছে এবং বিভিন্ন ফাইলে পুনর্গঠিত হয়েছে৷ কোটলিনের ফাইল ক্লাসের শব্দার্থবিদ্যার কারণে, এটি বাইনারি সামঞ্জস্যতা ভেঙে দেবে কিন্তু উত্স সামঞ্জস্য নয়, তাই বেশিরভাগ ব্যবহারকারীর জন্য সমস্যা হওয়া উচিত নয়।
    • ( I99b7d , b/177245490 )
  • Modifier.scrollable পুনরায় কাজ করা হয়েছে. এখন এটি ScrollableController ক্লাসের পরিবর্তে স্ক্রোলযোগ্য ইন্টারফেস ব্যবহার করে ( I4f5a5 , b/174485541 , b/175294473 )

  • Modifier.draggable এখন একটি সাধারণ lambda এর পরিবর্তে DragableState গ্রহণ করে। আগের মতো একই আচরণ পেতে আপনি rememberDraggableState { delta -> } এর মাধ্যমে রাজ্য তৈরি করতে পারেন ( Ica70f , b/175294473 )

  • requiredWidth(IntrinsicSize) and requiredHeight(IntrinsicSize) modifiers were added for required sizing to intrinsic sizes. ( I0a6b4 )

  • Deprecated emptyContent() is removed. Use {} instead. ( Idb33f , b/179432510 )

  • কিছু পূর্বে অবহেলিত API মুছে ফেলা হয়েছে ( Ice5da , b/178633932 )

বাগ ফিক্স

  • TextField-এ আগের SoftwareKeyboardController ইন্টারফেস প্রতিস্থাপন করতে নতুন LocalSoftwareKeyboardController রচনা স্থানীয় API যোগ করা হয়েছে। ( I658b6 , b/168778053 )

সংস্করণ 1.0.0-আলফা12

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

androidx.compose.foundation:foundation:1.0.0-alpha12 and androidx.compose.foundation:foundation-layout:1.0.0-alpha12 are released. সংস্করণ 1.0.0-alpha12-এ এই কমিট রয়েছে।

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

  • নতুন নির্ভরতার জন্য পয়েন্টার ইনপুট সনাক্তকরণ কোরোটিন কখন পুনরায় চালু করা উচিত তা নির্দেশ করার জন্য Modifier.pointerInput-এর এখন মনে রাখার কী প্রয়োজন। ( I849cd )
  • Testing update: hasText() will check for both input and label/hint/placeholder texts in the text field ( Iab803 )
  • PaddingValues.Absolute যোগ করা হয়েছে এবং PaddingValues ​​গ্রহণকারী APIগুলিতে ব্যবহার করা যেতে পারে৷ ( IA5f30 )
  • onImeActionPerformed বাতিল করা হয়েছে। পরিবর্তে KeyboardActions ব্যবহার করুন ( If0bbd , b/179071523 )
  • ইমেজবিটম্যাপ এবং ইমেজভেক্টরের সাথে নামকরণের নিয়মগুলিকে আরও ভালভাবে মেলানোর জন্য, ইমেজপেইন্টারের নাম পরিবর্তন করে বিটম্যাপপেইন্টারে সমান্তরাল ভেক্টরপেইন্টার করা হয়েছে। ( Iba381 , b/174565889 )
  • Better substring test APIs with substring now as an argument ( Icbe78 )
  • Introduced an InfiniteAnimationPolicy coroutine context element that will be applied in infinite animations. By default no policy is installed, except when running tests with ComposeTestRule . ( I50ec4 , b/151940543 )
  • Animatable.snapTo এবং Animatable.stop এখন সাসপেন্ড ফাংশন ( If4288 )
  • ComponentActivity.setContent androidx.activity.compose.setContent এ androidx.activity:activity-কম্পোজ মডিউলে চলে গেছে। ( ICf416 )
  • ধ্বংসাত্মক এবং অনুলিপি() পদ্ধতিগুলি বেশ কয়েকটি ক্লাস থেকে সরানো হয়েছে যেখানে সেগুলি খুব কমই ব্যবহৃত হত। ( I26702 , b/178659281 )
  • Custom keys support for LazyColumn/LazyRow was added. This allows us to smarter handle items reordering. So the state you stored in remember {} blocks will move together with the item when you reorder elements or removed the item from the middle.

    LazyColumn {
        items(users, key = { user -> user.id }) { ... }
    }
    
  • ইঙ্গিত#createInstance পরিবর্তিত হয়েছে @Composable, এবং LocalIndication পরিবর্তিত হয়েছে যাতে একটি ইঙ্গিত থাকে, নয় () -> ইঙ্গিত। ( I5eeea , b/157150564 )

  • Constraints.enforce was replaced with Constraints.constrain . ( I8b8ea )

  • loadFontResource বাতিল করা হয়েছে। পরিবর্তে fontResource ব্যবহার করুন। imageResource, loadImageResource, vectorResource এবং loadVectorResource বাতিল করা হয়েছে। পরিবর্তে পেইন্টার রিসোর্স ব্যবহার করুন। ( I6b809 )

  • For performance reasons, ScrollAxisRange semantics now takes lambdas returning Floats instead of direct Float values. ( If4a35 , b/178657186 )

  • Added EditableText semantics to mark editable input text of the text field for accessibility and corresponding test methods to check the semantics ( I8e07a )

  • Modifier.clickable now doesn't have double and long click support. Use Modifier.combinedClickable to achieve this functionality. ( Iafad1 )

  • toIntPx() এর নাম পরিবর্তন করে roundToPx() করা হয়েছে। ( I9b7e4 , b/173502290 )

  • IntBounds এর নাম পরিবর্তন করে IntRect করা হয়েছে এবং API উন্নত করা হয়েছে। ( I1f6ff )

  • Modifier.dragGestureFilter বাতিল করা হয়েছে। পরিবর্তে Modifier.pointerInput { detectDragGestures (...)} ব্যবহার করুন। বিকল্পভাবে, একটি অক্ষ টেনে নেওয়ার জন্য Modifier.draggable ব্যবহার করুন ( I0ba93 , b/175294473 )

  • পরিবেষ্টনের সাথে মেলানোর জন্য পরিবেষ্টনের নাম পরিবর্তন করা হয়েছে -> কম্পোজিশন স্থানীয় পুনঃনাম। অ্যাম্বিয়েন্টের নাম ছিল অ্যাম্বিয়েন্টফু, এখন কম্পোজিশনলোকালের নাম লোকালফু। ( I2d55d )

  • নির্বাচন ভিত্তি সরানো হয়েছে. ( I7892b )

  • একইভাবে আমরা আগে যেভাবে state { 0 } কম্পোজেবল মুছে দিয়েছিলাম এবং এখন remember { mutableStateOf(0) } আমরা savedInstanceState { 0 } composable সরিয়ে ফেলতে যাচ্ছি। এর পরিবর্তে আপনার rememberSaveable { mutableStateOf(0) } ব্যবহার করা উচিত এবং এটি স্বয়ংক্রিয়ভাবে সংরক্ষণ এবং পুনরুদ্ধার করবে যদি MutableState-এর ভিতরে ব্যবহৃত টাইপটি বান্ডেলে সংরক্ষণ করা যায়। If previously you were passing a custom saver object now you need to use a new overload of rememberSaveable which has the stateSaver parameter. ব্যবহারটি এইরকম দেখাবে: val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) } ( Ib4c26 , b/177338004 )

  • Added password semantics for accessibility ( I231ce )

  • যোগ করা হয়েছে ProgressBarRangeInfo. অনির্ধারিত প্রবেশযোগ্যতার জন্য অনির্দিষ্ট অগ্রগতি বার চিহ্নিত করতে ( I6fe05 )

  • Playtime in animation is now unfiied to nanoseconds ( If776a )

  • @ComposableContract আরো তিনটি নির্দিষ্ট টীকাটির পক্ষে অবমূল্যায়ন করা হয়েছে।

    @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() এবং (@Composable () -> Unit).orEmpty() ইউটিলিটিগুলিকে অবমূল্যায়ন করা হয়েছে কারণ তাদের আর কোন ইতিবাচক কর্মক্ষমতা প্রভাব বা মান নেই ( I0484d )

  • Recomposers can now be closed. Closed recomposers will continue recomposition until composition child coroutines complete. Recomposer.shutDown renamed to cancel to contrast with close. ( Ib6d76 )

  • APIs related to LazyVerticalGrid are marked as experimental ( Ia53e3 , b/178519862 )

  • RememberSavedInstanceState() এর নাম পরিবর্তন করে RememberSaveable() রাখা হয়েছে এবং androidx.compose.runtime.saveable প্যাকেজে সরানো হয়েছে। ( I1366e , b/177338004 )

  • RestorableStateHolder was renamed to SaveableStateHolder and moved to androidx.compose.runtime.saveable package. Inner method RestorableStateProvider was renamed to SaveableStateProvider. Generic type was removed so you can just pass Any as a key. Experimental annotation is not needed anymore. ( I0902e , b/174598702 )

  • Saver, listSaver(), mapSaver(), autoSaver androidx.compose.runtime.savedinstancestate থেকে androidx.compose.runtime.saveable ( I77fe6 ) এ সরানো হয়েছে

  • Artefact androidx:compose:runtime:runtime-saved-instance-state was renamed to androidx:compose:runtime:runtime-saveable ( I6dcac )

  • Many longstanding deprecated APIs in the ui package are deleted. ( I2f2dc )

  • The compose:runtime-dispatch artifact is now deprecated. MonotonicFrameClock can now be found in compose:runtime and AndroidUiDispatcher can be found in compose:ui. ( Ib5c36 )

  • RounderCornerShape, CutCornerShape এবং CornerBasedShape-এর পরামিতিগুলিকে বাম/ডান থেকে শুরু/শেষে পুনঃনামকরণ করা হয়েছে যাতে rtl দিক থেকে আকৃতির স্বয়ংক্রিয় মিররিং সমর্থন করা যায়। যখন স্বয়ংক্রিয়-মিররিং কাঙ্খিত হয় না এমন ক্ষেত্রে অ্যাবসোলুট রাউন্ডার কর্নারশেপ এবং অ্যাবসোলুটকাট কর্নারশেপ চালু করা হয়েছিল। ( I61040 , b/152756983 )

  • canDrag has been removed from the Modifier.scrollable. ( Id66e7 , b/175294473 )

  • The API the Compose compiler plugin targets has been refactored to use an interface instead of a concrete class. The interface also no longer uses a type parameter.

    This is an internal change that should not effect source code compatibility but is a binary breaking change. ( I3b922 , b/169406779 )

  • Modifier.scaleGestureFilter has been removed. Use Modifier.zoomable instead. Alternatively, use Modifier.pointerInput { detectMultitouchGestures { ... }} ( Id5da1 , b/175294473 )

  • অ্যানিমেটেড ভ্যালু/ফ্লোট এখন বাতিল করা হয়েছে। পরিবর্তে অ্যানিমেটেবল ব্যবহার করুন. ( I71345 , b/177457083 )

    • Removed CoreText and CoreTextField from public API
    • Removed deprecated SelectionContainer overload ( I99c19 )
  • Remove deprecated non-suspend scrolling functions Continuing with the changes from last release, the non-suspend scrolling functions are now removed entirely. Please convert to the suspend functions with the same names. A coroutine scope can be obtained via rememberCoroutineScope(). ( I3d39c , b/178169563 )

  • androidx.compose.foundation.layout.ConstraintLayout was deprecated in favor of androidx.constraintlayout.compose.ConstraintLayout. You will need to add a dependency on androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha01 . ( I87adc )

  • tapGestureFilter, doubleTapGestureFilter, longPressGestureFilter এবং pressIndicaitonGestureFilter অবমুক্ত করা হয়েছে। পরিবর্তে detectTapGestures ফাংশন সহ Modifier.clickable বা Modifier.pointerInput ব্যবহার করুন। ( I6baf9 , b/175294473 )

  • Recomposer.current() সরানো হয়েছে। [বিমূর্ত] কম্পোজভিউ এখন ডিফল্ট অলসভাবে তৈরি করা, উইন্ডোর জন্য ViewTreeLifecycleOwner দ্বারা চালিত উইন্ডো-স্কোপড রিকম্পোজার। হোস্ট লাইফসাইকেল বন্ধ করার সময় পুনর্গঠন এবং ফ্রেমনানোস-ভিত্তিক অ্যানিমেশন টিকগুলি বিরাম দেওয়া হয়। ( I38e11 )

  • Recomposer.runningRecomposers now offers a global StateFlow of read-only RecomposerInfo for observing ongoing composition state in the process. Prefer this API to Recomposer.current(), which is now deprecated. ( If8ebe )

সংস্করণ 1.0.0-alpha11

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

androidx.compose.foundation:foundation:1.0.0-alpha11 and androidx.compose.foundation:foundation-layout:1.0.0-alpha11 are released. সংস্করণ 1.0.0-alpha11-এ এই কমিট রয়েছে।

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

  • অ-সাসপেন্ড স্ক্রলবাইকে অবমূল্যায়ন করুন, অ-সাসপেন্ড স্ক্রোলটি সরান

    আমরা এখন স্ক্রলিং নিয়ন্ত্রণ করতে সাসপেন্ড ফাংশন ব্যবহার করার পরামর্শ দিই এবং স্ক্রোল শেষ হওয়ার জন্য অপেক্ষা করি। আমরা এই ট্রানজিশনের অংশ হিসাবে এই ফাংশনগুলির অ-সাসপেন্ড সংস্করণগুলিকে অবমূল্যায়ন করছি এবং/অথবা সরিয়ে দিচ্ছি৷ ( IE9ced )

  • অ-সাসপেন্ড smoothScrollBy বর্জন করুন আমরা এখন স্ক্রলিং নিয়ন্ত্রণ করতে সাসপেন্ড ফাংশন ব্যবহার করার সুপারিশ করি এবং স্ক্রোল শেষ হওয়ার জন্য অপেক্ষা করি। আমরা এই পরিবর্তনের অংশ হিসাবে এই ফাংশনগুলির অ-সাসপেন্ড সংস্করণগুলিকে অবমূল্যায়ন করছি৷ ( I12880 )

  • ছবি এবং আইকনে বিষয়বস্তুর বিবরণ প্যারামিটার যোগ করা হয়েছে। এটি অ্যাক্সেসিবিলিটি পরিষেবাগুলির বিবরণ প্রদান করতে ব্যবহৃত হয় ( I2ac4c )

  • BasicTextField received a new parameter called 'decorationBox'. এটি আইকন, স্থানধারক, লেবেল এবং পাঠ্য ক্ষেত্রের মতো সজ্জা যোগ করতে এবং এর হিট টার্গেট এলাকা বৃদ্ধি করতে দেয়। ( I16996 )

  • canDrag প্যারামিটারটি Modifier.draggable থেকে সরানো হয়েছে ( Ic4bec , b/175294473 )

  • AnimatedFloat.fling যেটি FlingConfig গ্রহণ করে তা সরানো হয়েছে। এর পরিবর্তে অনুগ্রহ করে সাসপেন্ড Animatable.animateDecay ব্যবহার করুন। ( I4659b , b/177457083 )

  • Removed data class from the following classes:

    • InlineTextContent
    • LocaleList
    • ( I605c7 )
  • ক্লিকযোগ্য, টগলযোগ্য এবং নির্বাচনযোগ্য এখন রচনার বাইরে তৈরি করা যেতে পারে ( I0a130 , b/172938345 , b/175294473 )

  • ScrollableColumn/Row বর্জন করা হয়েছে। যখন আপনার কাছে একটি বড় স্ক্রলিং সামগ্রী থাকে তখন LazyColumn-এর তুলনায় ScrollableColumn ব্যবহার করা কম দক্ষ কারণ LazyColumn-এর সাহায্যে আমরা শুধুমাত্র দৃশ্যমান উপাদানগুলি রচনা/পরিমাপ/আঁকতে পারি। ব্যবহারকারীদের অদক্ষ উপায়ে যেতে বাধা দেওয়ার জন্য আমরা ScrollableColumn এবং ScrollableRow বাতিল করার এবং পরিবর্তে LazyColumn এবং LazyRow-এর ব্যবহার প্রচার করার সিদ্ধান্ত নিয়েছি। ব্যবহারকারীরা এখনও সিদ্ধান্ত নিতে পারে যে তাদের অলস আচরণের প্রয়োজন নেই এবং মডিফায়ারগুলি সরাসরি এভাবে ব্যবহার করুন: Column(Modifier.verticalScroll(rememberScrollState())) ( Ib976b , b/170468083 )

  • LazyColumn/LazyRow/LazyVerticalGrid এর সুযোগের জন্য নতুন items(count: Int) কারখানা পদ্ধতি। items(items: List) এবং itemsIndexed(items: List) এখন এক্সটেনশন ফাংশন তাই ব্যবহার করার সময় আপনাকে ম্যানুয়ালি আমদানি করতে হবে। অ্যারেগুলির জন্য নতুন এক্সটেনশন ওভারলোড: আইটেম(আইটেম: অ্যারে) এবং আইটেম ইনডেক্সড (অ্যারে) ( I803fc , b/175562574 )

  • The deprecated AbsoluteArrangement was removed. ( Iffa96 , b/177641870 )

  • The propagateMinConstraints parameter was added to Box, for specifying whether the incoming min constraints should be passed to the content of the Box or not. ডিফল্ট মিথ্যা. ( I0125b , b/152613457 )

বাগ ফিক্স

  • onCommit, onDispose, এবং onActive-কে SideEffect এবং DisposableEffect APIs ( If760e ) এর পক্ষে বর্জন করা হয়েছে
  • WithConstraints কে BoxWithConstraints হিসাবে পুনরায় কাজ করা হয়েছিল এবং foundation.layout-এ সরানো হয়েছিল। ( I9420b , b/173387208 )
  • Changes to factory functions for Font/FontFamily/Typeface

    • Added factory functions that start with capital letter
    • Deprecated previous factory functions with lowercase first letters
    • New factory functions return the FontFamily instead of subclasses
    • Hid constructors of the subclasses, so that they can only be constructed via factory functions.
    • Renamed Font.asFontFamily to Font.toFontFamily
    • ( I42aa7 )
  • ComposeContentTestRule প্রবর্তন করা হয়েছে, যা ComposeTestRule প্রসারিত করে এবং setContent সংজ্ঞায়িত করে, যা ComposeTestRule থেকে সরানো হয়েছে। একটি ফ্যাক্টরি পদ্ধতি যুক্ত করা হয়েছে createEmptyComposeRule() যা একটি ComposeTestRule প্রদান করে এবং আপনার জন্য একটি কার্যকলাপ চালু করে না। যখন আপনি আপনার পরীক্ষার সময় আপনার কার্যকলাপ চালু করতে চান তখন এটি ব্যবহার করুন, যেমন ActivityScenario.launch ( I9d782 , b/174472899 ) ব্যবহার করে

  • animateAsState এখন animateFooAsState, যেখানে Foo হল অ্যানিমেটেড ভেরিয়েবলের ধরন। যেমন ফ্লোট, ডিপি, অফসেট, ইত্যাদি ( Ie7e25 )

  • Density is now receiver scope for Arrangement interfaces. ( I18aad )

  • TextFieldValue accepts AnnotatedString. However this is an API only change and multi-style text editing is not implemented yet.

    • Removed initial from EditingBuffer constructor parameters. ( I326d5 )
  • invalidate এবং compositionReference() এখন যথাক্রমে currentRecomposeScope এবং memoryCompositionReference-এর পক্ষে অবচয়। ( I583a8 )

  • AnnotatedString is changed to extend from kotlin.CharSequence. Therefore length and subSequence are now instance functions, and extension functions are removed. ( Iaf429 )

  • সময়কাল এবং আপটাইম লং মিলিসেকেন্ডের সাথে প্রতিস্থাপিত হবে এবং এই ধাপটি সেই ক্লাসগুলিতে পয়েন্টার ইনপুটের নির্ভরতা সরিয়ে দেয়। ( IA33b2 , b/175142755 , b/177420019 )

  • RememberObserver replaces CompositionLifecycleObserver and CompositionLifecycleObserver is now deprecated.

    RememberObserver is a replacement for CompositionLifecycleObserver with modified semantics and renamed methods. Changing to the new API can be done mechanically for objects that are only remembered once which is, and continues to be, the recommended practice. However, if a reference was remembered more than once in a composition onRemembered is called for each reference where onEnter is only called once. onEnter was called multiple time if the object was used in subcompositions, such as WithConstraints and Scaffold making the single onEnter call guarantee unreliable and it was removed for RememberObserver .

    RememberObserver adds onAbandoned which is called if the RememberObserver instance is returned from the callback passed to remember but was not remembered in the composition state and, therefore, will never have onRemembered called. This can occur if an exception terminates composition before completing or the composition is discarded because the state is was producing a composition for is no longer current or otherwise is no longer needed. If the instance of RememberObserver following the single reference recommendation above is tracking an external resource both onForgotten and onAbandoned each indicate that the resource is no longer needed. If the object is tracking work started or resources allocated in onRemembered , onAbandoned can be ignored as it will not be called if onRemembered is called. ( I02c36 )

  • Renamed TransformedText.transformedText to TransformedText.text

    • TransformedText is no longer a data class ( Ie672a )
  • The following classes are not data classes anymore:

    • AnnotatedString
    • অনুচ্ছেদশৈলী
    • SpanStyle
    • টেক্সটস্টাইল
    • ফন্টওয়েট
    • টেক্সট ডেকোরেশন
    • TextGeometricTransform
    • TextIndex
    • TextLayoutResult
    • TextLayoutInput ( Iaff99 )
  • পরীক্ষামূলক একঘেয়ে ফ্রেম অ্যানিমেশন ক্লকঅফ পদ্ধতিগুলি সরানো হয়েছে ( Ib753f , b/170708374 )

  • গ্লোবাল কোঅর্ডিনেট পদ্ধতি অবমূল্যায়িত করা হয়েছে এবং নতুন উইন্ডো-ভিত্তিক স্থানাঙ্ক পদ্ধতি তৈরি করা হয়েছে। ( IE284 )

  • Please use ImeAction.None instead of ImeAction.NoAction

    • Please use ImeAction.Default instead of ImeAction.Unspecified ( Ie1bcc )
  • FocusRequester.createRefs এখন পরীক্ষামূলক হিসেবে চিহ্নিত করা হয়েছে কারণ এটি পরিবর্তন হতে পারে। ( I2d898 , b/177000821 )

  • SemanticsPropertyReceiver.hidden-এর নাম পরিবর্তন করে invisibleToUser করা হয়েছে এবং @ExperimentalComposeUiApi চিহ্নিত করা হয়েছে। AccessibilityRangeInfo এর নাম পরিবর্তন করে ProgressBarRangeInfo করা হয়েছে। stateDescriptionRange-এর নাম পরিবর্তন করে progressBarRangeInfo করা হয়েছে। AccessibilityScrollState এর নাম পরিবর্তন করে ScrollAxisRange করা হয়েছে। horizontal AccessibilityScrollState-এর নাম পরিবর্তন করে HorizontalScrollAxisRange করা হয়েছে। vertical AccessibilityScrollState-এর নাম পরিবর্তন করে verticalScrollAxisRange করা হয়েছে। ( Id3148 )

  • Changed VisualTransformation to be a functional interface ( I3bba4 )

  • পরীক্ষায় TestCoroutineDispatcher লিভারেজ ( I532b6 )

  • Removed PointerInputData and modified PointerInputChange to give it all of PointerInputData's fields. Made PointerInputEvent and PointerInputEventData internal because they aren't used in any public API. ( Ifff97 , b/175142755 )

  • Renamed TextInputService.onStateUpdated as updateState ( Id4853 )

  • ডিসপ্লে সাইজ সরান কারণ এটি এড়ানো উচিত। সাধারণত কমপক্ষে onRoot() বা উইন্ডোর আকার ব্যবহার করা ভাল। ( I62db4 )

সংস্করণ 1.0.0-আলফা10

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

androidx.compose.foundation:foundation:1.0.0-alpha10 and androidx.compose.foundation:foundation-layout:1.0.0-alpha10 are released. সংস্করণ 1.0.0-alpha10 এই কমিট ধারণ করে।

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

  • ImeOptions and KeyboardOptions are no more a data class ( I3c898 , b/168684531 )
  • VisualTransformation API Changes
    • Renamed OffsetMap to OffsetMapping
    • Renamed OffsetMapping.identityOffsetMap to OffsetMapping.Identity
    • PasswordTransformation is no longer data-class
    • Moved OffsetMapping to its own file
    • ( I0bdf3 )
  • EditOperations API Changes
    • Renamed EditOperation as EditCommand
    • Added Command suffix for EditOperation concrete implementations
    • EditCommand's are no longer data classes
    • Renamed EditOperation.process function to applyTo
    • Renamed InputEventListener to InputEventCallback
    • ( I0a366 )
  • উপাদান অংশ এবং গাণিতিক অপারেশন আছে পরিবর্তিত বেগ. ( Ib0447 )
  • অনুরূপ পরীক্ষামূলক এপিআই টীকা ( Ia4502 , b/171464963 ) এর সাথে সামঞ্জস্যপূর্ণ হতে @ExperimentalTesting এর নাম পরিবর্তন করে @ExperimentalTestApi করা হয়েছে
  • Added experimental stickyHeader method for LazyColumn/LazyRow ( I0a81d )
  • Color.useOrElse() থেকে Color.takeOrElse() ( Ifdcf5 ) নামকরণ করা হয়েছে
  • Deprecated TestUiDispatcher. Use Dispatchers.Main instead ( Ic171f , b/175385255 )
  • Strings.kt ফাউন্ডেশনে টগল যোগ করুন ( I4a5b7 , b/172366489 )
  • নেটিভক্লাসকে UI মডিউলে সরানো হয়েছে এবং এটি অভ্যন্তরীণ করেছে। পরিবর্তে 'is MyClass' ব্যবহার করার জন্য সমান বাস্তবায়নে নেটিভক্লাসের আপডেট করা ব্যবহার। ( I4f734 )
  • FlowRow এবং FlowColumn বাতিল করা হয়েছে। পরিবর্তে একটি কাস্টম লেআউট ব্যবহার করুন. ( I09027 )
  • Modifier.focus() এবং Modifier.focusRequester() বাতিল করা হয়েছে। পরিবর্তে Modifier.focusModifier() এবং Modifier.focusReference() ব্যবহার করুন। ( I75a48 , b/175160751 , b/175160532 , b/175077829 )
  • Introduced SelectionRegistrar.notifySelectableChange to notify Selectable updates to SelectionManager. ( I6ff30 , b/173215242 )
  • Changed fun Dp.isFinite() to a val Dp.isFinite ( I50e00 )
  • Constraints#satisfiedBy was renamed to isSatisfiedBy. ( I9cf5c )
  • Added isSpecified, isUnspecified, and useOrElse for inline classes with an Unspecified constant. ( I93f7b , b/174310811 )

বাগ ফিক্স

  • New coroutine-based API Animatable that ensures mutual exclusiveness among its animations. New DecayAnimationSpec to support multi-dimensional decay animation ( I820f2 , b/168014930 )
  • অক্ষম এবং শুধুমাত্র পঠনযোগ্য পাঠ্য ক্ষেত্রের জন্য সমর্থন যোগ করা হয়েছে ( I35279 , b/171040474 , b/166478534 )
  • animate() এখন animateAsState() দিয়ে প্রতিস্থাপিত হয়েছে, যা T এর পরিবর্তে একটি State<T> প্রদান করে। এটি আরও ভাল পারফরম্যান্সের অনুমতি দেয়, কারণ অবৈধকরণের সুযোগ যেখানে স্টেট মান পড়া হয় সেখানে সংকুচিত করা যেতে পারে। ( Ib179e )
  • শব্দার্থতত্ত্ব ভূমিকা API যোগ করুন এবং ক্লিকযোগ্য, নির্বাচনযোগ্য এবং টগলযোগ্য শব্দার্থবিদ্যা মডিফায়ারে একটি প্যারামিটার হিসাবে ভূমিকা যোগ করুন। পরিবর্তন করা হয়েছে Modifier.progressSemantics যাতে স্লাইডারও এটি ব্যবহার করতে পারে। ( I216cd )
  • The native keyEvent can now be accessed through keyEvent.nativeKeyEvent ( I87c57 , b/173086397 )

সংস্করণ 1.0.0-alpha09

16 ডিসেম্বর, 2020

androidx.compose.foundation:foundation:1.0.0-alpha09 and androidx.compose.foundation:foundation-layout:1.0.0-alpha09 are released. 1.0.0-alpha09 সংস্করণে এই কমিট রয়েছে।

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

  • Add Scrollable interface

    This allows ScrollState and LazyListState to be treated as a common type, allowing custom scrolling to be implemented across both types.

    This also moves smoothScrollBy to an extension function on Scrollable, taking advantage of this functionality. ( I2153b )

  • LazyVerticalGrid is added. ( I17267 , b/162213211 )

  • LazyColumnFor, LazyRowFor, LazyColumnForIndexed এবং LazyRowForIndexed অবমূল্যায়ন করুন। পরিবর্তে LazyColumn এবং LazyRow ব্যবহার করুন ( I5b48c )

  • For suspending pointer input APIs, renamed HandlePointerInputScope to AwaitPointerEventScope and handlePointerInput() to awaitPointerEventScope(). ( Idf0a1 , b/175142755 )

  • LazyListState.layoutInfo was added which exposes the list of sizes and offsets of the currently visible items ( If8678 , b/170472532 )

  • Removed ExperimentalPointerInput annotation ( Ia7a24 )

  • TextFields-এর জন্য InteractionState সমর্থন যোগ করা হয়েছে। ( I61d91 )

  • Add reverseLayout param for LazyColumn/Row. when true items will be composed from the bottom to the top and LazyListState.firstVisibleItemIndex == 0 will mean the first item is located at the bottom. ( I552ae , b/166589935 )

  • verticalArrangement param was added for LazyColumn. horizontalArrangement param was added for LazyRow. Arrangement allows us to add a spacing between items and specify the arrangement of the items when we do not have enough of them to fill the whole minimum size. ( Icf79a , b/170394300 )

  • detectMultitouchGestures now uses one callback with combined centroid, pan, zoom and rotate parameters. ( Ie6e1c )

  • DrawScope-এর সাথে থাকার জন্য ContentDrawScope কে ui-গ্রাফিক্স মডিউলে সরানো হয়েছে। ( Iee043 , b/173832789 )

বাগ ফিক্স

  • অফসেট মডিফায়ারে Lambdas এখন Float এর পরিবর্তে IntOffset ফেরত দেয়। ( Ic9ee5 , b/174137212 , b/174146755 )
  • Removed SlotTable, SlotReader and SlotWriter from the public API. These were marked as InternalComposeAPI previously. Now they are internal to the compose module.

    CompositionData and CompositionGroup were added as a replacement for the ui-tooling API to use to extract composition information. These are public but are not intended for use outside the ui-tooling API as they provide the raw information the ui-tooling API interprets ( I31a9c )

  • ড্রয়িং এনভায়রনমেন্টের সাইজিং তথ্য উপলব্ধ হলে অলসভাবে একটি শেডার ইন্সট্যান্স তৈরি করতে রিফ্যাক্টর করা ShaderBrush। কাস্টম DrawModifier বাস্তবায়ন না করেই কম্পোজিশনের সময় কম্পোজেবলের সম্পূর্ণ অঙ্কন সীমা দখল করে এমন গ্রেডিয়েন্টগুলিকে সংজ্ঞায়িত করতে এটি কার্যকর।

    গ্রেডিয়েন্ট অবজেক্টে ফ্যাক্টরি পদ্ধতির পক্ষে গ্রেডিয়েন্ট ফাংশন কনস্ট্রাক্টর API গুলিকে অবমূল্যায়ন করা হয়েছে। ( I511fc , b/173066799 )

  • Modifier.focusObserver বাতিল করা হয়েছে। পরিবর্তে Modifier.onFocusChanged বা Modifier.onFocusEvent ব্যবহার করুন ( I30f17 , b/168511863 , b/168511484 )

  • অটোফিল API এখন পরীক্ষামূলক API এবং এর জন্য অপ্ট-ইন প্রয়োজন ( I0a1ec )

  • FocusRequester দৃষ্টান্ত তৈরি করতে ধ্বংসাত্মক ঘোষণা যোগ করা হচ্ছে ( I35d84 , b/174817008 )

  • অ্যাক্সেসিবিলিটি লেবেলের নাম পরিবর্তন করে কন্টেন্ট ডেসক্রিপশন করা হয়েছে। অ্যাক্সেসিবিলিটি ভ্যালুকে স্টেটডেসক্রিপশনে নামকরণ করা হয়েছে। ( I250f2 )

  • Introduced several new functions in SelectionRegistrar and also renamed onPositionChange to notifyPositionChange. ( Ifbaf7 )

  • AndroidOwner made internal ( Ibcad0 , b/170296980 )

  • একটি InfiniteRepeatableSpec ( I668e5 ) তৈরির জন্য নতুন infiniteRepeatable ফাংশন

  • The Applier interface has changed to simplify building trees bottom-up instead of top-down.

    The insert() method has been renamed to insertTopDown() .

    A new method, insertBottomUp() , was added.

    An applier either inserts nodes into the tree it is editing using insertTopDown() or insertBottomUp() depending on which performs better.

    Some trees, such as LayoutNode and View , are much more efficient to build bottom-up than top-down. Prior to this change, a stack of inserts was required to implement bottom-up which needed to be copied to every applier which needed bottom-up construction for performance. With this change an Applier overrides insertBottomUp() to build a tree bottom-up and insertTopDown() to build the tree top-down. ( Icbdc2 )

  • Added painterResource API to handle opaquely loading Painter objects from either rasterized asset formats (like PNGs) or VectorDrawables. Consumers no longer have to determine the type of asset in advance and can call this method to get a Painter object to use in Image composables or painter modifiers. ( I2c703 , b/173818471 )

  • Added buildAnnotatedString factory function in order to build an AnnotatedString. Deprecated annotatedString builder function. ( Idfe0b )

সংস্করণ 1.0.0-alpha08

2 ডিসেম্বর, 2020

androidx.compose.foundation:foundation:1.0.0-alpha08 and androidx.compose.foundation:foundation-layout:1.0.0-alpha08 are released. সংস্করণ 1.0.0-alpha08 এই কমিট ধারণ করে।

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

  • Removed maxLines parameter from the CoreTextField . If you'd like to constraint the height of the text field by the number of lines, use BasicTextField instead. ( Iec002 )
  • Changed the await*TouchSlop() methods to not detect the pointer down and renamed them to *OrCancellation . Also removed the need for orientationLock parameter. ( Ie96e1 )
  • রচনা নির্দেশিকাগুলির সাথে সামঞ্জস্যতা পরীক্ষা করতে কম্পোজযোগ্য ল্যাম্বডা প্যারামিটারের নামকরণ এবং অবস্থানের জন্য লিন্ট চেক যুক্ত করা হয়েছে। এছাড়াও লিন্ট চেক এবং নির্দেশিকা অনুসারে, কিছু এপিআই স্থানান্তরিত করেছে children নাম হিসাবে তাদের পিছনের ল্যাম্বডা content ব্যবহার করে। ( Iec48e )
  • foundation:foundation-text apis moved to foundation:foundation . The package structure remained the same ( Id3eb2 )
  • New multitouch gesture detector, including helpers for detecting rotation, zoom, and panning. ( Ic459d )
  • New drag gesture detector suspending pointer input API, including orientation locking. ( Icef25 )
  • এপিআই কাউন্সিলের নির্দেশিকা অনুযায়ী ইমেজভেক্টরের একটি অভ্যন্তরীণ শ্রেণী হতে ভেক্টরআসেটকে ইমেজভেক্টরে সরানো হয়েছে এবং ভেক্টর অ্যাসেটকে বিল্ডারে নামকরণ করা হয়েছে। কম্প্যাটের জন্য ImageVector.Builder লিঙ্ক করতে VectorAssetBuilder-এর টাইপলিয়াস যোগ করা হয়েছে। ( আইসিএফডিসি৮ )
  • ImageBitmap এ ImageAsset এবং সম্পর্কিত পদ্ধতির নাম পরিবর্তন করা হয়েছে। ( IA2d99 )
  • ফাউন্ডেশনের শব্দার্থবিদ্যার বৈশিষ্ট্য UI ( I6f05c ) এ সরানো হয়েছে
  • Add coroutine-based scrolling APIs:

    Adds LazyListState.snapToItem and LazyListState.smoothScrollBy, as well as lower-level APIs for scroll control. These APIs provide a suspend interface to control scrolling that waits until the scroll is finished before returning. ( Ie5642 )

  • BasicTextField, TextField এবং OutlinedTextField-এ একটি singeLine প্যারামিটার যোগ করা হয়েছে। পাঠ্য ক্ষেত্রটিকে একটি অনুভূমিকভাবে স্ক্রোলযোগ্য লাইন করতে এই প্যারামিটারটিকে সত্য হিসাবে সেট করুন। ( I57004 , b/168187755 )

  • Gesture detector for tap, double-tap, long press, and press indication were added using the new suspending pointer input. A few utilities were added as well, making it easier for developers to write their own gesture detectors. ( I00807 )

  • Modifier.focusable has need added in foundation. Use this to add focusable behavior to a component, with correct semantics and accessibility. ( I41eb9 , b/152525426 , b/162865824 )

  • Previously deprecated APIs have been removed: Border was removed, use BorderStroke instead. Modifier.drawBorder was removed, use Modifier.border instead. Modifier.gravity was removed, use Modifier.align instead. Stack was removed, use Box instead ( I32c2b , b/172470874 )

  • AbsoluteArrangement was renamed to Arrangement.Absolute. ( If26f2 )

বাগ ফিক্স

  • DrawModifier API গুলিকে androidx.compose.ui প্যাকেজ থেকে androidx.compose.ui.draw প্যাকেজে সরানো হয়েছে। বর্তমান এপিআই থেকে বঞ্চিত থেকে মাইগ্রেশনে সহায়তা করার জন্য typealiases/helper পদ্ধতিগুলি অন্তর্ভুক্ত করতে DrawModifierDeprecated.kt ফাইল তৈরি করা হয়েছে। ( Id6044 , b/173834241 )
  • Renamed Modifier.drawLayer to Modifier.graphicsLayer Also updated related classes to GraphicsLayer as per API council feedback. ( I0bd29 , b/173834241 )
  • <T> SubcomposeLayout ঘোষণা থেকে সরানো হয়েছে। আপনি এখন একটি প্রকার উল্লেখ না করে এটি ব্যবহার করতে পারেন। ( Ib60c8 )
  • Made PointerInputData's uptime and position fields non-nullable. ( Id468a )
  • MaterialTheme এখন নির্বাচন হ্যান্ডেল এবং নির্বাচন পটভূমির জন্য সঠিক রং সেট করে। নন-মেটেরিয়াল অ্যাপগুলি নির্বাচনের জন্য ব্যবহৃত রঙগুলি কাস্টমাইজ করতে অ্যাম্বিয়েন্ট টেক্সট সিলেকশন কালার ম্যানুয়ালি ব্যবহার করতে পারে। ( I1e6f4 , b/139320372 , b/139320907 )
  • বক্সের অ্যালাইনমেন্ট প্যারামিটারের নাম পরিবর্তন করে কনটেন্ট অ্যালাইনমেন্ট করা হয়েছে। ( I2c957 )
  • offsetPx সংশোধকদের নাম পরিবর্তন করে অফসেট করা হয়েছে। তারা এখন রাজ্যের পরিবর্তে ল্যাম্বডা প্যারামিটার নিচ্ছে। ( IC3021 , b/173594846 )
  • Added WindowManager.isWindowFocused to check if the host window is in focus, and a WindowFocusObserver that provides an onWindowFocusChanged callback. ( I53b2a , b/170932874 )
  • Added resetInput parameter to TextInputService#onStateUpdated ( I3e8f5 , b/172239032 , b/171860947 )
  • আপডেট করা TextFieldValue API
    • TextFieldValue.composition শুধুমাত্র পঠনযোগ্য
    • অপসারিত ব্যতিক্রম অবৈধ নির্বাচন পরিসরের জন্য নিক্ষেপ করা হয়েছে ( I4a675 , b/172239032 )
  • Ambient সাথে তাদের প্রত্যয় হিসাবে নাম দেওয়া অ্যাম্বিয়েন্টগুলিকে অবমূল্যায়িত করা হয়েছে এবং অন্যান্য অ্যাম্বিয়েন্ট এবং রচনা API নির্দেশিকা অনুসরণ করে অ্যাম্বিয়েন্টের সাথে প্রিফিক্স করা নতুন বৈশিষ্ট্যগুলির সাথে প্রতিস্থাপিত হয়েছে৷ ( I33440 )
  • Added Android Typeface wrapper. You can load an Android Typeface via typeface function ie typeface(Typeface.DEFAULT) . Also renamed typefaceFromFontFamily() to typeface() ( I52ab7 )
  • মডিফায়ার কারখানাগুলি @Composable হিসাবে চিহ্নিত করার পরিবর্তে অভ্যন্তরীণভাবে androidx.compose.ui.composed {} ব্যবহার করে কিনা তা পরীক্ষা করতে লিন্ট চেক যোগ করা হয়েছে। ( I3c4bc )
  • Added lint check to check that Modifier factory functions are defined as extensions on Modifier, so they can be fluently chained together. ( I07981 )
  • শব্দার্থতত্ত্বের যুক্তি মার্জঅলডেসেন্ড্যান্ট-এর নাম পরিবর্তন করে মার্জ ডিসেন্ডেন্ট করা হয়েছে। ( Ib6250 )
  • পরীক্ষায় সময় নিয়ন্ত্রণ (TestAnimationClock এবং এর ব্যবহার) এখন পরীক্ষামূলক ( I6ef86 , b/171378521 )
  • পুরানো ui-টেস্ট মডিউল এবং এর স্টাবগুলি সরান ( I3a7cb )
  • TextUnit.Inherit is renamed to TextUnit.Unspecified in consistent with other units. ( ifce19 )
  • প্রান্তিককরণ ইন্টারফেস আপডেট করা হয়েছে এবং কার্যকরী করা হয়েছে। ( I46a07 , b/172311734 )
  • foundation:foundation-text module has been merged into foundation:foundation ( Idac0f )
  • Deprecate place(Offset) and placeRelative(Offset). Use overloads with int offsets instead ( I4c5e7 )
  • id was renamed to layoutId for LayoutIdParentData . Measurable.id was renamed to Measurable.layoutId . ( আইএডিবিসিবি , বি/172449643 )

সংস্করণ 1.0.0-alpha07

11 নভেম্বর, 2020

androidx.compose.foundation:foundation:1.0.0-alpha07 , androidx.compose.foundation:foundation-layout:1.0.0-alpha07 , and androidx.compose.foundation:foundation-text:1.0.0-alpha07 are released. সংস্করণ 1.0.0-alpha07 এই কমিট ধারণ করে।

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

  • Similarly to Modifier.fillMaxSize[Width|Height] we now support fractions in Modifier.fillParentMaxSize[Width|Height] inside the scope of LazyColumn/Row ( I797e2 , b/166586426 )
  • Removed KeyboardOptions.toImeOptions from public API. ( Ic2e45 )
  • AmbientTextStyle, ProvideTextStyle, এবং AmbientContentColor ফাউন্ডেশন বাতিল করা হয়েছে। পরিবর্তে উপাদান লাইব্রেরিতে উপলব্ধ নতুন সংস্করণ ব্যবহার করুন. নন-মেটেরিয়াল অ্যাপ্লিকেশনগুলির জন্য, আপনার পরিবর্তে আপনার নিজস্ব ডিজাইন সিস্টেম নির্দিষ্ট থিমিং অ্যাম্বিয়েন্ট তৈরি করা উচিত যা আপনার নিজের উপাদানগুলিতে ব্যবহার করা যেতে পারে। ( I74acc , b/172067770 )
  • foundation.Text অবচয় করা হয়েছে এবং material.Text দিয়ে প্রতিস্থাপিত হয়েছে। একটি মৌলিক, অবিকৃত পাঠ্য API এর জন্য যা একটি থিম থেকে মান গ্রহণ করে না, দেখুন androidx.compose.foundation.BasicText। ( if64cb )
  • টেক্সটফিল্ডে ম্যাক্সলাইন যোগ করা হয়েছে ( Ib2a5b )
  • কীবোর্ড অপশন গ্রহণ করতে পাঠ্যক্ষেত্র আপডেট করুন ( Ida7f3 )
  • Added KeyboardOptions for use in TextFields ( I9ca32 )
  • Adds BasicText as a design-unopinionated API for text, parallel to BasicTextField. ( I28268 )
  • ExperimentalLazyDsl annotation was removed. LazyColumn/LazyRow can now be used without adding @OptIn ( Idab7a , b/166584730 )
  • BaseTextField অবমুক্ত করা হয়েছে। পরিবর্তে BasicTextField ব্যবহার করুন। ( I896eb )
  • BasicTextField has been added as a replacement for both CoreTextField and BaseTextField ( Id4cea )
  • Remove deprecated LazyColumnItems/LazyRowItems ( I1d8a8 )
  • The deprecated composables for sizing to intrinsic measurements were removed. ( I18537 , b/171811496 )
  • রিলেটিভপ্যাডিংফ্রোমের নামকরণ করা হয়েছিল প্যাডিংফ্রোমে। লেআউট সীমা থেকে পাঠ্য বেসলাইনগুলিতে দূরত্ব নির্দিষ্ট করার সুবিধার্থে প্যাডিংফ্রোমসলাইন মডিফায়ার যুক্ত করা হয়েছিল। ( I0440a , খ/170633813 )
  • The matchHeightConstraintsFirst parameter was added to the aspectRatio modifier, which can be used to specify the modifier to size to height constraints before trying the width correspondents. ( Ie7c43 , b/155290593 )
  • The deprecated DpConstraints was removed. ( I87884 , b/171702471 )

বাগ ফিক্স

  • Introduced ScaleFactor inline class to represent scale factors for the horizontal and vertical axes independent of one another in order to support non-uniform scaling use cases.
    • Added computeScaleFactor method to ContentScale
    • Added ContentScale.FillBounds to perform non-uniform scaling to stretch the src bounds to fully occupy the destination.
    • Added operator methods to compute ScaleFactor parameters with Size parameters.
    • ( Ic96a6 , b/172291582 )
  • captureToBitmap moved to captureToImage. ( I86385 )
  • Marks CoreText as @InternalTextApi. Use BasicText instead. ( I6aaeb )
  • কীবোর্ড বিকল্পগুলিকে ImeOptions হিসাবে পুনঃনামকরণ করুন ( I82f36 )
  • কীবোর্ড টাইপ এবং ImeAction কে কীবোর্ড অপশনে সরানো হয়েছে ( I910ce )
  • CoreTextField has been marked as @InternalTextApi. Use BasicTextField instead ( Ie2469 )
  • ExperimentalSubcomposeLayoutApi টীকাটি সরানো হয়েছে৷ SubcomposeLayout এখন @OptIn ( I708ad ) যোগ না করে ব্যবহার করা যেতে পারে
  • Introduce ui-test-junit4 module ( Ib91f8 )
  • রঙ নেওয়ার জন্য আইকন API আপডেট করা হয়েছে। একটি সম্ভাব্য টিন্ট রঙ হিসাবে অনির্দিষ্ট যা একটি ColorFilter ছাড়া প্রদত্ত সম্পদ বা পেইন্টার আঁকবে। পূর্বে রঙের সাথে রঙিনকে উপেক্ষা করার চেষ্টা করা হয়েছে un ( I049e2 , বি/171624632 )
  • পরিমাপকরণের বাইরে সরানো হয়েছিল। ( আইবিএফ 96 ডি , বি/171184002 )
  • বেশ কয়েকটি লেআউট সম্পর্কিত প্রতীকগুলি androidx.compose.ui থেকে androidx.compose.layout.ui এ সরানো হয়েছিল। ( I0fa98 , বি/170475424 )
  • androidx.ui.test moved to androidx.compose.ui.test ( I9ffdb )
  • ফার্স্টবেসলাইন এবং লাস্টবেসলাইনকে androidx.compose.ui.layout প্যাকেজে ( Ied2e7 ) সরানো হয়েছে
  • Added SelectionContainer without the callback ( Ibfadb )
  • Add Tests for SelectionHandles' Positions in SelectionContainer. ( Ie93db )
  • Added Keyboard auto correct IME Option ( I57b8d )

সংস্করণ 1.0.0-alpha06

অক্টোবর 28, 2020

androidx.compose.foundation:foundation:1.0.0-alpha06 , androidx.compose.foundation:foundation-layout:1.0.0-alpha06 , and androidx.compose.foundation:foundation-text:1.0.0-alpha06 are released. সংস্করণ 1.0.0-alpha06 এই কমিট ধারণ করে।

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

  • androidx.compose.foundation.icon androidx.compose.material.icon এ সরানো হয়েছে। আপনি যদি কোনও চিত্রশিল্পীর সাথে চিত্রের উপাদান / মডিফায়ার.পেইন্ট () ব্যবহার করতে পারেন যদি আপনি উপাদান গ্রন্থাগারটি ব্যবহার করতে না চান। ( I9f622 )
  • Added interactionState to Modifier.scrollable, ScrollableColumn and LazyColumnFor ( I81566 , b/169509805 )
  • alignByBaseline was added to RowScope and alignWithSiblings was renamed to alignBy ( I06503 , b/170628732 )
  • বাক্স একটি ইনলাইন ফাংশন তৈরি করা হয়েছিল। ( আইবিএস 0 সি , বি/155056091 )
  • Added maxLines to CoreTextField ( Ibee58 , b/143687793 )
  • Added softwrap to CoreTextField. ( I21a4b )

বাগ ফিক্স

  • কমপোজেবল এপিআই অভ্যন্তরীণভাবে রচনাগুলি জুড়ে ডেটা অব্যাহত রাখার জন্য 'স্মরণ' উপার্জনের পক্ষে আরও ভালভাবে ইঙ্গিত করার জন্য ভেক্টরপেইন্টারকে স্মরণ করে। ( আইএফডিএ 43 )
  • কমপোজেটস্ট্রুলে ট্রানজিশন সক্ষম করুন; কমপোজেটস্ট্রুল থেকে ব্লিংকিং কার্সার সক্ষম করতে বিকল্প সরান। ( If0de3 )
  • কোরটেক্সটফিল্ডে একক লাইন কীবোর্ড বিকল্প যুক্ত করা হয়েছে ( i72e6d )
  • এটি কমপোজ জুড়ে কীভাবে ব্যবহৃত হয় তা আরও ভালভাবে প্রকাশ করার জন্য রেডিয়াস এপিআইয়ের নামকরণ করা হয়। নেতিবাচক কর্নার রেডিয়াই শূন্যে ক্ল্যাম্প করা হয়েছে তা নির্দেশ করার জন্য আপডেট করা ডকুমেন্টেশন। ( I130c7 , বি/168762961 )
  • Add ability to specify inspector info in composed modifier ( Idee08 , b/163494569 )
  • Added KeyboardCapitalization IME Option ( I8ac38 )
  • Fix Rtl Handle Position. ( I6e1e0 )
  • Breaking change: removed the return value from PointerInputFilter.onPointerEvent(...) given that the only value that should be able to be changed in pointer events is consumption data. Instead of returning data from PointerInputFilter.onPointerEvent(...), now you can just mutate the consumption data of the PointerEvents passed in. ( I6acd0 )
  • Added SelectAll option into selection menu ( Ief02b )

সংস্করণ 1.0.0-alpha05

অক্টোবর 14, 2020

androidx.compose.foundation:foundation:1.0.0-alpha05 , androidx.compose.foundation:foundation-layout:1.0.0-alpha05 , and androidx.compose.foundation:foundation-text:1.0.0-alpha05 are released. 1.0.0-alpha05 সংস্করণে এই কমিট রয়েছে।

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

  • CoreTextField now supports cursor functionality ( Id23aa )
  • কন্টেন্ট কালার () এবং কারেন্ট টেক্সটস্টাইল () এপিআইগুলিকে অবমূল্যায়ন করে এবং যথাক্রমে এম্বিয়েন্টকন্টেন্টকোলার এবং অ্যাম্বিয়েন্ট টেক্সটাইল অ্যাম্বিয়েন্টগুলির সাথে তাদের প্রতিস্থাপন করে। আপনি অন্য যে কোনও পরিবেষ্টিত হিসাবে পরিবেষ্টিত সম্পত্তি হিসাবে। ব্যবহার করে বর্তমান মানটি অ্যাক্সেস করতে পারেন .current ধারাবাহিকতার জন্য এবং একই জিনিসটি সম্পাদনের একাধিক উপায় এড়ানোর জন্য এটি পরিবর্তন করা হয়েছিল। নিম্নলিখিত হিসাবে তাদের উদ্দেশ্য আরও ভালভাবে বর্ণনা করার জন্য অতিরিক্তভাবে কিছু পরিবেষ্টিত বৈশিষ্ট্যগুলির নামকরণ করা হয়েছে:

    • কন্টেন্ট কলোরম্বিয়েন্ট -> অ্যাম্বিয়েন্টকন্টেন্টকোলার
    • টেক্সটাইলেম্বিয়েন্ট -> অ্যাম্বিয়েন্ট টেক্সটস্টাইল
    • সূচক -> পরিবেষ্টিত
    • জোর দেওয়া -> অ্যাম্বিয়েন্টমফেসিসলভেলস
    • রিপ্লেথেমেম্বিয়েন্ট -> অ্যাম্বিয়েন্ট্রিপ্লেথেমে ( আই 37 বি 6 ডি )

বাগ ফিক্স

  • ইনলাইন ক্লাসগুলির জন্য সেন্টিনেল মানগুলির মানককরণের অংশ হিসাবে , রঙিন নামকরণ করুন un
  • Added Copy/Paste/Cut accessibility actions ( I6db4f )
  • টেক্সটওভারফ্লো.নোন চালু করা হয়। যখন ওভারফ্লো কোনও নয়, পাঠ্য আর ওভারফ্লো পরিচালনা করবে না এবং এটি এর প্রকৃত আকারটি লেআউটনোডে রিপোর্ট করবে। ( I175c9 , বি/158830170 )
  • Updated Size.Unspecified parameters to be Float.NaN instead of Float.POSITIVE_INFINITY. Updated Painter implementations to check against Size.Unspecified as well as non-finite Sizes. ( I95a7e )
  • Added Paging Compose module and paging integration ( Ib85da )
  • Modify LazyListScope to receive nullable values ( I1765b )
  • অনপজিশনডমোডিফায়ারটির নামকরণ করা হয় অনগ্লোবালিডিপিশনডমোডাইফায়ারে এবং অনপোশনড () এর নামকরণ করা হয় অনগ্লোবালি -পজিশনড () এ। ( I587e8 , বি/169083903 )
  • Added samples for LazyColumn/Row ( Idc16d )
  • Fix for the items and itemsIndexed methods to allow emptyList ( I06647 )
  • Add a DSL for specifying inspector information ( Ic9a22 )
  • Move LongPress into Text. ( Iff2bc )
  • Disable Selection in Text, and a Demo. ( Ie7e97 )
  • Support AnnotatedString to SpannableString conversion for accessibility. ( Ief907 )
  • Removed PointerInputFilter.onPointerInput(...) . PointerInputFilter.onPointerEvent(...) should be used in its place. ( I6f04a )

সংস্করণ 1.0.0-alpha04

অক্টোবর 1, 2020

androidx.compose.foundation:foundation:1.0.0-alpha04 , androidx.compose.foundation:foundation-layout:1.0.0-alpha04 , and androidx.compose.foundation:foundation-text:1.0.0-alpha04 are released. সংস্করণ 1.0.0-alpha04 এই কমিট ধারণ করে।

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

  • স্ট্যাকের নামকরণ করা হয়েছিল বক্সে। The previously existing foundation.Box will be deprecated in favor of the new Box in compose.foundation.layout. নতুন বাক্সের আচরণটি হ'ল বাচ্চাদের একের উপরে শীর্ষে স্ট্যাক করা যখন এটির একাধিক বাচ্চা থাকে - এটি পূর্ববর্তী বাক্সের চেয়ে আলাদা, যা একটি কলামের মতো আচরণ করছিল। ( I94893 , বি/167680279 )
  • বক্স সজ্জা পরামিতিগুলি হ্রাস করা হয়েছে। আপনি যদি আপনার বাক্সে সজ্জা/প্যাডিং রাখতে চান তবে পরিবর্তে মডিফায়ারগুলি ব্যবহার করুন (মডিফায়ার.ব্যাকগ্রাউন্ড, মডিফায়ার.বার্ডার, মডিফায়ার.প্যাডিং) ( আইবিএই 92 , বি/167680279 )
  • Add a new LazyListState class. This allows for observation and control of the scroll position of LazyRow and LazyColumn components. Instances can be created using rememberLazyListState() and passed into the state parameter of the component. Currently, the first visible item and offsets can be observed in this initial version. ( Ic7cb7 , b/159307669 )
  • Lazy list position and scroll offset are now saved and restored across Activity recreation ( Ie045f , b/166589058 )
  • Add long click semantics action ( I6281b , b/156468846 )
  • MutatorMutex utility added for keeping a single mutator of shared state over time and cancelling conflicting mutators by priority ( I3f975 )
  • Annotated rootAnimationClockFactory, transitionsEnabled, blinkingCursorEnabled and textInputServiceFactory with @VisibleForTesting, make them internal API and hide their kdoc ( I554eb , b/168308412 )
  • Removed inlineContent parameter from Text with String input. It won't be used because inlineContent must work with AnnotatedString. ( Ief403 )
  • The deprecated custom Arrangement APIs were removed. ( Ic576d , b/168297922 , b/168297923 )
  • The unbounded parameter was added to wrapContentSize modifiers, which enables measuring the layout element with infinite max constraints. ( I77951 , b/158559319 )
  • আমরা লেআউট স্কোপগুলির সামগ্রীগুলির স্থিতিশীল আমদানিগুলি রোধ করেছি (যেমন রোজস্কোপে অ্যালাইনউইথসিবিলিং)। এর পরিবর্তে সুস্পষ্ট স্কোপ বিকল্পটি ব্যবহার করা উচিত: with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) } ( I216be , খ/166760797 )

বাগ ফিক্স

  • অনেক গ্রাফিক্স এপিআই আপডেট হয়েছে
    • আপডেট স্কেল এবং রোটেশন ট্রান্সফর্মেশন এপিআইগুলি ড্রস্কোপ এবং ড্রট্রান্সফর্মে এক্স/ওয়াই স্থানাঙ্কের জন্য পৃথক ফ্লোট প্যারামিটারগুলির পরিবর্তে পিভট সমন্বয়কে উপস্থাপন করতে একটি একক অফসেট প্যারামিটার গ্রহণ করতে
    • Rect.expandtoinclude এবং rect rect
    • উপবৃত্তাকার ছাড়াও ওভাল বলতে ব্যাসার্ধের ডকুমেন্টেশন আপডেট হয়েছে
    • ইনলাইন রেডিয়াস শ্রেণীর জন্য পাবলিক কনস্ট্রাক্টরকে নির্দেশ করতে যুক্ত ডকুমেন্টেশনগুলি সরাসরি ডাকা হবে না তবে পরিবর্তে ব্যাসার্ধের অবজেক্টগুলি তাদের ফাংশন কনস্ট্রাক্টরদের মাধ্যমে ইনস্ট্যান্ট করা উচিত
    • টপরাইট, নীচের অংশে, নীচের কেন্দ্রী ইত্যাদি কোয়েরিতে রাউন্ডরেক্ট এপিআই সরানো হয়েছে
    • Rect.translate এর পক্ষে অবমূল্যায়িত rect.shift
    • রাউন্ডরেক্ট.গ্রো এবং rect.shrink apis সরানো হয়েছে
    • Rect.boundingRect এ রাউন্ডরেক্ট.উটাররেক্টের নামকরণ করা হয়েছে
    • রাউন্ডরেক্ট.মিডলারেক্ট/টালমিডলারেক্ট/উইডেমিডলারেক্ট এবং রেক্ট.আইসস্টেডিয়াম পদ্ধতিগুলি সরানো হয়েছে
    • রাউন্ডরেক্টর নামকরণ
    • রাউন্ডরেক্টর নামকরণ
    • রাউন্ডরেক্ট.সেন্টার পরিবর্তিত হয়েছে কোনও ফাংশনের পরিবর্তে সম্পত্তি হিসাবে
    • এক্স/ওয়াই ব্যাসার্ধের মানগুলির জন্য পৃথক পরামিতিগুলির পরিবর্তে ব্যাসার্ধের বৈশিষ্ট্যগুলি গ্রাস করতে আপডেট হওয়া রাউন্ডরেক্ট কনস্ট্রাক্টর
    • অপসারণ আকারের এপিআই যা ধরে নিয়েছিল এটি 0,0 এ উত্স সহ একটি আয়তক্ষেত্র ছিল
    • ব্যাসার্ধে একটি ধ্বংসাত্মক এপিআই যুক্ত করেছেন
    • পরিবর্তে বিভিন্ন রাউন্ডরেক্ট এক্সটেনশন ফাংশনগুলি স্থানান্তরিত করে
    • ( I8f5c7 , বি/168762961 )
  • Performance optimizations for LazyColumnFor/LazyRowFor scrolling by not doing unnecessary recompositions during every scroll ( I64f65 , b/168293643 , b/167972292 , b/165028371 )
  • Fixed crash in LazyColumnFor/LazyRowFor after scrolling and then changing items and implemented auto scrolling up when the previously visible item was removed so we don't display empty gaps in the end anymore ( I220ab , b/161480164 , b/167855468 )
  • Nesting scrollable in the same direction containers like ScrollableContainer and LazyColumnFor is not allowed anymore. It was never supported and was breaking the fling and all the laziness of composing the items of LazyColumnFor ( I6e101 )
  • অনেক গ্রাফিক্স এপিআই আপডেট হয়েছে
    • স্কোপড ট্রান্সফর্মেশন পদ্ধতিগুলির সাথে ড্রস্কোপ এপিআই আপডেট করা হয়েছে যে রূপান্তরটি কেবল কলব্যাকের মধ্যেই প্রয়োগ করা হয় এবং কলব্যাকটি অনুরোধ করার পরে সরানো হয় তা নির্দেশ করে
    • বৃত্তাকার আয়তক্ষেত্রের পরিবর্তে পথটি উল্লেখ করতে ক্লিপথ ডকুমেন্টেশন আপডেট করা হয়েছে
    • ক্লিপাতে ডান প্যারামিটারের জন্য ডকুমেন্টেশনে স্থির ব্যবধান
    • ড্রিনটোকানভাস এবং সরানো আকারের প্যারামিটারে ড্রস্কোপ.ড্রোকানভাসের নামকরণ করুন
    • অনুভূমিক এবং উল্লম্বভাবে ইনসেট পদ্ধতিতে ডিএক্স/ডিওয়াই প্যারামিটারগুলির নামকরণ করা হয়েছে
    • যুক্ত ইনসেট ওভারলোড যা সমস্ত 4 বাউন্ডে একই ইনসেট মান সরবরাহ করে
    • ইনসেট পদ্ধতিতে ডকুমেন্টেশন সরানো হয়েছে যা নির্দেশ করে যে ইনসেটটি 4 টি পক্ষের জন্য প্রয়োগ করা হবে
    • রেক্ট ক্লাসের জন্য আপডেট ডকুমেন্টেশন
    • কেডিওসি শৈলীর সাথে মেলে রেক প্যারামিটারগুলিতে আপডেট হওয়া মন্তব্যগুলি
    • Rect.join এবং rect.expandtoinclude সরানো হয়েছে
    • Rect.translate (অফসেট) এবং অবমূল্যায়িত rect.shift এর জন্য ওভারলোড তৈরি করা হয়েছে
    • ( If086a , খ/167737376 )
  • add AccessibilityScrollState to semantics properties. ( Ifeda9 )
  • Make TextRange inline to avoid object creation. ( Id034b )
  • ParagraphConstraints is removed. Width is directly passed to Paragraph now. ( Ica712 )

সংস্করণ 1.0.0-alpha03

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

androidx.compose.foundation:foundation:1.0.0-alpha03 , androidx.compose.foundation:foundation-layout:1.0.0-alpha03 , and androidx.compose.foundation:foundation-text:1.0.0-alpha03 are released. সংস্করণ 1.0.0-alpha03 এই কমিট ধারণ করে।

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

  • ইনারপ্যাডিংয়ের নামকরণ করা হয়েছিল প্যাডিংভ্যালুগুলিতে। ( I195f1 , খ/167389171 )
  • মহাকর্ষের ব্যবহারগুলি লেআউট এপিআইগুলিতে সারিবদ্ধ বা প্রান্তিককরণের জন্য ধারাবাহিকভাবে নামকরণ করা হয়েছিল। ( আই 2421 এ , বি/164077038 )
  • An alignment parameter was added to Stack, which allows specifying the default alignment for all the Stack children. ( Ie80ca , b/164085265 )

বাগ ফিক্স

  • এটি ব্যবহার করে ডিপকন্ট্রেন্টস এবং এপিআইগুলি হ্রাস করা হয়েছিল। ( I90cdb , খ/167389835 )
  • The parameters minWidth and maxWidth of widthIn were renamed to min and max . Similarly for preferredWidthIn , heightIn , preferredHeightIn . ( I0e5e1 , বি/167389544 )
  • কমপোজেটস্ট্রুলে অননোড এবং অন্যান্য বৈশ্বিক পদ্ধতি যুক্ত করা হয়েছে কারণ বর্তমান বৈশ্বিক বিষয়গুলি হ্রাস পেতে চলেছে। ( Ieae36 )
  • Fixed size and position calculations in GestureScope, which caused amongst others generation of invalid swipe gestures ( Iaf358 , b/166589947 )
  • createAndroidComposeRule থেকে AndroidInputDispatcher ( আইডিএফ 08 , androidx.ui.test /164060572 androidx.ui.test.android

সংস্করণ 1.0.0-alpha02

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

androidx.compose.foundation:foundation:1.0.0-alpha02 , androidx.compose.foundation:foundation-layout:1.0.0-alpha02 , and androidx.compose.foundation:foundation-text:1.0.0-alpha02 are released. সংস্করণ 1.0.0-alpha02 এই কমিট ধারণ করে।

বাগ ফিক্স

  • TestUiDispatcher is marked experimental ( Iae99d , b/161247083 )
  • Added ManualFrameClock.hasAwaiters to see if anything is awaiting a frame from that clock; runWithManualClock as a replacement for runBlocking when running tests that need a ManualFrameClock; TestUiDispatcher.Main that gives easy access to the main UI dispatcher in your tests.

    যেমন:

    @Test
    fun myTest() = runWithManualClock { clock ->
        // set some compose content
        withContext(TestUiDispatcher.Main) {
            clock.advanceClock(1000L)
        }
        if (clock.hasAwaiters) {
            println("The clock has awaiters")
        } else {
            println("The clock has no more awaiters")
        }
    }
    

    ( I0a85b , b/161247083 )

সংস্করণ 1.0.0-alpha01

আগস্ট 26, 2020

androidx.compose.foundation:foundation:1.0.0-alpha01 , androidx.compose.foundation:foundation-layout:1.0.0-alpha01 , and androidx.compose.foundation:foundation-text:1.0.0-alpha01 are released. সংস্করণ 1.0.0-alpha01-এ এই কমিট রয়েছে।

সংস্করণ 0.1.0-দেব

সংস্করণ 0.1.0-DEV17

আগস্ট 19, 2020

androidx.compose.foundation:foundation:0.1.0-dev17 , androidx.compose.foundation:foundation-layout:0.1.0-dev17 , and androidx.compose.foundation:foundation-text:0.1.0-dev17 are released. 0.1.0-DEV17 সংস্করণে এই কমিটগুলি রয়েছে।

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

  • The spacedBy Arrangement was added for Row and Column, to enable positioning layout children with a fixed spacing. The aligned Arrangment was also added, to enable positioning layout children one next to the other and aligned in the Row/Column according to an Alignment. The previous Arrangement.Vertical#arrange and Arrangement.Horizontal#arrange methods were deprecated, and writing custom Arrangements will not be supported in the future. ( I6733d , b/161985975 )
  • Offset has become an inline class ( Iaec70 )
  • টেক্সটফিল্ড থেকে অনফোকাসচ্যাঞ্জড কলব্যাকগুলি সরানো হয়েছে। পরিবর্তে Modifier.focusobserver ব্যবহার করুন। ( I51089 , বি/161297615 )
  • মডিফায়ার.ড্রোবার্ডারকে হ্রাস করা হয়েছে। পরিবর্তে Modifier.border ব্যবহার করুন। সীমান্তের ডেটা ক্লাসটি বর্ডারস্ট্রোক দ্বারা প্রতিস্থাপন করা হয়েছে ( আই 4257 ডি , বি/158160576 )
  • VerticalScroller and HorizontalScroller have been removed. Use ScrollableColumn/Row instead. Modifier.drawBackground has been removed. Use Modifier.background ( I73b0d , b/163019183 )
  • Remove marked as deprecated fillMax* modifiers from LazyItemScope as they are making it harder to add such modifiers correctly for items which are not direct children of LazyColumnFor ( Ifa78d )
  • added LazyColumn/LazyRow implementation as DSL ( I93cc6 )
  • Constraints is now an inline class ( I88736 )
  • Added the ability to size a layout to a fraction of the available space, using the fillMaxWidth, fillMaxHeight and fillMaxSize modifiers. ( I945bb , b/161562591 )

বাগ ফিক্স

  • Added a modifier param to SelectionContainer ( I4aada , b/161487952 )
  • শব্দার্থবিজ্ঞানী ল্যাম্বডাকে শব্দার্থবিজ্ঞানপ্রযুক্তিগুলিতে যুক্ত করা হয়েছে। এটি মার্জিলডেসেন্ডেন্টস শব্দার্থবিজ্ঞানের মার্জিংয়ের জন্য একটি কাস্টম নীতি সংজ্ঞায়িত করতে ব্যবহার করা যেতে পারে। ডিফল্ট নীতি হ'ল ইতিমধ্যে উপস্থিত থাকলে পিতামাতার মানটি ব্যবহার করা, অন্যথায় সন্তানের মান। ( আইএএফ 6 সি 4 , বি/161979921 )
  • PlacementScope.placeAbsolute() নামকরণ করা হয়েছিল PlacementScope.place() এ, এবং পূর্ববর্তী PlacementScope.place() নামকরণ করা হয়েছিল PlacementScope.placeRelative() এ নামকরণ করা হয়েছিল। ফলস্বরূপ, PlacementScope.place() পদ্ধতিটি স্বয়ংক্রিয়ভাবে ডান-থেকে-বাম প্রসঙ্গে অবস্থানটি আর মিরর করবে না। যদি এটি পছন্দসই হয় তবে পরিবর্তে PlacementScope.placeRelative() ব্যবহার করুন। ( I873ac , খ/162916675 )
  • অবমূল্যায়িত ভরাট টেক্সটফিল্ড উপাদান সরানো হয়েছে। ভরাট পাঠ্য ক্ষেত্রের উপাদান নকশা বাস্তবায়ন পেতে দয়া করে টেক্সটফিল্ড ব্যবহার করুন। ( I5e889 )
  • লিনিয়ারপ্রোগ্রেসিন্ডিকেটরে ব্যাকগ্রাউন্ড কালার প্যারামিটার যুক্ত করা হয়েছে এবং সার্কুলারপ্রোগ্রেসিন্ডিকেটর থেকে অভ্যন্তরীণ প্যাডিং সরানো হয়েছে। নতুন প্রগ্রেস ইন্ডিকেটরকনস্ট্যান্টস যুক্ত করা হয়েছে
  • স্পষ্টতার জন্য state { ... } কমপোজেবল এখন সুস্পষ্ট কলগুলির পক্ষে অবমূল্যায়নযোগ্য remember { mutableStateOf(...) } এটি রাষ্ট্রীয় পরিচালনার জন্য সামগ্রিক এপিআই পৃষ্ঠ এবং ধারণার সংখ্যা হ্রাস করে এবং শ্রেণি সম্পত্তি প্রতিনিধি দলের জন্য by mutableStateOf() মেলে। ( Ia5727 )
  • আরও ভাল ফিট কমপোজ নামকরণ প্যাটার্নগুলিতে রাউন্ডরেক্টে আরআরেক্টের নামকরণ করা হয়েছে একই রকম ফাংশন কনস্ট্রাক্টরগুলি তৈরি করা এবং অবমূল্যায়িত আরআরেক্ট ফাংশন কনস্ট্রাক্টরস ( আই 5 ডি 325 )
  • Removed onChildPositioned and OnChildPositionedModifier. বিকাশকারীদের পরিবর্তে শিশু বিন্যাসে অনপোজিশনড এবং অনপজিশনডমোডাইফায়ার ব্যবহার করা উচিত। ( I4522e , খ/162109766 )
  • ইন্টসাইজ এখন একটি ইনলাইন ক্লাস ( আই 2 বিএফ 42 )
  • LongPress the Blank Area to Edit. ( Ib1e5b )
  • Hide FloatingToolbar After Tapping on the Text. ( If4525 )
  • Hide FloatingToolbar When Updating the Selection. ( I8444c )
  • Deselect When Blur. ( I781a2 )

সংস্করণ 0.1.0-DEV16

আগস্ট 5, 2020

androidx.compose.foundation:foundation:0.1.0-dev16 , androidx.compose.foundation:foundation-layout:0.1.0-dev16 , and androidx.compose.foundation:foundation-text:0.1.0-dev16 are released. 0.1.0-DEV16 সংস্করণে এই কমিটগুলি রয়েছে।

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

  • LazyItemScope was added for itemContent param of Lazy lists. It provides modifiers to fill the parent max size which solves the use case when the item should fill the viewport and the regular Modifier.fillMaxSize() doesn't work as the item is measured with infinity constraints. ( Ibd3b2 , b/162248854 )
  • ডায়ালগটি ইউআইতে সরান ( i47fa6 )
  • Added LazyColumnForIndexed/LazyRowForIndexed - versions of LazyColumnFor/LazyRowFor which provides both index and item in the itemCallback. It is useful when in addition to a current item you need to know a current index. ( I65ff3 )
  • Modifier.deternimateprogress এর নামকরণ করা হয়েছে মডিফায়ারে
  • LazyColumnItems was renamed to LazyColumnFor. LazyRowItems was renamed to LazyRowFor ( I84f84 )
  • Add some Marks/Annotations for best practice reason. ( I66b20 )
  • ফাউন্ডেশন.শেপ.করার প্যাকেজটি ফাউন্ডেশনে সমতল ছিল
  • Added сrossaxis gravity param for LazyRowItems/LazyColumnItems. LazyRowItems/LazyColumnItems now support wrap content behaviour. ( Ib39fc )
  • ZoomableState has been renamed to ZoomableController. Custom curve support has been added for smoothScale. enabled and onZoomStarted functionality has been added ( If8b8f )
  • ম্যাটেরিয়াল ফিলিড টেক্সটফিল্ডটির নামকরণ করা হয়েছিল টেক্সটফিল্ডে এবং ফাউন্ডেশনাল টেক্সটফিল্ডটি সর্বাধিক পছন্দসই এপিআই আবিষ্কার এবং ব্যবহার করা সহজ করার জন্য বেসটেক্সটফিল্ডে নামকরণ করা হয়েছিল ( আইএ 6242 , বি/155482676 )
  • Previously deprecated AdapterList has been removed. Use LazyColumnItems instead ( I12b9b )
  • মডিফায়ার.ড্রব্যাকগ্রাউন্ডের নামকরণ করা হয়েছে মডিফায়ার.ব্যাকগ্রাউন্ডে ( আই 13677 )
  • The old ConstraintLayout DSL was removed. ConstraintSet2 has been renamed to ConstraintSet. ( If58d1 , b/162450908 )
  • Added Modifier.absoluteOffset() and Modifier.absoluteOffsetPx(). Unlike offset modifiers, absolute offset modifiers will not auto-mirror in right-to-left context ( I3aa21 )
  • Row and Column are now inline function significantly reducing the overhead of using them. ( I75c10 )

বাগ ফিক্স

  • ঠিকানা ব্রড এপিআই ফিক্সগুলি ( i077bc )
    1. অব্যবহৃত অফসেটবেস ইন্টারফেস সরান
    2. একটি ধারাবাহিক এপিআই পৃষ্ঠের জন্য অফসেট এবং ইনফসেট ক্লাসগুলি সারিবদ্ধ করুন
    3. অফসেট.ওরিগিনকে নামকরণ করুন ইনফসেট.জেরো অফসেট এপিআইয়ের সাথে সামঞ্জস্যপূর্ণ হতে
    4. গ্রাহকদের তাদের নিজস্ব ক্যানভাস উদাহরণ তৈরি করতে সহায়তা করার জন্য ক্যানভাস ইন্টারফেসের বাইরে নাটিভেকানভাস পদ্ধতিটি সরানো হয়েছে
    5. রিফ্যাক্টর ড্রস্কোপকে ল্যাটআইনিটের পরিবর্তে নন-নাল প্যারামিটার হতে এবং ক্ষেত্রের নন-নালিবিলিটি নিশ্চিত করার জন্য স্টাব খালিকানভাস শ্রেণি তৈরি করেছে
    6. পাস্কাল কেস হতে ক্লিপপ এনাম নামকরণ
    7. পাস্কাল কেস হিসাবে ফিল্টারকুয়ালি এনাম নামকরণ করা হয়েছে
    8. পাস্কাল কেস হওয়ার জন্য স্ট্রোকজয়াইন এনামগুলির নামকরণ করা হয়েছে
    9. প্যাসাল কেস হতে পয়েন্টমোড এনাম নামকরণ
    10. প্যাসাল কেস হতে পেইন্টিং স্টাইল এনাম নামকরণ
    11. পাস্কাল কেস হতে প্যাথফিলটাইপ এনামগুলির নামকরণ করা হয়েছে
    12. পাস্কাল কেস হতে স্ট্রোকক্যাপ এনামগুলির নামকরণ করা হয়েছে
    13. আর ল্যাটআইনিট প্যারামগুলি ব্যবহার করতে হবে না এমন ড্রাগাচে বাস্তবায়ন আপডেট করা হয়েছে
    14. ফিলপেইন্ট এবং স্ট্রোকপেইন্ট অভ্যন্তরীণ পরামিতিগুলির জন্য অলস প্রতিনিধি ব্যবহার করতে আর আপডেট করা ড্রস্কোপ
    15. কম ওভারহেডের জন্য বাক্সের ব্যবহার এড়াতে আপডেট হওয়া চিত্রটি কমপোজেবল
    16. @Immutable টীকাগুলি পেতে আপডেট আউটলাইন ক্লাস
    17. প্রতিটি পাথ নির্দেশের জন্য @immutable টীকাগুলি রাখতে আপডেট করা পথ
    18. সমতার জন্য অপ্রয়োজনীয় শর্তসাপেক্ষ চেকগুলি অপসারণ করতে আপডেট করা ভেক্টর সাবকোমপজিশনটি ইতিমধ্যে সেগুলি পরিচালনা করে
    19. ফাংশন কনস্ট্রাক্টরদের পক্ষে অবচয়
    20. @Immutable এবং @স্টেবল এপিআই সহ আপডেট ব্রাশ ক্লাস এবং ফাংশন কনস্ট্রাক্টর
    21. পাস্কালকেস হতে আপডেট করা ভার্টেক্সমোড এনাম
    22. শর্তসাপেক্ষভাবে পেইন্টে স্ট্রোক প্যারামিটারগুলি ওভাররাইট করার জন্য ড্রকস্কোপ সিলেক্টপেইন্ট পদ্ধতি আপডেট করা হয়েছে যদি সেগুলি পরিবর্তিত হয়
    23. ধ্বংসকারী এপিআই যুক্ত করতে আপডেট আকার, অনির্ধারিত এবং অপসারণ অব্যবহৃত পদ্ধতিগুলিতে অনির্ধারিত এবং অপসারণের নাম পরিবর্তন করুন
  • Added MonotonicFrameAnimationClock that enables you to use a MonotonicFrameClock as an AnimationClockObservable to bridge the gap between the new coroutines based clocks and APIs that still use the old callback based clocks.

    The MonotonicFrameClock equivalent of ManualAnimationClock is now ManualFrameClock. ( I111c7 , b/161247083 )

  • সরানো SemanticsNodeInteraction.performPartialGesture পার্টিয়ালজেচার। পরিবর্তে SemanticsNodeInteraction.performGesture ব্যবহার করুন। ( আইডি 9 বি 62 )

  • SemanticsNodeInteraction.getBoundsInRoot() SemanticsNodeInteraction.getUnclippedBoundsInRoot() এর নামকরণ

  • ডান থেকে বাম সমর্থনের জন্য এপিআইগুলি আপডেট করা হয়েছে। লেআউটডাইরেকশনম্বিয়েন্ট যুক্ত করা হয়েছে, যা লেআউটের দিকটি পড়তে এবং পরিবর্তন করতে ব্যবহার করা যেতে পারে। মডিফায়ার.আরটিএল এবং মডিফায়ার.এলটিআর সরানো হয়েছে। ( I080b3 )

  • Modifier.plus অবমূল্যায়ন করা হয়েছে, পরিবর্তে মডিফায়ার ব্যবহার করুন। এর পরিবর্তে। 'তারপরে' এর অর্ডার দেওয়ার আরও শক্তিশালী সংকেত রয়েছে , পাশাপাশি মডিফায়ার টাইপ করতে নিষেধ করে Modifier.padding().background() + anotherModifier

  • Added isFocused() and isNotFocused() SemanticsMatcher. ( I0b760 )

  • RemeasurementModifier was added. It allows users to synchronously remeasure the layout. In general, you never need it as remeasure/relayout is happening automatically, but we use it inside LazyColumnItems during the scroll. ( I5f331 , b/160791058 )

  • isSystemInDarkTheme now always considers the system-wide dark theme setting, and ignores power saving status before Q, following latest guidance. ( I0c10c )

  • অনচিল্ডপজিশনডকে অবমূল্যায়ন করা হয়েছে। পরিবর্তে সন্তানের উপর অনপোজড ব্যবহার করুন। ( I87f95 , বি/162109766 )

  • ক্রিয়েট্রয়েডকোমপোজারুলে অ্যান্ড্রয়েডকোমপোসেটস্ট্রুলের নামকরণ করা হয়েছে। ( I70aaf )

  • Add accessibility action to get TextLayoutResult ( I9d6e6 )

সংস্করণ 0.1.0-DEV15

22 জুলাই, 2020

androidx.compose.foundation:foundation:0.1.0-dev15 , androidx.compose.foundation:foundation-layout:0.1.0-dev15 , and androidx.compose.foundation:foundation-text:0.1.0-dev15 are released. সংস্করণ 0.1.0-DEV15 এর মধ্যে এই কমিট রয়েছে।

To use the 0.1.0-dev15 version of Compose, you will need to:

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

  • কমপোজের 0.1.0-dev15 সংস্করণটি ব্যবহার করতে, নির্ভরতা ঘোষণায় উপরে প্রদর্শিত নতুন কোড স্নিপেট অনুসারে আপনাকে আপনার নির্ভরতাগুলি আপডেট করতে হবে।

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

  • Similarly to the new param in ScrollableColumn/ScrollableRow LazyColumnItems/LazyRowItems now also have contentPadding param which allows to add a padding for the content after it has been clipped, which is not possible via just a modifier param. It also allows to add a spacing only before first item/after last item. ( Ibc24e )
  • টেক্সট ফিল্ডগুলিতে অনফোকাসচেঞ্জ কলব্যাক অনফোকাস চ্যাঞ্জডে নামকরণ করা হয়েছে ( আইডিএ 4 এ 1 )
  • 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 )
  • 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 )
  • Corner sizes used by RoundedCornerShape and CutCornerShape can now be larger than 50% ( Id2340 , b/160400213 )
  • Changed the default ContentScale parameter for the Image composable from Inside to Fit. This was done in order to get behavior to scale up the underlying Painter if the layout size is larger than the intrinsic size of the painter while maintaining the aspect ratio. This behavior better matches expectations for providing fixed sizes to the Image while not affecting the default behavior if only the intrinsic size is used to compute the size of the composable. ( I40ae3 , b/159838006 )
  • 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 )
  • Clickable was removed. Use Modifier.clickable ( I84bdf )
  • Added LazyRowItems - Horizontally scrolling analogue of LazyColumnItems ( Ibbcf7 )
  • Introduced low level stateless animation APIs. These APIs ( I63bf7 )
  • androidx.ui.foundation.textfieldvalue এবং androidx.ui.input.editorvalue অবমূল্যায়ন করা হয়। টেক্সটফিল্ড, ভরাট টেক্সটফিল্ড এবং কোরটেক্সটফিল্ড কমপোজেবলগুলি যা সেই ধরণের ব্যবহার করে তাও হ্রাস করা হয়। এর পরিবর্তে অ্যান্ড্রয়েডএক্স.ইউআই.ইনপুট.টেক্সটফিল্ডভ্যালু ব্যবহার করুন ( আই 4066 ডি , বি/155211005 )
  • আইএনটিপিএক্সের ব্যবহার আইএনটি সহ প্রতিস্থাপন। ইনটঅফসেটের সাথে intpxposition প্রতিস্থাপন করা হয়েছে। INTPXSIZE intsize সঙ্গে প্রতিস্থাপন। ( আইবি 7 বি 44 )
  • androidx.ui.foundation.shape.RectangleShape removed; use androidx.ui.graphics.RectangleShape ( I94939 , b/154507984 )
  • আকারের তথ্য উপস্থাপনের জন্য ব্যবহৃত শ্রেণীর সংখ্যা একীভূত করার জন্য, পিএক্সসাইজের পরিবর্তে আকার শ্রেণীর ব্যবহারের মানকে মানিক করুন। এটি ভাসমান হিসাবে প্রতিনিধিত্বকারী প্রস্থ এবং উচ্চতা উপস্থাপনের জন্য 2 ভাসমান মানগুলি প্যাক করার জন্য দীর্ঘ সময় লাভের জন্য একটি ইনলাইন শ্রেণীর সুবিধা সরবরাহ করে। ( আইসি 0191 )
  • 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 )
  • Added Modifier.zoomable for pinch-to-zoom functionality ( Id5d63 )
  • Toggleable component has been deprecated. Use Modifier.toggleable instead ( I35220 , b/157642842 )
  • MutuallyExclusiveSetItem has been deprecated. Use Modifier.selectable instead. ( I02b47 , b/157642842 )
  • TestTag is now deprecated. Use Modifier.testTag instead. ( If5110 , b/157173105 )
  • Adds fontWeight parameter to Text, which was accidentally not added previously ( I56937 )
  • 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.indication ফাউন্ডেশন প্যাকেজে যুক্ত করা হয়েছে। আপনার কাস্টম ইন্টারঅ্যাক্টেবল উপাদানগুলিতে ( i8425f , খ/155287131 ) প্রেস/ড্রাগ/অন্যান্য ইঙ্গিত দেখানোর জন্য এটি ব্যবহার করুন
  • VerticalScroller and HorizontalScroller now support reversed scrolling is isReversed is set on ScrollerPosition ( I953bd )
  • Support adding composables into text layout. ( I1373c )
  • একীভূত ক্যানভাস্কোপ বাস্তবায়ন তাই এখন কেবল ড্রস্কোপ এবং কন্টেন্টড্রডস্কোপের নামকরণ করা ক্যানভাস্কোপকে ড্রস্কোপে নামকরণ করা হয়েছে। ঘনত্ব ইন্টারফেস বাস্তবায়নের জন্য আপডেট করা ড্রস্কোপ এবং লেআউটডাইরেকশন মুছে ফেলা অঙ্কিত ড্রয়স্কোপ সাবক্লাস কনটেন্টড্রড্রোপস পেইন্টার এবং পেইন্টরটারমোডাইফায়ারকে আরটিএল সম্পত্তি বজায় রাখার জন্য আপডেট করা হয়েছে কারণ ড্রস্কোপ এটি ম্যানুয়ালি সরবরাহ না করে ইতিমধ্যে সরবরাহ করে ( i1798e )
  • Removed deprecated DrawBackground API in favor of drawBackground extension APIs on Modifier. Refactored color, brush and paint drawBackground implementations to reduce code paths as well as remove requirement for Modifier to be created as part of composition. ( I0343a )
  • 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 )
  • HorizontalScroller and VerticalScroller not restores their scroll position using saved instance state. ( Ia0fae , b/155075048 )
  • FocusManagerAmbient is removed. Use FocusModifier.requestFocus to obtain focus. ( Ic4826 )
  • Table layout was removed temporarily until we will make it available again with a refreshed API. ( Id88a7 )
  • 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 )

  • ColoredRect has been removed. User Box with drawBackground modifier instead ( I983c7 , b/152753731 )

  • Add cursor color customisation to the TextField ( I6e33f )

  • Now it is possible to hide/show software keyboard by using SoftwareKeyboardController which is delivered by onTextInputStarted callback ( I8dc44 , b/151860051 )

  • 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 )

  • Adds commonly used parameters to Text(). If you are currently creating a local text style to pass a small number of these parameters, such as Text(style = TextStyle(textAlign = TextAlign.Center)) , you can now just provide the parameters directly: Text(textAlign = TextAlign.Center) ( I82768 )

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

  • TextField update - in horizontal dimension it will occupy all available space granted to it ( Ib08df , b/154638552 )

  • Added InteractionState and Interaction, making it easier to build components that react to UI state changes such as press, and drag ( Icfe25 , b/152525426 )

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

  • নালার পরিবর্তে নাল ( আইএবিএএ 7 ) এর পরিবর্তে নন-নালযোগ্য এবং ব্যবহারযোগ্য রঙ un

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

  • Renamed ScaleFit to ContentScale Moved ContentScale from ui-graphics to ui-core module to live in the same module as the Alignment API. Renamed FillMaxDimension to Crop Renamed FillMinDimension to Fit Renamed Fit to Inside to better match ImageView.ScaleType equivalents Added documentation indicating that the combination of Crop and Alignment.Center achieves the same result as ImageView.ScaleType.CENTER_CROP and Fit used with Alignment.Center achieves the same result as ImageView.ScaleType.FIT_CENTER Inside used with Alignment.Center achieves the same result as ImageView.ScaleType.CENTER_INSIDE ( I45f09 , b/152842521 )

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

  • Adds color parameter to text, allowing overriding the color of the text style without needing to manually merge with the style provided in a theme. ( I41a66 )

  • 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 )
  • ColoredRect has been deprecated. Use Box(Modifier.preferredSize(width, height).drawBackground(color)) instead. ( I499fa , b/152753731 )

  • শেপ থিমিং সিস্টেমটি উপাদান ডিজাইনের স্পেসিফিকেশন অনুসারে আপডেট করা হয়। এখন আপনি বেশিরভাগ উপাদান ( আইএফবি 4 ডি 1 ) ব্যবহার করার জন্য ছোট, মাঝারি এবং বৃহত আকারগুলি সরবরাহ করতে পারেন

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

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

  • Moved Text to androidx.ui.foundation package, from androidx.ui.core. ( I87ce5 )

  • 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 )

  • 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 )

  • 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 )

  • 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.

    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 )

  • DrawImage composable was removed. Use ImagePainter to draw image on existing layout, or SimpleImage to introduce Image that takes space ( I595e1 , b/149827027 )

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

  • 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 )

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

  • 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 )

  • Scrollable component has been added, which allows creation of custom Scrollers/Lists ( I5fd37 )

  • Renamed background to DrawBackground and make it to be memorized by default ( Ia0bd3 )

  • Add paddings, border, shape and background param to Box ( I05027 , b/148147281 )

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

  • rename Border modifier to DrawBorder ( I8ffcc )

  • Added Box component for combining layout and drawing common functionality. ( I6e2a7 )

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

  • Replaced DrawBorder in favor of Border Modifier ( Id335a )

  • Modifier.tag was renamed to Modifier.layoutId, to avoid confusion with Modifier.testTag. ( I995f0 )

  • The percent parameter when creating ConstraintLayout guidelines has been renamed to fraction. ( Ida2db )

  • Added support for margins of ConstraintLayout barriers. ( I47ffe )

  • Fixed RTL support in ConstraintLayout. Added RTL unaware APIs. ( I3b1c7 )

  • A new DSL for ConstraintLayout has been added. Please see the samples for more details. ( Icaa9a )

  • Added the @ExperimentalLayout annotation. ConstraintLayout, FlowRow and FlowColumn are now tagged with it to mark that their APIs are going to change. ( I412a8 )

  • Modifier.padding(InnerPadding) has been added ( I94985 , b/157133803 )

  • Removed deprecated RowAlign, ColumnAlign in Row and Column. ( If60d4 , b/155858731 )

  • Removed deprecated LayoutTag(), please use Modifier.tag() instead. Removed deprecated Modifier.matchParent(), please use Modifier.matchParentSize() instead. ( If8044 )

  • Added the offsetPx layout modifier, which can be used to define (dynamic) offsets in px. ( I5af57 )

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

  • 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 )

  • Container has been removed. Use Box instead ( Ibbc2b , b/151407926 )

  • Removed deprecated LayoutWidth/Height/Size modifiers. ( Ib0bc1 )

  • Added default parameter values for the offset modifier. ( I37f06 )

  • Added symmetric padding modifier. ( I39840 )

  • Removed deprecated LayoutAspectRatio modifier. ( I65a74 )

  • Removed deprecated LayoutAlign modifiers. ( I10877 )

  • Fixed a bug in the width and height modifiers that was causing the wrapped layout to be measured with no opposite axis constraints. ( I210b8 , b/154797971 )

  • 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 )

  • Made Alignment instantiable with arbitrary values. Added 1D Alignments. ( Ia0c05 )

  • ইনারপ্যাডিংয়ে এজিনসেটগুলির নামকরণ করা হয়েছে। প্যাডিংয়ে উপাদান বোতামগুলির ইনারপ্যাডিং প্যারামিটারটির নামকরণ করা হয়েছে। ( I66165 )

  • alignToSiblings now accepts a Measured instead of Placeable. ( I5788d )

  • Added modifiers for sizing to intrinsic measurements and deprecated the components serving this purpose. ( I8295d )

  • Added support for customizing dimensions of children of ConstraintLayout ( Idb1a5 )

  • Removed deprecated Wrap and Center composables. ( I29e23 )

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

  • RowScope and ColumnScope members are now accessible outside Row and Column. ( I3a641 )

  • Container has been deprecated. Use Box instead. ( I675ce , b/151407926 )

  • Added the LayoutOffset modifier for offsetting layout position ( I0b8a3 )

  • Initial support for Rtl in Compose layout ( Ia5519 )

  • Updated LayoutAlign to not fill the available space anymore ( I2b14f )

  • Removed AspectRatio composable in favor of modifier. Deleted obsolete FlexColumn, FlexRow composables and Spacing modifier ( Iec8a7 )

  • Removed the LayoutInflexible modifier for Row and Column ( I0d820 )

  • Implement Drag Selection Handles to change selection for TextField. ( I27032 )

  • Implements LongPressAndDrag for TextField Selection. ( I17919 )

বাগ ফিক্স

  • 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 )
  • runOnIdleCompose renamed to runOnIdle ( I83607 )
  • Several testing APIs were renamed to be more intuitive. All findXYZ APIs were renamed to onNodeXYZ. All doXYZ APIs were renamed to performXYZ. ( I7f164 )
  • পূর্বে অবমূল্যায়িত মডিফায়ার.আরপ্পল সরিয়ে দেয়। ক্লিকযোগ্য এখন রিপলকে ডিফল্ট ইঙ্গিত হিসাবে ব্যবহার করে (যদি আপনার অ্যাপ্লিকেশনটিতে কোনও ম্যাটেরিয়াল থিম}} সেট থাকে) তাই বেশিরভাগ ক্ষেত্রে আপনি কেবল ক্লিকযোগ্য ব্যবহার করতে পারেন এবং বিনামূল্যে রিপল ইঙ্গিত পেতে পারেন। আপনার যদি রিপলটির জন্য রঙ / আকার / সীমাবদ্ধ প্যারামিটারটি কাস্টমাইজ করতে হয় তবে আপনি ম্যানুয়ালি একটি রিপ্লাইন্ডিকেশন তৈরি করতে পারেন এবং এটি ইঙ্গিত প্যারামিটার হিসাবে ক্লিকযোগ্যতে পাস করতে পারেন। ( I663b2 , বি/155375067 )
  • Removed obsolete size testing APIs. ( Iba0a0 )
  • Made LayoutNode experimental API ( I4f2e9 )
  • Version 1 of scroll orientation locking is implemented across Compose. ( I1ce7a , b/150289741 )
  • Popups, Dialogs and Menus are now inheriting the contextual MaterialTheme ( Ia3665 , b/156527485 )
  • 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 )
  • Add AbsoluteArrangement - allows for arrangement of the children inside the Row without automatic mirroring in RTL ( I3a1df )
  • @Untracked annotation has been deprecated. Replace with @ComposableContract(tracked=false) ( Id211e )
  • Prior to this change, the compose compiler plugin would non-trivially intercept calls to constructors inside of a @Composable function if there was an ( I5205a , b/158123804 )
  • Add viewModel() composable which allows to create or get already created ViewModel similarly to how it works in Activity or Fragment ( I5fdd1 )
  • 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 )

  • 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 )

  • 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 )

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

  • Partial gestures no longer require passing around of a GestureToken ( Id7ae5 )

  • 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 ( I57bff )

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

  • Rename AnnotatedString.Builder.addAnnotationString to addStringAnnotation. ( I5059e )

  • Updated Alignment API and added support for absolute alignment (which does not auto-mirror in Rtl context) ( I38cd3 )

  • Layout and LayoutModifier children can be measured with a different layout direction. ( Ibd731 )

  • Introduce additional optional rect parameter to ImagePainter to support drawing a subsection of underlying ImageAsset ( I0ea9e )

  • Fixed a crash in AdapterList when removing items ( Ic64b0 , b/153195921 )

  • We changed how we measure the first layout you put inside activity.setContent { } block. Previously it was forced to fill the whole activity screen, and now it behaves as if you put your layout inside a Stack: it can be smaller than a screen and will be positioned in the top left screen. If you want the old behaviour you can apply Modifier.fillMaxSize() for your layout. ( Ie88a7 , b/153453714 )

  • 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 )

  • 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 )

  • DrawLayerModifier and drawLayer() now default clipToBounds and clipToOutline to false. ( I0eb8b , b/152810850 )

  • Renamed LayoutResult to MeasureResult. ( Id8c68 )

  • 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 )

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

  • 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 )

  • 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 )

  • 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 )

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

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

  • Rename Painter.toModifier to Painter.asModifier as the newly created Modifier has a reference to the original Painter that can be shared across multiple Modifier instances ( I7195b )

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

  • 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 )

  • Removed ValueHolder class. Restructured AnimatedValue, AnimatedFloat classes to make the animation value field abstract so that subclasses can watch the value update.

    • Added model classes for AnimatedValue, AnimatedFloat, etc.
    • Added a new set of light-weight @Composable API for animating between values.
    • ( I79530 )
  • Breaking changes to the ambients API. See log and Ambient<T> documentation for details ( I4c7ee , b/143769776 )

  • 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 )

  • Fixed a ConstraintLayout bug causing a crash on recompositions. ( Ibee5a , b/158164341 )

  • 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 )

  • Renamed LayoutModifier2 to LayoutModifier. ( Id29f3 )

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

  • LayoutDirectionAmbient is deprecated. To read the layout direction defined by the locale, use localeLayoutDirection on ConfigurationAmbient ( I851b1 )

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

  • 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 )

  • Add OnPositionedModifier and OnChildPositionedModifier to replace OnPositioned and OnChildPositioned composable functions. ( I2ec8f )

  • Disallow negative padding in LayoutPadding. LayoutOffset should be used instead for negative position offsets. ( Ifb5b1 )

  • WithConstraints got LayoutDirection parameter ( I6d6f7 )

  • 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 )

  • 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 )

  • 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 )

  • Improvements to the API surface of Constraints ( I0fd15 )

  • Added TextDirection.Content ( I48f36 )

  • Ajdust the Toolbar Menu to show copy, cut, paste properly. ( Id3955 )

  • Add FloatingToolbar for TextField Selection. ( Ie8b07 )

  • TextDirectionAlgorithm is renamed as TextDirection ( I75ce8 )

  • TextDirection is renamed as ResolvedTextDirection ( I3ff38 )

  • Add HapticFeedback to TextField Selection. ( I58050 )

  • Add Copy, Cut, and Paste methods to TextField Selection. ( Idb70b )

  • TestTag and Semantics have been deleted. Use Modifier.testTag and Modifier.semantics instead ( I15ff0 , b/158841414 )

  • Changed the package name for Locale and LocaleList from androidx.ui.text to androidx.ui.intl ( I8132c )

  • API change: AnnotatedString(builder: Builder) is renamed to annotatedString(builder: Builder) . ( Ia6377 )

  • API change: AnnotatedString.Item is renamed to AnnotatedString.Range . ( I2d44d )

  • Add Toolbar for text related operations. ( I49d53 )

  • New LifecycleOwnerAmbient is now available. Now an Activity you are using with Compose UI should extend androidx.activity.ComponentActivity (or AppCompatActivity). setContent on android.app.Activity is now deprecated ( Idb25a , b/153141084 )

  • ui-android-text package name (androidx.text) replaced with androidx.ui.text.platform in order to align with androidx policy. ( I42711 )