Skip to content

Commit 5c40fdb

Browse files
Brian Vaughnkoto
Brian Vaughn
authored andcommitted
Visually distinguish user timing marks from React events (facebook#19663)
1 parent bad4b34 commit 5c40fdb

File tree

2 files changed

+15
-8
lines changed

2 files changed

+15
-8
lines changed

packages/react-devtools-scheduling-profiler/src/content-views/UserTimingMarksView.js

+14-8
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,12 @@ import {
2626
import {
2727
COLORS,
2828
EVENT_ROW_PADDING,
29-
EVENT_DIAMETER,
29+
USER_TIMING_MARK_SIZE,
3030
BORDER_SIZE,
3131
} from './constants';
3232

33-
const ROW_HEIGHT_FIXED = EVENT_ROW_PADDING + EVENT_DIAMETER + EVENT_ROW_PADDING;
33+
const ROW_HEIGHT_FIXED =
34+
EVENT_ROW_PADDING + USER_TIMING_MARK_SIZE + EVENT_ROW_PADDING;
3435

3536
export class UserTimingMarksView extends View {
3637
_marks: UserTimingMark[];
@@ -81,13 +82,15 @@ export class UserTimingMarksView extends View {
8182
const {timestamp} = mark;
8283

8384
const x = timestampToPosition(timestamp, scaleFactor, frame);
84-
const radius = EVENT_DIAMETER / 2;
85+
const size = USER_TIMING_MARK_SIZE;
86+
const halfSize = size / 2;
87+
8588
const markRect: Rect = {
8689
origin: {
87-
x: x - radius,
90+
x: x - halfSize,
8891
y: baseY,
8992
},
90-
size: {width: EVENT_DIAMETER, height: EVENT_DIAMETER},
93+
size: {width: size, height: size},
9194
};
9295
if (!rectIntersectsRect(markRect, rect)) {
9396
return; // Not in view
@@ -98,11 +101,14 @@ export class UserTimingMarksView extends View {
98101
: COLORS.USER_TIMING;
99102

100103
if (fillStyle !== null) {
101-
const y = markRect.origin.y + radius;
104+
const y = baseY + halfSize;
102105

103106
context.beginPath();
104107
context.fillStyle = fillStyle;
105-
context.arc(x, y, radius, 0, 2 * Math.PI);
108+
context.moveTo(x, y - halfSize);
109+
context.lineTo(x + halfSize, y);
110+
context.lineTo(x, y + halfSize);
111+
context.lineTo(x - halfSize, y);
106112
context.fill();
107113
}
108114
}
@@ -198,7 +204,7 @@ export class UserTimingMarksView extends View {
198204
);
199205
const hoverTimestamp = positionToTimestamp(location.x, scaleFactor, frame);
200206
const markTimestampAllowance = widthToDuration(
201-
EVENT_DIAMETER / 2,
207+
USER_TIMING_MARK_SIZE / 2,
202208
scaleFactor,
203209
);
204210

packages/react-devtools-scheduling-profiler/src/content-views/constants.js

+1
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ export const MIN_INTERVAL_SIZE_PX = 70;
3333

3434
export const EVENT_ROW_PADDING = 4;
3535
export const EVENT_DIAMETER = 6;
36+
export const USER_TIMING_MARK_SIZE = 8;
3637
export const REACT_MEASURE_HEIGHT = 9;
3738
export const BORDER_SIZE = 1;
3839

0 commit comments

Comments
 (0)