Kaushalya Pradeep
01/29/2020, 2:56 PMSubhash
01/29/2020, 4:27 PMMinor help request: I am not being able to scroll the contents. Am I doing something wrong here?@Composable
fun ArtistsList(artistsLiveData: LiveData<List<Artist>>) {
val artists = +state { artistsLiveData.value }
val artistObserver = Observer<List<Artist>> {
artists.value = it
}
+onActive {
artistsLiveData.observeForever(artistObserver)
}
+onDispose {
artistsLiveData.removeObserver(artistObserver)
}
VerticalScroller {
Column(modifier = Expanded) {
artists.value?.forEach {
Row(modifier = ExpandedWidth wraps Spacing(all = 8.dp)) {
Container(Spacing(4.dp), width = 40.dp, height = 40.dp) {
val image = +state<Image?> { null }
prepareImage(url = it.picture_small, state = image)
image.value?.let {
DrawImage(image = it)
}
}
Text(
text = it.name,
modifier = ExpandedWidth,
style = (+ambient(Typography)).body1
)
}
}
}
}
}
Ian Warwick
01/29/2020, 7:33 PMIan Warwick
01/29/2020, 7:33 PMe: /Users/ian.warwick/Documents/sdev/memset/router/src/main/java/com/citizenwarwick/memset/router/Router.kt: (94, 32): Using 'unaryPlus(): T' is an error. The unary plus for effects is no longer needed. Remove it.
tcracknell
01/29/2020, 8:23 PMEgor Trutenko
01/29/2020, 9:20 PMZach Klippenstein (he/him) [MOD]
01/29/2020, 9:29 PMZach Klippenstein (he/him) [MOD]
01/29/2020, 10:38 PMView
nested inside a compose container, is that true?dimsuz
01/29/2020, 11:09 PMAdded DrawModifier, a modifier type that is allowed to draw on the surface of the modified layout.I have a fear that this modifier-stuff has a potential to make API quite messy where you can do everything in modifier and they'll be misused. Like some widget will decide that it wants to draw its content with DrawModifier and I can't theme it. Or it will decide to size itself through modifier constraints in some clever way and won't let me size it in the usual way. etc etc Tell me I'm wrong! :)
codeslubber
01/30/2020, 12:05 AMHeightSpacer
and WidthSpacer
are gone in 04? cannot find info on their replacements..codeslubber
01/30/2020, 3:04 AM@Composable
on onClick lambdas now?? ugh…codeslubber
01/30/2020, 3:59 AM@Composable
fun MeasureQuestionView() {
val typography = (MaterialTheme.typography())
val rangeOfValues = 115..125
val currentValue = state {rangeOfValues.first}
Card(shape = RoundedCornerShape(8.dp)) {
Column(modifier = Spacing(16.dp)) {
Text("What was your blood sugar reading?", style = typography.h6)
numberStepper(currentValue, rangeOfValues, "mg/dL")
}
}
}
@Composable
fun numberStepper(currentValue: State<Int>, range: IntRange, units: String) {
val typography = (MaterialTheme.typography())
Container(height = 75.dp) {
Row(Spacing(20.dp)) {
Button(text = "-", onClick = {
if (currentValue.value > range.first) {
currentValue.value -= 1
}
})
Spacer(LayoutWidth(10.dp))
Text(currentValue.value.toString(), style = typography.h5)
Spacer(LayoutWidth(10.dp))
Button(text = "+", onClick = {
if (currentValue.value < range.last) currentValue.value += 1
})
Spacer(LayoutWidth(10.dp))
Align(Alignment.CenterLeft){
Text(units)
}
}
}
}
zhuinden
01/30/2020, 4:27 AMe: java.lang.IllegalStateException: Backend Internal error: Exception during code generation
Element is unknownThe root cause java.util.NoSuchElementException was thrown at: androidx.compose.plugins.kotlin.compiler.lower.ComposableCallTransformer.irComposableExpr(ComposableCallTransformer.kt:1362)
at org.jetbrains.kotlin.codegen.CompilationErrorHandler.lambda$static$0(CompilationErrorHandler.java:35)
at org.jetbrains.kotlin.backend.jvm.JvmBackendFacade.doGenerateFilesInternal$backend_jvm(JvmBackendFacade.kt:93)
at org.jetbrains.kotlin.backend.jvm.JvmBackendFacade.doGenerateFilesInternal$backend_jvm$default(JvmBackendFacade.kt:64)
at org.jetbrains.kotlin.backend.jvm.JvmBackendFacade.doGenerateFilesInternal$backend_jvm(JvmBackendFacade.kt:52)
at org.jetbrains.kotlin.backend.jvm.JvmIrCodegenFactory.generateModule(JvmIrCodegenFactory.kt:36)
at org.jetbrains.kotlin.codegen.KotlinCodegenFacade.doGenerateFiles(KotlinCodegenFacade.java:47)
at org.jetbrains.kotlin.codegen.KotlinCodegenFacade.compileCorrectFiles(KotlinCodegenFacade.java:39)
at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.generate(KotlinToJVMBytecodeCompiler.kt:638)
at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.compileModules$cli(KotlinToJVMBytecodeCompiler.kt:198)
at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:172)
at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:56)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:85)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:43)
at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:104)
Caused by: java.util.NoSuchElementException: Collection contains no element matching the predicate.
at androidx.compose.plugins.kotlin.compiler.lower.ComposableCallTransformer.irComposableExpr(ComposableCallTransformer.kt:1362)
at androidx.compose.plugins.kotlin.compiler.lower.ComposableCallTransformer.visitBlock(ComposableCallTransformer.kt:252)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitBlock(IrElementTransformerVoid.kt:128)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitBlock(IrElementTransformerVoid.kt:24)
at org.jetbrains.kotlin.ir.expressions.impl.IrBlockImpl.accept(IrBlockImpl.kt:52)
at org.jetbrains.kotlin.ir.expressions.IrExpression$DefaultImpls.transform(IrExpression.kt:28)
at org.jetbrains.kotlin.ir.expressions.impl.IrExpressionBase.transform(IrExpressionBase.kt:24)
at org.jetbrains.kotlin.ir.expressions.impl.IrTypeOperatorCallImpl.transformChildren(IrTypeOperatorCallImpl.kt:75)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoidKt.transformChildrenVoid(IrElementTransformerVoid.kt:288)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.transformChildrenVoid(IrElementTransformerVoid.kt:283)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.transformChildren(IrElementTransformerVoid.kt:25)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitExpression(IrElementTransformerVoid.kt:112)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitTypeOperator(IrElementTransformerVoid.kt:214)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitTypeOperator(IrElementTransformerVoid.kt:215)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitTypeOperator(IrElementTransformerVoid.kt:24)
at org.jetbrains.kotlin.ir.expressions.impl.IrTypeOperatorCallImpl.accept(IrTypeOperatorCallImpl.kt:68)
at org.jetbrains.kotlin.ir.expressions.IrExpression$DefaultImpls.transform(IrExpression.kt:28)
at org.jetbrains.kotlin.ir.expressions.impl.IrExpressionBase.transform(IrExpressionBase.kt:24)
at org.jetbrains.kotlin.ir.declarations.impl.IrVariableImpl.transformChildren(IrVariableImpl.kt:93)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoidKt.transformChildrenVoid(IrElementTransformerVoid.kt:288)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.transformChildrenVoid(IrElementTransformerVoid.kt:283)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.transformChildren(IrElementTransformerVoid.kt:25)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitDeclaration(IrElementTransformerVoid.kt:46)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitVariable(IrElementTransformerVoid.kt:87)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitVariable(IrElementTransformerVoid.kt:88)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitVariable(IrElementTransformerVoid.kt:24)
at org.jetbrains.kotlin.ir.declarations.impl.IrVariableImpl.accept(IrVariableImpl.kt:86)
at org.jetbrains.kotlin.ir.declarations.IrDeclaration$DefaultImpls.transform(IrDeclaration.kt:42)
at org.jetbrains.kotlin.ir.declarations.impl.IrDeclarationBase.transform(IrDeclarationBase.kt:27)
at org.jetbrains.kotlin.ir.expressions.impl.IrBlockBodyImpl.transformChildren(IrBlockBodyImpl.kt:49)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoidKt.transformChildrenVoid(IrElementTransformerVoid.kt:288)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.transformChildrenVoid(IrElementTransformerVoid.kt:283)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.transformChildren(IrElementTransformerVoid.kt:25)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitBody(IrElementTransformerVoid.kt:93)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitBlockBody(IrElementTransformerVoid.kt:99)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitBlockBody(IrElementTransformerVoid.kt:100)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitBlockBody(IrElementTransformerVoid.kt:24)
at org.jetbrains.kotlin.ir.expressions.impl.IrBlockBodyImpl.accept(IrBlockBodyImpl.kt:40)
at org.jetbrains.kotlin.ir.expressions.IrBody$DefaultImpls.transform(IrBody.kt:24)
at org.jetbrains.kotlin.ir.expressions.IrBlockBody$DefaultImpls.transform(IrBody.kt)
at org.jetbrains.kotlin.ir.expressions.impl.IrBlockBodyImpl.transform(IrBlockBodyImpl.kt:26)
at org.jetbrains.kotlin.ir.declarations.impl.IrFunctionBase.transformChildren(IrFunctionBase.kt:77)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoidKt.transformChildrenVoid(IrElementTransformerVoid.kt:288)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.transformChildrenVoid(IrElementTransformerVoid.kt:283)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.transformChildren(IrElementTransformerVoid.kt:25)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitDeclaration(IrElementTransformerVoid.kt:46)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitFunction(IrElementTransformerVoid.kt:55)
at androidx.compose.plugins.kotlin.compiler.lower.ComposableCallTransformer.visitFunction(ComposableCallTransformer.kt:205)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitSimpleFunction(IrElementTransformerVoid.kt:58)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitSimpleFunction(IrElementTransformerVoid.kt:59)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid.visitSimpleFunction(IrElementTransformerVoid.kt:24)
at org.jetbrains.kotlin.ir.declarations.impl.IrFunctionImpl.accept(IrFunctionImpl.kt:89)
at org.jetbrains.kotlin.ir.declarations.IrDeclaration$DefaultImpls.transform(IrDeclaration.kt:42)
at org.jetbrains.kotlin.ir.declarations.impl.IrDeclarationBase.transform(IrDeclarationBase.kt:27)
at org.jetbrains.kotlin.ir.declarations.impl.IrFileImpl.transformChildren(IrFileImpl.kt:71)
at org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoidKt.transformChildrenVoid(IrElementTransformerVoid.kt:288)
at androidx.compose.plugins.kotlin.compiler.lower.ComposableCallTransformer.lower(ComposableCallTransformer.kt:197)
at org.jetbrains.kotlin.backend.common.LowerKt.lower(Lower.kt:66)
at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$makeIrModulePhase$1.invoke(PhaseBuilders.kt:235)
at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$makeIrModulePhase$1.invoke(PhaseBuilders.kt:228)
at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:128)
at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:24)
at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:127)
at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:105)
at org.jetbrains.kotlin.backend.common.phaser.CompositePhase.invoke(PhaseBuilders.kt:29)
at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.invokeToplevel(CompilerPhase.kt:42)
at org.jetbrains.kotlin.backend.jvm.JvmLower.lower(JvmLower.kt:288)
at org.jetbrains.kotlin.backend.jvm.JvmBackendFacade.doGenerateFilesInternal$backend_jvm(JvmBackendFacade.kt:91)
... 37 more
e: java.lang.IllegalStateException: Backend Internal error: Exception during code generation
All I did was update this repo: https://github.com/Zhuinden/compose-simple-stack-experiment to dev04 and then remove unaryPlus
from before where it was still there, and boom compilation exception in compiler 🤔codeslubber
01/30/2020, 4:32 AMIan Warwick
01/30/2020, 9:24 AMe: org.jetbrains.kotlin.util.KotlinFrontEndException: Front-end Internal error: Failed to analyze declaration Mapper
File being compiled at position: (21,1) in /Users/ian.warwick/Documents/sdev/memset/router/src/main/java/com/citizenwarwick/memset/router/Mapper.kt
The root cause java.lang.OutOfMemoryError was thrown at: unknown
at org.jetbrains.kotlin.resolve
Wondering if its because I am offline, will try restart maybe some java process holding to much mem?camkadev
01/30/2020, 10:19 AMFunctions which invoke @Composable functions must be marked with the @Composable annotation
any workaround to change data (outside Composable) placed inside state?Ian Warwick
01/30/2020, 11:19 AMkey
is?
for (user in users) {
key(user.id) { UserPreview(user = user) }
}
The docs don't really explain why you would use it 🤔 or I am not reading them properlyIan Warwick
01/30/2020, 2:04 PMModelList
in our models? I found it was the only way to detect changes in a list but not sure if its for use in @Model
annotated classes 🤔amar_1995
01/30/2020, 3:09 PM2020-01-30 20:25:18.750 21058-21058/com.amar.modularnewsapp E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.amar.modularnewsapp, PID: 21058
java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.Number.intValue()' on a null object reference
at com.amar.modularnewsapp.repository.ArticleRepo$$loadMoreData$Continuation.invokeSuspend(Unknown Source:14)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.ResumeModeKt.resumeUninterceptedMode(ResumeMode.kt:46)
at kotlinx.coroutines.internal.ScopeCoroutine.afterCompletionInternal(Scopes.kt:32)
at kotlinx.coroutines.JobSupport.completeStateFinalization(JobSupport.kt:310)
at kotlinx.coroutines.JobSupport.tryFinalizeSimpleState(JobSupport.kt:276)
at kotlinx.coroutines.JobSupport.tryMakeCompleting(JobSupport.kt:807)
at kotlinx.coroutines.JobSupport.makeCompletingOnce$kotlinx_coroutines_core(JobSupport.kt:787)
at kotlinx.coroutines.AbstractCoroutine.resumeWith(AbstractCoroutine.kt:111)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at kotlinx.coroutines.DispatchedTask.run(Dispatched.kt:241)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
Mate
01/30/2020, 8:43 PMe: java.lang.NoSuchMethodError: org.jetbrains.kotlin.codegen.state.GenerationState$Builder.isIrBackend(Z)Lorg/jetbrains/kotlin/codegen/state/GenerationState$Builder;
https://issuetracker.google.com/u/1/issues/143232368
https://youtrack.jetbrains.com/issue/KT-34583codeslubber
01/31/2020, 1:19 AMwraps
is deprecated for combining `Modifier`s but then the docs say unary is temporary?Klaas Kabini
01/31/2020, 4:00 AMjava.lang.IllegalStateException: Backend Internal error: Exception during code generation
Element is unknownThe root cause java.util.NoSuchElementException was thrown at: androidx.compose.plugins.kotlin.compiler.lower.ComposableCallTransformer.irComposableExpr(ComposableCallTransformer.kt:1362)
at org.jetbrains.kotlin.codegen.CompilationErrorHandler.lambda$static$0(CompilationErrorHandler.java:35)
at org.jetbrains.kotlin.backend.jvm.JvmBackendFacade.doGenerateFilesInternal$backend_jvm(JvmBackendFacade.kt:93)
.............
Caused by: java.util.NoSuchElementException: Collection contains no element matching the predicate.
at androidx.compose.plugins.kotlin.compiler.lower.ComposableCallTransformer.irComposableExpr(ComposableCallTransformer.kt:1362)
at androidx.compose.plugins.kotlin.compiler.lower.ComposableCallTransformer.visitBlock(ComposableCallTransformer.kt:252)
...................
Joseph Cheng
01/31/2020, 4:59 AMPressIndicatorGestureDetector
, like Ripple
to customize one.
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:color="#ffff0000"/> <!-- pressed -->
<item android:state_focused="true"
android:color="#ff0000ff"/> <!-- focused -->
<item android:color="#ff000000"/> <!-- default -->
</selector>
molikto
01/31/2020, 5:10 AMcamkadev
01/31/2020, 9:48 AMamar_1995
01/31/2020, 10:22 AMIan Warwick
01/31/2020, 11:10 AMHackdiod
01/31/2020, 11:38 AMamar_1995
01/31/2020, 12:56 PMjava.lang.ClassCastException: androidx.compose.GroupStart cannot be cast to androidx.ui.foundation.ScrollerPosition
It was working fine in dev03.
Can anyone help me to resolve this error and why this is occuring ??carbaj0
01/31/2020, 3:56 PMcarbaj0
01/31/2020, 3:56 PMLouis Pullen-Freilich [G]
01/31/2020, 3:57 PMcarbaj0
01/31/2020, 3:58 PM