SANKORE-896

Impossible to write an ê and an ë using the keyboard
preferencesAboutTextFull
Anatoly Mihalchenko 12 years ago
parent 42d1fcb6ec
commit 1d130b3e60
  1. 6
      src/domain/UBGraphicsItemDelegate.cpp
  2. 2
      src/gui/UBKeyboardPalette.cpp
  3. 10
      src/gui/UBKeyboardPalette.h
  4. 3
      src/gui/UBKeyboardPalette_linux.cpp
  5. 51
      src/gui/UBKeyboardPalette_mac.cpp
  6. 7
      src/gui/UBKeyboardPalette_win.cpp

@ -107,12 +107,12 @@ UBGraphicsItemDelegate::UBGraphicsItemDelegate(QGraphicsItem* pDelegated, QObjec
, mFrame(0)
, mFrameWidth(UBSettings::settings()->objectFrameWidth)
, mAntiScaleRatio(1.0)
, mToolBarItem(NULL)
, mCanRotate(canRotate)
, mCanDuplicate(true)
, mRespectRatio(respectRatio)
, mMimeData(NULL)
, mFlippable(false)
, mToolBarItem(NULL)
, mToolBarUsed(useToolBar)
{
// NOOP
@ -1075,11 +1075,11 @@ void MediaTimer::display(const QString &s)
void MediaTimer::setNumDigits(int numDigits)
{
if (numDigits > 99) {
qWarning("QLCDNumber::setNumDigits: (%s) Max 99 digits allowed");
qWarning("QLCDNumber::setNumDigits: Max 99 digits allowed");
numDigits = 99;
}
if (numDigits < 0) {
qWarning("QLCDNumber::setNumDigits: (%s) Min 0 digits allowed");
qWarning("QLCDNumber::setNumDigits: Min 0 digits allowed");
numDigits = 0;
}
if (digitStr.isNull()) { // from constructor

@ -243,6 +243,8 @@ void UBKeyboardPalette::adjustSizeAndPosition(bool pUp)
void UBKeyboardPalette::paintEvent( QPaintEvent* event)
{
checkLayout();
UBActionPalette::paintEvent(event);
QRect r = this->geometry();

@ -127,6 +127,7 @@ protected:
void init();
private:
QRect originalRect;
@ -134,6 +135,11 @@ private:
UBKeyButton** buttons;
UBKeyboardButton** ctrlButtons;
/*
For MacOS: synchronization with system locale.
*/
void checkLayout();
void createCtrlButtons();
void setInput(const UBKeyboardLocale* locale);
@ -145,10 +151,6 @@ private:
void* storage;
// Linux-related parameters
int min_keycodes, max_keycodes, byte_per_code;
// Save locale before activation to restore it after (MAC)
QString activeLocale;
};
class UBKeyboardButton : public QWidget

@ -164,6 +164,9 @@ void UBKeyboardPalette::createCtrlButtons()
}
void UBKeyboardPalette::checkLayout()
{}
void UBKeyboardPalette::onActivated(bool activated)
{
if (activated)

@ -74,32 +74,35 @@ void SetMacLocaleByIdentifier(const QString& id)
}
}
void UBKeyboardPalette::onActivated(bool activated)
void UBKeyboardPalette::checkLayout()
{
if (activated)
{
TISInputSourceRef selectedLocale = TISCopyCurrentKeyboardInputSource();
CFStringRef sr = (CFStringRef) TISGetInputSourceProperty(selectedLocale,
kTISPropertyInputSourceID);
if (sr!=NULL)
{
char tmp[1024];
CFStringGetCString(sr, tmp, 1024, 0);
activeLocale = tmp;
}
else
activeLocale = "";
TISInputSourceRef selectedLocale = TISCopyCurrentKeyboardInputSource();
onLocaleChanged(locales[nCurrentLocale]);
}
else
{
if (activeLocale != "")
SetMacLocaleByIdentifier(activeLocale);
}
CFStringRef sr = (CFStringRef) TISGetInputSourceProperty(selectedLocale,
kTISPropertyInputSourceID);
if (sr!=NULL)
{
char clId[1024];
CFStringGetCString(sr, clId, 1024, 0);
for(int i=0; i<nLocalesCount;i++)
{
if (locales[i]->id == clId)
{
if (nCurrentLocale!=i)
{
setLocale(i);
}
break;
}
}
}
}
void UBKeyboardPalette::onActivated(bool)
{
}
void UBKeyboardPalette::onLocaleChanged(UBKeyboardLocale* locale)

@ -64,9 +64,12 @@ void UBKeyboardPalette::createCtrlButtons()
ctrlButtons[ctrlID++] = new UBLocaleButton(this); // Language Switch
}
void UBKeyboardPalette::checkLayout()
{}
void UBKeyboardPalette::onActivated(bool)
{
}
{}
void UBKeyboardPalette::onLocaleChanged(UBKeyboardLocale* )
{}

Loading…
Cancel
Save