When an edge loop is fully occluded the direction of movement is not calculated resulting in unpredictable behavior. So always calculate the direction of the groups of edge loops but continue preventing occluded edges from affecting `mval_dir` (global) value. Differential Revision: https://developer.blender.org/D5247