This is strange code (from GridView.js):-

    beforeColMenuShow : function(){
        var cm =,  colCount = cm.getColumnCount();
        for(var i = 0; i < colCount; i++){
            if(cm.config[i].fixed !== true && cm.config[i].hideable !== false){
                    id: "col-"+cm.getColumnId(i),
                    text: cm.getColumnHeader(i),
                    checked: !cm.isHidden(i),
                    disabled: cm.config[i].hideable === false
Why is it that a fixed column (i.e. one whose width cannot be changed) is excluded from the column menu, preventing it from being shown/hidden by the user? Surely the only applicable property here is 'hideable'?

Or am I missing something?

I see that exactly the same code is present in 3.0 RC2.