https://bugs.documentfoundation.org/show_bug.cgi?id=169480
Bug ID: 169480
Summary: Change navigation back function to first make sure the
cursor is visible
Product: LibreOffice
Version: 3.3.0 release
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: medium
Component: Writer
Assignee: [email protected]
Reporter: [email protected]
In my opinion, the navigate back funtion is a little unintuitive to use, in the
way that it behaves when the user has scrolled the view, so that the cursor is
no longer visible. In this case, the navigate back function does not take the
user back to the place where cursor is, but to the place where it was before. I
think most people would first want to go back to the place where the cursor is
currently and only in the case where the cursor is already in the view, then go
where the cursor was previously.
In summary, navigate back function should IMO:
* Check if the cursor is visible
* if cursor is not visible -> scroll to make cursor visible
* if cursor is visible -> move where the cursor was previously
I don't have c++ experience, but here are links to code sections I think might
be relevant for implementing this.
void SwNavigationMgr::goBack()
https://docs.libreoffice.org/sw/html/navmgr_8cxx_source.html#l00094
Here are some places where one might want look for how to check if cursor is
visible and to make it visible
bool SwWrtShell::Left
https://docs.libreoffice.org/sw/html/move_8cxx_source.html#l00110
// scroll Cursor to visible area
https://docs.libreoffice.org/sw/html/crsrsh_8cxx_source.html#l02288
void SwCursorShell::MakeSelVisible()
https://docs.libreoffice.org/sw/html/crsrsh_8cxx_source.html#l03392
PS. I also made this related Bug 169479 report, to add Alt+left shortcut to
navigate back function.
--
You are receiving this mail because:
You are the assignee for the bug.