Author: dazarov
Date: 2011-08-23 13:14:54 -0400 (Tue, 23 Aug 2011)
New Revision: 34170
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/el/refactoring/ELRefactorContributionFactory.java
Log:
https://issues.jboss.org/browse/JBIDE-9571
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/el/refactoring/ELRefactorContributionFactory.java
===================================================================
---
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/el/refactoring/ELRefactorContributionFactory.java 2011-08-23
17:03:24 UTC (rev 34169)
+++
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/el/refactoring/ELRefactorContributionFactory.java 2011-08-23
17:14:54 UTC (rev 34170)
@@ -156,34 +156,35 @@
if(context == null)
return null;
- ELReference[] references = context.getELReferences();
+ ELReference reference = context.getELReference(selection.getOffset());
+ if(reference == null)
+ return null;
+
ELResolver[] resolvers = context.getElResolvers();
- for(ELReference reference : references){
- for(ELExpression operand : reference.getEl()){
- for (ELResolver resolver : resolvers) {
- if (!(resolver instanceof ELCompletionEngine))
+ for(ELExpression operand : reference.getEl()){
+ for (ELResolver resolver : resolvers) {
+ if (!(resolver instanceof ELCompletionEngine))
+ continue;
+
+ ELResolution resolution = resolver.resolve(context, operand, selection.getOffset());
+
+ if(resolution == null)
+ continue;
+
+ List<ELSegment> segments = resolution.getSegments();
+
+ for(ELSegment segment : segments){
+ if(!segment.isResolved())
continue;
- ELResolution resolution = resolver.resolve(context, operand,
selection.getOffset());
-
- if(resolution == null)
- continue;
-
- List<ELSegment> segments = resolution.getSegments();
-
- for(ELSegment segment : segments){
- if(!segment.isResolved())
- continue;
-
- if(selection.getOffset() <=
reference.getStartPosition()+segment.getSourceReference().getStartPosition() &&
- selection.getOffset()+selection.getLength() >=
reference.getStartPosition()+segment.getSourceReference().getStartPosition()+segment.getSourceReference().getLength()){
- if(segment instanceof MessagePropertyELSegment || segment instanceof
JavaMemberELSegment)
- return segment;
- }
+ if(selection.getOffset() <=
reference.getStartPosition()+segment.getSourceReference().getStartPosition() &&
+ selection.getOffset()+selection.getLength() >=
reference.getStartPosition()+segment.getSourceReference().getStartPosition()+segment.getSourceReference().getLength()){
+ if(segment instanceof MessagePropertyELSegment || segment instanceof
JavaMemberELSegment)
+ return segment;
}
+ }
- }
}
}
return null;