1818package com .airsaid .localization .action ;
1919
2020import com .airsaid .localization .config .SettingsState ;
21- import com .airsaid .localization .model .AbstractValue ;
2221import com .airsaid .localization .services .AndroidValuesService ;
2322import com .airsaid .localization .task .TranslateTask ;
2423import com .airsaid .localization .translate .lang .Lang ;
2827import com .intellij .openapi .actionSystem .AnActionEvent ;
2928import com .intellij .openapi .actionSystem .CommonDataKeys ;
3029import com .intellij .openapi .project .Project ;
30+ import com .intellij .psi .PsiElement ;
3131import com .intellij .psi .PsiFile ;
32+ import com .intellij .psi .xml .XmlTag ;
3233import org .jetbrains .annotations .NotNull ;
3334
3435import java .util .List ;
@@ -42,7 +43,7 @@ public class TranslateAction extends AnAction implements SelectLanguagesDialog.O
4243
4344 private Project mProject ;
4445 private PsiFile mValueFile ;
45- private List <AbstractValue > mValues ;
46+ private List <PsiElement > mValues ;
4647 private final AndroidValuesService mValueService = AndroidValuesService .getInstance ();
4748
4849 @ Override
@@ -63,15 +64,15 @@ public void actionPerformed(AnActionEvent e) {
6364 }
6465
6566 // Verify that there is a text in the value file that needs to be translated.
66- private boolean isTranslatable (@ NotNull List <AbstractValue > values ) {
67- boolean isTranslatable = false ;
68- for ( AbstractValue androidString : values ) {
69- if (androidString .isTranslatable ()) {
70- isTranslatable = true ;
71- break ;
67+ private boolean isTranslatable (@ NotNull List <PsiElement > values ) {
68+ for ( PsiElement psiElement : values ) {
69+ if ( psiElement instanceof XmlTag ) {
70+ if (mValueService .isTranslatable (( XmlTag ) psiElement )) {
71+ return true ;
72+ }
7273 }
7374 }
74- return isTranslatable ;
75+ return false ;
7576 }
7677
7778 private void showSelectLanguageDialog () {
0 commit comments