| 119 | } |
| 120 | |
| 121 | std::string Helper::getSubStringOfUTF8String(std::string_view str, |
| 122 | std::string::size_type start, |
| 123 | std::string::size_type length) |
| 124 | { |
| 125 | std::u32string utf32; |
| 126 | if (!StringUtils::UTF8ToUTF32(str, utf32)) |
| 127 | { |
| 128 | AXLOGE("Can't convert string to UTF-32: {}", str); |
| 129 | return ""; |
| 130 | } |
| 131 | if (utf32.size() < start) |
| 132 | { |
| 133 | AXLOGE("'start' is out of range: {}, {}", static_cast<int32_t>(start), str); |
| 134 | return ""; |
| 135 | } |
| 136 | std::string result; |
| 137 | if (!StringUtils::UTF32ToUTF8(utf32.substr(start, length), result)) |
| 138 | { |
| 139 | AXLOGE("Can't convert internal UTF-32 string to UTF-8: {}", str); |
| 140 | return ""; |
| 141 | } |
| 142 | return result; |
| 143 | } |
| 144 | |
| 145 | void Helper::changeLayoutSystemActiveState(bool bActive) |
| 146 | { |
nothing calls this directly
no test coverage detected