diff options
| author | Martin Rudalics | 2015-08-22 10:22:26 +0200 |
|---|---|---|
| committer | Martin Rudalics | 2015-08-22 10:22:26 +0200 |
| commit | a3f3cd7c4a79ba54f00ebd8424db3137f297517b (patch) | |
| tree | 311660b65d588073e38e77218c84ea06f5521357 | |
| parent | 385fa75721d6d1aa1d82b9e4f05f7a76a4f79845 (diff) | |
| download | emacs-a3f3cd7c4a79ba54f00ebd8424db3137f297517b.tar.gz emacs-a3f3cd7c4a79ba54f00ebd8424db3137f297517b.zip | |
In ‘adjust-window-trailing-edge’ fix bug with size-preserved windows.
* lisp/window.el (adjust-window-trailing-edge): Fix bug where this
function refused to resize a size-preserved window.
| -rw-r--r-- | ChangeLog.2 | 2 | ||||
| -rw-r--r-- | lisp/window.el | 14 |
2 files changed, 10 insertions, 6 deletions
diff --git a/ChangeLog.2 b/ChangeLog.2 index 3a93fda6f67..242cf6b59a0 100644 --- a/ChangeLog.2 +++ b/ChangeLog.2 | |||
| @@ -3151,8 +3151,6 @@ | |||
| 3151 | 3151 | ||
| 3152 | 2015-06-18 Martin Rudalics <rudalics@gmx.at> | 3152 | 2015-06-18 Martin Rudalics <rudalics@gmx.at> |
| 3153 | 3153 | ||
| 3154 | Fix last fix" | ||
| 3155 | |||
| 3156 | Set image_cache_refcount before x_default_parameter calls. (Bug#20802) | 3154 | Set image_cache_refcount before x_default_parameter calls. (Bug#20802) |
| 3157 | * src/nsfns.m (Fx_create_frame): | 3155 | * src/nsfns.m (Fx_create_frame): |
| 3158 | * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting | 3156 | * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting |
diff --git a/lisp/window.el b/lisp/window.el index d39c7018601..f198d78cc4c 100644 --- a/lisp/window.el +++ b/lisp/window.el | |||
| @@ -3160,7 +3160,7 @@ move it as far as possible in the desired direction." | |||
| 3160 | (let* ((frame (window-frame window)) | 3160 | (let* ((frame (window-frame window)) |
| 3161 | (minibuffer-window (minibuffer-window frame)) | 3161 | (minibuffer-window (minibuffer-window frame)) |
| 3162 | (right window) | 3162 | (right window) |
| 3163 | left this-delta min-delta max-delta ignore) | 3163 | left first-left first-right this-delta min-delta max-delta ignore) |
| 3164 | 3164 | ||
| 3165 | (unless pixelwise | 3165 | (unless pixelwise |
| 3166 | (setq pixelwise t) | 3166 | (setq pixelwise t) |
| @@ -3188,6 +3188,7 @@ move it as far as possible in the desired direction." | |||
| 3188 | (t | 3188 | (t |
| 3189 | ;; Set LEFT to the first resizable window on the left. This step is | 3189 | ;; Set LEFT to the first resizable window on the left. This step is |
| 3190 | ;; needed to handle fixed-size windows. | 3190 | ;; needed to handle fixed-size windows. |
| 3191 | (setq first-left left) | ||
| 3191 | (while (and left | 3192 | (while (and left |
| 3192 | (or (window-size-fixed-p left horizontal) | 3193 | (or (window-size-fixed-p left horizontal) |
| 3193 | (and (< delta 0) | 3194 | (and (< delta 0) |
| @@ -3200,8 +3201,10 @@ move it as far as possible in the desired direction." | |||
| 3200 | (not (window-combined-p left horizontal)))) | 3201 | (not (window-combined-p left horizontal)))) |
| 3201 | (window-left left))))) | 3202 | (window-left left))))) |
| 3202 | (unless left | 3203 | (unless left |
| 3204 | ;; We have to resize a size-preserved window. Start again with | ||
| 3205 | ;; the window initially on the left. | ||
| 3203 | (setq ignore 'preserved) | 3206 | (setq ignore 'preserved) |
| 3204 | (setq left window) | 3207 | (setq left first-left) |
| 3205 | (while (and left | 3208 | (while (and left |
| 3206 | (or (window-size-fixed-p left horizontal 'preserved) | 3209 | (or (window-size-fixed-p left horizontal 'preserved) |
| 3207 | (<= (window-size left horizontal t) | 3210 | (<= (window-size left horizontal t) |
| @@ -3220,6 +3223,7 @@ move it as far as possible in the desired direction." | |||
| 3220 | 3223 | ||
| 3221 | ;; Set RIGHT to the first resizable window on the right. This step | 3224 | ;; Set RIGHT to the first resizable window on the right. This step |
| 3222 | ;; is needed to handle fixed-size windows. | 3225 | ;; is needed to handle fixed-size windows. |
| 3226 | (setq first-right right) | ||
| 3223 | (while (and right | 3227 | (while (and right |
| 3224 | (or (window-size-fixed-p right horizontal) | 3228 | (or (window-size-fixed-p right horizontal) |
| 3225 | (and (> delta 0) | 3229 | (and (> delta 0) |
| @@ -3232,12 +3236,14 @@ move it as far as possible in the desired direction." | |||
| 3232 | (not (window-combined-p right horizontal)))) | 3236 | (not (window-combined-p right horizontal)))) |
| 3233 | (window-right right))))) | 3237 | (window-right right))))) |
| 3234 | (unless right | 3238 | (unless right |
| 3239 | ;; We have to resize a size-preserved window. Start again with | ||
| 3240 | ;; the window initially on the right. | ||
| 3235 | (setq ignore 'preserved) | 3241 | (setq ignore 'preserved) |
| 3236 | (setq right (window-right window)) | 3242 | (setq right first-right) |
| 3237 | (while (and right | 3243 | (while (and right |
| 3238 | (or (window-size-fixed-p right horizontal 'preserved)) | 3244 | (or (window-size-fixed-p right horizontal 'preserved)) |
| 3239 | (<= (window-size right horizontal t) | 3245 | (<= (window-size right horizontal t) |
| 3240 | (window-min-size right horizontal nil t))) | 3246 | (window-min-size right horizontal 'preserved t))) |
| 3241 | (setq right | 3247 | (setq right |
| 3242 | (or (window-right right) | 3248 | (or (window-right right) |
| 3243 | (progn | 3249 | (progn |