Skip to content

feat: jumps window#53

Open
nicolasp025 wants to merge 14 commits intoPharo-XP-Tools:P14from
nicolasp025:feat/jumps-window
Open

feat: jumps window#53
nicolasp025 wants to merge 14 commits intoPharo-XP-Tools:P14from
nicolasp025:feat/jumps-window

Conversation

@nicolasp025
Copy link
Copy Markdown

@nicolasp025 nicolasp025 commented Apr 23, 2026

I propose to add few tabs that permits to analyze the data by displaying :

  • a table for all record types and the number of each record in the history
  • a table for all window jumps (activity tab)
  • a table for statistics that displays more info about the history itself.
Capture d’écran 2026-04-23 à 15 51 20 Capture d’écran 2026-04-23 à 15 51 27 Capture d’écran 2026-04-23 à 15 51 31 Capture d’écran 2026-04-23 à 15 51 41

@nicolasp025 nicolasp025 requested a review from Julesboul April 23, 2026 13:41
@nicolasp025 nicolasp025 marked this pull request as ready for review April 23, 2026 13:53
Copy link
Copy Markdown
Contributor

@Julesboul Julesboul left a comment

Choose a reason for hiding this comment

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

Some things to change.

For testing, try to not depend on methods from your system during assertion. Your point is to check that having some entries, you must get the expected outputs (but you should know these outputs before using your methods)

self assert: (self recordsTablePresenter roots at: 2) key class equals: DSMouseEnterWindowRecord.
self assert: (self recordsTablePresenter roots at: 3) key class equals: DSMouseLeaveWindowRecord.
self assert: self recordsTablePresenter roots last key class equals: DSInspectItRecord
self assert: presenter roots equals: browser getNumberOfEventsPerType associations
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

The method getNumberOfEventsPerType is used in updateRecordTypesPresenter so this doesn't test anything... You must used hardcoded values as it was done in the previous version of this test

Comment thread DebuggingSpy-Browser-Tests/DSRecordBrowserPresenterTest.class.st
Comment on lines 278 to 280
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Suggested change
DSRecordHistory >> events: aCollectionOfRecords [
events := aCollectionOfRecords

Comment on lines +370 to +380
DSRecordBrowserPresenter >> historyActionsFor: aPresenter [
"Return a list of actions which can be done on a history."

^ SpActionGroup new addActionWith: [ :anItem |
anItem
name: 'Inspect history';
iconName: #history;
description: 'Inspect history.';
shortcutKey: $h meta;
action: [ (DSRecordHistory on: aPresenter selectedItem events) inspect ] ]
]
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This feature is not relevant, the history is an object linked to a file (not to a collection of records).
Here I can get an history from a DSWindowActivityRecord and it does not make sens...

In our design, 1 history = 1 file

Comment on lines +668 to +678
DSRecordBrowserPresenter >> windowsActionsFor: aPresenter [
"Return a list of actions which can be done on a window."

^ SpActionGroup new addActionWith: [ :anItem |
anItem
name: 'Inspect';
iconName: #inspect;
description: 'Inspect the selected element.';
shortcutKey: $i meta;
action: [ aPresenter selectedItem inspect ] ]
]
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Seeing all someObjectActionsFor:, it seems that the only action is Inspect but it does not depend on the object (you can do 'inspect' on all your object the same way).

Maybe it can be group as one actionGroup? For basic actions on an object in your tabs

Comment thread DebuggingSpy-Browser/DSRecordBrowserPresenter.class.st
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants