Re: RM#3294 - User need to reset the layout to see the changed preferences parameters

From: Khushboo Vashi <khushboo(dot)vashi(at)enterprisedb(dot)com>
To: Aditya Toshniwal <aditya(dot)toshniwal(at)enterprisedb(dot)com>
Cc: Victoria Henry <vhenry(at)pivotal(dot)io>, Harshal Dhumal <harshal(dot)dhumal(at)enterprisedb(dot)com>, pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>
Subject: Re: RM#3294 - User need to reset the layout to see the changed preferences parameters
Date: 2018-06-15 05:16:16
Message-ID: CAFOhELeSmy8e6aGr1ZmwEq4d91JvQ1cYejBMNkc1dOv3o=+2Jw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

On Thu, Jun 14, 2018 at 6:54 PM, Aditya Toshniwal <
aditya(dot)toshniwal(at)enterprisedb(dot)com> wrote:

> Hi Victoria/Hackers,
>
> On Tue, Jun 12, 2018 at 9:52 PM, Victoria Henry <vhenry(at)pivotal(dot)io> wrote:
>
>> Hi Aditya,
>>
>>
>> It is not possible to fire event in another tab/new browser window. For
>>>>> example, query tool can be open in another tab. And thus, changes are not
>>>>> reflected there. There are solutions available like updating the
>>>>> localStorage of the browser but those are not reliable and does not work
>>>>> properly on different browsers.
>>>>>
>>>> To communicate between browser tabs we can use cookie polling on client
>>>> side it self (at least it will avoid polling over http).
>>>> The main tab will update only preference specific cookie when
>>>> preference is updated and other tabs will poll required cookies (not all)
>>>> with specific interval (1 second can be configurable).
>>>>
>>> Polling is a solution but I think it should be the last option. http
>>> polls will not be required anyway as we have preference cache in the
>>> browser object.
>>>
>>
>> Maybe it's better to poll only when an editor is open in a separate
>> window? What would we be polling for and how would be tell the backend
>> that something changed during the poll?
>>
>
> ​Currently I am using the cache_preferences function to fire the events.​
> cache_preferences is called whenever preferences are changed. I suggest we
> add kind of version for the preference cache, lets say prefcache_version
> and we can set it to current epoch time whenever the cache_preference is
> called.
> ​
> ​ Now, when a new tab/window is opened, it will store the version of
> prefcache it is having. When the main window changes the preferences and
> cache_preference is called, the prefcache_version will increase to current
> epoch time. New tab polling can check if the version has increased and can
> update ​its preferences along with prefcache_version.
>
> Sounds good to me.

> ​Please let me know if any suggestions.​
>
>
>> Thanks
>> Victoria & Joao
>>
>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Software Engineer | EnterpriseDB Software Solutions | Pune
> "Don't Complain about Heat, Plant a tree"
>

In response to

Browse pgadmin-hackers by date

  From Date Subject
Next Message Khushboo Vashi 2018-06-15 05:32:58 Re: pgadmin_page functions updated
Previous Message Dave Page 2018-06-14 16:03:20 pgAdmin 4 commit: Don't pipe the list of binaries through uniq.