浏览代码

LibGUI: Select last word when double clicking at the end of a line

Fixes #6565.
Rafał 4 年之前
父节点
当前提交
2d6be48c6f
共有 1 个文件被更改,包括 5 次插入1 次删除
  1. 5 1
      Userland/Libraries/LibGUI/TextDocument.cpp

+ 5 - 1
Userland/Libraries/LibGUI/TextDocument.cpp

@@ -628,7 +628,11 @@ TextPosition TextDocument::first_word_break_before(const TextPosition& position,
 
     auto target = position;
     auto line = this->line(target.line());
-    auto is_start_alphanumeric = isalnum(line.code_points()[target.column() - (start_at_column_before ? 1 : 0)]);
+    auto modifier = start_at_column_before ? 1 : 0;
+    if (target.column() == line.length())
+        modifier = 1;
+
+    auto is_start_alphanumeric = isalnum(line.code_points()[target.column() - modifier]);
 
     while (target.column() > 0) {
         auto prev_code_point = line.code_points()[target.column() - 1];