abouttreesummaryrefslogcommitdiff
path: root/srcs/juloo.keyboard2/KeyValue.java
diff options
context:
space:
mode:
Diffstat (limited to 'srcs/juloo.keyboard2/KeyValue.java')
-rw-r--r--srcs/juloo.keyboard2/KeyValue.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/srcs/juloo.keyboard2/KeyValue.java b/srcs/juloo.keyboard2/KeyValue.java
index ecda632..22ac90e 100644
--- a/srcs/juloo.keyboard2/KeyValue.java
+++ b/srcs/juloo.keyboard2/KeyValue.java
@@ -31,6 +31,9 @@ class KeyValue
private int _eventCode;
private int _flags;
+ private int _cacheFlags;
+ private String _cacheSymbol;
+
public String getName()
{
return (_name);
@@ -39,7 +42,14 @@ class KeyValue
public String getSymbol(int flags)
{
if (_symbol == null)
- return (String.valueOf(getChar(flags)));
+ {
+ if (flags != _cacheFlags)
+ {
+ _cacheSymbol = String.valueOf(getChar(flags));
+ _cacheFlags = flags;
+ }
+ return (_cacheSymbol);
+ }
return (_symbol);
}
@@ -87,6 +97,7 @@ class KeyValue
_char = c;
_eventCode = eventCode;
_flags = flags;
+ _cacheFlags = -1;
KeyValue.keys.put(name, this);
}