40 lines
1.2 KiB
Diff
40 lines
1.2 KiB
Diff
diff --git a/src/bidiextender.cpp b/src/bidiextender.cpp
|
|
index 0e3794e5f..583cb805f 100644
|
|
--- a/src/bidiextender.cpp
|
|
+++ b/src/bidiextender.cpp
|
|
@@ -16,6 +16,7 @@
|
|
|
|
#if defined( Q_OS_WIN )
|
|
#include "windows.h"
|
|
+#include <cstdint>
|
|
#else
|
|
typedef int HKL;
|
|
#endif
|
|
@@ -43,7 +44,7 @@ HKL getCurrentLanguage()
|
|
}
|
|
|
|
#if defined( Q_OS_WIN )
|
|
-bool isProbablyLTRLanguageRaw(int id)
|
|
+bool isProbablyLTRLanguageRaw(uintptr_t id)
|
|
{
|
|
//checks primary language symbol, e.g. LANG_ENGLISH would be ltr
|
|
return id != LANG_PERSIAN && id != LANG_ARABIC && id != LANG_HEBREW && id != LANG_URDU;
|
|
@@ -59,7 +60,7 @@ bool isProbablyLTRLanguageRaw(const std::string &symb)
|
|
bool isProbablyLTRLanguageCode(HKL id)
|
|
{
|
|
#if defined( Q_OS_WIN )
|
|
- return isProbablyLTRLanguageRaw(((int) id) & 0x000000FF);
|
|
+ return isProbablyLTRLanguageRaw(((uintptr_t) id) & 0x000000FF);
|
|
#elif defined( WS_X11 )
|
|
try {
|
|
kb::XKeyboard xkb;
|
|
@@ -98,7 +99,7 @@ void initializeLanguages()
|
|
|
|
HKL bestLTR = 0;
|
|
for (int i = 0; i < count; ++i) {
|
|
- int id = (int)langs[i] & 0x000000FF;
|
|
+ uintptr_t id = (uintptr_t)langs[i] & 0x000000FF;
|
|
if (id == LANG_ENGLISH) bestLTR = langs[i];
|
|
if (isProbablyLTRLanguageRaw(id)) {
|
|
if (!bestLTR) bestLTR = langs[i];
|