Skip to content

Commit 1ddba93

Browse files
committed
PANA-8500: Remove embedded content from the scope
1 parent 4028c19 commit 1ddba93

28 files changed

Lines changed: 25 additions & 343 deletions

features/dd-sdk-android-session-replay/api/apiSurface

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -338,13 +338,6 @@ data class com.datadog.android.sessionreplay.model.MobileSegment
338338
companion object
339339
fun fromJson(kotlin.String): WebviewWireframe
340340
fun fromJsonObject(com.google.gson.JsonObject): WebviewWireframe
341-
data class EmbeddedContentWireframe : Wireframe
342-
constructor(kotlin.Long, kotlin.Long, kotlin.Long, kotlin.Long, kotlin.Long, WireframeClip? = null, ShapeStyle? = null, ShapeBorder? = null, kotlin.String, kotlin.Boolean? = null, kotlin.String? = null)
343-
val type: kotlin.String
344-
override fun toJson(): com.google.gson.JsonElement
345-
companion object
346-
fun fromJson(kotlin.String): EmbeddedContentWireframe
347-
fun fromJsonObject(com.google.gson.JsonObject): EmbeddedContentWireframe
348341
companion object
349342
fun fromJson(kotlin.String): Wireframe
350343
fun fromJsonElement(com.google.gson.JsonElement): Wireframe
@@ -403,13 +396,6 @@ data class com.datadog.android.sessionreplay.model.MobileSegment
403396
companion object
404397
fun fromJson(kotlin.String): WebviewWireframeUpdate
405398
fun fromJsonObject(com.google.gson.JsonObject): WebviewWireframeUpdate
406-
data class EmbeddedContentWireframeUpdate : WireframeUpdateMutation
407-
constructor(kotlin.Long, kotlin.Long? = null, kotlin.Long? = null, kotlin.Long? = null, kotlin.Long? = null, WireframeClip? = null, ShapeStyle? = null, ShapeBorder? = null, kotlin.String, kotlin.Boolean? = null)
408-
val type: kotlin.String
409-
override fun toJson(): com.google.gson.JsonElement
410-
companion object
411-
fun fromJson(kotlin.String): EmbeddedContentWireframeUpdate
412-
fun fromJsonObject(com.google.gson.JsonObject): EmbeddedContentWireframeUpdate
413399
companion object
414400
fun fromJson(kotlin.String): WireframeUpdateMutation
415401
fun fromJsonElement(com.google.gson.JsonElement): WireframeUpdateMutation

features/dd-sdk-android-session-replay/api/dd-sdk-android-session-replay.api

Lines changed: 0 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1419,48 +1419,6 @@ public final class com/datadog/android/sessionreplay/model/MobileSegment$Wirefra
14191419
public final fun fromJsonElement (Lcom/google/gson/JsonElement;)Lcom/datadog/android/sessionreplay/model/MobileSegment$Wireframe;
14201420
}
14211421

1422-
public final class com/datadog/android/sessionreplay/model/MobileSegment$Wireframe$EmbeddedContentWireframe : com/datadog/android/sessionreplay/model/MobileSegment$Wireframe {
1423-
public static final field Companion Lcom/datadog/android/sessionreplay/model/MobileSegment$Wireframe$EmbeddedContentWireframe$Companion;
1424-
public fun <init> (JJJJJLcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;)V
1425-
public synthetic fun <init> (JJJJJLcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
1426-
public final fun component1 ()J
1427-
public final fun component10 ()Ljava/lang/Boolean;
1428-
public final fun component11 ()Ljava/lang/String;
1429-
public final fun component2 ()J
1430-
public final fun component3 ()J
1431-
public final fun component4 ()J
1432-
public final fun component5 ()J
1433-
public final fun component6 ()Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;
1434-
public final fun component7 ()Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;
1435-
public final fun component8 ()Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;
1436-
public final fun component9 ()Ljava/lang/String;
1437-
public final fun copy (JJJJJLcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;)Lcom/datadog/android/sessionreplay/model/MobileSegment$Wireframe$EmbeddedContentWireframe;
1438-
public static synthetic fun copy$default (Lcom/datadog/android/sessionreplay/model/MobileSegment$Wireframe$EmbeddedContentWireframe;JJJJJLcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;ILjava/lang/Object;)Lcom/datadog/android/sessionreplay/model/MobileSegment$Wireframe$EmbeddedContentWireframe;
1439-
public fun equals (Ljava/lang/Object;)Z
1440-
public static final fun fromJson (Ljava/lang/String;)Lcom/datadog/android/sessionreplay/model/MobileSegment$Wireframe$EmbeddedContentWireframe;
1441-
public static final fun fromJsonObject (Lcom/google/gson/JsonObject;)Lcom/datadog/android/sessionreplay/model/MobileSegment$Wireframe$EmbeddedContentWireframe;
1442-
public final fun getBorder ()Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;
1443-
public final fun getClip ()Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;
1444-
public final fun getHeight ()J
1445-
public final fun getId ()J
1446-
public final fun getPermanentId ()Ljava/lang/String;
1447-
public final fun getShapeStyle ()Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;
1448-
public final fun getSlotId ()Ljava/lang/String;
1449-
public final fun getType ()Ljava/lang/String;
1450-
public final fun getWidth ()J
1451-
public final fun getX ()J
1452-
public final fun getY ()J
1453-
public fun hashCode ()I
1454-
public final fun isVisible ()Ljava/lang/Boolean;
1455-
public fun toJson ()Lcom/google/gson/JsonElement;
1456-
public fun toString ()Ljava/lang/String;
1457-
}
1458-
1459-
public final class com/datadog/android/sessionreplay/model/MobileSegment$Wireframe$EmbeddedContentWireframe$Companion {
1460-
public final fun fromJson (Ljava/lang/String;)Lcom/datadog/android/sessionreplay/model/MobileSegment$Wireframe$EmbeddedContentWireframe;
1461-
public final fun fromJsonObject (Lcom/google/gson/JsonObject;)Lcom/datadog/android/sessionreplay/model/MobileSegment$Wireframe$EmbeddedContentWireframe;
1462-
}
1463-
14641422
public final class com/datadog/android/sessionreplay/model/MobileSegment$Wireframe$ImageWireframe : com/datadog/android/sessionreplay/model/MobileSegment$Wireframe {
14651423
public static final field Companion Lcom/datadog/android/sessionreplay/model/MobileSegment$Wireframe$ImageWireframe$Companion;
14661424
public fun <init> (JJJJJLcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;)V
@@ -1713,46 +1671,6 @@ public final class com/datadog/android/sessionreplay/model/MobileSegment$Wirefra
17131671
public final fun fromJsonElement (Lcom/google/gson/JsonElement;)Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation;
17141672
}
17151673

1716-
public final class com/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$EmbeddedContentWireframeUpdate : com/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation {
1717-
public static final field Companion Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$EmbeddedContentWireframeUpdate$Companion;
1718-
public fun <init> (JLjava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;Ljava/lang/String;Ljava/lang/Boolean;)V
1719-
public synthetic fun <init> (JLjava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;Ljava/lang/String;Ljava/lang/Boolean;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
1720-
public final fun component1 ()J
1721-
public final fun component10 ()Ljava/lang/Boolean;
1722-
public final fun component2 ()Ljava/lang/Long;
1723-
public final fun component3 ()Ljava/lang/Long;
1724-
public final fun component4 ()Ljava/lang/Long;
1725-
public final fun component5 ()Ljava/lang/Long;
1726-
public final fun component6 ()Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;
1727-
public final fun component7 ()Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;
1728-
public final fun component8 ()Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;
1729-
public final fun component9 ()Ljava/lang/String;
1730-
public final fun copy (JLjava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;Ljava/lang/String;Ljava/lang/Boolean;)Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$EmbeddedContentWireframeUpdate;
1731-
public static synthetic fun copy$default (Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$EmbeddedContentWireframeUpdate;JLjava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;Ljava/lang/String;Ljava/lang/Boolean;ILjava/lang/Object;)Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$EmbeddedContentWireframeUpdate;
1732-
public fun equals (Ljava/lang/Object;)Z
1733-
public static final fun fromJson (Ljava/lang/String;)Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$EmbeddedContentWireframeUpdate;
1734-
public static final fun fromJsonObject (Lcom/google/gson/JsonObject;)Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$EmbeddedContentWireframeUpdate;
1735-
public final fun getBorder ()Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;
1736-
public final fun getClip ()Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;
1737-
public final fun getHeight ()Ljava/lang/Long;
1738-
public final fun getId ()J
1739-
public final fun getShapeStyle ()Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;
1740-
public final fun getSlotId ()Ljava/lang/String;
1741-
public final fun getType ()Ljava/lang/String;
1742-
public final fun getWidth ()Ljava/lang/Long;
1743-
public final fun getX ()Ljava/lang/Long;
1744-
public final fun getY ()Ljava/lang/Long;
1745-
public fun hashCode ()I
1746-
public final fun isVisible ()Ljava/lang/Boolean;
1747-
public fun toJson ()Lcom/google/gson/JsonElement;
1748-
public fun toString ()Ljava/lang/String;
1749-
}
1750-
1751-
public final class com/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$EmbeddedContentWireframeUpdate$Companion {
1752-
public final fun fromJson (Ljava/lang/String;)Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$EmbeddedContentWireframeUpdate;
1753-
public final fun fromJsonObject (Lcom/google/gson/JsonObject;)Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$EmbeddedContentWireframeUpdate;
1754-
}
1755-
17561674
public final class com/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$ImageWireframeUpdate : com/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation {
17571675
public static final field Companion Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeUpdateMutation$ImageWireframeUpdate$Companion;
17581676
public fun <init> (JLjava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Lcom/datadog/android/sessionreplay/model/MobileSegment$WireframeClip;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeStyle;Lcom/datadog/android/sessionreplay/model/MobileSegment$ShapeBorder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;)V

features/dd-sdk-android-session-replay/src/main/json/schemas/session-replay/mobile/embedded-content-wireframe-schema.json

Lines changed: 0 additions & 38 deletions
This file was deleted.

features/dd-sdk-android-session-replay/src/main/json/schemas/session-replay/mobile/embedded-content-wireframe-update-schema.json

Lines changed: 0 additions & 33 deletions
This file was deleted.

features/dd-sdk-android-session-replay/src/main/json/schemas/session-replay/mobile/wireframe-schema.json

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,6 @@
1919
},
2020
{
2121
"$ref": "webview-wireframe-schema.json"
22-
},
23-
{
24-
"$ref": "embedded-content-wireframe-schema.json"
2522
}
2623
]
2724
}

