summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2021-03-16 11:57:25 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2021-03-16 12:10:12 +0900
commit221d437a4bb3edd596df61eeb23fce3a63331091 (patch)
treec84fe88547f40bbdb9c8dea8bcd7255ad793a0a0
parent1585c4cc1813e12f60085c29dd9d8a3c98c8fe98 (diff)
downloadkvkbd-221d437a4bb3edd596df61eeb23fce3a63331091.tar.gz
kvkbd-221d437a4bb3edd596df61eeb23fce3a63331091.zip
Fixed visualization of key text the first time modifier keys are
pressed. Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> This commit also include a small part of Ray's patch to fix visualization of & if it is on a lower character position. Signed-off-by: Ray-V <ray-v@inbox.lv> Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit af106fa553fb2f706910686a0e30f909582bca7d)
-rw-r--r--src/MainWidget.cpp15
-rw-r--r--src/VButton.cpp2
-rw-r--r--src/main.cpp1
3 files changed, 14 insertions, 4 deletions
diff --git a/src/MainWidget.cpp b/src/MainWidget.cpp
index ff10c27..ea6fc9b 100644
--- a/src/MainWidget.cpp
+++ b/src/MainWidget.cpp
@@ -953,12 +953,19 @@ void MainWidget::setupText(VButton& v)
// lowercase text
KeySym keysym_l = XkbKeycodeToKeysym(display, keycode, 0, 0);
- TQString btn_text(TQChar((uint)keysym2ucs(keysym_l)));
- v.setText(btn_text);
+ TQChar c((uint)keysym2ucs(keysym_l));
+ if (c == '&')
+ {
+ v.setText("&&");
+ }
+ else
+ {
+ v.setText(c);
+ }
// uppercase text
KeySym keysym_u = XkbKeycodeToKeysym(display, keycode, 0, 1);
- TQChar c((uint)keysym2ucs(keysym_u));
+ c = (uint)keysym2ucs(keysym_u);
if (c == '&')
{
v.setShiftText("&&");
@@ -976,6 +983,8 @@ void MainWidget::mappingNotify(XMappingEvent *)
VButton *v = btns[a];
setupText(*v);
}
+ updateNumlock();
+ updateShiftCaps();
}
KbdDock::KbdDock ( MainWidget *m )
diff --git a/src/VButton.cpp b/src/VButton.cpp
index c949612..e44feba 100644
--- a/src/VButton.cpp
+++ b/src/VButton.cpp
@@ -51,6 +51,8 @@ void VButton::shiftCapsPressed(bool shift, bool caps)
void VButton::setText(const TQString& text)
{
+ // Need to set the pushbutton text to correctly handle those buttons which usually
+ // don't change (tab, shift, caps, Fn, ...)
TQPushButton::setText(text);
lowerText = text;
isAlpha = text.length() == 1 && (text.upper() != text);
diff --git a/src/main.cpp b/src/main.cpp
index d080452..b818489 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -212,7 +212,6 @@ int main(int argc, char **argv)
}
else
{
-
TDECmdLineArgs::init(argc, argv, &about);
TDECmdLineArgs::addCmdLineOptions( options );
Kvkbd::addCmdLineOptions();