[
https://issues.apache.org/jira/browse/TOMAHAWK-205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12566542#action_12566542
]
Werner Punz commented on TOMAHAWK-205:
--------------------------------------
Ok I am working on it again, I finally seem to have fixed this.
Once I am fully sure I will do the commit in the trunk!
The issue was a bigger one.
First of all the componet at the current Tomahawk 1.1.7 codebase
simply correctly was doing some offset calculation
and then stopped at the first position absolute or relative.
It then tried two different calculation methods to determine how to show the
popup which is in a relative position to the control.
This is not the correct way to do it, you run into boxing issues in no time
like that.
The best bet for floating div positioning always is, to use a floating div as
child to the body and then do a full calculation of the offsets against all
parents and then move the div to exactly that position, also you have to
calculate all scroller positions and then subtract it from the offsets to get
the actual position.
The positioning then can be done relatively save because we are relativ to the
body not to any other element and no boxing bugs can change our calculated
position!
> inputCalendar Popup positioned incorrectly in scrollable div
> ------------------------------------------------------------
>
> Key: TOMAHAWK-205
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-205
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Calendar
> Affects Versions: 1.1.2-SNAPSHOT
> Reporter: Geoffrey Longo
> Assignee: Werner Punz
>
> The popup for the inputCalendar is positioned relative to the body of the
> page, not the containing div. Therefore, a calendar that is inside a
> scrollable div (overflow: auto) may not be positioned correctly if the
> containing div's left and top positons are not the same as the body.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.