@@ -52,6 +52,7 @@ class _RenderPositionDelegate extends RenderBox
52
52
required this .screenEdgePadding,
53
53
required this .targetPadding,
54
54
required this .showcaseOffset,
55
+ required this .targetTooltipGap,
55
56
});
56
57
57
58
// Core positioning parameters
@@ -65,6 +66,7 @@ class _RenderPositionDelegate extends RenderBox
65
66
double gapBetweenContentAndAction;
66
67
double screenEdgePadding;
67
68
EdgeInsets targetPadding;
69
+ double targetTooltipGap;
68
70
69
71
/// This is used when there is some space around showcaseview as this widget
70
72
/// implementation works in global coordinate system so because of that we
@@ -325,7 +327,7 @@ class _RenderPositionDelegate extends RenderBox
325
327
? targetPosition.dx -
326
328
showcaseOffset.dx -
327
329
screenEdgePadding -
328
- Constants .tooltipOffset -
330
+ targetTooltipGap -
329
331
targetPadding.left -
330
332
_getArrowPadding
331
333
: screenSize.width - screenEdgePadding - _xOffset - targetPadding.right;
@@ -489,9 +491,7 @@ class _RenderPositionDelegate extends RenderBox
489
491
490
492
/// Calculate extra vertical component height for arrow and padding
491
493
double _calculateExtraVerticalHeight () {
492
- return tooltipPosition.isVertical
493
- ? Constants .tooltipOffset + _getArrowPadding
494
- : 0 ;
494
+ return tooltipPosition.isVertical ? targetTooltipGap + _getArrowPadding : 0 ;
495
495
}
496
496
497
497
/// Handle tooltip exceeding top or bottom screen edge
@@ -639,7 +639,7 @@ class _RenderPositionDelegate extends RenderBox
639
639
tooltipPosition = TooltipPosition .top;
640
640
_yOffset = targetPosition.dy -
641
641
_toolTipBoxSize.height -
642
- Constants .tooltipOffset -
642
+ targetTooltipGap -
643
643
_getArrowPadding;
644
644
break ;
645
645
@@ -648,7 +648,7 @@ class _RenderPositionDelegate extends RenderBox
648
648
tooltipPosition = TooltipPosition .bottom;
649
649
_yOffset = targetPosition.dy +
650
650
targetSize.height +
651
- Constants .tooltipOffset +
651
+ targetTooltipGap +
652
652
_getArrowPadding;
653
653
break ;
654
654
@@ -657,7 +657,7 @@ class _RenderPositionDelegate extends RenderBox
657
657
tooltipPosition = TooltipPosition .right;
658
658
_xOffset = targetPosition.dx +
659
659
targetSize.width +
660
- Constants .tooltipOffset +
660
+ targetTooltipGap +
661
661
_getArrowPadding;
662
662
break ;
663
663
@@ -666,7 +666,7 @@ class _RenderPositionDelegate extends RenderBox
666
666
tooltipPosition = TooltipPosition .left;
667
667
_xOffset = targetPosition.dx -
668
668
_toolTipBoxSize.width -
669
- Constants .tooltipOffset -
669
+ targetTooltipGap -
670
670
_getArrowPadding;
671
671
break ;
672
672
}
@@ -856,8 +856,7 @@ class _RenderPositionDelegate extends RenderBox
856
856
// Center horizontally below target
857
857
xOffset = targetPosition.dx + centerDxForTooltip;
858
858
// Position below target with appropriate offset
859
- yOffset =
860
- targetPosition.dy + targetSize.height + Constants .tooltipOffset;
859
+ yOffset = targetPosition.dy + targetSize.height + targetTooltipGap;
861
860
// Add additional padding if arrow is shown
862
861
863
862
yOffset += _getArrowPadding;
@@ -870,15 +869,15 @@ class _RenderPositionDelegate extends RenderBox
870
869
// Position above target with appropriate offset
871
870
yOffset = targetPosition.dy -
872
871
toolTipBoxSize.height -
873
- Constants .tooltipOffset -
872
+ targetTooltipGap -
874
873
_getArrowPadding;
875
874
break ;
876
875
877
876
case TooltipPosition .left:
878
877
// Position to the left of target with appropriate offset
879
878
xOffset = targetPosition.dx -
880
879
toolTipBoxSize.width -
881
- Constants .tooltipOffset -
880
+ targetTooltipGap -
882
881
_getArrowPadding;
883
882
884
883
// Center vertically beside target
@@ -889,7 +888,7 @@ class _RenderPositionDelegate extends RenderBox
889
888
// Position to the right of target with appropriate offset
890
889
xOffset = targetPosition.dx +
891
890
targetSize.width +
892
- Constants .tooltipOffset +
891
+ targetTooltipGap +
893
892
_getArrowPadding;
894
893
895
894
// Center vertically beside target
@@ -920,29 +919,29 @@ class _RenderPositionDelegate extends RenderBox
920
919
final isBottom = targetPosition.dy +
921
920
targetSize.height +
922
921
totalHeight +
923
- Constants .tooltipOffset +
922
+ targetTooltipGap +
924
923
arrowPadding -
925
924
showcaseOffset.dy <=
926
925
screenSize.height - screenEdgePadding;
927
926
928
927
final isTop = targetPosition.dy -
929
928
totalHeight -
930
- Constants .tooltipOffset -
929
+ targetTooltipGap -
931
930
arrowPadding -
932
931
showcaseOffset.dy >=
933
932
screenEdgePadding;
934
933
935
934
final isLeft = targetPosition.dx -
936
935
tooltipSize.width -
937
- Constants .tooltipOffset -
936
+ targetTooltipGap -
938
937
arrowPadding -
939
938
showcaseOffset.dx >=
940
939
screenEdgePadding;
941
940
942
941
final isRight = targetPosition.dx +
943
942
targetSize.width +
944
943
tooltipSize.width +
945
- Constants .tooltipOffset +
944
+ targetTooltipGap +
946
945
arrowPadding -
947
946
showcaseOffset.dx <=
948
947
screenSize.width - screenEdgePadding;
0 commit comments