Thanks Dave for positing this different approach to eliminate some of the Qt 
rendering overhead.

 

I can say, running on a 2017 mac book pro (10.13.2), the speed improvement is 
noticeable. The increased speed that tree nodes expand and result grids present 
are very appreciated.

 

I am hoping that a next step would be present the UI loaded from 1.27.0.0.1 
within a pgAdmin4 branded window, as Command-Tabbing to pgAdmin4 is preferable 
to finding a Safari window amongst the numerous Safari windows/tabs I usually 
have open.

 

Keep up the good work and thanks!

 

Alan

 

From: Dave Page <dp...@pgadmin.org>
Date: Tuesday, January 23, 2018 at 9:48 AM
To: "pgadmin-hackers@lists.postgresql.org" 
<pgadmin-hackers@lists.postgresql.org>, "pgadmin-support lists.postgresql.org" 
<pgadmin-supp...@lists.postgresql.org>
Subject: Request for feedback: Alternate desktop runtime architecture

 

****This email did not originate from the Premier, Inc. network. Use caution 
when opening attachments or clicking on URLs.*****


.

All, 

 

As you may know, the most troublesome part of pgAdmin 4 has been the desktop 
runtime application, which has relied on QtWebKit and QtWebEngine (of various 
origins and versions) to render the UI as part of the Qt framework.

 

This has caused performance issues, rendering issues with remote desktop 
sessions, keyboard navigation issues and more. It probably accounts for 25% or 
more of the bugs reports we deal with.

 

Unfortunately, whilst there are alternatives to Qt for this purpose, none that 
we've found are mature enough for our purposes, and would require a significant 
amount of effort to add the features we would need to support pgAdmin.

 

I've therefore been experimenting with another approach in which pgAdmin is 
rendered in a regular web browser when running in desktop mode. Like some other 
similar applications, a server process is launched and lives in the system 
tray, from where it can be shutdown at any time, or new windows opened. When it 
is first started, it will launch a browser window to render pgAdmin 
automatically. If additional instances are launched, the previously running 
instance will be re-used to avoid wasting resources.

 

This is a proof of concept at the moment, for which I would appreciate any 
feedback. Windows and Mac builds can be found here:

 

https://developer.pgadmin.org/~dpage/runtime-revamp/

 

and the GIT branch can be found here:

 

https://git.postgresql.org/gitweb/?p=pgadmin4.git;a=shortlog;h=refs/heads/runtime-revamp

 

Thanks!
 

-- 

Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to