Skip to content

Conversation

@sobo-odoo
Copy link

No description provided.

@robodoo
Copy link

robodoo commented Nov 12, 2024

This PR targets the un-managed branch odoo-dev/odoo:master-mysterious-egg, it needs to be retargeted before it can be merged.

@sobo-odoo sobo-odoo force-pushed the master-mysterious-egg-sobo branch 3 times, most recently from 7417088 to cdc50b5 Compare November 14, 2024 15:42
@sobo-odoo sobo-odoo marked this pull request as ready for review November 15, 2024 14:05
@robodoo
Copy link

robodoo commented Nov 15, 2024

This PR targets the un-managed branch odoo-dev/odoo:master-mysterious-egg, it needs to be retargeted before it can be merged.

@FrancoisGe FrancoisGe force-pushed the master-mysterious-egg branch from aeacbc1 to 395880e Compare November 15, 2024 15:21
@sobo-odoo sobo-odoo force-pushed the master-mysterious-egg-sobo branch from 57ca2df to e5a0389 Compare November 15, 2024 16:05
Comment on lines 237 to 225

Choose a reason for hiding this comment

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

=== _update ?

Copy link
Author

Choose a reason for hiding this comment

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

I would say that, for now, let's keep them separated: when the sizing,... will be implemented, we could still add an update function later to do both at once if we repeat them a lot 🙂

And if you meant "using the _update function of the plugin after calling toggleOverlay", then I prefer doing the refresh here, so the overlay logic is grouped at one place (easier to follow the flow), like each overlay updates itself 👍

Comment on lines +156 to +124

Choose a reason for hiding this comment

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

do we still need need with _update

Copy link
Author

@sobo-odoo sobo-odoo Nov 15, 2024

Choose a reason for hiding this comment

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

I prefer keeping everything separated, because we do not always need to update both at the same time, e.g.:

  • scrolling only needs to refresh the position, as the handles are not supposed to change
  • using an option may change both the size and the "status" of an element, so we need to refresh both the handles and the position

However, I agree that refreshHandles alone is not needed yet, but let's keep it for now to be consistent, we can remove it later if really no case needs it in the end 🙂

Also, the update was needed to use it in handleCommand, and also to make all the changes in one loop, to be a bit more efficient 🙂

Choose a reason for hiding this comment

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

window.document === document ?

Choose a reason for hiding this comment

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

rename contextItem => scrollingElement

Copy link
Author

Choose a reason for hiding this comment

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

document is not defined there, so we need to use window.document 🙂 (see the function just above that uses it too)

@sobo-odoo sobo-odoo force-pushed the master-mysterious-egg-sobo branch 2 times, most recently from 318f42b to 2b89573 Compare November 15, 2024 19:14
@sobo-odoo
Copy link
Author

I made the changes, see diff 🙂 (don't mind the NumberInput.js file that you already fixed, I rebased after my changes 😉)


// On keydown, hide the overlay and then show it again when the mouse
// moves.
let wasKeydown;
Copy link

Choose a reason for hiding this comment

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

I would rather have a variable isOverlayVisible set by toggleOverlayVisibility. If we try to set a visibility that is the same as the previous one, we directly return.

Comment on lines +125 to +95
// TODO check if resizeObserver still needed.
// this.resizeObserver = new ResizeObserver(this.update.bind(this));
// this.resizeObserver.observe(this.overlayTarget);
Copy link

Choose a reason for hiding this comment

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

I would still add it if some code changes the size of the box without adding a step (eg. a preview)

Comment on lines +144 to +124
refreshPosition() {
this.overlays.forEach((overlay) => {
overlay.refreshPosition();
});
}

refreshHandles() {
this.overlays.forEach((overlay) => {
overlay.refreshHandles();
});
}
Copy link

Choose a reason for hiding this comment

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

As refreshing the handles is rather cheap, I would call update when we need to refresh the positions to avoid having one more method.

refreshHandles is not call in the plugin so we can remove the method.

});
}

toggleOverlayVisibility(show) {
Copy link

Choose a reason for hiding this comment

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

setOverlaysVisibility?

@sobo-odoo sobo-odoo force-pushed the master-mysterious-egg-sobo branch 4 times, most recently from 5d420ac to 2071836 Compare November 28, 2024 10:30
@sobo-odoo sobo-odoo force-pushed the master-mysterious-egg-sobo branch 4 times, most recently from 53d83ba to 7b6623f Compare December 3, 2024 17:14
@sobo-odoo sobo-odoo force-pushed the master-mysterious-egg-sobo branch 3 times, most recently from fef1800 to e3afa34 Compare December 10, 2024 13:04
@sobo-odoo sobo-odoo changed the title Builder overlay Builder overlay + Sizing Dec 10, 2024
Copy link

@fdardenne fdardenne left a comment

Choose a reason for hiding this comment

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

Well play ! This is a huge feature 💯
A few of my comments are nitpicking, you can ignore few of those if you want 👍

Needed in order for the sizing to be smoother (compared to master) but
mostly to allow it to be tested, as the tests make big pointer moves,
which therefore did not work with the previous implementation since it
increments the indexes one by one, instead of considering the delta.
@sobo-odoo sobo-odoo force-pushed the master-mysterious-egg-sobo branch from f2ad721 to 9ff074b Compare December 10, 2024 17:09
@fdardenne fdardenne merged commit 41444b2 into master-mysterious-egg Dec 11, 2024
@fdardenne fdardenne deleted the master-mysterious-egg-sobo branch December 11, 2024 07:03
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.

5 participants