aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii2010-01-09 11:27:11 -0500
committerEli Zaretskii2010-01-09 11:27:11 -0500
commit1db6ebe40405dec23b51eb8015c58be0bc46fe13 (patch)
tree216dca55abb260d2e84840b921d9a13db0920f79 /src
parent8d6a842ab025fecc9fab5665a7ac846957d0b739 (diff)
parentd427a9fad2840b356f6bb7bcb89fd654d506ed90 (diff)
downloademacs-1db6ebe40405dec23b51eb8015c58be0bc46fe13.tar.gz
emacs-1db6ebe40405dec23b51eb8015c58be0bc46fe13.zip
Merge from mainline.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog9
-rw-r--r--src/editfns.c3
-rw-r--r--src/xfns.c39
3 files changed, 50 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 309c663d1ef..bd9c6cfbfdf 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,12 @@
12010-01-09 Eli Zaretskii <eliz@gnu.org>
2
3 * editfns.c (Ffloat_time): Doc fix.
4
52010-01-09 Jan Djärv <jan.h.d@swipnet.se>
6
7 * xfns.c (Fx_create_frame): Don't create frame larger than display
8 by default bug#3643.
9
12010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> 102010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2 11
3 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro. 12 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
diff --git a/src/editfns.c b/src/editfns.c
index 927bf50194a..cb302f7b1e7 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -1574,7 +1574,8 @@ instead of the current time. The argument should have the form
1574have the form (HIGH . LOW), but this is considered obsolete. 1574have the form (HIGH . LOW), but this is considered obsolete.
1575 1575
1576WARNING: Since the result is floating point, it may not be exact. 1576WARNING: Since the result is floating point, it may not be exact.
1577Do not use this function if precise time stamps are required. */) 1577If precise time stamps are required, use either `current-time',
1578or (if you need time as a string) `format-time-string'. */)
1578 (specified_time) 1579 (specified_time)
1579 Lisp_Object specified_time; 1580 Lisp_Object specified_time;
1580{ 1581{
diff --git a/src/xfns.c b/src/xfns.c
index 572cf38e0c7..db42e005d75 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -3396,6 +3396,45 @@ This function is an internal primitive--use `make-frame' instead. */)
3396 /* Compute the size of the X window. */ 3396 /* Compute the size of the X window. */
3397 window_prompting = x_figure_window_size (f, parms, 1); 3397 window_prompting = x_figure_window_size (f, parms, 1);
3398 3398
3399 /* Don't make height higher than display height unless the user asked
3400 for it. */
3401 height = FRAME_LINES (f);
3402 tem = x_get_arg (dpyinfo, parms, Qheight, 0, 0, RES_TYPE_NUMBER);
3403 if (EQ (tem, Qunbound))
3404 {
3405 int ph = FRAME_TEXT_LINES_TO_PIXEL_HEIGHT (f, FRAME_LINES (f));
3406 int dph = DisplayHeight (FRAME_X_DISPLAY (f), FRAME_X_SCREEN_NUMBER (f));
3407 if (ph > dph)
3408 {
3409 height = FRAME_PIXEL_HEIGHT_TO_TEXT_LINES (f, dph) -
3410 FRAME_TOOL_BAR_LINES (f) - FRAME_MENU_BAR_LINES (f);
3411 if (FRAME_EXTERNAL_TOOL_BAR (f))
3412 height -= 2; /* We can't know how big it will be. */
3413 if (FRAME_EXTERNAL_MENU_BAR (f))
3414 height -= 2; /* We can't know how big it will be. */
3415 }
3416 }
3417
3418 /* Don't make width wider than display width unless the user asked
3419 for it. */
3420 width = FRAME_COLS (f);
3421 tem = x_get_arg (dpyinfo, parms, Qwidth, 0, 0, RES_TYPE_NUMBER);
3422 if (EQ (tem, Qunbound))
3423 {
3424 int pw = FRAME_TEXT_COLS_TO_PIXEL_WIDTH (f, FRAME_COLS (f));
3425 int dpw = DisplayWidth (FRAME_X_DISPLAY (f), FRAME_X_SCREEN_NUMBER (f));
3426 if (pw > dpw)
3427 width = FRAME_PIXEL_WIDTH_TO_TEXT_COLS (f, dpw);
3428 }
3429
3430 if (height != FRAME_LINES (f) || width != FRAME_COLS (f))
3431 {
3432 check_frame_size (f, &height, &width);
3433 FRAME_LINES (f) = height;
3434 SET_FRAME_COLS (f, width);
3435 }
3436
3437
3399 tem = x_get_arg (dpyinfo, parms, Qunsplittable, 0, 0, RES_TYPE_BOOLEAN); 3438 tem = x_get_arg (dpyinfo, parms, Qunsplittable, 0, 0, RES_TYPE_BOOLEAN);
3400 f->no_split = minibuffer_only || EQ (tem, Qt); 3439 f->no_split = minibuffer_only || EQ (tem, Qt);
3401 3440