This patch distinguishes two cases of using buttons in outline-minor-mode: 1. when buttons can be inserted to a read-only buffer, then it's possible to move point to the inserted button and use it by keyboard; 2. when the buffer is editable and should not be modified to insert buttons, when the only way to display buttons is with a before-string overlay. The disadvantage is that buttons can be used only by clicking mouse. A new variable 'outline-read-only' is added here to allow setting it explicitly in buffers that can be modified to insert buttons like the Help buffer: