diff options
| -rw-r--r-- | backends/platform/wince/CEActionsPocket.cpp | 11 | ||||
| -rw-r--r-- | backends/platform/wince/CEActionsSmartphone.cpp | 11 | 
2 files changed, 22 insertions, 0 deletions
| diff --git a/backends/platform/wince/CEActionsPocket.cpp b/backends/platform/wince/CEActionsPocket.cpp index 194f855e98..5980a41caa 100644 --- a/backends/platform/wince/CEActionsPocket.cpp +++ b/backends/platform/wince/CEActionsPocket.cpp @@ -215,6 +215,8 @@ void CEActionsPocket::initInstanceGame() {  		_key_action[POCKET_ACTION_MULTI].setKey(Common::ASCII_F1, SDLK_F1); // bargon : F1 to start  	else if (gameid == "atlantis")  		_key_action[POCKET_ACTION_MULTI].setKey(0, SDLK_KP0); // fate of atlantis : Ins to sucker-punch +	else if (is_simon) +		_key_action[POCKET_ACTION_MULTI].setKey(Common::ASCII_F10, SDLK_F10); // F10  	else  		_key_action[POCKET_ACTION_MULTI].setKey('V', SDLK_v, KMOD_SHIFT); // FT cheat : shift-V  	// Key bind method @@ -268,6 +270,15 @@ bool CEActionsPocket::perform(GUI::ActionType action, bool pushed) {  			else  				_key_action[action].setKey(SDLK_s);  		} +		if (action == POCKET_ACTION_SKIP && ConfMan.get("gameid") == "agi") { +			// In several AGI games (for example SQ2) it is needed to press F10 to exit from +			// a screen. But we still want be able to skip normally with the skip button. +			// Because of this, we inject a F10 keystroke here (this works and doesn't seem +			// to have side-effects) +			_key_action[action].setKey(Common::ASCII_F10, SDLK_F10); // F10 +			EventsBuffer::simulateKey(&_key_action[action], true); +			_key_action[action].setKey(KEY_ALL_SKIP); +		}  		EventsBuffer::simulateKey(&_key_action[action], true);  		return true;  	case POCKET_ACTION_KEYBOARD: diff --git a/backends/platform/wince/CEActionsSmartphone.cpp b/backends/platform/wince/CEActionsSmartphone.cpp index c6456d3eb5..2cce288323 100644 --- a/backends/platform/wince/CEActionsSmartphone.cpp +++ b/backends/platform/wince/CEActionsSmartphone.cpp @@ -181,6 +181,8 @@ void CEActionsSmartphone::initInstanceGame() {  		_key_action[SMARTPHONE_ACTION_MULTI].setKey(Common::ASCII_F1, SDLK_F1); // bargon : F1 to start  	else if (gameid == "atlantis")  		_key_action[SMARTPHONE_ACTION_MULTI].setKey(0, SDLK_KP0); // fate of atlantis : Ins to sucker-punch +	else if (is_simon) +		_key_action[SMARTPHONE_ACTION_MULTI].setKey(Common::ASCII_F10, SDLK_F10); // F10  	else  		_key_action[SMARTPHONE_ACTION_MULTI].setKey('V', SDLK_v, KMOD_SHIFT); // FT cheat : shift-V  	// Bind keys @@ -232,6 +234,15 @@ bool CEActionsSmartphone::perform(GUI::ActionType action, bool pushed) {  			else  				_key_action[action].setKey(SDLK_s);  		} +		if (action == SMARTPHONE_ACTION_SKIP && ConfMan.get("gameid") == "agi") { +			// In several AGI games (for example SQ2) it is needed to press F10 to exit from +			// a screen. But we still want be able to skip normally with the skip button. +			// Because of this, we inject a F10 keystroke here (this works and doesn't seem +			// to have side-effects) +			_key_action[action].setKey(Common::ASCII_F10, SDLK_F10); // F10 +			EventsBuffer::simulateKey(&_key_action[action], true); +			_key_action[action].setKey(KEY_ALL_SKIP); +		}  		EventsBuffer::simulateKey(&_key_action[action], true);  		return true;  	case SMARTPHONE_ACTION_RIGHTCLICK: | 
