diff --git a/common.gradle b/common.gradle
index d332cba6d..40098b7a6 100644
--- a/common.gradle
+++ b/common.gradle
@@ -206,7 +206,7 @@ tasks.withType(Sign) {
}
checkstyle {
- toolVersion '9.3'
+ toolVersion '10.20.1'
configFile file("${gradle.rootProject.rootDir}/config/checkstyle/checkstyle.xml")
}
diff --git a/jme3-android-examples/src/main/AndroidManifest.xml b/jme3-android-examples/src/main/AndroidManifest.xml
index cf9cc7c2d..9ad8d1f7c 100644
--- a/jme3-android-examples/src/main/AndroidManifest.xml
+++ b/jme3-android-examples/src/main/AndroidManifest.xml
@@ -42,7 +42,7 @@
android:normalScreens="true"
android:smallScreens="true"/>
-
+
diff --git a/jme3-android/src/main/java/com/jme3/asset/plugins/AndroidLocator.java b/jme3-android/src/main/java/com/jme3/asset/plugins/AndroidLocator.java
index c0e6815eb..a6a2d87e5 100644
--- a/jme3-android/src/main/java/com/jme3/asset/plugins/AndroidLocator.java
+++ b/jme3-android/src/main/java/com/jme3/asset/plugins/AndroidLocator.java
@@ -99,46 +99,44 @@ public class AndroidAssetInfo extends AssetInfo {
this.resourceId = resourceId;
}
+ private android.content.res.Resources getAndroidResources() {
+ return JmeAndroidSystem.getView().getContext().getResources();
+ }
+
+ private InputStream getResourceAsStream(String assetPath, int resourceId) throws AssetLoadException {
+ android.content.res.Resources androidResources = getAndroidResources();
+ try {
+ if (resourceId == 0) {
+ return androidResources.getAssets().open(assetPath);
+ } else {
+ return androidResources.openRawResource(resourceId);
+ }
+ } catch (IOException | Resources.NotFoundException ex) {
+ throw new AssetLoadException("Failed to open asset " + assetPath, ex);
+ }
+ }
+
@Override
public InputStream openStream() {
- if (in != null){
- // Reuse the already existing stream (only once)
+ if (in != null) {
InputStream in2 = in;
in = null;
return in2;
- }else{
- // Create a new stream for subsequent invocations.
- android.content.res.Resources androidResources = JmeAndroidSystem.getView().getContext().getResources();
- if (resourceId == 0) {
- try {
- return androidResources.getAssets().open(assetPath);
- } catch (IOException ex) {
- throw new AssetLoadException(AssetOpenError + assetPath, ex);
- }
- } else {
- try {
- return androidResources.openRawResource(resourceId);
- } catch (Resources.NotFoundException ex) {
- throw new AssetLoadException(AssetOpenError + assetPath, ex);
- }
- }
+ } else {
+ return getResourceAsStream(assetPath, resourceId);
}
}
public AssetFileDescriptor openFileDescriptor() {
- android.content.res.Resources androidResources = JmeAndroidSystem.getView().getContext().getResources();
- if (resourceId == 0) {
- try {
+ android.content.res.Resources androidResources = getAndroidResources();
+ try {
+ if (resourceId == 0) {
return androidResources.getAssets().openFd(assetPath);
- } catch (IOException ex) {
- throw new AssetLoadException(AssetOpenError + assetPath, ex);
- }
- } else {
- try {
+ } else {
return androidResources.openRawResourceFd(resourceId);
- } catch (Resources.NotFoundException ex) {
- throw new AssetLoadException(AssetOpenError + assetPath, ex);
}
+ } catch (IOException | Resources.NotFoundException ex) {
+ throw new AssetLoadException("Failed to open asset " + assetPath, ex);
}
}
}
diff --git a/jme3-android/src/main/java/com/jme3/input/android/AndroidGestureProcessor.java b/jme3-android/src/main/java/com/jme3/input/android/AndroidGestureProcessor.java
index c680302fb..280087148 100644
--- a/jme3-android/src/main/java/com/jme3/input/android/AndroidGestureProcessor.java
+++ b/jme3-android/src/main/java/com/jme3/input/android/AndroidGestureProcessor.java
@@ -84,13 +84,15 @@ public boolean onSingleTapUp(MotionEvent event) {
@Override
public void onShowPress(MotionEvent event) {
- float jmeX = touchInput.getJmeX(event.getX());
- float jmeY = touchInput.invertY(touchInput.getJmeY(event.getY()));
- prepareTouchEvent(TouchEvent.Type.SHOWPRESS, event, jmeX, jmeY);
+ pressEventHandler(event, TouchEvent.Type.SHOWPRESS);
}
@Override
public void onLongPress(MotionEvent event) {
+ pressEventHandler(event, TouchEvent.Type.LONGPRESSED);
+ }
+
+ private void pressEventHandler(MotionEvent event, TouchEvent.Type eventType) {
float jmeX = touchInput.getJmeX(event.getX());
float jmeY = touchInput.invertY(touchInput.getJmeY(event.getY()));
prepareTouchEvent(TouchEvent.Type.LONGPRESSED, event, jmeX, jmeY);
diff --git a/jme3-android/src/main/java/com/jme3/input/android/AndroidJoystickJoyInput14.java b/jme3-android/src/main/java/com/jme3/input/android/AndroidJoystickJoyInput14.java
index 2fc7cc651..a033917e1 100644
--- a/jme3-android/src/main/java/com/jme3/input/android/AndroidJoystickJoyInput14.java
+++ b/jme3-android/src/main/java/com/jme3/input/android/AndroidJoystickJoyInput14.java
@@ -252,7 +252,11 @@ public boolean onKey(KeyEvent event) {
return consumed;
}
-
+ private void logRemap(String original, String logicalId) {
+ if (logger.isLoggable(Level.FINE) && !Objects.equals(logicalId, original)) {
+ logger.log(Level.FINE, "Remapped: {0} to: {1}", new Object[]{original, logicalId});
+ }
+ }
protected class AndroidJoystick extends AbstractJoystick {
private JoystickAxis nullAxis;
@@ -335,13 +339,8 @@ protected JoystickButton addButton( int keyCode ) {
original = JoystickButton.BUTTON_11;
}
-// String logicalId = JoystickCompatibilityMappings.remapButton( getName(), original );
-// if (logger.isLoggable(Level.FINE) && !Objects.equals(logicalId, original)) {
-// logger.log(Level.FINE, "Remapped: {0} to: {1}",
-// new Object[]{original, logicalId});
-// }
- String logicalId = JoystickCompatibilityMappings.remapButton(getName(), original);
- logRemappingIfNeeded(original, logicalId, logger);
+ String logicalId = JoystickCompatibilityMappings.remapButton( getName(), original );
+ logRemap(original, logicalId);
JoystickButton button = new DefaultJoystickButton( getInputManager(), this, getButtonCount(),
name, logicalId );
@@ -350,6 +349,7 @@ protected JoystickButton addButton( int keyCode ) {
return button;
}
+
protected JoystickAxis addAxis(MotionRange motionRange) {
String name = MotionEvent.axisToString(motionRange.getAxis());
@@ -368,10 +368,8 @@ protected JoystickAxis addAxis(MotionRange motionRange) {
} else if (motionRange.getAxis() == MotionEvent.AXIS_HAT_Y) {
original = JoystickAxis.POV_Y;
}
-
- String logicalId = JoystickCompatibilityMappings.remapAxis(getName(), original);
- logRemappingIfNeeded(original, logicalId, logger);
-
+ String logicalId = JoystickCompatibilityMappings.remapAxis( getName(), original );
+ logRemap(original, logicalId);
JoystickAxis axis = new DefaultJoystickAxis(getInputManager(),
this,
getAxisCount(),
diff --git a/jme3-android/src/main/java/com/jme3/renderer/android/RendererUtil.java b/jme3-android/src/main/java/com/jme3/renderer/android/RendererUtil.java
index ef8d2163d..011f84a72 100644
--- a/jme3-android/src/main/java/com/jme3/renderer/android/RendererUtil.java
+++ b/jme3-android/src/main/java/com/jme3/renderer/android/RendererUtil.java
@@ -157,6 +157,6 @@ public static void checkGLError() {
if (!ENABLE_ERROR_CHECKING) {
return;
}
- checkAndThrowGLError();
+ checkGLErrorForced();
}
}
diff --git a/jme3-android/src/main/java/com/jme3/system/android/AndroidConfigChooser.java b/jme3-android/src/main/java/com/jme3/system/android/AndroidConfigChooser.java
index a0c75a065..81186148c 100644
--- a/jme3-android/src/main/java/com/jme3/system/android/AndroidConfigChooser.java
+++ b/jme3-android/src/main/java/com/jme3/system/android/AndroidConfigChooser.java
@@ -164,18 +164,12 @@ private EGLConfig[] getConfigs(EGL10 egl, EGLDisplay display) {
{
// Get back to openGL ES 2
configSpec[1]=EGL_OPENGL_ES2_BIT;
- if (!egl.eglChooseConfig(display, configSpec, null, 0, num_config)) {
- RendererUtil.checkEGLError(egl);
- throw new AssertionError();
- }
+ checkEGL(egl.eglChooseConfig(display, configSpec, null, 0, num_config), egl);
}
int numConfigs = num_config[0];
EGLConfig[] configs = new EGLConfig[numConfigs];
- if (!egl.eglChooseConfig(display, configSpec, configs, numConfigs, num_config)) {
- RendererUtil.checkEGLError(egl);
- throw new AssertionError();
- }
+ checkEGL(egl.eglChooseConfig(display, configSpec, configs, numConfigs, num_config), egl);
logger.fine("--------------Display Configurations---------------");
for (EGLConfig eGLConfig : configs) {
@@ -186,6 +180,13 @@ private EGLConfig[] getConfigs(EGL10 egl, EGLDisplay display) {
return configs;
}
+ private static void checkEGL(boolean isEGL, EGL10 egl10) {
+ if (!isEGL) {
+ RendererUtil.checkEGLError(egl10);
+ throw new AssertionError();
+ }
+ }
+
private EGLConfig chooseConfig(
EGL10 egl, EGLDisplay display, EGLConfig[] configs, Config requestedConfig,
boolean higherRGB, boolean higherAlpha,
diff --git a/jme3-desktop/src/main/java/com/jme3/app/AppletHarness.java b/jme3-desktop/src/main/java/com/jme3/app/AppletHarness.java
index 73ebaf414..65034a781 100644
--- a/jme3-desktop/src/main/java/com/jme3/app/AppletHarness.java
+++ b/jme3-desktop/src/main/java/com/jme3/app/AppletHarness.java
@@ -47,6 +47,7 @@
import java.util.HashMap;
import javax.swing.JOptionPane;
import javax.swing.SwingUtilities;
+import java.util.logging.*;
/**
* @author Kirill Vainer
@@ -71,6 +72,7 @@ public static Applet getApplet(Application app){
@SuppressWarnings("unchecked")
private void createCanvas(){
AppSettings settings = new AppSettings(true);
+ Logger logger = Logger.getLogger(this.getClass().getName());
// load app cfg
if (appCfg != null){
@@ -80,6 +82,9 @@ private void createCanvas(){
settings.load(in);
in.close();
} catch (IOException ex){
+ // Log the exception securely
+ logger.log(Level.SEVERE, "Error loading applet configuration", ex);
+
// Called before application has been created ....
// Display error message through AWT
JOptionPane.showMessageDialog(this, "An error has occurred while "
@@ -87,7 +92,6 @@ private void createCanvas(){
+ ex.getMessage(),
"jME3 Applet",
JOptionPane.ERROR_MESSAGE);
- ex.printStackTrace();
} finally {
if (in != null)
try {
diff --git a/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyMap.java b/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyMap.java
index 51baafbda..7fc0e3984 100644
--- a/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyMap.java
+++ b/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyMap.java
@@ -48,127 +48,123 @@ private static void reg(final int jmeKey, final int glfwKey) {
GLFW_TO_JME_KEY_MAP[glfwKey] = jmeKey;
}
+ private static void registerKeys() {
+ int[][] keyMappings = {
+ {KEY_ESCAPE, GLFW_KEY_ESCAPE},
+ {KEY_1, GLFW_KEY_1},
+ {KEY_2, GLFW_KEY_2},
+ {KEY_3, GLFW_KEY_3},
+ {KEY_4, GLFW_KEY_4},
+ {KEY_5, GLFW_KEY_5},
+ {KEY_6, GLFW_KEY_6},
+ {KEY_7, GLFW_KEY_7},
+ {KEY_8, GLFW_KEY_8},
+ {KEY_9, GLFW_KEY_9},
+ {KEY_0, GLFW_KEY_0},
+ {KEY_MINUS, GLFW_KEY_MINUS},
+ {KEY_EQUALS, GLFW_KEY_EQUAL},
+ {KEY_BACK, GLFW_KEY_BACKSPACE},
+ {KEY_TAB, GLFW_KEY_TAB},
+ {KEY_Q, GLFW_KEY_Q},
+ {KEY_W, GLFW_KEY_W},
+ {KEY_E, GLFW_KEY_E},
+ {KEY_R, GLFW_KEY_R},
+ {KEY_T, GLFW_KEY_T},
+ {KEY_Y, GLFW_KEY_Y},
+ {KEY_U, GLFW_KEY_U},
+ {KEY_I, GLFW_KEY_I},
+ {KEY_O, GLFW_KEY_O},
+ {KEY_P, GLFW_KEY_P},
+ {KEY_LBRACKET, GLFW_KEY_LEFT_BRACKET},
+ {KEY_RBRACKET, GLFW_KEY_RIGHT_BRACKET},
+ {KEY_RETURN, GLFW_KEY_ENTER},
+ {KEY_LCONTROL, GLFW_KEY_LEFT_CONTROL},
+ {KEY_A, GLFW_KEY_A},
+ {KEY_S, GLFW_KEY_S},
+ {KEY_D, GLFW_KEY_D},
+ {KEY_F, GLFW_KEY_F},
+ {KEY_G, GLFW_KEY_G},
+ {KEY_H, GLFW_KEY_H},
+ {KEY_J, GLFW_KEY_J},
+ {KEY_K, GLFW_KEY_K},
+ {KEY_L, GLFW_KEY_L},
+ {KEY_SEMICOLON, GLFW_KEY_SEMICOLON},
+ {KEY_APOSTROPHE, GLFW_KEY_APOSTROPHE},
+ {KEY_GRAVE, GLFW_KEY_GRAVE_ACCENT},
+ {KEY_LSHIFT, GLFW_KEY_LEFT_SHIFT},
+ {KEY_BACKSLASH, GLFW_KEY_BACKSLASH},
+ {KEY_Z, GLFW_KEY_Z},
+ {KEY_X, GLFW_KEY_X},
+ {KEY_C, GLFW_KEY_C},
+ {KEY_V, GLFW_KEY_V},
+ {KEY_B, GLFW_KEY_B},
+ {KEY_N, GLFW_KEY_N},
+ {KEY_M, GLFW_KEY_M},
+ {KEY_COMMA, GLFW_KEY_COMMA},
+ {KEY_PERIOD, GLFW_KEY_PERIOD},
+ {KEY_SLASH, GLFW_KEY_SLASH},
+ {KEY_RSHIFT, GLFW_KEY_RIGHT_SHIFT},
+ {KEY_MULTIPLY, GLFW_KEY_KP_MULTIPLY},
+ {KEY_LMENU, GLFW_KEY_LEFT_ALT},
+ {KEY_SPACE, GLFW_KEY_SPACE},
+ {KEY_CAPITAL, GLFW_KEY_CAPS_LOCK},
+ {KEY_F1, GLFW_KEY_F1},
+ {KEY_F2, GLFW_KEY_F2},
+ {KEY_F3, GLFW_KEY_F3},
+ {KEY_F4, GLFW_KEY_F4},
+ {KEY_F5, GLFW_KEY_F5},
+ {KEY_F6, GLFW_KEY_F6},
+ {KEY_F7, GLFW_KEY_F7},
+ {KEY_F8, GLFW_KEY_F8},
+ {KEY_F9, GLFW_KEY_F9},
+ {KEY_F10, GLFW_KEY_F10},
+ {KEY_NUMLOCK, GLFW_KEY_NUM_LOCK},
+ {KEY_SCROLL, GLFW_KEY_SCROLL_LOCK},
+ {KEY_NUMPAD7, GLFW_KEY_KP_7},
+ {KEY_NUMPAD8, GLFW_KEY_KP_8},
+ {KEY_NUMPAD9, GLFW_KEY_KP_9},
+ {KEY_SUBTRACT, GLFW_KEY_KP_SUBTRACT},
+ {KEY_NUMPAD4, GLFW_KEY_KP_4},
+ {KEY_NUMPAD5, GLFW_KEY_KP_5},
+ {KEY_NUMPAD6, GLFW_KEY_KP_6},
+ {KEY_ADD, GLFW_KEY_KP_ADD},
+ {KEY_NUMPAD1, GLFW_KEY_KP_1},
+ {KEY_NUMPAD2, GLFW_KEY_KP_2},
+ {KEY_NUMPAD3, GLFW_KEY_KP_3},
+ {KEY_NUMPAD0, GLFW_KEY_KP_0},
+ {KEY_DECIMAL, GLFW_KEY_KP_DECIMAL},
+ {KEY_F11, GLFW_KEY_F11},
+ {KEY_F12, GLFW_KEY_F12},
+ {KEY_F13, GLFW_KEY_F13},
+ {KEY_F14, GLFW_KEY_F14},
+ {KEY_F15, GLFW_KEY_F15},
+ {KEY_NUMPADENTER, GLFW_KEY_KP_ENTER},
+ {KEY_RCONTROL, GLFW_KEY_RIGHT_CONTROL},
+ {KEY_DIVIDE, GLFW_KEY_KP_DIVIDE},
+ {KEY_SYSRQ, GLFW_KEY_PRINT_SCREEN},
+ {KEY_RMENU, GLFW_KEY_RIGHT_ALT},
+ {KEY_PAUSE, GLFW_KEY_PAUSE},
+ {KEY_HOME, GLFW_KEY_HOME},
+ {KEY_UP, GLFW_KEY_UP},
+ {KEY_PRIOR, GLFW_KEY_PAGE_UP},
+ {KEY_LEFT, GLFW_KEY_LEFT},
+ {KEY_RIGHT, GLFW_KEY_RIGHT},
+ {KEY_END, GLFW_KEY_END},
+ {KEY_DOWN, GLFW_KEY_DOWN},
+ {KEY_NEXT, GLFW_KEY_PAGE_DOWN},
+ {KEY_INSERT, GLFW_KEY_INSERT},
+ {KEY_DELETE, GLFW_KEY_DELETE},
+ {KEY_LMETA, GLFW_KEY_LEFT_SUPER},
+ {KEY_RMETA, GLFW_KEY_RIGHT_SUPER}
+ };
+
+ for (int[] mapping : keyMappings) {
+ reg(mapping[0], mapping[1]);
+ }
+ }
+
static {
- reg(KEY_ESCAPE, GLFW_KEY_ESCAPE);
- reg(KEY_1, GLFW_KEY_1);
- reg(KEY_2, GLFW_KEY_2);
- reg(KEY_3, GLFW_KEY_3);
- reg(KEY_4, GLFW_KEY_4);
- reg(KEY_5, GLFW_KEY_5);
- reg(KEY_6, GLFW_KEY_6);
- reg(KEY_7, GLFW_KEY_7);
- reg(KEY_8, GLFW_KEY_8);
- reg(KEY_9, GLFW_KEY_9);
- reg(KEY_0, GLFW_KEY_0);
- reg(KEY_MINUS, GLFW_KEY_MINUS);
- reg(KEY_EQUALS, GLFW_KEY_EQUAL);
- reg(KEY_BACK, GLFW_KEY_BACKSPACE);
- reg(KEY_TAB, GLFW_KEY_TAB);
- reg(KEY_Q, GLFW_KEY_Q);
- reg(KEY_W, GLFW_KEY_W);
- reg(KEY_E, GLFW_KEY_E);
- reg(KEY_R, GLFW_KEY_R);
- reg(KEY_T, GLFW_KEY_T);
- reg(KEY_Y, GLFW_KEY_Y);
- reg(KEY_U, GLFW_KEY_U);
- reg(KEY_I, GLFW_KEY_I);
- reg(KEY_O, GLFW_KEY_O);
- reg(KEY_P, GLFW_KEY_P);
- reg(KEY_LBRACKET, GLFW_KEY_LEFT_BRACKET);
- reg(KEY_RBRACKET, GLFW_KEY_RIGHT_BRACKET);
- reg(KEY_RETURN, GLFW_KEY_ENTER);
- reg(KEY_LCONTROL, GLFW_KEY_LEFT_CONTROL);
- reg(KEY_A, GLFW_KEY_A);
- reg(KEY_S, GLFW_KEY_S);
- reg(KEY_D, GLFW_KEY_D);
- reg(KEY_F, GLFW_KEY_F);
- reg(KEY_G, GLFW_KEY_G);
- reg(KEY_H, GLFW_KEY_H);
- reg(KEY_J, GLFW_KEY_J);
- reg(KEY_K, GLFW_KEY_K);
- reg(KEY_L, GLFW_KEY_L);
- reg(KEY_SEMICOLON, GLFW_KEY_SEMICOLON);
- reg(KEY_APOSTROPHE, GLFW_KEY_APOSTROPHE);
- reg(KEY_GRAVE, GLFW_KEY_GRAVE_ACCENT);
- reg(KEY_LSHIFT, GLFW_KEY_LEFT_SHIFT);
- reg(KEY_BACKSLASH, GLFW_KEY_BACKSLASH);
- reg(KEY_Z, GLFW_KEY_Z);
- reg(KEY_X, GLFW_KEY_X);
- reg(KEY_C, GLFW_KEY_C);
- reg(KEY_V, GLFW_KEY_V);
- reg(KEY_B, GLFW_KEY_B);
- reg(KEY_N, GLFW_KEY_N);
- reg(KEY_M, GLFW_KEY_M);
- reg(KEY_COMMA, GLFW_KEY_COMMA);
- reg(KEY_PERIOD, GLFW_KEY_PERIOD);
- reg(KEY_SLASH, GLFW_KEY_SLASH);
- reg(KEY_RSHIFT, GLFW_KEY_RIGHT_SHIFT);
- reg(KEY_MULTIPLY, GLFW_KEY_KP_MULTIPLY);
- reg(KEY_LMENU, GLFW_KEY_LEFT_ALT);
- reg(KEY_SPACE, GLFW_KEY_SPACE);
- reg(KEY_CAPITAL, GLFW_KEY_CAPS_LOCK);
- reg(KEY_F1, GLFW_KEY_F1);
- reg(KEY_F2, GLFW_KEY_F2);
- reg(KEY_F3, GLFW_KEY_F3);
- reg(KEY_F4, GLFW_KEY_F4);
- reg(KEY_F5, GLFW_KEY_F5);
- reg(KEY_F6, GLFW_KEY_F6);
- reg(KEY_F7, GLFW_KEY_F7);
- reg(KEY_F8, GLFW_KEY_F8);
- reg(KEY_F9, GLFW_KEY_F9);
- reg(KEY_F10, GLFW_KEY_F10);
- reg(KEY_NUMLOCK, GLFW_KEY_NUM_LOCK);
- reg(KEY_SCROLL, GLFW_KEY_SCROLL_LOCK);
- reg(KEY_NUMPAD7, GLFW_KEY_KP_7);
- reg(KEY_NUMPAD8, GLFW_KEY_KP_8);
- reg(KEY_NUMPAD9, GLFW_KEY_KP_9);
- reg(KEY_SUBTRACT, GLFW_KEY_KP_SUBTRACT);
- reg(KEY_NUMPAD4, GLFW_KEY_KP_4);
- reg(KEY_NUMPAD5, GLFW_KEY_KP_5);
- reg(KEY_NUMPAD6, GLFW_KEY_KP_6);
- reg(KEY_ADD, GLFW_KEY_KP_ADD);
- reg(KEY_NUMPAD1, GLFW_KEY_KP_1);
- reg(KEY_NUMPAD2, GLFW_KEY_KP_2);
- reg(KEY_NUMPAD3, GLFW_KEY_KP_3);
- reg(KEY_NUMPAD0, GLFW_KEY_KP_0);
- reg(KEY_DECIMAL, GLFW_KEY_KP_DECIMAL);
- reg(KEY_F11, GLFW_KEY_F11);
- reg(KEY_F12, GLFW_KEY_F12);
- reg(KEY_F13, GLFW_KEY_F13);
- reg(KEY_F14, GLFW_KEY_F14);
- reg(KEY_F15, GLFW_KEY_F15);
- //reg(KEY_KANA, GLFW_KEY_);
- //reg(KEY_CONVERT, GLFW_KEY_);
- //reg(KEY_NOCONVERT, GLFW_KEY_);
- //reg(KEY_YEN, GLFW_KEY_);
- //reg(KEY_NUMPADEQUALS, GLFW_KEY_);
- //reg(KEY_CIRCUMFLEX, GLFW_KEY_);
- //reg(KEY_AT, GLFW_KEY_);
- //reg(KEY_COLON, GLFW_KEY_);
- //reg(KEY_UNDERLINE, GLFW_KEY_);
- //reg(KEY_KANJI, GLFW_KEY_);
- //reg(KEY_STOP, GLFW_KEY_);
- //reg(KEY_AX, GLFW_KEY_);
- //reg(KEY_UNLABELED, GLFW_KEY_);
- reg(KEY_NUMPADENTER, GLFW_KEY_KP_ENTER);
- reg(KEY_RCONTROL, GLFW_KEY_RIGHT_CONTROL);
- //reg(KEY_NUMPADCOMMA, GLFW_KEY_);
- reg(KEY_DIVIDE, GLFW_KEY_KP_DIVIDE);
- reg(KEY_SYSRQ, GLFW_KEY_PRINT_SCREEN);
- reg(KEY_RMENU, GLFW_KEY_RIGHT_ALT);
- reg(KEY_PAUSE, GLFW_KEY_PAUSE);
- reg(KEY_HOME, GLFW_KEY_HOME);
- reg(KEY_UP, GLFW_KEY_UP);
- reg(KEY_PRIOR, GLFW_KEY_PAGE_UP);
- reg(KEY_LEFT, GLFW_KEY_LEFT);
- reg(KEY_RIGHT, GLFW_KEY_RIGHT);
- reg(KEY_END, GLFW_KEY_END);
- reg(KEY_DOWN, GLFW_KEY_DOWN);
- reg(KEY_NEXT, GLFW_KEY_PAGE_DOWN);
- reg(KEY_INSERT, GLFW_KEY_INSERT);
- reg(KEY_DELETE, GLFW_KEY_DELETE);
- reg(KEY_LMETA, GLFW_KEY_LEFT_SUPER);
- reg(KEY_RMETA, GLFW_KEY_RIGHT_SUPER);
+ registerKeys();
}
/**
@@ -179,7 +175,6 @@ public static int toJmeKeyCode(final int glfwKey) {
return GLFW_TO_JME_KEY_MAP[glfwKey];
}
-
/**
* Returns the glfw keycode that matches the specified jme keycode or
* GLFW_KEY_UNKNOWN if there isn't any match.
@@ -192,5 +187,4 @@ public static int fromJmeKeyCode(final int jmeKey) {
}
return GLFW_KEY_UNKNOWN;
}
-
}
diff --git a/jme3-plugins/src/xml/java/com/jme3/export/xml/XMLImporter.java b/jme3-plugins/src/xml/java/com/jme3/export/xml/XMLImporter.java
index 4a9d98f19..373ed4855 100644
--- a/jme3-plugins/src/xml/java/com/jme3/export/xml/XMLImporter.java
+++ b/jme3-plugins/src/xml/java/com/jme3/export/xml/XMLImporter.java
@@ -110,7 +110,6 @@ public Savable load(InputStream f) throws IOException {
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(f);
-
domIn = new DOMInputCapsule(doc, this);
return domIn.readSavable(null, null);
} catch (SAXException | ParserConfigurationException e) {