If you need to check if the custom field is visible on the screen you need to:
- Get issue type screen scheme for the issue project;
- Get effective field screen scheme for the issue type;
- Get field screen for the issue operation;
- Check if the field screen contains the custom field.
public boolean isVisible(Issue issue, CustomField progressField) { IssueTypeScreenScheme issueTypeScreenScheme = issueTypeScreenSchemeManager. getIssueTypeScreenScheme(issue.getProjectObject()); FieldScreenScheme fieldScreenScheme = issueTypeScreenScheme. getEffectiveFieldScreenScheme(issue.getIssueTypeObject()); FieldScreen fieldScreen = fieldScreenScheme. getFieldScreen(IssueOperations.VIEW_ISSUE_OPERATION); return fieldScreen.containsField(progressField.getId()); }
This method could be useful, for example when you create a web panel to be displayed if the custom field is visible on the issue view screen.