[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Handle sharing Cocoa xwidgets more gracefully

From: Po Lu
Subject: Re: [PATCH] Handle sharing Cocoa xwidgets more gracefully
Date: Tue, 04 Oct 2022 16:34:18 +0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux)

Sungbin Jo <goranmoomin@daum.net> writes:

> Ah, I’ve only now realized the existence of ‘kill-xwidget’, and can
> reproduce the mentioned problem. I’ll probably be able to work on a fix
> soon.
> I do find it awkward that (if my understanding is correct) xwidget views
> can only be created by displaying an xwidget, and can’t change the
> xwidget it is showing, but the xwidget views get left over when the
> xwidget is killed. Am I understanding this correctly, or is there a way
> to create an empty xwidget view that is not connected to an xwidget at
> all, and then connect the view to an xwidget separately (and possibly
> change the xwidget)?

I don't know how that part of the code works on Mac OS, but on X the
routines that access the widgets in the `model' field of the xwidget
view are conditioned behind the xwidget being live (!NILP (xw->buffer)).

> Ah, thanks for the confirmation. I still feel that pointers (if they
> exist) to information on how the end-users are expected to use the
> xwidget system will be immensely helpful, so that I can gain a better
> mental model and work on the implementation. (e.g., are xwidget views
> something that the user is expected to play around with? I’m assuming
> yes since they are exposed to elisp, but they don’t have any
> documentation on info.)
> I’m currently just gleaming on the individual function names and
> docstrings, guessing on how they should work. I couldn’t get xwidgets
> working properly on my Linux machine as well; as such I can’t
> experiment on the ‘canonical’ implementation either.

There is a significant amount of documentation on xwidgets in the Emacs
Lisp reference manual.  (But only if you look in the copy built in to
Emacs 29.)

Thanks for working on this feature.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]