For built in mobile support your content has to be wrapped inside
another div with the id app-content-wrapper.

Navigation

ownCloud provides a default CSS navigation layout. If list entries
should have 16x16 px icons, the with-icon class can be added to the
base ul. The maximum supported indention level is two; we do not
recommend further indentations.

Folders

Folders are like normal entries and are only supported for the first
level. In contrast to standard entries, the links which show the title
of the folder need to have the icon-folder CSS class.

If the folder should be collapsible, the collapsible class and a
button with the class collapse are needed. After adding the
collapsible class the folder’s child entries can be toggled by adding
the open class to the list element:

Drag and Drop

The class which should be applied to a first level element (li) that
hosts or can host a second level is drag-and-drop. This will cause the
hovered entry to slide down giving a visual hint that it can accept the
dragged element. In the case of jQuery UI’s droppable feature, the
hoverClass option should be set to the drag-and-drop class.

Menus

To add actions that affect the current list element, you can add a menu
for second and/or first level elements by adding the button and menu
inside the corresponding li element and adding the with-menu CSS
class:

The div with the class app-navigation-entry-utils contains only the
button (class: app-navigation-entry-utils-menu-button) to display the
menu but in many cases, another entry is needed to display some sort of
count (mails count, unread feed count, etc.). In that case, add the
with-counter class to the list entry to adjust the correct padding and
text-overflow of the entry’s title.

The count should be limited to 999 and turn to 999+ if any higher number
is given. If AngularJS is used the following filter can be used to get
the correct behavior:

The menu is hidden by default (display: none) and has to be triggered
by adding the open class to the app-navigation-entry-menu div. In
the case of AngularJS the following small directive can be added to
handle all the display and click logic out of the box: