Skip to content

Commit 8897306

Browse files
Combobox popup bug on RTL is fixed
1 parent 30036f2 commit 8897306

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

MaterialDesignThemes.Wpf/ComboBoxPopup.cs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,16 @@ private CustomPopupPlacement[] ComboBoxCustomPopupPlacementCallback(Size popupSi
116116
var locationY = (int)locationFromScreen.Y % screenHeight;
117117

118118
var realOffsetX = (popupSize.Width - targetSize.Width) / 2.0;
119-
var offsetX = DpiHelper.TransformToDeviceX(mainVisual, offset.X);
119+
120+
double offsetX;
121+
const int rtlHorizontalOffset = 20;
122+
123+
if (FlowDirection == FlowDirection.LeftToRight)
124+
offsetX = DpiHelper.TransformToDeviceX(mainVisual, offset.X);
125+
else
126+
offsetX = DpiHelper.TransformToDeviceX(mainVisual,
127+
offset.X - targetSize.Width - rtlHorizontalOffset);
128+
120129
var defaultVerticalOffsetIndepent = DpiHelper.TransformToDeviceY(mainVisual, DefaultVerticalOffset);
121130
var upVerticalOffsetIndepent = DpiHelper.TransformToDeviceY(mainVisual, UpVerticalOffset);
122131
var downVerticalOffsetIndepent = DpiHelper.TransformToDeviceY(mainVisual, DownVerticalOffset);

0 commit comments

Comments
 (0)