On Thu, Jul 12, 2018 at 11:17 AM, Akshay Joshi <
akshay.jo...@enterprisedb.com> wrote:

>
>
> On Wed, Jul 11, 2018 at 8:18 PM, Dave Page <dp...@pgadmin.org> wrote:
>
>>
>>
>> On Wed, Jul 11, 2018 at 11:05 AM, Akshay Joshi <
>> akshay.jo...@enterprisedb.com> wrote:
>>
>>> Hi Dave
>>>
>>> On Wed, Jul 11, 2018 at 1:31 PM, Dave Page <dp...@pgadmin.org> wrote:
>>>
>>>>
>>>>
>>>> On Wed, Jul 11, 2018 at 8:03 AM, Akshay Joshi <
>>>> akshay.jo...@enterprisedb.com> wrote:
>>>>
>>>>> Hi
>>>>>
>>>>> On Tue, Jul 10, 2018 at 9:16 PM, Dave Page <dp...@pgadmin.org> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Tue, Jul 10, 2018 at 4:05 PM, Akshay Joshi <
>>>>>> akshay.jo...@enterprisedb.com> wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Tue, 10 Jul 2018, 18:32 Dave Page, <dp...@pgadmin.org> wrote:
>>>>>>>
>>>>>>>> Hi
>>>>>>>>
>>>>>>>> On Tue, Jul 10, 2018 at 11:20 AM, Akshay Joshi <
>>>>>>>> akshay.jo...@enterprisedb.com> wrote:
>>>>>>>>
>>>>>>>>> Hi Hackers,
>>>>>>>>>
>>>>>>>>> I have implemented the fix for RM #3316 "Pgadmin4 No Tray Crash".
>>>>>>>>> I have implemented it as follows:
>>>>>>>>>
>>>>>>>>>    - Check the availability of System Tray for 30 seconds (no
>>>>>>>>>    changes made here).
>>>>>>>>>    - If System Tray not found create one Floating Window with
>>>>>>>>>    menu. (Refer attached screenshot).
>>>>>>>>>    - I have remove close(x) button of the floating window.
>>>>>>>>>    - Fedora have "Quit" menu for the applications, so I have
>>>>>>>>>    handle the close event and shutdown the python server.
>>>>>>>>>
>>>>>>>>> I have tested this on Fedora-28 (no system tray) and Ubuntu 18.04
>>>>>>>>> (with system tray).
>>>>>>>>>
>>>>>>>>> Please review the screenshot and suggest changes (if any). I'll
>>>>>>>>> send the patch later.
>>>>>>>>>
>>>>>>>>
>>>>>>>> What does the window look like without the menu? I'd suggest
>>>>>>>> putting a Slonik image there, and maybe a note (or a button to display 
>>>>>>>> a
>>>>>>>> note) saying that installing a system tray plugin can be used to hide 
>>>>>>>> the
>>>>>>>> window.
>>>>>>>>
>>>>>>>
>>>>>>>      You mean instead of "pgAdmin4" menu we should add toolbar with
>>>>>>> button having slonik image and when click on there submenus will be 
>>>>>>> open.
>>>>>>>
>>>>>>
>>>>>> No - I assume that's a drop down menu over a blank window? I'm
>>>>>> suggesting something to fill the blank space.
>>>>>>
>>>>>
>>>>>    Attached are the screenshot after adding 'Slonik' icon and 'Note'.
>>>>>
>>>>
>>>> Looks good - though please fix the aspect ratio so it doesn't squish
>>>> the logo. I may tweak the message in review.
>>>>
>>>
>>>     I have tried using "QPixmap", but not able to fix the aspect ratio.
>>>
>>>>
>>>>
>>>>> Should we allow user to resize the floating window? Definitely not
>>>>> maximize, because icon gets blurred.
>>>>>
>>>>
>>>> No - but it should be minimisable.
>>>>
>>>
>>>    Fixed. Attached is the working patch. Please review it.
>>>
>>
>> Thanks. Here's an update to the patch which makes the floating window a
>> Qt Form for ease of maintenance, as well as making a few other tweaks.
>>
>
>     I have applied the patch and found below issues:
>
>    - Slonik icon is not visible, I have remove the QPixmap and apply the
>    style sheet in ui file, it works for me.
>
> I'll bet it was because I told it to use a local file, which it included
without a path. I've seen Qt mess that up before.

>
>    - Window is resizable, to fix that i have set the fixed size.
>
> OK.


>     Please refer "*pgAdmin4_Floating_Window.png*"
>
>>
>> I really dislike the 30 second delay that's caused by the attempt to
>> initialise the tray icon. We need to do something about that;
>>
>
>    Do we need to reduce the delay? Meanwhile I have added some action
> messages like "Checking for system tray..." onto the splash screen, so the
> user will be aware of the actions. Please refer "*Splash_With_Message.png*"
>
>

Yes - we cannot have the check for a system tray taking 30 seconds. People
get very annoyed when pgAdmin takes too long to start!

As a worst case scenario, we can add a command line switch that tells it to
not bother using the tray, which can then be used in the shortcut on the
menu. However, I really would like to make this fully automatic, and near
instantaneous if possible, so let's try to figure it out before falling
back to that hack.


>
>
>> can we start the splash screen and server before trying to create the
>> icon? That way the user can be up and running immediately; they just won't
>> see the tray icon or floating window for a short while.
>>
>
>     Logic to show splash screen is already there and it is before
> initializing the tray icon, but for some reason it is not visible. It is
> visible only when app.exec() will be called. To fix that I'll have to add
> sleep of 1 second before calling processEvents() (googled it).
>

We shouldn't need a sleep - simply processing events should be enough.


>
>     Starting the server before trying to create tray icon shouldn't be a
> good idea, because in case of some error in starting the server, user
> should be able to view the log by clicking the "View log" menu from tray
> icon.
>

Yeah - I'm not sure it's a huge issue as they'll be able to click something
within 30 seconds, but it's certainly far from ideal.

Thanks.


>
>     Attached is the modified patch. Please review it.
>
>>
>> Thanks.
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>
>
>
> --
> *Akshay Joshi*
>
> *Sr. Software Architect *
>
>
>
> *Phone: +91 20-3058-9517Mobile: +91 976-788-8246*
>



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

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

Reply via email to