There's fall through here.  Won't this just send the keyDown twice when it reaches the KEYCODE_SEARCH case?  Same below.

That said, why wouldn't we want NativeApp to handle the keyCode?  Shouldn't we just improve the way it handles KEYCODE_BACK instead of denying it entirely?  Here's what that function does:

```
	KeyInput keyInput;
	keyInput.deviceId = deviceId;
	keyInput.keyCode = key;
	keyInput.flags = KEY_DOWN;
	NativeKey(keyInput);
```

Which is like all platforms.  So it's a key like any other, nothing magical.  I don't see it in the Xperia Play default map:
https://github.com/hrydgard/ppsspp/blob/d2108a962e5e590a7a91698040af60615e4741f3/Common/KeyMap.cpp#L261

So it's probably handled as a cancel button I guess?
https://github.com/hrydgard/ppsspp/blob/d2108a962e5e590a7a91698040af60615e4741f3/Common/KeyMap.cpp#L310

I'm still not completely clear on where you're seeing the problem.

Also, indentation doesn't really match.

-[Unknown]