boolean (int offset, CaretDataInView caretData) { if (!myWhitespaceShown) return false; if (offset < currentLeadingEdge ? myLeadingWhitespaceShown : offset >= currentTrailingEdge ? myTrailingWhitespaceShown : myInnerWhitespaceShown) { return true; } else { return mySelectionWhitespaceShown && caretData != null && caretData.isOffsetInSelection(offset); } }