protected void setFocusable(Element elem, boolean focusable) {
        if (focusable) {
            FocusImpl focusImpl = FocusImpl.getFocusImplForWidget();
            focusImpl.setTabIndex(elem, getTabIndex());
            if (accessKey != 0) {
                focusImpl.setAccessKey(elem, accessKey);
            }
        } else {
            // Chrome: Elements remain focusable after removing the tabIndex, so set
            // it to -1 first.
            elem.setTabIndex(-1);
            elem.removeAttribute("tabIndex");
            elem.removeAttribute("accessKey");
        }
    }
Make an element focusable or not.

@param elem the element
@param focusable true to make focusable, false to make unfocusable
stroom-core-client-widget/src/main/java/com/google/gwt/user/cellview/client/AbstractHasData.java