public inbox for [email protected]  
help / color / mirror / Atom feed
From: Robert Eckhardt <[email protected]>
To: Khushboo Vashi <[email protected]>
Cc: Dave Page <[email protected]>
Cc: Murtuza Zabuawala <[email protected]>
Cc: Joao De Almeida Pereira <[email protected]>
Cc: pgadmin-hackers <[email protected]>
Subject: Re: [pgAdmin4][RM#3155] Allow user to lock the Layout
Date: Thu, 5 Apr 2018 09:02:29 -0400
Message-ID: <CAAtBm9WSP7L5Yqm_oXwa4ZUoLM9tv3awqj_XTqPBQ4VDS0CwMg@mail.gmail.com> (raw)
In-Reply-To: <CAFOhELcMaBBKCMN5Tt5=qU_e3Y2VnqeGxsFHkoyCk7JnoA4zAg@mail.gmail.com>
References: <CAKKotZSqHYYcXhzu84bHZs9Fn=YbkWVa3ACfHp7m9v_Q7rn-XA@mail.gmail.com>
	<CA+OCxoz0pAUgXGgt5COEWWQGsR4TieXwaVgHWcJjz4_yz_hB3Q@mail.gmail.com>
	<CAE+jja=ToKOKpPLVG+ZzRjNnVhfut6h2XfJ7=wSzeiXMBSoRjw@mail.gmail.com>
	<CAKKotZSdDt891jVAnjjpq2uXyKaNFcVh0o4boL-gu6yGTTk8OA@mail.gmail.com>
	<CAE+jjakbvX9bmDH-oFWt8xiGw=-Tes6ULo3Wtozf=m9YRs-TrA@mail.gmail.com>
	<CAKKotZT4efT8zkocxXyNN=gf3tUcqtT7UiFNSn9KLUvpW-pnOg@mail.gmail.com>
	<CA+OCxoyOENFGgxYskG5MMx5S+aKW1H=3F9rFFN+MOkRnSWehdw@mail.gmail.com>
	<CAKKotZTu93swLkwLS_B87Sq0iZs6MkkLRsLhu-X8zjRipm2yPQ@mail.gmail.com>
	<CA+OCxoy3e1T=EC5VWmZob_y7TnoDTA0rFCWfhQB0R+6Zp=drnw@mail.gmail.com>
	<CAKKotZSG6d4C38XtYwUw9rP1M7XTXwFXKuxS6f3SCddTFpscBg@mail.gmail.com>
	<CA+OCxoxkdWagYLup6t+7nMT9UO2=nXiufN65QwRebdYq8Y9F9w@mail.gmail.com>
	<CAKKotZS9=Q5_hUonSpP7rW6zh7A4MpfOjA1ar1gvo-MdN1NsLA@mail.gmail.com>
	<CA+OCxowHEYcqKrhDsLVYfCySvenkxYi2PbvGbdjK9-ohLO8TOA@mail.gmail.com>
	<CAFOhELcMaBBKCMN5Tt5=qU_e3Y2VnqeGxsFHkoyCk7JnoA4zAg@mail.gmail.com>

On Wed, Apr 4, 2018 at 11:31 PM, Khushboo Vashi <
[email protected]> wrote:

>
>
> On Wed, Apr 4, 2018 at 8:09 PM, Dave Page <[email protected]> wrote:
>
>>
>>
>> On Wed, Apr 4, 2018 at 12:54 PM, Murtuza Zabuawala <
>> [email protected]> wrote:
>>
>>> On Wed, Apr 4, 2018 at 5:00 PM, Dave Page <[email protected]> wrote:
>>>
>>>>
>>>>
>>>> On Wed, Apr 4, 2018 at 10:45 AM, Murtuza Zabuawala <
>>>> [email protected]> wrote:
>>>>
>>>>> On Wed, Apr 4, 2018 at 2:47 PM, Dave Page <[email protected]> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Wed, Apr 4, 2018 at 7:20 AM, Murtuza Zabuawala <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi Dave,
>>>>>>>
>>>>>>> On Tue, Apr 3, 2018 at 9:03 PM, Dave Page <[email protected]> wrote:
>>>>>>>
>>>>>>>> Hi
>>>>>>>>
>>>>>>>> On Tue, Apr 3, 2018 at 12:56 PM, Murtuza Zabuawala <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> Thanks Joao for reviewing.
>>>>>>>>>
>>>>>>>>> PFA updated patch.
>>>>>>>>>
>>>>>>>>> On Tue, Apr 3, 2018 at 1:11 AM, Joao De Almeida Pereira <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>> Hello,
>>>>>>>>>>
>>>>>>>>>> On Mon, Apr 2, 2018 at 10:07 AM Murtuza Zabuawala <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ​Hello,
>>>>>>>>>>>
>>>>>>>>>>> Please find updated patch,
>>>>>>>>>>>
>>>>>>>>>>> Now layout will be locked after user updates its preferences, w
>>>>>>>>>>> e have used ​
>>>>>>>>>>> templated variable in the javascript file
>>>>>>>>>>> ​ because we do not have preference module or preference cache
>>>>>>>>>>> available when the page loads and panels gets rendered,
>>>>>>>>>>> ​I
>>>>>>>>>>> ​ also
>>>>>>>>>>> made changes in JS tests as per Joao's review comments.
>>>>>>>>>>>
>>>>>>>>>> Looks like everything is working when we change the lock.
>>>>>>>>>> As a personal preferences I would prefer to see this in at least
>>>>>>>>>> 2 commits, one that is related to the preference issue and another one that
>>>>>>>>>> is related to this story.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> All the tests are working, but he linter is failing:
>>>>>>>>>>
>>>>>>>>>> /tmp/build/4a5630c2/pivotal-rm-3155/web /tmp/build/4a5630c2
>>>>>>>>>>  <https://gpdb-dev.bosh.pivotalci.info/teams/main/pipelines/pgadmin-feature-branches/jobs/pivotal-rm-3...;
>>>>>>>>>> ./pgadmin/misc/__init__.py:78: [E303] too many blank lines (2)
>>>>>>>>>>  <https://gpdb-dev.bosh.pivotalci.info/teams/main/pipelines/pgadmin-feature-branches/jobs/pivotal-rm-3...;
>>>>>>>>>> 1       E303 too many blank lines (2)
>>>>>>>>>>  <https://gpdb-dev.bosh.pivotalci.info/teams/main/pipelines/pgadmin-feature-branches/jobs/pivotal-rm-3...;
>>>>>>>>>>
>>>>>>>>>> 1
>>>>>>>>>>
>>>>>>>>> ​Fixed​
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> @Dave/Pivotal team,
>>>>>>>>>>> The given patch is working fine for all the Tabs/Panels (all the
>>>>>>>>>>> panels from main window as well as from Query tool and Debugger) but I'm
>>>>>>>>>>> facing an issue while handling the Browser tree section, It is a wcDocer
>>>>>>>>>>> frame <http://docker.api.webcabin.org/module-wcFrame.html; and
>>>>>>>>>>> not a wcDocker panel
>>>>>>>>>>> <http://docker.api.webcabin.org/module-wcPanel.html;. Like
>>>>>>>>>>> wcDocker panel, wcDocker frame do not provide any API so that a developer
>>>>>>>>>>> can prevent drag-drop functionality on it.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>> It's not working fine for me. For example, if I put the SQL Panel
>>>>>>>> on it's own below the properties/stats panels (so it looks like pgAdmin 3
>>>>>>>> used to by default), and then lock the layout, I can un-dock the SQL panel
>>>>>>>> into a dialogue, but then cannot re-dock it. I can do weird things with the
>>>>>>>> browser tree as well, probably because it's a frame as you say.
>>>>>>>>
>>>>>>>
>>>>>>> ​That is expected behaviour ​because once you drag the panel out of
>>>>>>> the group of Panels then it becomes individual Frame, That is what the
>>>>>>> author of the wcDocker replied on my question,
>>>>>>> *"A panel must either be initialized as movable or non-movable from
>>>>>>> the beginning and never changed because it generates a different
>>>>>>> arrangement of elements depending. This feature should only ever be used
>>>>>>> within the onCreate method of the panel. I should probably have been more
>>>>>>> clear about this limitation in the documentation."*
>>>>>>>
>>>>>>>
>>>>>> So does it become a panel again if a second panel is added to the new
>>>>>> tab group?
>>>>>>
>>>>> ​No, it stays Frame.​
>>>>>
>>>>> As far as I understand Panel needs a Frame to render itself if it is
>>>>> not attached to the main docker instance.​
>>>>>
>>>>>>
>>>>>> There must be some way we can lock a tab that's not part of a group.
>>>>>>
>>>>> At a moment there is no way of ​
>>>>> locking frames out of the box :(
>>>>> ​
>>>>>
>>>>
>>>> Hmm, so the question becomes: do we include the lock feature, but
>>>> rename it to "Lock Tabs" or something similar, or leave it out altogether?
>>>> It clearly doesn't do everything we want right now.
>>>>
>>> ​I would say lets include the feature by adding warning note that this
>>> feature works with default layout only, And I don't think most user will
>>> try to drag drop Browser panel ​
>>> anyway, meanwhile I'll check what changes are required in main source
>>> code to make the Frame lock.
>>>
>>
>> Anyone else have any thoughts on this? Personally I don't like including
>> half-baked features.
>>
>> +1, but we need to find out the way as this feature is requested by many
> users.
>

100% agree. I can convince my self that this feature request has to do with
locking panels into a certain layout. I can also convince myself that the
same request is simple because users are frustrated with the fact that the
tabs and panes move around and they find that behavior annoying.

-- Rob


> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>
>


view thread (33+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected], [email protected], [email protected]
  Subject: Re: [pgAdmin4][RM#3155] Allow user to lock the Layout
  In-Reply-To: <CAAtBm9WSP7L5Yqm_oXwa4ZUoLM9tv3awqj_XTqPBQ4VDS0CwMg@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox