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

From Joao De Almeida Pereira
Subject Re: [pgAdmin4][RM#3155] Allow user to lock the Layout
Date
Msg-id CAE+jjakbvX9bmDH-oFWt8xiGw=-Tes6ULo3Wtozf=m9YRs-TrA@mail.gmail.com
Whole thread Raw
In response to Re: [pgAdmin4][RM#3155] Allow user to lock the Layout  (Murtuza Zabuawala <murtuza.zabuawala@enterprisedb.com>)
Responses Re: [pgAdmin4][RM#3155] Allow user to lock the Layout
List pgadmin-hackers
Hello,

On Mon, Apr 2, 2018 at 10:07 AM Murtuza Zabuawala <murtuza.zabuawala@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
./pgadmin/misc/__init__.py:78: [E303] too many blank lines (2)
1 E303 too many blank lines (2) 
1 


@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?


I think this should be moved to a different thread, because at this point in time we have 3 of our core libraries that are no longer maintained/supported/under active development that I know out of my head. (ACITree, Backbone and wcDocker). I might even add to the mix jquery 1.11.2 because it stopped being actively developed and supported after May 20 of 2016.
 
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

pgadmin-hackers by date:

Previous
From: Joao De Almeida Pereira
Date:
Subject: [pgadmin4][patch] Initial patch to decouple from ACI Tree
Next
From: Joao De Almeida Pereira
Date:
Subject: [pgadmin4][patch] #3244 Query elapse time granularity