emacs-devel
[Top][All Lists]
Advanced

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

Re: Volunteering to help on etc/TODO item: Improved xwidgets support


From: Po Lu
Subject: Re: Volunteering to help on etc/TODO item: Improved xwidgets support
Date: Wed, 19 Oct 2022 09:33:24 +0800
User-agent: Gnus/5.13 (Gnus v5.13)

Andrew De Angelis <bobodeangelis@gmail.com> writes:

> Hello everyone and thanks for all your work!

Hello, thanks for working on Emacs.

> This is regarding TODO item: "Things to be done for specific packages
> or features/NeXTstep port/Missing features/Improved xwidgets support"
>
> I've started working on the NS code for xwidget-webkit, with the aim
> of bringing it up-to-date with the changes to the X11 and GTK code
> (you can check my as-yet-still-very-minor changes at this fork).  I'm
> sending the email to: 1) check if someone is already working on this
> 2) make sure I'm going about it the right way 3) inquire about the
> current X11/GTK implementation.
>
> Regarding 1: I haven't found many recent matches for 'xwidget' in the
> mailing list, but if you're aware of someone already working on this
> effort, please let me know

Sure.  It would be good if you coordinated your efforts with Qiantian
Hong (copied), who is also making changes in that area.

> Regarding 2: As noted in the Contributing node of the manual, I'm
> making you aware of my planned improvements and I'd like to know if
> you have any suggestions/advice. My current plan is to go through the
> xwidget.c code, take note of any functions/subroutines that are
> defined for GTK but not NS, and add an NS implementation in xwidget.m.

Thanks.  It would be nice if someone resolved the more crucial issues
first, though:

  - many procedures in nsxwidget.m crash when encountering killed
    xwidgets (see the doc string of `kill-xwidget' for more details.)
  - nsxwidget.m has apparently been written with Objective-C Automatic
    Reference Counting in mind, and thus leak memory, as Emacs cannot
    use ARC.

> I will do my best to complete this so that the NS code will be fully
> up-to-date. If there are any planned changes to xwidget.c or
> xwidget.el for the upcoming 29.1 release, please let me know.

I think it will probably be too late for Emacs 29.1, which will start
the pre-release process soon, at which point changes that don't only fix
regressions (and possibly the MS-DOS build) will not be allowed.  Unless
you can complete this work before November, that is.

> Regarding 3: I do not have a Linux machine available at the moment,
> which would be valuable to get a better sense of the current GTK
> implementation (I'm working on finding additional volunteers to help
> on this).  Is there a standard-procedure I can follow to ask questions
> here about the GTK implementation?

Just send an email to this list, with me copied in.  BTW, the canonical
implementation is not a "GTK implementation", but rather two
implementations combined in a single file through ifdefs: one for the
regular X11 build, and the other for a GTK build that does not use any X
Windows specific interfaces.

> Is there a point person I should contact specifically?

Me.

> I would like to keep the two different implementations as consistent
> as possible, while also making sure that common bugs are addressed.
> One question I have regarding this is on the
> `xwidget-webkit--loading-p' variable: in my build, I see that this is
> set to true when creating a new session, but it is then never updated
> to nil (even long after the web page has fully loaded). Since this
> variable is not present in the C code, I'm not sure if this is a
> limitation of the Lisp code (and therefore common regardless of the
> underlying framework, GTK or NS), or if it's handled correctly in
> other builds.

I think the timer stops by itself, the variable is not all that
important.


reply via email to

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