Opened 7 years ago

Closed 6 years ago

#14979 closed defect (patchwelcome)

Menu on a EnhancedGrid behaves weird when the container takes 100% width and height

Reported by: jlmagc Owned by: Evan
Priority: undecided Milestone: tbd
Component: DojoX Grid Version: 1.6.1
Keywords: Cc:
Blocked By: Blocking:

Description

Hello,

I've spent some time simplifying the code to get a simple example of the problem. I'm using Dojo 1.6.1. I've a TabContainer? defined on my page. Dinamically, I add to it two tabs, each one of them contains an EnhancedGrid? with a rowMenu(right click). The issue is that the menu does not work correctly on IE8 if the TabContainer? is defined to use all the space available on the page. If I use a specific height and width, it works fine. By not working correctly I mean the following: The menu is pretty simple; it has just two MenuItem?, one of them is a PopupMenu? that shows a submenu, as follows:

If the TabContainer? takes all the available width and height, the menu does something very strange. First, if you do a right click over a row, it does not do anything. You need to a second right click. Then the menu shows, but when you open the submenu, the main menu disapears, and the submenu does not work. It keeps floating around until you navigate to other page:

When it fails, it throws a javascript error saying "'undefined' is null or not an object", on the line 208 of dojox/grid/_FocusManager.js

[...]

_scrollHeader: function(currentIdx){

var info = null; if(this._colHeadNode){

var cell = this.grid.getCell(currentIdx); info = this._scrollInfo(cell, cell.getNode(0));

}

[...]

I've tried to create a jsfiddle sample, but Dojo 1.6.1 is not available there, and with Dojo .1.6.0 the behaviour is diferent (You need to do a left click on the row and then a right click, and then the menu works fine), so I've created a simple HTML sample you can see on http://pastebin.com/jDNFQxrP. To see the difference you just need to change the commented TabContainer? at the bottom of the code.

Attachments (1)

Test menu.html (5.1 KB) - added by jlmagc 7 years ago.

Download all attachments as: .zip

Change History (3)

Changed 7 years ago by jlmagc

Attachment: Test menu.html added

comment:1 Changed 6 years ago by bill

DojoX Grid and EnhancedGrid are deprecated in favor of dgrid and gridx.

You should upgrade your code to use one of those two grids.

We will consider patches to the old DojoX Grid code though.

comment:2 Changed 6 years ago by bill

Resolution: patchwelcome
Status: newclosed
Note: See TracTickets for help on using tickets.