Further details indicate that once you tick Is Child Table (istable: 1) then it dissappears from module view. Thereafter you tick istable off, it still remains hidden. Still trying to figure out where is it recording this istable value and not forgetting it?
I just created a Custom Doctype (not child), and found that link was added in the Setup section. Can you create a new Doctype and check if it works. Which version of ERPnext are you working on?
The new doctype takes time to be visible on the Desk, so that’s not a problem. Problem is when it is changed to Child Table and back to non-child table. Looks like it’s storing this state somewhere.
For others who face similar issues. Note that when you update the icon in DocType and it doesn’t reflect in desktop, it’s because one has to remote it so that the record gets deleted from tabDesktop Icon table and then re-add to the desktop. Alternative is to update the icon in tabDesktop Icon table from values in tabDocType table. Joining column is tabDesktop Icon.label = tabDocType.name