branch: externals/pyim
commit fcd1655ea2c7278c0419707640be4e200f03b8e5
Author: Feng Shu <tuma...@163.com>
Commit: Feng Shu <tuma...@163.com>

    pyim-page do not require pyim-preview.
    
            * pyim-preview.el (pyim-process-ui-position): Add 
pyim-preview-start-point as advice.
    
            * pyim-page.el (pyim-preview): Do not require.
            (pyim-page-refresh): Use pyim-process-ui-position instead.
            (pyim-page-next-page, pyim-page-next-word)
            (pyim-page-next-word): Use pyim-process-preview-refresh instead.
    
        * pyim-process.el (pyim-process-ui-position): New function.
---
 pyim-page.el    | 7 +++----
 pyim-preview.el | 2 ++
 pyim-process.el | 3 +++
 3 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/pyim-page.el b/pyim-page.el
index 010a012668..a0bf325144 100644
--- a/pyim-page.el
+++ b/pyim-page.el
@@ -33,7 +33,6 @@
 ;; popup 不是 GNU ELPA 包,所以 pyim 不能强制依赖它。
 (require 'popup nil t)
 (require 'pyim-common)
-(require 'pyim-preview)
 (require 'pyim-process)
 
 (defgroup pyim-page nil
@@ -231,7 +230,7 @@ page 的概念,比如,上面的 “nihao” 的 *待选词列表* 就可以
                (null unread-post-input-method-events))
       (pyim-page-show
        (pyim-page-info-format page-info tooltip)
-       (pyim-preview-start-point)
+       (pyim-process-ui-position)
        tooltip))))
 
 (advice-add 'pyim-process-page-refresh :after #'pyim-page-refresh)
@@ -251,7 +250,7 @@ page 的概念,比如,上面的 “nihao” 的 *待选词列表* 就可以
         (if (> new 0)
             (if (> new maxpos) 1 new)
           maxpos)))
-      (pyim-preview-refresh)
+      (pyim-process-preview-refresh)
       (pyim-page-refresh))))
 
 (defun pyim-page-previous-page (arg)
@@ -270,7 +269,7 @@ page 的概念,比如,上面的 “nihao” 的 *待选词列表* 就可以
        (if (>= len new)
            (if (> new 0) new len)
          1))
-      (pyim-preview-refresh)
+      (pyim-process-preview-refresh)
       (pyim-page-refresh t))))
 
 (defun pyim-page-previous-word (arg)
diff --git a/pyim-preview.el b/pyim-preview.el
index 849ba7f4ab..7ec28d9606 100644
--- a/pyim-preview.el
+++ b/pyim-preview.el
@@ -111,6 +111,8 @@ pyim 会使用 Emacs overlay 机制在 *待输入buffer* 光标处高亮显示
   "Preview 字符串的开始位置。"
   (overlay-start pyim-preview-overlay))
 
+(advice-add 'pyim-process-ui-position :override #'pyim-preview-start-point)
+
 ;; * Footer
 (provide 'pyim-preview)
 
diff --git a/pyim-process.el b/pyim-process.el
index 2b786dc200..b511a5b958 100644
--- a/pyim-process.el
+++ b/pyim-process.el
@@ -115,6 +115,9 @@
 (defun pyim-process-init-ui ()
   "PYIM 流程,用户界面相关的初始化工作。")
 
+(defun pyim-process-ui-position ()
+  "用户界面定位点获取函数接口.")
+
 (defun pyim-process-start-daemon ()
   "启动 pyim 流程需要的相关 daemon, 接口函数.")
 

Reply via email to