Wassily Kondratiev <wk@xxxxxxxxxxx> writes:
> Zajcev Evgeny <zevlg@xxxxxxxxx> writes:
>
>> So, it is pretty convinient to set `xwem-minibuffer-hide-cursor-mode'
>> also to nil along with nil value for
>> `xwem-minibuffer-emacs-frames-has-minibuffer'
>
> Thank you, I did so and it helps.
The problem with uncoditional select of xwem minibuffer is that xemacs
blocks (for reading input from minibuffer) *not under xwem control*,
i.e. not under running any xwem code, not within xwem's event loop.
This makes not possible to do the job that xwem does for its
interactive commands, and as a result you can have behaviour that
you've described .. Yes it is quite a bug-like thing, but doing work
around it is problematic, so noticing this is helpful ..
As another aproach you can handle emacs frame selection, and in case
of xwem minibuffer frame - you select xwem minibuffer client
conditionally, for example:
(defun my-xwem-select-frame-hook ()
"Select or deselect xwem minibuffer.
Make xwem minibuffer be conditionally selected, when its emacs frame
selected."
(if (eq (selected-frame) (xwem-minib-frame xwem-minibuffer))
(xwem-select-client (xwem-minib-cl xwem-minibuffer))
(when (xwem-cl-selected-p (xwem-minib-cl xwem-minibuffer))
(xwem-select-client (xwem-last-client)))))
(add-hook 'select-frame-hook 'my-xwem-select-frame-hook)
With such a hack you can use hide cursor mode (non-nil
`xwem-minibuffer-hide-cursor-mode')
Good luck!
--
lg
|