I’ve been a long-time (but casual) OmniGraffle user, and this behavior is driving me nuts. I don’t recall early versions doing this, but as OmniGraffle has gotten smarter, it has also gotten more ideas about how to lay out diagrams that don’t agree with what I want to do.
Here’s an example: I have a diagram with a lot of objects on it. When resize an object, OmniGraffle wants to make the new size of the object line up with other objects on the graph. In particular, when I resize, I can click on the resize target of the object, and it won’t move until I’ve dragged for several grid steps, and then will “jump” by several grid steps to match up with the size or edge of other objects elsewhere on the diagram.
If I click on the resize handle of an object, and THEN press CMD, I get the behavior I want: the object resizes by snapping to the grid as I drag the handle. This is finicky, because if I press CMD first and then click to resize an object, I get the rotate function instead. I almost always want to resize to grid steps, rarely want to resize to match other objects on the diagram, and never want to drag-to-rotate, so the default behavior is maddening.
Is there any way to make what I want (resize to grid steps) the default?
Ideally, I’d like to check or un-check a box somewhere and have OmniGraffle always resize objects by snapping to the grid (if snap to grid is on), and only resize to adjacent object edges or sizes if snap to grid is off or if I click on the resize handle and then press CMD.
Failing that, I’ll settle for just being able to turn the “resize to adjacent object edges or sizes” behavior off entirely. I’ve looked all over the menus and inspectors, and don’t see where there is a way to alter this behavior for the program by default or for the current diagram. Am I missing something?