Code view:

A painting is a person's account of this edit as text, recorded independently of the node mapping - a rendering often has several equally defensible answers where the mapping has one. Deletions and insertions carry no position on the opposite side in a painting, so that panel draws no caret for them.

Before

1/*
2 * Nextcloud - Android Client
3 *
4 * SPDX-FileCopyrightText: 2023 Tobias Kaminsky <tobias@kaminsky.me>
5 * SPDX-FileCopyrightText: 2023 Nextcloud GmbH
6 * SPDX-License-Identifier: AGPL-3.0-or-later OR GPL-2.0-only
7 */
8package com.owncloud.android.datamodel.e2e.v2.decrypted
9
10/**
11 * Decrypted class representation of metadata json of folder metadata.
12 */
13data class DecryptedFolderMetadataFile(
14 val metadata: DecryptedMetadata,
15 var users: MutableList<DecryptedUser> = mutableListOf(),
16 @Transient
17 val filedrop: MutableMap<String, DecryptedFile> = HashMap(),
18 val version: String = "2.0"
19)
20

After

1/*
2 * Nextcloud - Android Client
3 *
4 * SPDX-FileCopyrightText: 2023 Tobias Kaminsky <tobias@kaminsky.me>
5 * SPDX-FileCopyrightText: 2023 Nextcloud GmbH
6 * SPDX-License-Identifier: AGPL-3.0-or-later OR GPL-2.0-only
7 */
8package com.owncloud.android.datamodel.e2e.v2.decrypted
9
10import com.nextcloud.utils.e2ee.E2EVersionHelper
11
12/**
13 * Decrypted class representation of metadata json of folder metadata.
14 */
15data class DecryptedFolderMetadataFile(
16 val metadata: DecryptedMetadata,
17 var users: MutableList<DecryptedUser> = mutableListOf(),
18 @Transient
19 val filedrop: MutableMap<String, DecryptedFile> = HashMap(),
20 val version: String = E2EVersionHelper.getLatestE2EVersion(true).value
21)
22

Before

source_file
block_comment "/*\n * Nextcloud - Android Client\n *\n * SPDX-FileCopyrightTex"...
package_header
package "package"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "datamodel"
. "."
identifier "e2e"
. "."
identifier "v2"
. "."
identifier "decrypted"
block_comment "/**\n * Decrypted class representation of metadata json of fo"...
class_declaration
modifiers
class_modifier
data "data"
class "class"
identifier "DecryptedFolderMetadataFile"
primary_constructor
class_parameters
( "("
class_parameter
val "val"
identifier "metadata"
: ":"
user_type
identifier "DecryptedMetadata"
, ","
class_parameter
var "var"
identifier "users"
: ":"
user_type
identifier "MutableList"
type_arguments
< "<"
type_projection
user_type
identifier "DecryptedUser"
> ">"
= "="
call_expression
identifier "mutableListOf"
value_arguments
( "("
) ")"
, ","
class_parameter (+27 nodes collapsed)
, ","
class_parameter
val "val"
identifier "version"
: ":"
user_type
identifier "String"
= "="
string_literal
" "\""
string_content "2.0"
" "\""
) ")"

After

source_file
block_comment "/*\n * Nextcloud - Android Client\n *\n * SPDX-FileCopyrightTex"...
package_header
package "package"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "datamodel"
. "."
identifier "e2e"
. "."
identifier "v2"
. "."
identifier "decrypted"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "utils"
. "."
identifier "e2ee"
. "."
identifier "E2EVersionHelper"
block_comment "/**\n * Decrypted class representation of metadata json of fo"...
class_declaration
modifiers
class_modifier
data "data"
class "class"
identifier "DecryptedFolderMetadataFile"
primary_constructor
class_parameters
( "("
class_parameter
val "val"
identifier "metadata"
: ":"
user_type
identifier "DecryptedMetadata"
, ","
class_parameter
var "var"
identifier "users"
: ":"
user_type
identifier "MutableList"
type_arguments
< "<"
type_projection
user_type
identifier "DecryptedUser"
> ">"
= "="
call_expression
identifier "mutableListOf"
value_arguments
( "("
) ")"
, ","
class_parameter (+27 nodes collapsed)
, ","
class_parameter
val "val"
identifier "version"
: ":"
user_type
identifier "String"
= "="
navigation_expression
call_expression
navigation_expression
identifier "E2EVersionHelper"
. "."
identifier "getLatestE2EVersion"
value_arguments
( "("
value_argument
identifier "true"
) ")"
. "."
identifier "value"
) ")"