diff options
| author | Stephen Blott | 2015-02-02 08:27:27 +0000 | 
|---|---|---|
| committer | Stephen Blott | 2015-02-02 08:27:27 +0000 | 
| commit | edfe3d0ce2726e90559b200f607dc0dec48526b9 (patch) | |
| tree | 61319fd770c7d70a1fee52236871fcd37bf3cf28 | |
| parent | 2690f1df7b568de66354b3c3bb6baacf896b951c (diff) | |
| download | vimium-edfe3d0ce2726e90559b200f607dc0dec48526b9.tar.bz2 | |
Visual/edit modes: WIP, scrolling content editable.
| -rw-r--r-- | content_scripts/mode_visual_edit.coffee | 10 | ||||
| -rw-r--r-- | content_scripts/scroller.coffee | 2 | 
2 files changed, 11 insertions, 1 deletions
| diff --git a/content_scripts/mode_visual_edit.coffee b/content_scripts/mode_visual_edit.coffee index 82e2b189..749559f7 100644 --- a/content_scripts/mode_visual_edit.coffee +++ b/content_scripts/mode_visual_edit.coffee @@ -437,7 +437,15 @@ class Movement extends CountPrefix        if @element and DomUtils.isEditable @element          if @element.clientHeight < @element.scrollHeight            if @element.isContentEditable -            # Help(smblott)! How do we do this?  This case matters for Gmail and Google's inbox. +            # WIP... +            elementWithFocus = DomUtils.getElementWithFocus @selection, @getDirection() == backward +            console.log elementWithFocus.innerHTML +            position = elementWithFocus.getClientRects()[0].top - @element.getClientRects()[0].top +            console.log "top", position +            Scroller.scrollToPosition @element, position, 0 +            position = elementWithFocus.getClientRects()[0].bottom - @element.getClientRects()[0].top +            console.log "bottom", position +            Scroller.scrollToPosition @element, position, 0            else              position = if @getDirection() == backward then @element.selectionStart else @element.selectionEnd              coords = DomUtils.getCaretCoordinates @element, position diff --git a/content_scripts/scroller.coffee b/content_scripts/scroller.coffee index f26f0b73..6d224814 100644 --- a/content_scripts/scroller.coffee +++ b/content_scripts/scroller.coffee @@ -265,10 +265,12 @@ Scroller =      # Scroll down, "y".      amount = top + 20 - (element.clientHeight + element.scrollTop) +    console.log "y down", amount, 0 < amount      CoreScroller.scroll element, "y", amount, false if 0 < amount      # Scroll up, "y".      amount = top - (element.scrollTop) - 5 +    console.log "y up", amount, amount < 0      CoreScroller.scroll element, "y", amount, false if amount < 0      # Scroll down, "x". | 
