Commit 08ee3a2d authored by Andy Stewart's avatar Andy Stewart
Browse files

Make browser forward/backward by M-f/M-b

parent eb186412
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -78,6 +78,8 @@ Please don't run EAF with root user, root user just can access DBus's system bus
| :--------          | :----                                         | :-----:            | :----                                    |
| Browser            | URL                                           | Left Button        | Open link current tab                    |
|                    |                                               | Ctrl + Left Button | Open link in new tab                     |
|                    |                                               | M-f                | Forward page in history                  |
|                    |                                               | M-b                | Backward page in history                 |
| Markdown previewer | Type 'eaf-open' RET markdown filepath         |                    |                                          |
| Org file previewer | Type 'eaf-open' RET org filepath              |                    |                                          |
| Image Viewer       | Type 'eaf-open' RET IMAGE filepath            | j                  | Load next image in current directory     |
+0 −2
Original line number Diff line number Diff line
## Todo list
* Core: draw framework about eaf, make hacker understand how eaf works.
* Core: sometime, press key no respsone, something wrong at function eaf-monitor-key-event
* Core: Make application can handle shortcut
* Browser: add forward/backward support
* Browser: add cookie support
* Browser: support pop window, such as emacs-china.org
* Browser: add progressbar
+6 −0
Original line number Diff line number Diff line
@@ -36,3 +36,9 @@ class BrowserBuffer(Buffer):

    def scroll(self, scroll_direction, scroll_type):
        webview_scroll(self, scroll_direction, scroll_type)

    def send_keystroke(self, keystroke):
        if keystroke == "M-f":
            self.buffer_widget.forward()
        elif keystroke == "M-b":
            self.buffer_widget.back()
+3 −0
Original line number Diff line number Diff line
@@ -65,6 +65,9 @@ class Buffer(QGraphicsScene):
    def send_key_event(self, event):
        QApplication.sendEvent(self.buffer_widget, event)

    def send_key_event(self, keystroke):
        pass

    def send_input_message(self, message, callback_type):
        self.input_message.emit(self.buffer_id, message, callback_type)

+7 −0
Original line number Diff line number Diff line
@@ -310,6 +310,10 @@ We need calcuate render allocation to make sure no black border around render co
               (key-command (format "%s" (key-binding key)))
               (key-desc (key-description key))
               )

          ;; Uncomment for debug.
          ;; (message (format "!!!!! %s %s %s %s" event key key-command key-desc))

          (cond
           ;; Just send event when user insert single character.
           ;; Don't send event 'M' if user press Ctrl + M.
@@ -320,6 +324,9 @@ We need calcuate render allocation to make sure no black border around render co
             (equal 1 (string-width (this-command-keys))))
            (message (format "Send char: '%s" key-desc))
            (eaf-call "send_key" (format "%s:%s" buffer-id key-desc)))
           ((string-match "^[CMSs]-.*" key-desc)
            (message (format "Send keystroke: %s" key-desc))
            (eaf-call "send_keystroke" buffer-id key-desc))
           ((or
             (equal key-command "nil")
             (equal key-desc "RET")
Loading