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

Code:
    beforeColMenuShow : function(){
        var cm = this.cm,  colCount = cm.getColumnCount();
        this.colMenu.removeAll();
        for(var i = 0; i < colCount; i++){
            if(cm.config[i].fixed !== true && cm.config[i].hideable !== false){
                this.colMenu.add(new Ext.menu.CheckItem({
                    id: "col-"+cm.getColumnId(i),
                    text: cm.getColumnHeader(i),
                    checked: !cm.isHidden(i),
                    hideOnClick:false,
                    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.