ó
    OÎhí  ã                  ó„   • S r SSKJr  SSKJr  / SQr\rSSS jjrSSS jjrSS jr	SS jr
SS	 jrSS
 jrSS jrSS jrg)zß
Key bindings, for scrolling up and down through pages.

This are separate bindings, because GNU readline doesn't have them, but
they are very useful for navigating through long multiline buffers, like in
Vi, Emacs, etc...
é    )Úannotations)ÚKeyPressEvent)Úscroll_forwardÚscroll_backwardÚscroll_half_page_upÚscroll_half_page_downÚscroll_one_line_upÚscroll_one_line_downc                ó  • U R                   R                  R                  nU R                   R                  nU(       aÃ  UR                  (       a±  UR                  nUR
                  nUR                  nU(       a  US-  nUR                  R                  S-   nSnXuR                  :  a5  UR                  U5      n	X‰-   U:  a
  X‰-  nUS-  nOOXuR                  :  a  M5  UR                  R                  US5      Ul        ggg)z
Scroll window down.
é   é   r   N)ÚappÚlayoutÚcurrent_windowÚcurrent_bufferÚrender_infoÚ
ui_contentÚwindow_heightÚdocumentÚcursor_position_rowÚ
line_countÚget_height_for_lineÚtranslate_row_col_to_indexÚcursor_position)
ÚeventÚhalfÚwÚbÚinfor   Úscroll_heightÚyÚheightÚline_heights
             Úg/home/mande/repo/quber/.venv/lib/python3.13/site-packages/prompt_toolkit/key_binding/bindings/scroll.pyr   r      sã   € ð 	�	‰	×Ñ×'Ñ'€AØ�	‰	× Ñ €AæˆQ�]�]Ø�}‰}ˆØ—_‘_ˆ