features/dd-sdk-android-session-replay/src/main/json/schemas/session-replay/mobile/wireframe-update-mutation-schema.json

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,6 @@
1919
},
2020
{
2121
"$ref": "webview-wireframe-update-schema.json"
22-
},
23-
{
24-
"$ref": "embedded-content-wireframe-update-schema.json"
2522
}
2623
]
2724
}

features/dd-sdk-android-session-replay/src/main/kotlin/com/datadog/android/sessionreplay/internal/DefaultRecorderProvider.kt

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ internal class DefaultRecorderProvider(
8181
rumContextProvider: RumContextProvider,
8282
application: Application
8383
): Recorder {
84+
val heatmapIdentifierRegistry = if (heatmapsEnabled) LazyHeatmapIdentifierRegistry(sdkCore) else null
8485
return CapturePipelineSelector(
8586
compositionEnabled = compositionTreeRecordingEnabled,
8687
compositionFactory = compositionPipelineFactory,
@@ -101,11 +102,7 @@ internal class DefaultRecorderProvider(
101102
sdkCore = sdkCore,
102103
dynamicOptimizationEnabled = dynamicOptimizationEnabled,
103104
internalCallback = internalCallback,
104-
heatmapIdentifierRegistry = if (heatmapsEnabled) {
105-
LazyHeatmapIdentifierRegistry(sdkCore)
106-
} else {
107-
null
108-
}
105+
heatmapIdentifierRegistry = heatmapIdentifierRegistry
109106
)
110107
}
111108
).create()

