Skip to content
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

[IMP] *: gantt: variable range and horizontal virtualization #162017

Open
wants to merge 14 commits into
base: master
Choose a base branch
from

Conversation

Polymorphe57
Copy link
Contributor

No description provided.

@robodoo
Copy link
Contributor

robodoo commented Apr 16, 2024

@C3POdoo C3POdoo added the RD research & development, internal work label Apr 16, 2024
@Polymorphe57 Polymorphe57 force-pushed the master-gantt-v3-dam branch 5 times, most recently from 6f72755 to 86bd373 Compare April 22, 2024 15:45
@Polymorphe57 Polymorphe57 force-pushed the master-gantt-v3-dam branch 12 times, most recently from 0f5caaf to f79a321 Compare May 2, 2024 07:08
@Polymorphe57 Polymorphe57 force-pushed the master-gantt-v3-dam branch 4 times, most recently from da7877a to b489ba5 Compare May 6, 2024 14:22
@Polymorphe57 Polymorphe57 force-pushed the master-gantt-v3-dam branch 5 times, most recently from 7846899 to 3ede548 Compare May 7, 2024 09:31
@Polymorphe57
Copy link
Contributor Author

@robodoo rebase-ff

@robodoo
Copy link
Contributor

robodoo commented May 7, 2024

I'm sorry, @Polymorphe57: you can't method=rebase-ff.

@Polymorphe57 Polymorphe57 force-pushed the master-gantt-v3-dam branch 2 times, most recently from da09b66 to 13d9039 Compare May 15, 2024 10:53
@Polymorphe57 Polymorphe57 changed the title Master gantt v3 dam [IMP] *: gantt: variable range and horizontal virtualization May 15, 2024
brboi and others added 13 commits May 16, 2024 09:31
This commit allows to prevent the next eventual click event
which could happen on drag end if the user does a pointer up
above the initially dragged element.

It is useful to prevent any click handler from triggering
after a drag sequence was initiated so that the handlers
don't overlap with each others in this special case.
This commit changes the way the draggable hooks handle the "edge
scrolling":

- before this commit: scrolling started when the dragged element
approached a border of one of its scrollable parents;

- now: scrolling starts when the cursor approaches a border of the
scrollable parent.
We make possible to block the edge scrolling in one direction when dragging.
This can be achieved by setting a new option "direction" in the param
edgeScrolling of the draggable hook builder. That option can take two
values: "horizontal" or "vertical". If edgeScrolling is enabled and that
option is set, scroll will only be possible in that direction.
After this commit, the edge scrolling case will continuously call the
onDrag handler.

This is useful when a visual feedback is computed in the caller's onDrag
handler.

This is now a requirement for the v3 gantt view.
Task: 3601456
After this commit, the caller's side will know in the dragging context
which edge is being scrolled (on edge scrolling situations obviously).
A new param "inBounds" is introduced for getPickerCell.
If set to true, only the values in the current selected
datepicker range are returned.
This commit slightly changes the signature of the `makePopover` utility
function in order to ease its override.

Before it expected the whole popover service API, only to use its `add`
function. Now it expects directly the add function.

Another change is also introduced: the DateTimePicker hook and the
datetimepicker service now give an easy access to the `createPopover`
function (which is essentially the `makePopover` utility function).

These changes will allow the v3 gantt view (task 3601456) to place its
date pickers in dialogs when the display is small.
This commit force the datetime_picker's cells to have the
same aspect ratio without any specific width or height on
small screen.
So the datetime_picker can take the all width space available
and be always responsive as each cells share the same width
and the same height to respect the aspect ratio.
This commit adds a custom class for stacking two elements
as in some case the `fa-stack` class doesn't work correctly.
This new class align the inner item on the base line instead
of being centered.

e.g. of usage:
```html
<span class="o_fa_stack">
    <i class="fa fa-calendar-o" role="img" aria-label="Today" title="Today"/>
    <span>26</span>
</span>
```
By construction, delta is less than threshold in all calls to diffToScroll,
so we can simplify a bit the code and remove the call to clamp.
Click on the zoom out button in the datepicker provokes a rendering of the
datepicker. So we make the helper zoomOut wait for an animation frame to
make it more useful.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
RD research & development, internal work
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants