On Wed, Apr 4, 2018 at 2:47 PM, Dave Page <dp...@pgadmin.org> wrote: > > > On Wed, Apr 4, 2018 at 7:20 AM, Murtuza Zabuawala <murtuza.zabuawala@ > enterprisedb.com> wrote: > >> Hi Dave, >> >> On Tue, Apr 3, 2018 at 9:03 PM, Dave Page <dp...@pgadmin.org> wrote: >> >>> Hi >>> >>> On Tue, Apr 3, 2018 at 12:56 PM, Murtuza Zabuawala < >>> murtuza.zabuaw...@enterprisedb.com> wrote: >>> >>>> Hi, >>>> >>>> Thanks Joao for reviewing. >>>> >>>> PFA updated patch. >>>> >>>> On Tue, Apr 3, 2018 at 1:11 AM, Joao De Almeida Pereira < >>>> jdealmeidapere...@pivotal.io> wrote: >>>> >>>>> Hello, >>>>> >>>>> On Mon, Apr 2, 2018 at 10:07 AM Murtuza Zabuawala < >>>>> murtuza.zabuaw...@enterprisedb.com> 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-3155-python-linter/builds/3#L5ab982d1:9> >>>>> ./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-3155-python-linter/builds/3#L5ab982d1:10> >>>>> 1 E303 too many blank lines (2) >>>>> >>>>> <https://gpdb-dev.bosh.pivotalci.info/teams/main/pipelines/pgadmin-feature-branches/jobs/pivotal-rm-3155-python-linter/builds/3#L5ab982d1:11> >>>>> >>>>> 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 :( > > -- > Dave Page > Blog: http://pgsnake.blogspot.com > Twitter: @pgsnake > > EnterpriseDB UK: http://www.enterprisedb.com > The Enterprise PostgreSQL Company >