features/dd-sdk-android-session-replay/src/main/kotlin/com/datadog/android/sessionreplay/internal/composition/CapturedIdentity.kt

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ internal enum class CapturedWireframeKind(internal val wireIdNamespace: Long) {
2424
TEXT(2),
2525
IMAGE(IMAGE_WIREFRAME_NAMESPACE),
2626
PLACEHOLDER(PLACEHOLDER_WIREFRAME_NAMESPACE),
27-
EMBEDDED_CONTENT(EMBEDDED_CONTENT_WIREFRAME_NAMESPACE),
2827

2928
/**
3029
* Deliberately namespace `0`, i.e. unshifted: the wire id for a web-view wireframe must equal
@@ -91,8 +90,6 @@ internal interface CapturedIdentityFactory {
9190

9291
fun placeholderWireframe(owner: CapturedIdentity): CapturedIdentity
9392

94-
fun embeddedContentWireframe(owner: CapturedIdentity): CapturedIdentity
95-
9693
fun webViewWireframe(owner: CapturedIdentity, slotId: Long): CapturedIdentity
9794
}
9895

@@ -141,9 +138,6 @@ internal class DefaultCapturedIdentityFactory(
141138
override fun placeholderWireframe(owner: CapturedIdentity): CapturedIdentity =
142139
createNamespacedWireframeIdentity(owner, CapturedWireframeKind.PLACEHOLDER)
143140

144-
override fun embeddedContentWireframe(owner: CapturedIdentity): CapturedIdentity =
145-
createNamespacedWireframeIdentity(owner, CapturedWireframeKind.EMBEDDED_CONTENT)
146-
147141
override fun webViewWireframe(owner: CapturedIdentity, slotId: Long): CapturedIdentity {
148142
requireLayerOwner(owner)
149143
return createIdentity(
@@ -246,7 +240,6 @@ internal class DefaultCapturedIdentityFactory(
246240

247241
private const val IMAGE_WIREFRAME_NAMESPACE = 3L
248242
private const val PLACEHOLDER_WIREFRAME_NAMESPACE = 4L
249-
private const val EMBEDDED_CONTENT_WIREFRAME_NAMESPACE = 5L
250243

251244
/**
252245
* Added to every raw layer replay id so that layer wire ids always land above the Int range

features/dd-sdk-android-session-replay/src/main/kotlin/com/datadog/android/sessionreplay/internal/composition/CapturedMutationValidation.kt

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -147,20 +147,23 @@ internal class CapturedMutationValidation(
147147
)
148148
}
149149

150-
private fun CapturedLayer.apply(update: CapturedLayerUpdate): CapturedLayer = copy(
151-
bounds = bounds.copy(
152-
x = update.x.valueOr(bounds.x),
153-
y = update.y.valueOr(bounds.y),
154-
width = update.width.valueOr(bounds.width),
155-
height = update.height.valueOr(bounds.height)
156-
),
157-
children = update.children.valueOr(children),
158-
modifiers = update.modifiers.valueOr(modifiers),
159-
compositeOperation = when (val operation = update.compositeOperation) {
150+
private fun CapturedLayer.apply(update: CapturedLayerUpdate): CapturedLayer {
151+
val effectiveCompositeOperation = when (val operation = update.compositeOperation) {
160152
is CapturedChange.Set -> operation.value
161153
CapturedChange.Unchanged -> compositeOperation
162154
}
163-
)
155+
return copy(
156+
bounds = bounds.copy(
157+
x = update.x.valueOr(bounds.x),
158+
y = update.y.valueOr(bounds.y),
159+
width = update.width.valueOr(bounds.width),
160+
height = update.height.valueOr(bounds.height)
161+
),
162+
children = update.children.valueOr(children),
163+
modifiers = update.modifiers.valueOr(modifiers),
164+
compositeOperation = effectiveCompositeOperation
165+
)
166+
}
164167

165168
private fun <T> CapturedChange<List<T>>.valueOrEmpty(): List<T> =
166169
(this as? CapturedChange.Set)?.value.orEmpty()

0 commit comments

Comments
 (0)