Index: base/applications/mstsc/connectdialog.c =================================================================== --- base/applications/mstsc/connectdialog.c (revision 59434) +++ base/applications/mstsc/connectdialog.c (working copy) @@ -1147,7 +1147,24 @@ pInfo); } } +static void FixHeaderText(RECT *txtRc) +{ + switch (GetUserDefaultUILanguage()) + { + case MAKELANGID(LANG_HEBREW, SUBLANG_DEFAULT): + { + long temp1 = txtRc->left; + long temp2 = txtRc->right; + txtRc->right = temp1; + txtRc->left = temp2; + } + break; + default: + break; + } +} + static INT_PTR CALLBACK DlgProc(HWND hDlg, UINT Message, @@ -1232,7 +1249,7 @@ 0, pInfo->headerbitmap.bmWidth, pInfo->headerbitmap.bmHeight, - SRCCOPY); + SRCCOPY | NOMIRRORBITMAP); SelectObject(hdcMem, hBmpOld); txtRc.left = bmpRc.right / 4; @@ -1239,7 +1256,9 @@ txtRc.top = 10; txtRc.right = bmpRc.right * 3 / 4; txtRc.bottom = pInfo->headerbitmap.bmHeight / 2; - + + FixHeaderText(&txtRc); + ZeroMemory(&lf, sizeof(LOGFONTW)); if (LoadStringW(hInst, @@ -1276,6 +1295,8 @@ txtRc.right = bmpRc.right * 3 / 4; txtRc.bottom = pInfo->headerbitmap.bmHeight * 9 / 10; + FixHeaderText(&txtRc); + if (LoadStringW(hInst, IDS_HEADERTEXT2, szBuffer, Index: base/applications/mstsc/lang/he-IL.rc =================================================================== --- base/applications/mstsc/lang/he-IL.rc (revision 59434) +++ base/applications/mstsc/lang/he-IL.rc (working copy) @@ -2,6 +2,7 @@ IDD_GENERAL DIALOGEX 0, 0, 242, 175 STYLE DS_SHELLFONT | WS_CHILD +EXSTYLE WS_EX_LAYOUTRTL FONT 8, "MS Shell Dlg", 0, 0, 0x0 BEGIN GROUPBOX "הגדרות כניסה",IDC_STATIC,7,7,228,89 @@ -21,6 +22,7 @@ IDD_DISPLAY DIALOGEX 0, 0, 242, 175 STYLE DS_SHELLFONT | WS_CHILD +EXSTYLE WS_EX_LAYOUTRTL FONT 8, "MS Shell Dlg", 0, 0, 0x0 BEGIN GROUPBOX "תצורת תצוגה",IDC_STATIC,7,7,228,68 @@ -39,6 +41,7 @@ IDD_CONNECTDIALOG DIALOGEX 0, 0, 260, 262 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +EXSTYLE WS_EX_LAYOUTRTL CAPTION "חיבור לשולחן עבודה מרוחק" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN @@ -60,5 +63,5 @@ IDS_FULLSCREEN "מסך מלא" IDS_BROWSESERVER "" IDS_HEADERTEXT1 "שולחן עבודה מרוחק" - IDS_HEADERTEXT2 "חיבור" + IDS_HEADERTEXT2 "חיבור" // why it's displays backwards?... END Index: base/applications/mstsc/precomp.h =================================================================== --- base/applications/mstsc/precomp.h (revision 59434) +++ base/applications/mstsc/precomp.h (working copy) @@ -11,6 +11,7 @@ #include #include #include +#include #include "uimain.h" #include "rdesktop.h"