diff --git a/src/lib/gui/config/Screen.h b/src/lib/gui/config/Screen.h index 154506133..c280e1dfa 100644 --- a/src/lib/gui/config/Screen.h +++ b/src/lib/gui/config/Screen.h @@ -160,7 +160,7 @@ private: QPixmap m_Pixmap = QIcon::fromTheme("video-display").pixmap(QSize(96, 96)); QString m_Name = {}; QStringList m_Aliases = {}; - QList m_Modifiers = {0, 1, 2, 3, 4, 5}; + QList m_Modifiers = {0, 1, 2, 3, 4, 5, 6}; QList m_SwitchCorners = {false, false, false, false}; int m_SwitchCornerSize = 0; QList m_Fixes{false, false, false, false}; diff --git a/src/lib/gui/config/ScreenConfig.cpp b/src/lib/gui/config/ScreenConfig.cpp index b89d48c82..e692825f7 100644 --- a/src/lib/gui/config/ScreenConfig.cpp +++ b/src/lib/gui/config/ScreenConfig.cpp @@ -7,7 +7,7 @@ #include "ScreenConfig.h" -const char *ScreenConfig::m_ModifierNames[] = {"shift", "ctrl", "alt", "meta", "super", "none"}; +const char *ScreenConfig::m_ModifierNames[] = {"shift", "ctrl", "alt", "meta", "super", "altgr", "none"}; const char *ScreenConfig::m_FixNames[] = { "halfDuplexCapsLock", "halfDuplexNumLock", "halfDuplexScrollLock", "xtestIsXineramaUnaware" diff --git a/src/lib/gui/config/ScreenConfig.h b/src/lib/gui/config/ScreenConfig.h index 2fee4f0e2..ab5eaf17f 100644 --- a/src/lib/gui/config/ScreenConfig.h +++ b/src/lib/gui/config/ScreenConfig.h @@ -25,6 +25,7 @@ public: Alt, Meta, Super, + AltGr, None, NumModifiers }; diff --git a/src/lib/gui/dialogs/ScreenSettingsDialog.cpp b/src/lib/gui/dialogs/ScreenSettingsDialog.cpp index 2681bc1ef..76ed7abac 100644 --- a/src/lib/gui/dialogs/ScreenSettingsDialog.cpp +++ b/src/lib/gui/dialogs/ScreenSettingsDialog.cpp @@ -48,6 +48,7 @@ ScreenSettingsDialog::ScreenSettingsDialog(QWidget *parent, Screen *screen, cons ui->comboAlt->setCurrentIndex(m_screen->modifier(static_cast(Alt))); ui->comboMeta->setCurrentIndex(m_screen->modifier(static_cast(Meta))); ui->comboSuper->setCurrentIndex(m_screen->modifier(static_cast(Super))); + ui->comboAltGr->setCurrentIndex(m_screen->modifier(static_cast(AltGr))); ui->chkDeadTopLeft->setChecked(m_screen->switchCorner(static_cast(TopLeft))); ui->chkDeadTopRight->setChecked(m_screen->switchCorner(static_cast(TopRight))); @@ -102,6 +103,7 @@ void ScreenSettingsDialog::accept() m_screen->setModifier(Alt, ui->comboAlt->currentIndex()); m_screen->setModifier(Meta, ui->comboMeta->currentIndex()); m_screen->setModifier(Super, ui->comboSuper->currentIndex()); + m_screen->setModifier(AltGr, ui->comboAltGr->currentIndex()); m_screen->setSwitchCorner(TopLeft, ui->chkDeadTopLeft->isChecked()); m_screen->setSwitchCorner(TopRight, ui->chkDeadTopRight->isChecked()); diff --git a/src/lib/gui/dialogs/ScreenSettingsDialog.ui b/src/lib/gui/dialogs/ScreenSettingsDialog.ui index 97e379e1c..be739ca09 100644 --- a/src/lib/gui/dialogs/ScreenSettingsDialog.ui +++ b/src/lib/gui/dialogs/ScreenSettingsDialog.ui @@ -170,6 +170,11 @@ Super + + + Alt Gr + + None @@ -204,6 +209,11 @@ Super + + + Alt Gr + + None @@ -257,6 +267,11 @@ Super + + + Alt Gr + + None @@ -294,6 +309,11 @@ Super + + + Alt Gr + + None @@ -331,6 +351,63 @@ Super + + + Alt Gr + + + + + None + + + + + + + + Alt &Gr + + + comboAltGr + + + + + + + 5 + + + + Shift + + + + + Ctrl + + + + + Alt + + + + + Meta + + + + + Super + + + + + Alt Gr + + None @@ -668,6 +745,7 @@ comboShift comboCtrl comboSuper + comboAltGr comboAlt chkDeadTopLeft chkDeadTopRight diff --git a/translations/deskflow_es.ts b/translations/deskflow_es.ts index 7499eaa6e..d29fe9e3f 100644 --- a/translations/deskflow_es.ts +++ b/translations/deskflow_es.ts @@ -895,6 +895,14 @@ Además, verifique que puede %1 el archivo de configuración del servidor: %2The screen name cannot be the same as an alias. Please either remove the alias or change the screen name. El nombre de usuario no puede ser el mismo que un alias. Elimine el alias o cambie el nombre de usuario. + + Alt Gr + + + + Alt &Gr + + ScreenSetupModel diff --git a/translations/deskflow_it.ts b/translations/deskflow_it.ts index 2590bf2ec..733484120 100644 --- a/translations/deskflow_it.ts +++ b/translations/deskflow_it.ts @@ -895,6 +895,14 @@ Inoltre, verifica di poter %1 il file di configurazione del server: %2The screen name cannot be the same as an alias. Please either remove the alias or change the screen name. Il nome dello schermo non può essere uguale a un alias. Rimuovi l'alias o modifica il nome dello schermo. + + Alt Gr + + + + Alt &Gr + + ScreenSetupModel diff --git a/translations/deskflow_ja.ts b/translations/deskflow_ja.ts index e5d5ead80..e93b0d591 100644 --- a/translations/deskflow_ja.ts +++ b/translations/deskflow_ja.ts @@ -897,6 +897,14 @@ Additionally, check you are able to %1 the server config file: %2 The screen name cannot be the same as an alias. Please either remove the alias or change the screen name. コンピューター名は別名と同じにできません。別名を削除するか、コンピューター名を変更してください。 + + Alt Gr + + + + Alt &Gr + + ScreenSetupModel diff --git a/translations/deskflow_ko.ts b/translations/deskflow_ko.ts index b4b4e31de..4df41ed3c 100644 --- a/translations/deskflow_ko.ts +++ b/translations/deskflow_ko.ts @@ -895,6 +895,14 @@ Additionally, check you are able to %1 the server config file: %2 The screen name cannot be the same as an alias. Please either remove the alias or change the screen name. 컴퓨터 이름은 별칭과 같을 수 없습니다. 별칭을 삭제하거나 컴퓨터 이름을 변경하세요. + + Alt Gr + + + + Alt &Gr + + ScreenSetupModel diff --git a/translations/deskflow_ru.ts b/translations/deskflow_ru.ts index 1259b71e6..fc5d6ab22 100644 --- a/translations/deskflow_ru.ts +++ b/translations/deskflow_ru.ts @@ -895,6 +895,14 @@ Additionally, check you are able to %1 the server config file: %2 The screen name cannot be the same as an alias. Please either remove the alias or change the screen name. Имя экрана не может совпадать с псевдонимом. Удалите псевдоним или измените имя экрана. + + Alt Gr + + + + Alt &Gr + + ScreenSetupModel diff --git a/translations/deskflow_zh_CN.ts b/translations/deskflow_zh_CN.ts index 67cdd78ae..667bd7c00 100644 --- a/translations/deskflow_zh_CN.ts +++ b/translations/deskflow_zh_CN.ts @@ -897,6 +897,14 @@ Additionally, check you are able to %1 the server config file: %2 The screen name cannot be the same as an alias. Please either remove the alias or change the screen name. 屏幕名称不能与别名相同。请移除别名或更改屏幕名称。 + + Alt Gr + + + + Alt &Gr + + ScreenSetupModel