Community
Participate
Working Groups
In 4.2, IExecutionListener.preExecute() receives an ExecutionEvent whose getApplicationContext() value is an IEvaluationContext instance. In 4.3, it was now a org.eclipse.e4.core.commands.internal.HandlerServiceImpl.ExecutionContexts instance. The end result is that HandlerUtil methods no longer work in IExecutionListener.preExecute().
Proposed fix pushed to Gerrit for review: https://git.eclipse.org/r/14564 Fix includes: * unit test modifications to verify the expected behavior * revert HandlerServiceImpl to pass ExpressionContext objects to Command.setEnabled and Command.executeWithChecks() (instead of the private ExecutionContexts object). * Change HandlerServiceHandler to retieve static contexts from the HandlerServiceImpl's stack, and cross check these with the execution context received. Passes UIAllTests and UI API Test Suite, as well as the modified CommandExecutionTest (which is not part of either suite).
Released as http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=f2fbd43ff1b20deea217bffbf4d31ab5e2fff506 PW
Fixed in 4.4