Improve styling of Hprof Analysis for Memory Tools plugin
Summary: Improves the look of analyzed Hprof data for the Memory Tools plugin. Adds an expandable/collapsable tree using ElementsInspector and groups large objects/leaked objects. https://pxl.cl/fxNs Reviewed By: danielbuechele Differential Revision: D8721141 fbshipit-source-id: f78fe32bd2ca1f11ce39b9e696f48a56dc5c9bff
This commit is contained in:
committed by
Facebook Github Bot
parent
221cdda89d
commit
a4638033b7
@@ -61,7 +61,11 @@ export default class ElementsInspector extends Component<{
|
|||||||
root: ?ElementID,
|
root: ?ElementID,
|
||||||
elements: {[key: ElementID]: Element},
|
elements: {[key: ElementID]: Element},
|
||||||
useAppSidebar?: boolean,
|
useAppSidebar?: boolean,
|
||||||
|
alternateRowColor?: boolean,
|
||||||
}> {
|
}> {
|
||||||
|
static defaultProps = {
|
||||||
|
alternateRowColor: true,
|
||||||
|
};
|
||||||
render() {
|
render() {
|
||||||
const {
|
const {
|
||||||
selected,
|
selected,
|
||||||
@@ -71,6 +75,7 @@ export default class ElementsInspector extends Component<{
|
|||||||
onElementSelected,
|
onElementSelected,
|
||||||
onElementHovered,
|
onElementHovered,
|
||||||
searchResults,
|
searchResults,
|
||||||
|
alternateRowColor,
|
||||||
} = this.props;
|
} = this.props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -83,6 +88,7 @@ export default class ElementsInspector extends Component<{
|
|||||||
searchResults={searchResults}
|
searchResults={searchResults}
|
||||||
root={root}
|
root={root}
|
||||||
elements={elements}
|
elements={elements}
|
||||||
|
alternateRowColor={alternateRowColor}
|
||||||
/>
|
/>
|
||||||
</FlexRow>
|
</FlexRow>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -391,6 +391,7 @@ type ElementsProps = {|
|
|||||||
onElementSelected: (key: ElementID) => void,
|
onElementSelected: (key: ElementID) => void,
|
||||||
onElementExpanded: (key: ElementID, deep: boolean) => void,
|
onElementExpanded: (key: ElementID, deep: boolean) => void,
|
||||||
onElementHovered: ?(key: ?ElementID) => void,
|
onElementHovered: ?(key: ?ElementID) => void,
|
||||||
|
alternateRowColor?: boolean,
|
||||||
|};
|
|};
|
||||||
|
|
||||||
type ElementsState = {|
|
type ElementsState = {|
|
||||||
@@ -400,6 +401,9 @@ type ElementsState = {|
|
|||||||
|};
|
|};
|
||||||
|
|
||||||
export class Elements extends PureComponent<ElementsProps, ElementsState> {
|
export class Elements extends PureComponent<ElementsProps, ElementsState> {
|
||||||
|
static defaultProps = {
|
||||||
|
alternateRowColor: true,
|
||||||
|
};
|
||||||
constructor(props: ElementsProps, context: Object) {
|
constructor(props: ElementsProps, context: Object) {
|
||||||
super(props, context);
|
super(props, context);
|
||||||
this.state = {
|
this.state = {
|
||||||
@@ -566,12 +570,17 @@ export class Elements extends PureComponent<ElementsProps, ElementsState> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let isEven = false;
|
||||||
|
if (this.props.alternateRowColor) {
|
||||||
|
isEven = index % 2 === 0;
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ElementsRow
|
<ElementsRow
|
||||||
level={row.level}
|
level={row.level}
|
||||||
id={row.key}
|
id={row.key}
|
||||||
key={row.key}
|
key={row.key}
|
||||||
even={index % 2 === 0}
|
even={isEven}
|
||||||
onElementExpanded={onElementExpanded}
|
onElementExpanded={onElementExpanded}
|
||||||
onElementHovered={onElementHovered}
|
onElementHovered={onElementHovered}
|
||||||
onElementSelected={onElementSelected}
|
onElementSelected={onElementSelected}
|
||||||
|
|||||||
Reference in New Issue
Block a user