diff --git a/designer-realize/src/main/java/com/fr/start/MainDesigner.java b/designer-realize/src/main/java/com/fr/start/MainDesigner.java index 2fcad2c03c..4cad30ad77 100644 --- a/designer-realize/src/main/java/com/fr/start/MainDesigner.java +++ b/designer-realize/src/main/java/com/fr/start/MainDesigner.java @@ -2,6 +2,7 @@ package com.fr.start; import com.fr.base.function.UITerminator; +import com.fr.base.i18n.BidiUtils; import com.fr.base.vcs.DesignerMode; import com.fr.design.DesignerEnvManager; import com.fr.design.actions.file.WebPreviewUtils; @@ -103,6 +104,7 @@ public class MainDesigner extends BaseDesigner { private static final int TOOLBARPANEVGAP = -4; private static final int PREVIEW_DOWN_X_GAP = 92; + private static final int RTL_PREVIEW_DOWN_X_GAP = 50; private static final int GAP = 7; private static final String OLD_ENV_FOLDER_71 = ".FineReport71"; private static final String OLD_ENV_FOLDER_70 = ".FineReport70"; @@ -405,7 +407,7 @@ public class MainDesigner extends BaseDesigner { for (int i = 0; i < items.length; i++) { menu.add(items[i]); } - GUICoreUtils.showPopupMenu(menu, MultiTemplateTabPane.getInstance(), MultiTemplateTabPane.getInstance().getX() - PREVIEW_DOWN_X_GAP, MultiTemplateTabPane.getInstance().getY() - 1 + MultiTemplateTabPane.getInstance().getHeight()); + GUICoreUtils.showPopupMenu(menu, MultiTemplateTabPane.getInstance(), BidiUtils.rtl() ? MultiTemplateTabPane.getInstance().getWidth() - RTL_PREVIEW_DOWN_X_GAP : MultiTemplateTabPane.getInstance().getX() - PREVIEW_DOWN_X_GAP, MultiTemplateTabPane.getInstance().getY() - 1 + MultiTemplateTabPane.getInstance().getHeight()); } @Override