chore: remove scroll jank investigation logging
This commit is contained in:
@@ -79,7 +79,6 @@ import {
|
||||
} from "@/utils/inline-path";
|
||||
import { getMarkdownListMarker } from "@/utils/markdown-list";
|
||||
import { openExternalUrl } from "@/utils/open-external-url";
|
||||
import { markScrollInvestigationEvent } from "@/utils/scroll-jank";
|
||||
import { splitMarkdownBlocks } from "@/utils/split-markdown-blocks";
|
||||
import {
|
||||
getAssistantImageMetadata,
|
||||
@@ -103,29 +102,6 @@ export type { InlinePathTarget } from "@/utils/inline-path";
|
||||
|
||||
type MarkdownStyles = Record<string, TextStyle & ViewStyle & { [key: string]: unknown }>;
|
||||
|
||||
function useMessageRenderTracker(
|
||||
label: string,
|
||||
identity: string,
|
||||
watched: Record<string, unknown>,
|
||||
): void {
|
||||
const renderCountRef = useRef(0);
|
||||
const prevRef = useRef<Record<string, unknown> | null>(null);
|
||||
renderCountRef.current += 1;
|
||||
const changed: string[] = [];
|
||||
if (prevRef.current !== null) {
|
||||
for (const key of Object.keys(watched)) {
|
||||
if (!Object.is(prevRef.current[key], watched[key])) {
|
||||
changed.push(key);
|
||||
}
|
||||
}
|
||||
}
|
||||
prevRef.current = { ...watched };
|
||||
console.log(`[${label}]`, identity, `render #${renderCountRef.current}`, {
|
||||
isFirst: renderCountRef.current === 1,
|
||||
changed,
|
||||
});
|
||||
}
|
||||
|
||||
interface UserMessageProps {
|
||||
message: string;
|
||||
images?: UserMessageImageAttachment[];
|
||||
@@ -425,13 +401,6 @@ export const UserMessage = memo(function UserMessage({
|
||||
isLastInGroup = true,
|
||||
disableOuterSpacing,
|
||||
}: UserMessageProps) {
|
||||
useMessageRenderTracker("UserMessage", `${(message ?? "").slice(0, 16)}`, {
|
||||
message,
|
||||
images,
|
||||
isFirstInGroup,
|
||||
isLastInGroup,
|
||||
disableOuterSpacing,
|
||||
});
|
||||
const isCompact = useIsCompactFormFactor();
|
||||
const [messageHovered, setMessageHovered] = useState(false);
|
||||
const [copyButtonHovered, setCopyButtonHovered] = useState(false);
|
||||
@@ -1383,19 +1352,6 @@ export const AssistantMessage = memo(function AssistantMessage({
|
||||
disableOuterSpacing,
|
||||
spacing = "default",
|
||||
}: AssistantMessageProps) {
|
||||
useMessageRenderTracker(
|
||||
"AssistantMessage",
|
||||
`${serverId ?? "?"}/${(message ?? "").slice(0, 16)}`,
|
||||
{
|
||||
message,
|
||||
onInlinePathPress,
|
||||
workspaceRoot,
|
||||
serverId,
|
||||
client,
|
||||
disableOuterSpacing,
|
||||
spacing,
|
||||
},
|
||||
);
|
||||
const resolvedDisableOuterSpacing = useDisableOuterSpacing(
|
||||
disableOuterSpacing ?? spacing !== "default",
|
||||
);
|
||||
@@ -2373,9 +2329,8 @@ function computeShimmerMetrics(input: {
|
||||
function useDetailWheelPropagationBlocker(input: {
|
||||
detailWrapperRef: React.RefObject<View | null>;
|
||||
enabled: boolean;
|
||||
wheelInvestigationComponentId: string;
|
||||
}): void {
|
||||
const { detailWrapperRef, enabled, wheelInvestigationComponentId } = input;
|
||||
const { detailWrapperRef, enabled } = input;
|
||||
useEffect(() => {
|
||||
if (!enabled) {
|
||||
return;
|
||||
@@ -2389,13 +2344,11 @@ function useDetailWheelPropagationBlocker(input: {
|
||||
event.stopPropagation();
|
||||
}
|
||||
};
|
||||
markScrollInvestigationEvent(wheelInvestigationComponentId, "wheelAttach");
|
||||
node.addEventListener("wheel", stopWheelPropagation, { passive: true });
|
||||
return () => {
|
||||
markScrollInvestigationEvent(wheelInvestigationComponentId, "wheelDetach");
|
||||
node.removeEventListener("wheel", stopWheelPropagation);
|
||||
};
|
||||
}, [detailWrapperRef, enabled, wheelInvestigationComponentId]);
|
||||
}, [detailWrapperRef, enabled]);
|
||||
}
|
||||
|
||||
const SHIMMER_GRADIENT =
|
||||
@@ -2450,7 +2403,6 @@ const ExpandableBadge = memo(function ExpandableBadge({
|
||||
const hasDetailContent = Boolean(renderDetails);
|
||||
const detailContent = hasDetailContent && isExpanded ? renderDetails?.() : null;
|
||||
const detailWrapperRef = useRef<View | null>(null);
|
||||
const wheelInvestigationComponentId = `ExpandableBadgeWheel:${testID ?? label}`;
|
||||
|
||||
const handleHoverIn = useCallback(() => setIsHovered(true), []);
|
||||
const handleHoverOut = useCallback(() => {
|
||||
@@ -2554,7 +2506,6 @@ const ExpandableBadge = memo(function ExpandableBadge({
|
||||
useDetailWheelPropagationBlocker({
|
||||
detailWrapperRef,
|
||||
enabled: !isNative && isExpanded && hasDetailContent,
|
||||
wheelInvestigationComponentId,
|
||||
});
|
||||
|
||||
const shimmerLabelStyle = useMemo(
|
||||
@@ -2797,21 +2748,6 @@ export const ToolCall = memo(function ToolCall({
|
||||
onInlineDetailsExpandedChange,
|
||||
onOpenFilePath,
|
||||
}: ToolCallProps) {
|
||||
useMessageRenderTracker("ToolCall", `${toolName}/${status}`, {
|
||||
toolName,
|
||||
args,
|
||||
result,
|
||||
error,
|
||||
status,
|
||||
detail,
|
||||
cwd,
|
||||
metadata,
|
||||
isLastInSequence,
|
||||
disableOuterSpacing,
|
||||
onInlineDetailsHoverChange,
|
||||
onInlineDetailsExpandedChange,
|
||||
onOpenFilePath,
|
||||
});
|
||||
const { openToolCall } = useToolCallSheet();
|
||||
const [isExpanded, setIsExpanded] = useState(false);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user