[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

[meadow-develop:1997/339]menubar and minibuffer



>>> 24 Dec 1997 12:03:15 +0900 の刻に 「nao」、すなわち
>>> koriyama@xxxxxxxxxxx(KORIYAMA Naohiro) 氏曰く

>>> 24 Dec 1997 07:02:46 -0800 の刻に 「himi」、すなわち
>>> himi@xxxxxxxxxxxxxxxxxxxxxxxxx(Miyashita Hisashi(宮下 尚:HIMI)) 氏曰く

nao> コンパイルし直してみましたが、どうも駄目でした。。。
himi> じゃあ、これでどうです?
nao> 今度はばっちりです。ありがとうございます。

ちょっと、問題を発見。minibufferの大きさはいいのですが、どんどんframe
が小さくなくなってしまっています。

こんなかんじにすると大丈夫のようです。(|| を && にしただけ)
--
こおりやま

diff -u g:/release/source/meadow/src/mw32fns.c mw32fns.c 
--- g:/release/source/meadow/src/mw32fns.c	Thu Dec 18 07:58:17 1997
+++ mw32fns.c	Wed Dec 24 06:57:48 1997

@@ -2214,13 +2215,18 @@
   case WM_WINDOWPOSCHANGED:
 	
     if (!f->async_iconified && f->async_visible &&
-	f->output_data.w32->frame_change_state != 2)
+	f->output_data.w32->frame_change_state < 2)
+      /* To adjust window correctly,
+	 we must check size of the window twice
+	 (strictly speaking number of dimention),
+	 thus, width and height. */
       {
 	LPWINDOWPOS lppos = (LPWINDOWPOS) lParam;
 
-	f->output_data.w32->frame_change_state = 2;
+	f->output_data.w32->frame_change_state++;
 
-	if (!(lppos->flags & SWP_NOSIZE))
+	if ((!(lppos->flags & SWP_NOSIZE)) &&
+	    (lppos->flags & SWP_DRAWFRAME))
 	  {
 	    RECT rect;
 	    int wdiff;
@@ -2252,9 +2258,7 @@
 	      }
 	  }
       }
-
-    if (f)
-      f->output_data.w32->frame_change_state = 0;
+    f->output_data.w32->frame_change_state = 0;
 
     goto dflt;
 #endif