Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RUM-917 Fix type mistmatch error #2092

Open
wants to merge 2 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -96,8 +96,7 @@ internal class SnapshotProcessor: SnapshotProcessing {
var records: [SRRecord] = []
// Create records for describing UI:
if viewTreeSnapshot.context.applicationID != lastSnapshot?.context.applicationID ||
viewTreeSnapshot.context.sessionID != lastSnapshot?.context.sessionID ||
viewTreeSnapshot.context.viewID != lastSnapshot?.context.viewID {
viewTreeSnapshot.context.sessionID != lastSnapshot?.context.sessionID {
// If RUM context ids have changed, new segment should be started.
// Segment must always start with "meta" → "focus" → "full snapshot" records.
records.append(recordsBuilder.createMetaRecord(from: viewTreeSnapshot))
Expand All @@ -119,7 +118,7 @@ internal class SnapshotProcessor: SnapshotProcessing {
.flatMap { records.append($0) }
}
} else {
telemetry.error("[SR] Unexpected flow in `Processor`: no previous wireframes and no previous RUM context")
// Initial snapshot
records.append(recordsBuilder.createFullSnapshotRecord(from: viewTreeSnapshot, wireframes: wireframes))
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ internal struct UIDatePickerRecorder: NodeRecorder {

init(identifier: UUID) {
self.identifier = identifier
self.wheelsStyleRecorder = WheelsStyleDatePickerRecorder(identifier: identifier)
self.compactStyleRecorder = CompactStyleDatePickerRecorder(identifier: identifier)
self.inlineStyleRecorder = InlineStyleDatePickerRecorder(identifier: identifier)
self.wheelsStyleRecorder = WheelsStyleDatePickerRecorder(identifier: UUID())
self.compactStyleRecorder = CompactStyleDatePickerRecorder(identifier: UUID())
self.inlineStyleRecorder = InlineStyleDatePickerRecorder(identifier: UUID())
}

func semantics(of view: UIView, with attributes: ViewAttributes, in context: ViewTreeRecordingContext) -> NodeSemantics? {
Expand Down Expand Up @@ -104,9 +104,9 @@ private struct InlineStyleDatePickerRecorder {
let subtreeRecorder: ViewTreeRecorder

init(identifier: UUID) {
self.viewRecorder = UIViewRecorder(identifier: identifier)
self.viewRecorder = UIViewRecorder(identifier: UUID())
self.labelRecorder = UILabelRecorder(
identifier: identifier,
identifier: UUID(),
textObfuscator: { context, viewAttributes in
return viewAttributes.resolveTextAndInputPrivacyLevel(in: context).staticTextObfuscator
}
Expand All @@ -115,8 +115,8 @@ private struct InlineStyleDatePickerRecorder {
nodeRecorders: [
viewRecorder,
labelRecorder,
UIImageViewRecorder(identifier: identifier),
UISegmentRecorder(identifier: identifier), // iOS 14.x uses `UISegmentedControl` for "AM | PM"
UIImageViewRecorder(identifier: UUID()),
UISegmentRecorder(identifier: UUID()), // iOS 14.x uses `UISegmentedControl` for "AM | PM"
]
)
}
Expand Down Expand Up @@ -151,9 +151,9 @@ private struct CompactStyleDatePickerRecorder {
init(identifier: UUID) {
self.subtreeRecorder = ViewTreeRecorder(
nodeRecorders: [
UIViewRecorder(identifier: identifier),
UIViewRecorder(identifier: UUID()),
UILabelRecorder(
identifier: identifier,
identifier: UUID(),
textObfuscator: { context, viewAttributes in
return viewAttributes.resolveTextAndInputPrivacyLevel(in: context).staticTextObfuscator
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ internal struct UIPickerViewRecorder: NodeRecorder {
}
) {
self.identifier = identifier
self.selectionRecorder = ViewTreeRecorder(nodeRecorders: [UIViewRecorder(identifier: identifier)])
self.selectionRecorder = ViewTreeRecorder(nodeRecorders: [UIViewRecorder(identifier: UUID())])
self.labelsRecorder = ViewTreeRecorder(
nodeRecorders: [
UIViewRecorder(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,13 @@ import UIKit

internal final class UITabBarRecorder: NodeRecorder {
internal let identifier: UUID
internal let labelRecorder: UILabelRecorder
internal let viewRecorder: UIViewRecorder

init(identifier: UUID) {
self.identifier = identifier
self.labelRecorder = UILabelRecorder(identifier: UUID())
self.viewRecorder = UIViewRecorder(identifier: UUID())
}

func semantics(of view: UIView, with attributes: ViewAttributes, in context: ViewTreeRecordingContext) -> NodeSemantics? {
Expand Down Expand Up @@ -63,9 +67,8 @@ internal final class UITabBarRecorder: NodeRecorder {
return tabBar.tintColor ?? SystemColors.systemBlue
}
),
UILabelRecorder(identifier: identifier),
// This is for recording the badge view
UIViewRecorder(identifier: identifier)
labelRecorder,
viewRecorder
]
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ internal struct UITextFieldRecorder: NodeRecorder {

init(identifier: UUID) {
self.identifier = identifier
self.backgroundViewRecorder = UIViewRecorder(identifier: identifier)
self.iconsRecorder = UIImageViewRecorder(identifier: identifier)
self.backgroundViewRecorder = UIViewRecorder(identifier: UUID())
self.iconsRecorder = UIImageViewRecorder(identifier: UUID())
self.subtreeRecorder = ViewTreeRecorder(nodeRecorders: [backgroundViewRecorder, iconsRecorder])
}

Expand Down