On Thu, Mar 22, 2018 at 10:19 AM, Neel Patel <neel.pa...@enterprisedb.com> wrote:
> Hi, > > On Thu, Mar 22, 2018 at 3:19 PM, Dave Page <dp...@pgadmin.org> wrote: > >> All, >> >> As you know, the 3.0 release is currently on hold as we discovered late >> yesterday that the re-vamped desktop runtime will not run on Gnome 3.26 and >> later. This is because the GTK project, and later Gnome, have removed >> support for the System Tray on which the new runtime relies. >> >> They have replaced it with a notification mechanism, however this doesn't >> really meet our needs as what we want is a place (the tray icon) to attach >> a menu to control the pgAdmin server; we don't really use notifications as >> such. >> >> I see a number of possible ways around this: >> >> 1) Return to the previous runtime. I think this is at best a short-term >> solution, as the re-visited Annulen version of the QtWebKit seems to be >> getting little attention at the moment, and this would re-introduce many >> known bugs caused by WebKit. >> >> 2) Re-work the current runtime code to remove the tray icon, and utilise >> desktop/start menu items to signal the running instance to show the logs, >> configure the server, exit etc. This should work, but will be kinda klunky. >> >> 3) Put effort into polishing Joao's Electron based runtime. This might be >> a good long term solution as it would remove the need to have any C++ code >> of our own, and might allow us to use Electron's update mechanism to do >> software updates. The downsides are that we would lose support for dockable >> tabs (new windows only), and it wouldn't work on CentOS/RHEL 6 which we >> currently support. >> >> Thoughts and comments please folks? How do we want to proceed? I'm >> currently leaning towards 2 for v3, and possibly moving to 3 in the long >> term. >> > > As per our previous efforts on Qt's web rendering framework, I am not in > favor of adding it again as it add lots of dependency and complexity. > I would suggest to go for option 2 - To re-work the current runtime code > and find out how to get already running instance of pgadmin4. > We have a shared memory interlock as well as temp/lock files that encode the executable path into their name that handles that already, though it doesn't seem to be working quite as expected when you run from a Mac Appbundle (which Akshay is working on). The issue would be how we signal the running instance and tell it to do something, e.g. exit. -- Dave Page Blog: http://pgsnake.blogspot.com Twitter: @pgsnake EnterpriseDB UK: http://www.enterprisedb.com The Enterprise PostgreSQL Company