Expose tool-bar pixel width to lisp and use it for speedbar (Bug#7048)
* dframe.el (dframe-reposition-frame-emacs): Use tool-bar-pixel-width in calculating new frame position. Add more space between new and parent on the left. * frame.c (Ftool_bar_pixel_width): New function to expose tool bar's pixel width to Lisp.
This commit is contained in:
parent
1a9dc3b588
commit
fb0cf781a1
4 changed files with 41 additions and 3 deletions
|
|
@ -1,3 +1,9 @@
|
|||
2010-09-17 Stephen Berman <stephen.berman@gmx.net>
|
||||
|
||||
* dframe.el (dframe-reposition-frame-emacs): Use tool-bar-pixel-width
|
||||
in calculating new frame position. Add more space between new and
|
||||
parent on the left (Bug#7048).
|
||||
|
||||
2010-09-17 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* net/tramp-compat.el (tramp-compat-with-temp-message): Make it a
|
||||
|
|
|
|||
|
|
@ -430,7 +430,8 @@ a cons cell indicating a position of the form (LEFT . TOP)."
|
|||
(unless (or (not window-system) (eq window-system 'pc))
|
||||
(let* ((pfx (dframe-frame-parameter parent-frame 'left))
|
||||
(pfy (dframe-frame-parameter parent-frame 'top))
|
||||
(pfw (frame-pixel-width parent-frame))
|
||||
(pfw (+ (tool-bar-pixel-width parent-frame)
|
||||
(frame-pixel-width parent-frame)))
|
||||
(pfh (frame-pixel-height parent-frame))
|
||||
(nfw (frame-pixel-width new-frame))
|
||||
(nfh (frame-pixel-height new-frame))
|
||||
|
|
@ -459,7 +460,7 @@ a cons cell indicating a position of the form (LEFT . TOP)."
|
|||
(- (x-display-pixel-height) (car (cdr pfy)) pfh)
|
||||
(car (cdr pfy)))))
|
||||
(cond ((eq location 'right)
|
||||
(setq newleft (+ pfx pfw 5)
|
||||
(setq newleft (+ pfx pfw 10)
|
||||
newtop pfy))
|
||||
((eq location 'left)
|
||||
(setq newleft (- pfx 10 nfw)
|
||||
|
|
@ -471,7 +472,7 @@ a cons cell indicating a position of the form (LEFT . TOP)."
|
|||
;; extra 10 is just dressings for window
|
||||
;; decorations.
|
||||
(let* ((left-guess (- pfx 10 nfw))
|
||||
(right-guess (+ pfx pfw 5))
|
||||
(right-guess (+ pfx pfw 10))
|
||||
(left-margin left-guess)
|
||||
(right-margin (- (x-display-pixel-width)
|
||||
right-guess 5 nfw)))
|
||||
|
|
|
|||
|
|
@ -1,3 +1,11 @@
|
|||
2010-09-17 Stephen Berman <stephen.berman@gmx.net>
|
||||
|
||||
* frame.c (Ftool_bar_pixel_width): New function to expose tool
|
||||
bar's pixel width to Lisp (Bug#7048).
|
||||
|
||||
2010-09-14 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* cmds.c (syms_of_cmds) <post-self-insert-hook>: Fix typos in docstring.
|
||||
2010-09-17 Jan Djärv <jan.h.d@swipnet.se>
|
||||
|
||||
* gtkutil.c (xg_pack_tool_bar): Call gtk_handle_box_set_handle_position
|
||||
|
|
|
|||
23
src/frame.c
23
src/frame.c
|
|
@ -2649,6 +2649,28 @@ If FRAME is omitted, the selected frame is used. */)
|
|||
#endif
|
||||
return make_number (FRAME_COLS (f));
|
||||
}
|
||||
|
||||
DEFUN ("tool-bar-pixel-width", Ftool_bar_pixel_width,
|
||||
Stool_bar_pixel_width, 0, 1, 0,
|
||||
doc: /* Return width in pixels of FRAME's tool bar.
|
||||
The result is greater than zero only when the tool bar is on the left
|
||||
or right side of FRAME. If FRAME is omitted, the selected frame is
|
||||
used. */)
|
||||
(Lisp_Object frame)
|
||||
{
|
||||
struct frame *f;
|
||||
|
||||
if (NILP (frame))
|
||||
frame = selected_frame;
|
||||
CHECK_FRAME (frame);
|
||||
f = XFRAME (frame);
|
||||
|
||||
#ifdef FRAME_TOOLBAR_WIDTH
|
||||
if (FRAME_WINDOW_P (f))
|
||||
return make_number (FRAME_TOOLBAR_WIDTH (f));
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
|
||||
DEFUN ("set-frame-height", Fset_frame_height, Sset_frame_height, 2, 3, 0,
|
||||
doc: /* Specify that the frame FRAME has LINES lines.
|
||||
|
|
@ -4596,6 +4618,7 @@ automatically. See also `mouse-autoselect-window'. */);
|
|||
defsubr (&Sframe_char_width);
|
||||
defsubr (&Sframe_pixel_height);
|
||||
defsubr (&Sframe_pixel_width);
|
||||
defsubr (&Stool_bar_pixel_width);
|
||||
defsubr (&Sset_frame_height);
|
||||
defsubr (&Sset_frame_width);
|
||||
defsubr (&Sset_frame_size);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue