From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Akira Kyle Newsgroups: gmane.emacs.devel Subject: Re: Introducing emacs-webkit and more thoughts on Emacs rendering (was Rethinking the design of xwidgets) Date: Mon, 23 Nov 2020 20:51:10 -0700 Message-ID: <86r1ojwgy9.fsf@akirakyle.com> References: <864kmzupp0.fsf@akirakyle.com> <86pn46awrr.fsf@akirakyle.com> Mime-Version: 1.0 Content-Type: text/plain; format=flowed Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="2810"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: mu4e 1.4.13; emacs 28.0.50 Cc: emacs-devel@gnu.org To: Alexander Adolf Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Nov 24 04:52:26 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1khPNS-0000dQ-Cs for ged-emacs-devel@m.gmane-mx.org; Tue, 24 Nov 2020 04:52:26 +0100 Original-Received: from localhost ([::1]:57820 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1khPNR-0006GP-92 for ged-emacs-devel@m.gmane-mx.org; Mon, 23 Nov 2020 22:52:25 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:53516) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1khPMN-0005lA-0z for emacs-devel@gnu.org; Mon, 23 Nov 2020 22:51:19 -0500 Original-Received: from mail-il1-f182.google.com ([209.85.166.182]:42281) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1khPMK-0005Cs-TC for emacs-devel@gnu.org; Mon, 23 Nov 2020 22:51:18 -0500 Original-Received: by mail-il1-f182.google.com with SMTP id f5so17085912ilj.9 for ; Mon, 23 Nov 2020 19:51:13 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:references:user-agent:from:to:cc:subject :in-reply-to:date:message-id:mime-version; bh=Fk9rkeI8iNVEsxjNwdR+Tni4HaXMQWME0I9Kb17vtE0=; b=AADbsu2paMaWvjWTXE8qIN5o50U+IgpAsWc4MbeiZgVuIN2SSi6yTUaxlI+PSJUJc0 /0HmubtgYu3PlnauhP7ymQ6Q9opfqin3N4smKZUIv8DtibxH7mx4AsN9SVawFGvbKJtR fSinvzb2QrZsS7X34uXWXTnb0ZxZk5Ynxvl4WQ022oou5aGUP0a+BM1ZEk+wNY2JNlrR hhh96mK640AZF8y7YLLgp+B62XrgNCYz81OObsYgSp7i8tuAyhuG+EeelkgeZTKBIJFO eGPozn+HIcbvcAbkkVLvj28oFBcLBmYgd9ZS67idOGN5M2an/WhqszzJ7sSJNCSOp6mx lLEA== X-Gm-Message-State: AOAM531pQjhHhYSsYSxhFPKmK1oBjEhqMXqiRcT6N7EorvLdEY2EdjbK x1isY7B3KUZpih7u3e5PZu/85ubA4uW9lMV4 X-Google-Smtp-Source: ABdhPJyHtvEdSjIqSALfMDxTwsBVIFYp9tXjJYAa61PlbLSm9U8cMtlu0XbEpkk8bDX7n0znR3uBRA== X-Received: by 2002:a92:6b08:: with SMTP id g8mr2593586ilc.32.1606189872519; Mon, 23 Nov 2020 19:51:12 -0800 (PST) Original-Received: from data ([2601:281:8080:45f0:e0a5:922f:c6e9:c7eb]) by smtp.gmail.com with ESMTPSA id m9sm7471033ioc.15.2020.11.23.19.51.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 Nov 2020 19:51:11 -0800 (PST) In-reply-to: Received-SPF: pass client-ip=209.85.166.182; envelope-from=aikokyle@gmail.com; helo=mail-il1-f182.google.com X-Spam_score_int: -13 X-Spam_score: -1.4 X-Spam_bar: - X-Spam_report: (-1.4 / 5.0 requ) BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.25, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:259708 Archived-At: On Mon, Nov 23, 2020 at 03:12 PM, Alexander Adolf wrote: > A very personal caution with respect to webkitgtk2 on macOS. > > We are using webkitgtk in another OSS project, and building it > in macOS > is a huge pain. You have to patch it (and devise new patches > when a new > version is released), and compiling it takes hours > (literally). When a > new webkitgtk version comes out, the pain starts all over > again. This > has gotten to the point that currently there is no macOS build > of that > OSS project. Thankfully I haven't committed myself to ever needing to build webkitgtk with this project, it's just a dependency relegated to a package manager (unless you run GNU/Linux From Scratch). > And on top you have a webkit implementation readily available on > the > macOS platform. Hence, we are actively seeking to either replace > webkitgtk with something that works cross-platform, or - in case > there > isn't any such beast - to write a GTK-style wrapper for the > macOS > webkit. > > Thus, my very personal take would be that making webkitgtk a > requirement > is probably not a promising approach if macOS is to remain on > the list > of supported operating systems of this package (assuming that it > would > end up being a package, of course). > Looking forward to your thoughts, It's not even on the list of supported systems right now, so I think I'm safe. In fact part of my motivation for emacs-webkit was precisely because the recently merged xwidget webkit for ns actually seemed to work better than the webkitgtk one. Actually on x11 the webkitgtk xwidget is pretty much unusable because it constantly flickers, but so does emacs-webkit and I haven't been able to figure out why. If you do write a GTK-style wrapper for macOS's ns webkit, that would certainly make it easier to run there, however the lisp portion of emacs-webkit is agnostic to the C module's implementation which mostly just wraps around the necessary functions of webkitgtk's api. Since it's webkit under the hood the ns webkit api is pretty much the same, just in objective-c (or swift). So it should just be a as straight forward as writing a different dynamic module for ns webkit, but which exports the same C functions as the current webkitgtk one. I don't run macOS anymore as they've increasingly made it hostile to customize and develop on outside of xcode, which can't hold a candle to emacs of course (not to mention its sooo not free). Maybe if someone sent me one of those shiny new apple silicon macbooks I'd make an emacs-webkit which worked on macOS, but I'm pretty fond of my current Pinebook Pro ;)