]> git.lyx.org Git - features.git/blobdiff - 00README_STR_METRICS_BRANCH
Fix getColumnNearX for nested insets
[features.git] / 00README_STR_METRICS_BRANCH
index 31cc4891625e224540588693941c515f7d978589..18c68ca2fbc5ee29fb3df056df9571b1e2870c38 100644 (file)
@@ -17,18 +17,24 @@ What is done:
   metrics are computed. The list of elements is stored in the row
   object in visual ordering, not logical.
 
-* Re-implement cursorX and getColumnNearX using row elements
+* Re-implement cursorX and getColumnNearX using row elements.
 
 * Implement proper string metrics computation (with cache), when
   lyxrc.force_paint_single_char is false. In this case, remove also
   useless workarounds which disable kerning and ligatures.
 
 
+Next steps needed:
+
+* check what happens with arabic and/or hebrew text. There may be some
+  problems related to compose characters. I suspect that some code is
+  needed in FontMetrics::width.
+
 Next possible steps:
 
-* Get rid of old code of cursorX and getColumnNearX (which have been
+* Get rid of old code in cursorX and getColumnNearX; it has been
   kept for comparison purpose, guarded with KEEP_OLD_METRICS_CODE in
-  order to check computations).
+  order to check computations.
 
 * Re-implement row painting using row elements. This is not difficult
   in principle, but the code is intricate and needs some careful
@@ -43,9 +49,11 @@ Difference in behavior (aka bug fixes)
   actual text, not default font.
 
 * When cursor is after a LTR separator just before a RTL chunk, the
-  cursor posiiton is computed better with the new code.
+  cursor position is computed better with the new code.
 
 
 Other differences (aka real bugs)
 
-You tell me.
+* there are still difference in what breaks words. In particular,
+  RowPainter breaks strings at: selection end, spellchecking
+  extremity.