https://issues.apache.org/ooo/show_bug.cgi?id=122221

hanya <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #4 from hanya <[email protected]> ---
When the current page is changed by PageDown or PageUp key pressing on the
normal view, 
::sd::slidesorter::controller::Listener::propertyChange method is called to 
change the current page in the slidesorter window.
In the propertyChange method,
::sd::slidesorter::controller::PageSelector::SelectPage method is called. 
PageSelector::UpdateCurrentPage method is called from the SelectPage method to 
make the first selected page the current page. This behaviour is used to 
change the current page when multiple slides are selected in the slidesorter.
In the UpdateCurrentPage method, CurrentSlideManager::SwitchCurrentSlide method 
is called and its AcquireCurrentSlide method changes mnCurrentSlideIndex
instance variable 
to the index of first selected slide.

After the above sequence, CurrentSlideManager::NotifyCurrentSlideChange method
is called from propertyChange method. 
In this method, if the passed slide index is not match with mnCurrentSlideIndex
instance variable, 
previous slides are deselected by calling PageSelector::DeselectAllPages
method.

If PageDown button is pushed, PageSelector::UpdateCurrentPage method tries to 
switch the current slide to the previous one because it is first selected
slide. 
In this case, CurrentSlideManager::mnCurrentSlideIndex member keeps still
previous index of the slide.
But if PageUp button is pushed, the first selected slide is the slide that will
be 
current slide because slide selection in the document model is already changed.
mnCurrentSlideIndex member has new index for the current slide and 
PageSelector::DeselectAllPages method is not called from
CurrentSlideManager::NotifyCurrentSlideChange method.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.
You are watching all bug changes.

Reply via email to