[Okular-devel] Review Request: Introduce currentPageChanged callbacks to DocumentObserver interface

Tobias Koenig tokoe at kde.org
Tue Aug 21 07:06:04 UTC 2012


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/106058/
-----------------------------------------------------------

(Updated Aug. 21, 2012, 7:06 a.m.)


Review request for Okular.


Changes
-------

Changed patch that uses only notifyCurrentPageChanged(int previous, int current) instead of two separated callbacks.


Description
-------

The DocumentObserver API currently does not provide a way to notify about page changes, only about viewport changes. That means each implementation of DocumentObserver (e.g. TOC, MiniBar, SideReview etc.) kept a private variable to keep track of the current page to detect page changes.

This patch moves the page change detection into the Okular::Document class and extends the Okular::DocumentObserver API with the two callbacks notifyCurrentPageAboutToBeChanged(int page) and notifyCurrentPageChanged(int page).

That allows the implementations of Okular::DocumentObserver to just reimplement the notifyCurrentPageChanged() callback instead of reimplementing the page-changed-detection logic.

Since the two callbacks are always invoked on _all_ listeners, the PageView has now a chance to get informed about page changes even though it's notifyViewport() method is not invoked if it changes the viewport itself.


Diffs (updated)
-----

  core/document.cpp f6bf699 
  core/document_p.h 54e922d 
  core/observer.h 76c096c 
  core/observer.cpp 0201a1d 
  ui/minibar.h acb1163 
  ui/minibar.cpp 051df72 
  ui/pagesizelabel.h ea508b8 
  ui/pagesizelabel.cpp 4a80779 
  ui/pageview.h 43ca2ab 
  ui/pageview.cpp 5e04412 
  ui/presentationwidget.h 20dbcbb 
  ui/presentationwidget.cpp f4da539 
  ui/side_reviews.h d063b7b 
  ui/side_reviews.cpp a036c48 
  ui/thumbnaillist.h 0d7136b 
  ui/thumbnaillist.cpp 8b23025 
  ui/toc.h 4e63ef6 
  ui/toc.cpp 3203c79 

Diff: http://git.reviewboard.kde.org/r/106058/diff/


Testing
-------


Thanks,

Tobias Koenig

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/okular-devel/attachments/20120821/0ee7f096/attachment.html>


More information about the Okular-devel mailing list