Re: [pgAdmin4][RM#3155] Allow user to lock the Layout - Mailing list pgadmin-hackers

From Murtuza Zabuawala
Subject Re: [pgAdmin4][RM#3155] Allow user to lock the Layout
Date
Msg-id CAKKotZSdDt891jVAnjjpq2uXyKaNFcVh0o4boL-gu6yGTTk8OA@mail.gmail.com
Whole thread Raw
In response to Re: [pgAdmin4][RM#3155] Allow user to lock the Layout  (Joao De Almeida Pereira <jdealmeidapereira@pivotal.io>)
Responses Re: [pgAdmin4][RM#3155] Allow user to lock the Layout
List pgadmin-hackers

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

@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 and not a wcDocker panel. Like wcDocker panel, wcDocker frame do not provide any API so that a developer can prevent drag-drop functionality on it.

By visiting wcDocker github page It looks like it not actively maintained.
What do you suggest how should we tackle this issue?

For time being, I've created subtask for this issue https://redmine.postgresql.org/issues/3243

Thanks,
Murtuza
 ​
On Thu, Mar 29, 2018 at 8:57 PM, Joao De Almeida Pereira <jdealmeidapereira@pivotal.io> wrote:
Hi Murtuza,

After changing the setting in the preferences nothing happened, we had to reset the layout or refresh the app to see it working. It only looks the right side. Was this the intended behavior?

Not sure if this is the expected behavior or not. I would expect that any change I do in the preferences would start working after I press the Save button. This also happens with other preferences that only take effect after refresh on the browser.
This being said, not sure if having the templated variable in the javascript file is the best approach in this case.

Do you think you can remove the requirejs tags on the tests?

At the testing file you do not need to create 3 different variables for the panels, you can reuse it, because the beforeEach will run for every test

Thanks
Joao

On Thu, Mar 29, 2018 at 9:48 AM Dave Page <dpage@pgadmin.org> wrote:
Hi

On Thu, Mar 29, 2018 at 2:15 PM, Murtuza Zabuawala <murtuza.zabuawala@enterprisedb.com> wrote:
Hi,

PFA patch which will allow user to lock the panels and it will not allow user to drag & drop them.

Tests pass, but when I lock the layout, I can still drag panels and adjust the splitters etc. After doing so,  reset the layout and now have the broken layout seen in the attached screenshot. I have rebuilt the bundle, reloaded etc. 

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

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

Attachment

pgadmin-hackers by date:

Previous
From: Akshay Joshi
Date:
Subject: Regarding RM #2214 SCRAM Authentication for Change Password
Next
From: Joao De Almeida Pereira
Date:
Subject: [pgadmin4][patch] Initial patch to decouple from ACI Tree