I think, non breaking space character (0xa0) is space.
Proposed patch (Core/CharSet.h):
-inline bool IsSpace(int c) { return c == ' ' || c == '\f' || c == '\n' || c == '\r' || c == '\v' || c == '\t'; }
+inline bool IsSpace(int c) { return c == ' ' || c == '\f' || c == '\n' || c == '\r' || c == '\v' || c == '\t' || c == 0xa0; }
You can test it with an EditString
someedit.SetFilter(CharFilterNotWhitespace);
And try typing 0160 on numpad while holding down Alt key.
Some users can be tricky.
I disagree for two reasons:
1) traditional isspace does not treat it as space http://www.cplusplus.com/reference/cctype/isspace/
2) in most text algorithms, hard space is actually treated as non-space - that in fact is its basic purpose...