anchor.diff:               State0 = #state{zipper=Zipper0}) ->
       FramesUp = wxListCtrl:getItemCount(LC) - Item - 1,
       Zipper = ds_zipper:nth_parent(Zipper0, FramesUp),
  -    State = State0#state{zipper=Zipper},
  +    State = State0#state{zipper=Zipper, report_scroll_pos={0,0}},
       {noreply, update_gui(State)};
   handle_event(#wx{id = ?LIST_CTRL_CHILDREN,
                    event = #wxList{itemIndex = Item}},
                State0 = #state{zipper=Zipper0}) ->
       Zipper = ds_zipper:nth_child(Zipper0, Item),
  -    State = State0#state{zipper=Zipper},
  +    State = State0#state{zipper=Zipper, report_scroll_pos={0,0}},
       {noreply, update_gui(State)};
  -handle_event(#wx{event = #wxSize{}}, State) ->
  -    {noreply, update_report(adjust_size(State))};
  +handle_event(#wx{event = #wxSize{size=Size}}, #state{lc_stack_size=Size}=State) ->
  +    {noreply, State};
  +handle_event(#wx{event = #wxSize{size=Size}}, State) ->
  +    {noreply, update_report(adjust_size(State#state{lc_stack_size=Size}))};
   handle_event(#wx{event = #wxHtmlLink{linkInfo = #wxHtmlLinkInfo{href=Link}}},
  -	     #state{stats_report_cfg=ReportCfg0} = State) ->
  +	     #state{report_cfg=ReportCfg0} = State) ->
       ReportCfg = ds_reports:config_update(ReportCfg0, Link),
  -    {noreply, update_report(State#state{stats_report_cfg=ReportCfg})};
  +    {noreply, update_report(State#state{report_cfg=ReportCfg})};
  +handle_event(#wx{event = #wxScrollWin{}},
  +	     #state{report_html_win=ReportHtmlWin} = State) ->
  +    ScrollPos = wxScrolledWindow:getViewStart(ReportHtmlWin),
  +    {noreply, State#state{report_scroll_pos=ScrollPos}};
   handle_event(#wx{} = Event, State = #state{}) ->
       io:format(user, "Event ~p~n", [Event]),
       {noreply, State}.
  
positive.code:                    is_generic_type=IsGenericType,
                     stack_col_widths = StWidths0,
                     children_col_widths = ChWidths0,
                     stats_report_cfg = ReportCfg0} = State) ->
      %% use the already measured "desired" widths to compute the actual
      %% widths and set them
      LastColW = get_last_col_width(StWidths0, ChWidths0),
  
negative.code:                    panel_left=LeftPanel, panel_right=RightPanel,
                     lc_stack=LC_Stack, lc_children=LC_Children,
                     text_children=TextChildren,
                     report_html_win=ReportHtmlWin,
                     report_scroll_pos={0,0}, report_cfg=[],
                     zipper=Zipper},
      {Frame, update_gui(State)}.
  
  