Merge lp:~openerp-dev/openerp-web/7.0-timesheet-vme into lp:openerp-web/7.0

Proposed by Vidhin Mehta (OpenERP)
Status: Merged
Merged at revision: 3769
Proposed branch: lp:~openerp-dev/openerp-web/7.0-timesheet-vme
Merge into: lp:openerp-web/7.0
Diff against target: 21 lines (+2/-2)
1 file modified
addons/web/static/src/js/views.js (+2/-2)
To merge this branch: bzr merge lp:~openerp-dev/openerp-web/7.0-timesheet-vme
Reviewer Review Type Date Requested Status
Vidhin Mehta (OpenERP) (community) Needs Resubmitting
Fabien Meghazi (OpenERP) (community) Needs Resubmitting
Review via email: mp+144216@code.launchpad.net

Description of the change

# In *instance.web.ViewManager* it selects only first element to render view and not the accurate element.

Test Case:
# goto Human Resources -> My Current Timesheet and switch between form-list.(List view is blank)
To see video : https://docs.google.com/open?id=0By4GWTWr6HDNckhiQ2lYbDVTbnM

Solution:
# Given unique "id" to each ViewManager template's *div.oe_view_manager_view*, find that "id" and "view_type" to select element.

To post a comment you must log in.
Revision history for this message
Fabien Meghazi (OpenERP) (fme) wrote :

Could you elaborate your first sentence ? I don't understand what this branch is supposed to fix.

review: Needs Information
Revision history for this message
Vidhin Mehta (OpenERP) (vme-openerp) wrote :

> Could you elaborate your first sentence ? I don't understand what this branch
> is supposed to fix.

>> In class *instance.web.ViewManager* in that method *do_create_view* for *container* variable.

>> container holds list of element which is find by (".oe_view_manager_view_" + view_type).

>> when appending controller to container it will select first element of *container*,not accurate element.

>> So, in solution when creating hook given unique_id,so it will helpfull while finding accurate container.

>> From menu when form view load first (and contain one2manylist) than switching to list,it shows blank.because
 list view rendered on wrong container.

Revision history for this message
Fabien Meghazi (OpenERP) (fme) wrote :

Ok, I see. Please do not use those id stuff. Just change the selector.

Eg: "> .oe_view_manager_body > .oe_view_manager_view_" + view_name + ":first"

review: Needs Resubmitting
3710. By Vidhin Mehta (OpenERP)

[MERGE]7.0

3711. By Vidhin Mehta (OpenERP)

[FIX]select accurate element with use of 'child selector'.

Revision history for this message
Vidhin Mehta (OpenERP) (vme-openerp) wrote :

Good Idea.Even no need of ":first".

review: Needs Resubmitting

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'addons/web/static/src/js/views.js'
2--- addons/web/static/src/js/views.js 2013-02-19 18:15:19 +0000
3+++ addons/web/static/src/js/views.js 2013-02-20 13:28:21 +0000
4@@ -576,7 +576,7 @@
5 _.each(_.keys(self.views), function(view_name) {
6 var controller = self.views[view_name].controller;
7 if (controller) {
8- var container = self.$el.find(".oe_view_manager_view_" + view_name + ":first");
9+ var container = self.$el.find("> .oe_view_manager_body > .oe_view_manager_view_" + view_name);
10 if (view_name === view_type) {
11 container.show();
12 controller.do_show(view_options || {});
13@@ -619,7 +619,7 @@
14 controller.on('switch_mode', self, this.switch_mode);
15 controller.on('previous_view', self, this.prev_view);
16
17- var container = this.$el.find(".oe_view_manager_view_" + view_type);
18+ var container = this.$el.find("> .oe_view_manager_body > .oe_view_manager_view_" + view_type);
19 var view_promise = controller.appendTo(container);
20 this.views[view_type].controller = controller;
21 this.views[view_type].deferred.resolve(view_type);