Skip to content

Implement grouping of the stack frames#583

Merged
SougandhS merged 2 commits intoeclipse-jdt:masterfrom
gzsombor:single-change
Mar 21, 2025
Merged

Implement grouping of the stack frames#583
SougandhS merged 2 commits intoeclipse-jdt:masterfrom
gzsombor:single-change

Conversation

@gzsombor
Copy link
Copy Markdown
Contributor

@gzsombor gzsombor commented Jan 4, 2025

The rules how the frames are categorized are not editable as of now, just a single action is visible to switch on-off the behaviour

What it does

Groups - and hides - the supposedly not relevant stack frames from the debug views.
before
Screenshot_20250321_092524

After

new_group1
Expanding the group:
new_group2

How to test

Start debugging, and notice that instead of having hundreds of frames only a couple are visible

Author checklist

@gzsombor
Copy link
Copy Markdown
Contributor Author

@jukzi : Could you please have a look on this when you have time and check what needs to be done to be merged?

@jukzi
Copy link
Copy Markdown
Contributor

jukzi commented Jan 14, 2025

unfortunately i am very limited in time. @SougandhS can you test/review this PR?

@SougandhS
Copy link
Copy Markdown
Member

unfortunately i am very limited in time. @SougandhS can you test/review this PR?

will check this

@SougandhS
Copy link
Copy Markdown
Member

SougandhS commented Jan 14, 2025

Stack icons looks bit odd when code stops in .java files

image




Icons are same as of .Class files

image

reference . On master -
image

@SougandhS
Copy link
Copy Markdown
Member

SougandhS commented Jan 14, 2025

if the breakpoint is in .class file then original stack (master) icons are shown

image

both
image

Feature looks awsm!

Would be nice if the icons are consistent

@gzsombor
Copy link
Copy Markdown
Contributor Author

if the breakpoint is in .class file then original stack (master) icons are shown
image

both image

Feature looks awsm! Would be nice if the icons are consistent

I'm happy that you liked the feature!
It is a long time, since I've written most of the code - I even forgot, that I've modified that part which returns images for the stack frames. I've modified again a bit, so the icon will be the same old, for all the prod/test codes, and have the 'jar' icon for classes coming from the libraries and 'platform'.

@SougandhS
Copy link
Copy Markdown
Member

have the 'jar' icon for classes coming from the libraries and 'platform'.

image

Icons looks good now thanks!

Comment thread org.eclipse.jdt.debug.ui/plugin.xml Outdated
@SougandhS
Copy link
Copy Markdown
Member

SougandhS commented Jan 15, 2025

Hi @gzsombor , could pls take the latest pull and squash everything to one commit only and push, so we can get rid of the build errors

Copy link
Copy Markdown
Member

@SougandhS SougandhS left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍

@jukzi
Copy link
Copy Markdown
Contributor

jukzi commented Jan 15, 2025

@gzsombor can you please update the pr description to include before/after screenshot to fatsly see what to expect?

@jukzi jukzi added the enhancement New feature or request label Jan 15, 2025
Comment thread org.eclipse.jdt.debug/model/org/eclipse/jdt/debug/core/IJavaStackFrame.java Outdated
@gzsombor gzsombor force-pushed the single-change branch 3 times, most recently from 9eb4199 to 84bc37e Compare January 17, 2025 07:48
Comment thread org.eclipse.jdt.debug/model/org/eclipse/jdt/debug/core/IJavaStackFrame.java Outdated
@gzsombor gzsombor force-pushed the single-change branch 2 times, most recently from 5154e9e to b62f599 Compare January 20, 2025 17:39
@SougandhS
Copy link
Copy Markdown
Member

It is all green now, could you please @jukzi have another look on it?

He has moved out of the Eclipse team

@SougandhS
Copy link
Copy Markdown
Member

please update the branch

@gzsombor
Copy link
Copy Markdown
Contributor Author

gzsombor commented Mar 5, 2025

please update the branch

I've rebased it again.

@gzsombor gzsombor force-pushed the single-change branch 2 times, most recently from 9087d86 to e94dc2a Compare March 7, 2025 06:46
@gzsombor gzsombor force-pushed the single-change branch 2 times, most recently from 343bf9f to cfd1283 Compare March 19, 2025 20:35
@gzsombor
Copy link
Copy Markdown
Contributor Author

Who can review and merge this PR?

Copy link
Copy Markdown
Member

@SougandhS SougandhS left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please provide an icon for context menu

image

The rules how the frames are categorized are not editable as of now,
just a single action is visible to switch on-off the behaviour, with
enough javadocs. Category is a record, so it can be freely extended in
the future.
Copy link
Copy Markdown
Member

@SougandhS SougandhS left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please update the context menu screenshot in PR description

@gzsombor
Copy link
Copy Markdown
Contributor Author

I've added a screenshot about the menu item.

@SougandhS SougandhS merged commit 3bb53aa into eclipse-jdt:master Mar 21, 2025
11 checks passed
@SougandhS
Copy link
Copy Markdown
Member

Thank you for contributing @gzsombor , its a really useful feature. 👍

@gzsombor
Copy link
Copy Markdown
Contributor Author

Thank you for reviewing and merging it!

@gzsombor gzsombor deleted the single-change branch March 21, 2025 08:44
@iloveeclipse
Copy link
Copy Markdown
Member

@gzsombor : could you please provide N&N entry for this feature?

@SougandhS SougandhS added the noteworthy Noteworthy feature label Mar 27, 2025
@iloveeclipse
Copy link
Copy Markdown
Member

@gzsombor : thanks for the patch, I see one improvement possibility: avoid groups of 1 element, because they only add noise to the stack and bring no real value:
image

Could you please provide a fix?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request noteworthy Noteworthy feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants