Description
When setting EPUBPreferences.columnCount to EpubColumnCount.one or EpubColumnCount.two, and start playing a book, the following unhandled exception is thrown:
E/flutter ( 6741): [ERROR:flutter/runtime/dart_vm_initializer.cc(40)] Unhandled Exception: PlatformException(error, org.readium.r2.navigator.preferences.ColumnCount does not contain element with name 'one', null, kotlinx.serialization.SerializationException: org.readium.r2.navigator.preferences.ColumnCount does not contain element with name 'one'
E/flutter ( 6741): at kotlinx.serialization.json.internal.JsonNamesMapKt.getJsonNameIndexOrThrow(JsonNamesMap.kt:118)
E/flutter ( 6741): at kotlinx.serialization.json.internal.JsonNamesMapKt.getJsonNameIndexOrThrow$default(JsonNamesMap.kt:115)
E/flutter ( 6741): at kotlinx.serialization.json.internal.AbstractJsonTreeDecoder.decodeTaggedEnum(TreeJsonDecoder.kt:104)
E/flutter ( 6741): at kotlinx.serialization.json.internal.AbstractJsonTreeDecoder.decodeTaggedEnum(TreeJsonDecoder.kt:36)
E/flutter ( 6741): at kotlinx.serialization.internal.TaggedDecoder.decodeEnum(Tagged.kt:234)
E/flutter ( 6741): at kotlinx.serialization.internal.EnumSerializer.deserialize(Enums.kt:136)
E/flutter ( 6741): at kotlinx.serialization.internal.EnumSerializer.deserialize(Enums.kt:102)
E/flutter ( 6741): at kotlinx.serialization.json.internal.AbstractJsonTreeDecoder.decodeSerializableValue(TreeJsonDecoder.kt:351)
E/flutter ( 6741): at kotlinx.serialization.internal.TaggedDecoder.decodeSerializableValue(Tagged.kt:208)
E/flutter ( 6741): at kotlinx.serialization.internal.TaggedDecoder.decodeNullableSerializableElement$lambda$0(Tagged.kt:289)
E/flutter ( 6741): at kotlinx.serialization.internal.TaggedDecoder.$r8$lambda$KNCb4ndNy8p39bnFdLtrj8-IusI(Unknown Source:0)
E/flutter ( 6741): at kotlinx.serialization.internal.TaggedDecoder$$ExternalSyntheticLambda1.invoke(D8$$SyntheticClass:0)
E/flutter ( 6741): at kotlinx.serialization.internal.TaggedDecoder.tagBlock(Tagged.kt:295)
E/flutter ( 6741): at kotlinx.serialization.internal.TaggedDecoder.decodeNullableSerializableElement(Tagged.kt:287)
E/flutter ( 6741): at dk.nota.flutter_readium.FlutterEpubPreferences$$serializer.deserialize(FlutterEpubPreferences.kt:21)
E/flutter ( 6741): at dk.nota.flutter_readium.FlutterEpubPreferences$$serializer.deserialize(FlutterEpubPreferences.kt:21)
E/flutter ( 6741): at kotlinx.serialization.json.internal.AbstractJsonTreeDecoder.decodeSerializableValue(TreeJsonDecoder.kt:351)
E/flutter ( 6741): at kotlinx.serialization.json.internal.TreeJsonDecoderKt.readJson(TreeJsonDecoder.kt:25)
E/flutter ( 6741): at kotlinx.serialization.json.Json.decodeFromJsonElement(Json.kt:170)
E/flutter ( 6741): at dk.nota.flutter_readium.FlutterEpubPreferences$Companion.fromMap(FlutterEpubPreferences.kt:129)
E/flutter ( 6741): at dk.nota.flutter_readium.ReadiumReaderWidget.<init>(ReadiumReaderWidget.kt:117)
E/flutter ( 6741): at dk.nota.flutter_readium.ReadiumReaderWidget.<init>(ReadiumReaderWidget.kt:40)
E/flutter ( 6741): at dk.nota.flutter_readium.ReadiumReaderViewFactory.create(ReadiumReaderViewFactory.kt:21)
E/flutter ( 6741): at io.flutter.plugin.platform.PlatformViewsController.createPlatformView(PlatformViewsController.java:535)
E/flutter ( 6741): at io.flutter.plugin.platform.PlatformViewsController$1.createForTextureLayer(PlatformViewsController.java:214)
E/flutter ( 6741): at io.flutter.plugin.platform.PlatformViewsControllerDelegator.createForTextureLayer(PlatformViewsControllerDelegator.java:134)
E/flutter ( 6741): at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.create(PlatformViewsChannel.java:132)
E/flutter ( 6741): at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:55)
E/flutter ( 6741): at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:267)
E/flutter ( 6741): at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:286)
E/flutter ( 6741): at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:313)
E/flutter ( 6741): at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0)
E/flutter ( 6741): at android.os.Handler.handleCallback(Handler.java:995)
E/flutter ( 6741): at android.os.Handler.dispatchMessage(Handler.java:103)
E/flutter ( 6741): at android.os.Looper.loopOnce(Looper.java:248)
E/flutter ( 6741): at android.os.Looper.loop(Looper.java:338)
E/flutter ( 6741): at android.app.ActivityThread.main(ActivityThread.java:9067)
E/flutter ( 6741): at java.lang.reflect.Method.invoke(Native Method)
E/flutter ( 6741): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:593)
E/flutter ( 6741): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932)
E/flutter ( 6741): )
E/flutter ( 6741): #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:653:7)
E/flutter ( 6741): #1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:366:18)
E/flutter ( 6741): <asynchronous suspension>
E/flutter ( 6741): #2 SurfaceAndroidViewController._sendCreateMessage (package:flutter/src/services/platform_views.dart:1063:30)
E/flutter ( 6741): <asynchronous suspension>
E/flutter ( 6741): #3 AndroidViewController.create (package:flutter/src/services/platform_views.dart:852:5)
E/flutter ( 6741): <asynchronous suspension>
E/flutter ( 6741):
EpubColumnCount.auto doesn't throw this error.
Test Environment
Flutter 3.44, Android emulator.
Expected Behaviour
The specified column count should be applied and no exception is thrown if the setting is not applicable.
Description
When setting
EPUBPreferences.columnCounttoEpubColumnCount.oneorEpubColumnCount.two, and start playing a book, the following unhandled exception is thrown:EpubColumnCount.autodoesn't throw this error.Test Environment
Flutter 3.44, Android emulator.
Expected Behaviour
The specified column count should be applied and no exception is thrown if the setting is not applicable.