This screenshot is of a document I made by copying and pasting several Gmail messages. It’s a compilation of responses to a question, and I need to keep the messages in their original format. What’s quite surprising is that Writer won’t allow the cursor to move beyond the last textbox, which you can see at the end of the document. (I’ve hidden earlier boxes because they contain people’s addresses.)
This behaviour violates the ergonomic principle known as the Principle of Least Astonishment, described in Principle of least astonishment - Wikipedia :
The principle of least astonishment (POLA), also called the principle of least surprise (alternatively a law or rule),applies to user interface and software design. The following is a typical statement of the principle: ''If a necessary feature has a high astonishment factor, it may be necessary to redesign the feature.''"
It also violates orthogonality ( SteadBytes |TPP Topic 10: Orthogonality ), because it means that copy-and-paste work differently on different kinds of text. When pasting, a user has to know that they’ll be able to move beyond the pasted item if it doesn’t contain textboxes, but not if it does.
What benefit did Writer’s designers envisage from this behaviour? Am I somehow meant to close things that I paste, so as to force the cursor back to an outermost level? Or am I missing something else I ought to know? It’s not a problem I recall ever having with Word.
Incidentally (note added a few minutes later), I found a solution, I think. Suppose that in document D which ends in a textbox, you want to append clipboard text E. Then you make a new document N, and head it with the line “AAAA” and tail it with “BBBB”. Then cut D and paste it between these lines in N. Then paste E into D, first heading it with the line “ZZZZ”. Then copy all of N and paste it before the “ZZZZ” in D. Then clear up by closing N. It may be useful to keep the “AAAA”, “BBBB” and “ZZZZ” right until the document is finished, as they seem to provide barriers against recurrences of this behaviour. So basically, you’re temporarily moving the textboxed text out of the way from D, pasting your text to append into D, and then putting back the textboxed text before that.