ð ×*Ñ*ˆÞØ˜aÑˆMð �J‰J×*Ñ*¨QÑ.ˆØˆØ×'Ñ'Ó'Ø×2Ñ2°1Ó5ˆKàÑ# mÓ3ØÑ%�Ø�Q‘‘àð ×'Ñ'Õ'ð ŸJ™J×AÑAÀ!ÀQÓGˆÕð+ €qó    c                óÜ  • U R                   R                  R                  nU R                   R                  nU(       a¯  UR                  (       a�  UR                  nUR
                  nU(       a  US-  n[        SUR                  R                  S-
  5      nSnUS:”  a,  UR                  U5      nXx-   U:  a
  Xx-  nUS-  nOOUS:”  a  M,  UR                  R                  US5      Ul        ggg)z
Scroll window up.
r   r   r   N)r   r   r   r   r   r   Úmaxr   r   r   r   r   )	r   r   r   r   r   r    r!   r"   r#   s	            r$   r   r   8   s×   € ð 	�	‰	×Ñ×'Ñ'€AØ�	‰	× Ñ €AæˆQ�]�]Ø�}‰}ˆð ×*Ñ*ˆÞØ˜aÑˆMô ��1—:‘:×1Ñ1°AÑ5Ó6ˆØˆØ�!‹eØ×2Ñ2°1Ó5ˆKàÑ# mÓ3ØÑ%�Ø�Q‘‘àð �!�eð ŸJ™J×AÑAÀ!ÀQÓGˆÕð) €qr%   c                ó   • [        U SS9  g)z0
Same as ControlF, but only scroll half a page.
T©r   N)r   ©r   s    r$   r   r   V   s   € ô �5˜tÓ$r%   c                ó   • [        U SS9  g)z0
Same as ControlB, but only scroll half a page.
Tr)   N)r   r*   s    r$   r   r   ]   s   € ô �E Ó%r%   c                óì  • U R                   R                  R                  nU R                   R                  nU(       a·  UR                  (       a¥  UR                  nUR
                  UR                  UR                  -
  :  aq  UR                  R                  UR                  R                  ::  a-  U=R                  UR                  R                  5       -  sl        U=R
                  S-  sl        gggg)z
scroll_offset += 1
r   N)r   r   r   r   r   Úvertical_scrollÚcontent_heightr   r   r!   Úconfigured_scroll_offsetsÚtopr   Úget_cursor_down_position)r   r   r   r   s       r$   r
   r
   d   s¹   € ð 	�	‰	×Ñ×'Ñ'€AØ�	‰	× Ñ €Aæà�=�=Ø—=‘=ˆDà× Ñ  4×#6Ñ#6¸×9KÑ9KÑ#KÓKØ×'Ñ'×)Ñ)¨T×-KÑ-K×-OÑ-OÓOØ×%Ò%¨¯©×)LÑ)LÓ)NÑNÕ%à×!Ò! QÑ&Ö!ð	 Lð ð 	r%   c                óX  • U R                   R                  R                  nU R                   R                  nU(       aí  UR                  (       aÛ  UR                  nUR
                  S:”  a¾  UR                  UR                  5       5      nUR                  R                  UR                  S-
  U-
  UR                  R                  -
  -
  n[        [        SU5      5       H0  nU=R                  UR                  R!                  5       -  sl        M2     U=R
                  S-  sl        gggg)z
scroll_offset -= 1
r   r   N)r   r   r   r   r   r-   r   Úfirst_visible_liner   r!   r   r/   ÚbottomÚranger'   r   Úget_cursor_up_position)r   r   r   r   Úfirst_line_heightÚ	cursor_upÚ_s          r$   r	   r	   w   s   € ð 	�	‰	×Ñ×'Ñ'€AØ�	‰	× Ñ €Aæà�=�=Ø—=‘=ˆDà× Ñ  1Ó$Ø$(×$<Ñ$<¸T×=TÑ=TÓ=VÓ$WÐ!à ×0Ñ0×2Ñ2Ø×&Ñ&Øñà'ñ(ð ×4Ñ4×;Ñ;ñ<ñ�	ô œs 1 iÓ0Ö1�AØ×%Ò%¨¯©×)JÑ)JÓ)LÑL×%ñ 2ð ×!Ò! QÑ&Ö!ð! %ð ð 	r%   c                ó¬  • U R                   R                  R                  nU R                   R                  nU(       a—  UR                  (       a…  [        UR                  R                  5       UR                  S-   5      nX1l        UR                  R                  US5      Ul
        U=R                  UR                  R                  SS9-  sl
        ggg)zP
Scroll page down. (Prefer the cursor at the top of the page, after scrolling.)
r   r   T©Úafter_whitespaceN)r   r   r   r   r   r'   Úlast_visible_liner-   r   r   r   Úget_start_of_line_position©r   r   r   Ú
line_indexs       r$   Úscroll_page_downrA   –   s§   € ð 	�	‰	×Ñ×'Ñ'€AØ�	‰	× Ñ €AæˆQ�]�]ä˜Ÿ™×8Ñ8Ó:¸A×<MÑ<MÐPQÑ<QÓRˆ
Ø&ÔàŸJ™J×AÑAÀ*ÈaÓPˆÔØ	×Ò˜QŸZ™Z×BÑBØ!ð Cð 
ñ 	
Öð €qr%   c                óÖ  • U R                   R                  R                  nU R                   R                  nU(       a¬  UR                  (       aš  [        S[        UR                  R                  5       UR                  R                  S-
  5      5      nUR                  R                  US5      Ul        U=R                  UR                  R                  SS9-  sl        SUl        ggg)zQ
Scroll page up. (Prefer the cursor at the bottom of the page, after scrolling.)
r   r   Tr;   N)r   r   r   r   r   r'   Úminr3   r   r   r   r   r>   r-   r?   s       r$   Úscroll_page_uprD   ¨   s¾   € ð 	�	‰	×Ñ×'Ñ'€AØ�	‰	× Ñ €AæˆQ�]�]ô ØÜ�—‘×0Ñ0Ó2°A·J±J×4RÑ4RÐUVÑ4VÓWó
ˆ
ð
 ŸJ™J×AÑAÀ*ÈaÓPˆÔØ	×Ò˜QŸZ™Z×BÑBØ!ð Cð 
ñ 	
Õð ˆÕð €qr%   N)F)r   ÚEr   ÚboolÚreturnÚNone)r   rE   rG   rH   )Ú__doc__Ú
__future__r   Ú(prompt_toolkit.key_binding.key_processorr   Ú__all__rE   r   r   r   r   r
   r	   rA   rD   © r%   r$   Ú<module>rN      sJ   ðñõ #å Bò€ð €öHö>Hô<%ô&ô'ô&'ô>
õ$r%   