-
Notifications
You must be signed in to change notification settings - Fork 5
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
feat: add animated transition to frame on double-click. #37
Conversation
Nice this works well. I wonder though if the external library could be plugged in as most of its code is the I haven't looked at all the code yet. But I like the ZoomTarget notion and that the width is now specific to the canvas. |
.ifPresent(fgp -> fgp.hoverFrameAt( | ||
(Graphics2D) view.getGraphics(), | ||
canvas.getBounds(), | ||
point, | ||
frame -> { | ||
canvas.setToolTipText(frame); | ||
scrollPane.repaint(); | ||
} | ||
)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For reference might conflict with #34 https://github.com/bric3/fireplace/pull/34/files#diff-e367861376ff2c84840ac2b45bbf62c25e02fc13bbe3f5a44f6d5372bed5b3dbR329-R335
Let's merge #34 after this one as it's much simpler.
Enabling the debug mode
|
I didn't see a toggle to enable or disable animations. (This might go along with plugability) |
I'll fix the EDT violations first, should have checked myself 🤦♂️ |
…operty to allow control of default value.
Now there is an attribute |
Since all the animation code is contained as a consumer here, we can create a separate gradle module that extends the core flameGraph by configuring the consumer.
Possibly but I still think this could be made as a separate module. Bu we can move extract this in another PR, to move quickly. |
feat: add popup handler mechanism.
Just happened to see this PR. Haven't looked closely at everything, but one thing jumped out - EDT violations. Radiance animation has a special annotation to mark callbacks to be dispatched on the EDT - |
Thanks Kirill, I'm going to take a look at this. |
Adds an animated transition between frames upon double-click, using the Radiance animation library (https://github.com/kirill-grouchnikov/radiance). To make this work, a small refactoring has been done to remove state from the
FrameGraphPainter
(specificallyflameGraphWidth
andvisibleWidth
) that can more easily be passed to the paint methods when called.To test this PR, run the main app, load a JFR file and double-click on some frames.