1. 27 Nov, 2018 1 commit
  2. 12 Feb, 2018 1 commit
    • Jeremie Knuesel's avatar
      Distinguish zoom and scale, always apply DPI correction on scale · d625c0d9
      Jeremie Knuesel authored
      Replace scale with zoom in most cases. Scale means pixels per point, as
      before. The zoom is the screen-size / document-size ratio: a zoom of 1
      means that the document should have the same size on screen as on paper.
      
      This fixes many issues with the previous DPI changes, e.g. with link and
      search rectangles.
      d625c0d9
  3. 11 Feb, 2018 1 commit
  4. 06 Nov, 2016 1 commit
  5. 07 Nov, 2014 1 commit
  6. 23 Jun, 2014 2 commits
  7. 20 Jan, 2014 1 commit
  8. 22 Nov, 2013 2 commits
  9. 05 Nov, 2013 1 commit
  10. 26 Oct, 2013 1 commit
    • Abdo Roig-Maranges's avatar
      add functions to compute page positions · 030a8c65
      Abdo Roig-Maranges authored
      The plan is to put in adjustment.c every piece of code that has to do
      with document positioning, either computing it from data on the document
      side, or talking to GTK.
      
      We want to have at our disposal functions to compute sizes and positions
      without having to ask for it to a GTK widget. The new functions are:
      
       - move page_calc_height_width to adjustment.c
      
       - add page_calc_position that rotates a position relative to a page
         according to the rotation settings.
      
       - add position_to_page_number that computes the number of a page
         sitting at a given position (given in document-relative coordinates)
      
       - add page_number_to_position that computes the position (in document
         relative coordinates) that will be placed at the center of the viewport.
      
       - add page_is_visible that checks whether the given page intersects the
         viewport.
      030a8c65
  11. 23 Mar, 2013 2 commits
    • Sebastian Ramacher's avatar
      CS · 9c150380
      Sebastian Ramacher authored
      Signed-off-by: Sebastian Ramacher's avatarSebastian Ramacher <sebastian+dev@ramacher.at>
      9c150380
    • Benoît Knecht's avatar
      Use signals to readjust_view_after_zooming() · c9eef954
      Benoît Knecht authored
      Instead of guesstimating the values of the scrollbars adjustments after
      a change in zoom level, connect callbacks to the "changed" GtkAdjustment
      event (which is emitted when the bounds or page_size of the adjustment
      change, e.g. when the zoom level changes), and compute the new values
      from there.
      
      The previous adjustment values are tracked in zathura->ui.hadjustment
      and zathura->ui.vadjustment (and updated by signal handlers as well), so
      that the view's position can be maintained while zooming.
      
      cb_view_hadjustment_changed() centers the page horizontally if a
      "best-fit" or "width" zoom is being performed, or if "zoom-center" is
      true; otherwise, it keeps the view horizontally centered around the same
      area of the page.
      
      cb_view_vadjustment_changed() always keeps the view vertically centered
      around the same area of the page.
      
      Many thanks to Marwan Tanager for thoroughly reviewing the various
      stages of this patch, and actually coming up with a working solution.
      Signed-off-by: Sebastian Ramacher's avatarSebastian Ramacher <sebastian+dev@ramacher.at>
      c9eef954