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"
>
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. |