anchor.diff:  
       super->constructor( ).
   
  -  ENDMETHOD.
  +  ENDMETHOD.  " constructor
  +
  +  METHOD lif_gui_page~on_event.
  +
  +    DATA: lv_key  TYPE lcl_persistence_repo=>ty_repo-key,
  +          lv_url  TYPE string.
  +
  +    lv_key   = iv_getdata.
  +
  +    CASE iv_action.
  +      WHEN gc_action-repo_newoffline.   " New offline repo
  +        lcl_services_repo=>new_offline( ).
  +        ev_state = gc_event_state-re_render.
  +      WHEN gc_action-git_branch_delete. " Delete remote branch
  +        lcl_services_git=>delete_branch( lv_key ).
  +        ev_state = gc_event_state-re_render.
  +      WHEN gc_action-git_branch_switch. " Switch branch
  +        lcl_services_git=>switch_branch( lv_key ).
  +        ev_state = gc_event_state-re_render.
  +      WHEN c_actions-show.              " Change displayed repo
  +        lcl_app=>user( )->set_repo_show( lv_key ).
  +        ev_state = gc_event_state-re_render.
  +      WHEN c_actions-toggle_hide_files. " Toggle file diplay
  +        lcl_app=>user( )->toggle_hide_files( ).
  +        ev_state = gc_event_state-re_render.
  +    ENDCASE.
  +
  +  ENDMETHOD.  "on_event
  +
  +**********************************************************************
  +* RENDERING
  +**********************************************************************
  +
  +  METHOD lif_gui_page~render.
  +
  +    DATA: lt_repos   TYPE lcl_repo_srv=>ty_repo_tt,
  +          lx_error   TYPE REF TO lcx_exception,
  +          lo_repo    LIKE LINE OF lt_repos.
  +
  +    retrieve_active_repo( ). " Get and validate key of user default repo
  +    mv_hide_files = lcl_app=>user( )->get_hide_files( ).
  +
  +    CREATE OBJECT ro_html.
  +
  +    ro_html->add( header( io_include_style = styles( ) ) ).
  +    ro_html->add( title( iv_title = 'HOME'
  +                         io_menu  = build_main_menu( ) ) ).
  +
  +    TRY.
  +        lt_repos = lcl_app=>repo_srv( )->list( ).
  +      CATCH lcx_exception INTO lx_error.
  +        ro_html->add( render_error( lx_error ) ).
  +    ENDTRY.
  +
  +    ro_html->add( render_toc( lt_repos ) ).
  +
  +    IF lines( lt_repos ) = 0 AND lx_error IS INITIAL.
  +      ro_html->add( render_explore( ) ).
  +    ELSE.
  +      lo_repo = lcl_app=>repo_srv( )->get( mv_show ).
  +      ro_html->add( render_repo( lo_repo ) ).
  +    ENDIF.
  +
  +    ro_html->add( footer( ) ).
  +
  +  ENDMETHOD.  "render
   
     METHOD retrieve_active_repo.
   
  
positive.code:     ro_menu->add( iv_txt = 'Advanced'         io_sub = lo_betasub ) ##NO_TEXT.
  
    ENDMETHOD.                    "build main_menu
  
    METHOD styles.
  
  
negative.code:     _add '.repo_tab td.cmd span    { display: block; }'.
      _add '.repo_tab td.cmd a       { display: block; }'.
  
    ENDMETHOD.  "styles
  
    METHOD lif_gui_page~get_assets.
  * http://fa2png.io/r/octicons/
  