&& cur.boundary() == oldBoundary) {
cur.undispatched();
cmd = FuncRequest(LFUN_FINISHED_RIGHT);
- } else
- cur.setCurrentFont();
+ }
break;
case LFUN_CHAR_BACKWARD:
&& cur.boundary() == oldBoundary) {
cur.undispatched();
cmd = FuncRequest(LFUN_FINISHED_LEFT);
- } else
- cur.setCurrentFont();
+ }
break;
case LFUN_UP_SELECT:
case LFUN_FINISHED_LEFT:
LYXERR(Debug::DEBUG) << "handle LFUN_FINISHED_LEFT:\n" << cur << endl;
- if (reverseDirectionNeeded(cur))
+ if (reverseDirectionNeeded(cur)) {
++cur.pos();
+ cur.setCurrentFont();
+ }
break;
case LFUN_FINISHED_RIGHT:
LYXERR(Debug::DEBUG) << "handle LFUN_FINISHED_RIGHT:\n" << cur << endl;
- if (!reverseDirectionNeeded(cur))
+ if (!reverseDirectionNeeded(cur)) {
++cur.pos();
+ cur.setCurrentFont();
+ }
break;
case LFUN_LAYOUT_PARAGRAPH: {