So, I have an update... the good news is that I was able to get the codebase to build with NPAPI (mostly) disabled on both Windows and Linux. I even checked that it works with GTK2 and GTK3. So if you want to build with GTK2 and no NPAPI for some reason, you could. I figure if that work is actually going to be done, it might as well work with everything.
The bad news is... it required so many ifdefs that my changes will be hard to follow, it has not been tested on Mac, and the platform's behavior may change in unpredictable ways for people who build it this way. It does seem like we're between a rock and a hard place here. Either we take a patch that pretty much breaks extensions while claiming to just disable GTK2 (which I will admit is kinda hacky), or we take on a mammoth patch that touches every part of the codebase with ifdefs for an option we probably won't build with officially anyway. Well, I might actually ship Epyrus on Linux with it if it goes in, since it's already GTK3-only anyway, and I don't believe there are any NPAPI plugins that support Epyrus... but I would have to do research to make sure it doesn't hurt anything.
Even if we don't wind up merging this, I will go ahead and leave it available as a potential patch for anyone who wants it... since I already did the work before looking back and realizing how out of control it had gotten.
https://repo.palemoon.org/athenian200/U ... sable_work
Note that for some weird reason, the moz.build files look wonky... some of the lines don't have the amount of space I would expect and seem misaligned. I swear they look absolutely fine on my host system, but for some reason when I pushed my branch up, they look wrong in Gitea. I think it has something to do with my copy/pasting stuff from the original moz.build files, and them using tabs in some places. It doesn't seem to affect building in my testing, but it is something I would want to go back and fix before submitting a PR...
The bad news is... it required so many ifdefs that my changes will be hard to follow, it has not been tested on Mac, and the platform's behavior may change in unpredictable ways for people who build it this way. It does seem like we're between a rock and a hard place here. Either we take a patch that pretty much breaks extensions while claiming to just disable GTK2 (which I will admit is kinda hacky), or we take on a mammoth patch that touches every part of the codebase with ifdefs for an option we probably won't build with officially anyway. Well, I might actually ship Epyrus on Linux with it if it goes in, since it's already GTK3-only anyway, and I don't believe there are any NPAPI plugins that support Epyrus... but I would have to do research to make sure it doesn't hurt anything.
Even if we don't wind up merging this, I will go ahead and leave it available as a potential patch for anyone who wants it... since I already did the work before looking back and realizing how out of control it had gotten.
https://repo.palemoon.org/athenian200/U ... sable_work
Note that for some weird reason, the moz.build files look wonky... some of the lines don't have the amount of space I would expect and seem misaligned. I swear they look absolutely fine on my host system, but for some reason when I pushed my branch up, they look wrong in Gitea. I think it has something to do with my copy/pasting stuff from the original moz.build files, and them using tabs in some places. It doesn't seem to affect building in my testing, but it is something I would want to go back and fix before submitting a PR...
Off-topic:
Sigh... why did they all have to build their NPAPI plugins against an unreliable library like GTK2, that expires as fast as milk? Couldn't they have just drawn their own widgets or something? It's such a waste...
Sigh... why did they all have to build their NPAPI plugins against an unreliable library like GTK2, that expires as fast as milk? Couldn't they have just drawn their own widgets or something? It's such a waste...