(Bug #464 is Ian's one about the VC's PAI showing the wrong menu in beta1.)
This one seems a bit odd. A bit of background: yesterday I was still on beta1 and had no net connection, so when I was being held up by #464 I had a look to see if I could fix it. What I found doesn't quite match the writeup in the new fixed bugs database, and seems still to be happening in beta 2 (though not in the VC). What I found, but can't fully explain, was that when I invoked a context menu in the aspect tree of the VC (remember this is beta 1) it tried to display *two* context menus. First it displayed the correct menu for the aspect tree, and then (as part of handling the same right-mouse event) would go on to try to display the context menu for the containing view *as well*. Displaying the second menu (the wrong one) seems to have the effect of cancelling (or otherwise hiding) the first (correct) menu, so the visible effect was that the outmost menu was wrongly invoked. Why the second menu was being displayed I don't know. From the look of the stack it seemed to be that after the code for displaying the first menu had been executed, View>>dispatchEvent:... was going on to invoke the default windows handling as well, and that that ultimately found its way out to the containing view where it activated that view's context menu code too. I suspected then, and still suspect now, although I can't find anything specific, that it's something to do with the way that View>>dispatchEvent:... requires that the method it dispatches to answers an integer (or something with an integral #asDword) and, failing that, will invoke the default handling too. Looking further into it today (using beta2) I've found that there seems to be something non-determinate about the bug. I managed to create a package emulating the layout of the beta1 VC, which for most of the day has exhibited the bug (when loaded into a clean beta2 image), but for periods has worked properly every time. I've attached the package, it is a simple shell with a TreePresenter (unpopulated) nested inside a couple of other presenters. The inner presenter (green) has a context menu with just "inner menu" on it, the outer presenter (white) has a context menu with just "outer menu" on it. In between them is another presenter (pink) with no context menu. If you right click in the green area, and if the system's consenting to exhibit the bug at that time, then it'll popup the "outer" menu. If not then it'll show the "inner" one. If you turn on some tracing (View>>trackContextMenuWithTracing: is a hacked version of View>>trackContextMenu: which also writes the menu to the transcript), then you'll either see both menus being invoked for one mouse click, or only one. It may be relevant that the inner TreePresenter was created by "mutating" an ordinary Presenter in place after its context menu had been built. I can't see anything odd about the resulting object, but I managed to "cure" one version of working correctly (it had been failing but then it stated to work every time) by mutating it a second time, so there may be some connection there. (Oh, by the way, the package also contains a hacked version of the dispatch code, View>>dispatchMessageWithTracing:wParam:lParam: that traces methods that answer self or similar to the main dispatcher -- there are a surprising number of them.) -- chris begin 666 BuggyShell.pac M(D5V86QU871E(@T*?"!P86-K86=E('P-"G!A8VMA9V4@.CT@4&%C:V%G92!N M86UE.B G0G5G9WE3:&5L;"<N#0IP86-K86=E('!A>%9E<G-I;VXZ(# [#0H) M8F%S:6-#;VUM96YT.B G)RX-"@T*<&%C:V%G92!B87-I8U!A8VMA9V5697)S M:6]N.B G)RX-"@T*(D%D9"!T:&4@<&%C:V%G92!S8W)I<'1S(@T*#0HB061D M('1H92!C;&%S<R!N86UE<RP@;&]O<V4@;65T:&]D(&YA;65S+"!G;&]B86P@ M;F%M97,L(')E<V]U<F-E(&YA;65S(@T*<&%C:V%G92!C;&%S<TYA;65S#0H) M861D.B C0G5G9WE3:&5L;#L-"@EY;W5R<V5L9BX-"@T*<&%C:V%G92!M971H M;V1.86UE<PT*"6%D9#H@(U9I97<@+3X@(V1I<W!A=&-H365S<V%G95=I=&A4 M<F%C:6YG.G=087)A;3IL4&%R86TZ.PT*"6%D9#H@(U9I97<@+3X@(W1R86-K M0V]N=&5X=$UE;G57:71H5')A8VEN9SH[#0H)>6]U<G-E;&8N#0H-"B).;VXM M<V]U<F-E($=L;V)A;"!.86UE<R(-"G!A8VMA9V4@8FEN87)Y1VQO8F%L3F%M M97,Z("A3970@;F5W#0H)>6]U<G-E;&8I+@T*#0IP86-K86=E(&=L;V)A;$%L M:6%S97,Z("A3970@;F5W#0H)>6]U<G-E;&8I+@T*#0HB4F5S;W5R8V4@3F%M M97,B#0IP86-K86=E(&%L;%)E<V]U<F-E3F%M97,Z("A3970@;F5W#0H)861D M.B C0G5G9WE3:&5L;" M/B G1&5F875L="!V:65W)SL-"@EY;W5R<V5L9BDN M#0H-"B)!9&0@=&AE('!R97)E<75I<VET92!N86UE<R(-"G!A8VMA9V4@<V5T M4')E<F5Q=6ES:71E<SH@*$ED96YT:71Y4V5T(&YE=PT*"6%D9#H@)T1O;'!H M:6XG.PT*"6%D9#H@)T1O;'!H:6X@0V]M;6]N($-O;G1R;VQS)SL-"@EA9&0Z M("=$;VQP:&EN($U64"!"87-E)SL-"@EA9&0Z("=$;VQP:&EN(%1R964@36]D M96QS)SL-"@EY;W5R<V5L9BDN#0H-"G!A8VMA9V4A#0H-"B)#;&%S<R!$969I M;FET:6]N<R(A#0H-"E-H96QL('-U8F-L87-S.B C0G5G9WE3:&5L; T*"6EN M<W1A;F-E5F%R:6%B;&5.86UE<SH@)R<-"@EC;&%S<U9A<FEA8FQE3F%M97,Z M("<G#0H)<&]O;$1I8W1I;VYA<FEE<SH@)R<-"@EC;&%S<TEN<W1A;F-E5F%R M:6%B;&5.86UE<SH@)R<A#0H-"B)';&]B86P@06QI87-E<R(A#0H-"@T*(DQO M;W-E($UE=&AO9',B(0T*#0HA5FEE=R!M971H;V1S1F]R(0T*#0ID:7-P871C M:$UE<W-A9V57:71H5')A8VEN9SH@;65S<V%G92!W4&%R86TZ('=087)A;2!L M4&%R86TZ(&Q087)A;0T*"2)0<FEV871E("T@1&ES<&%T8V@@82!M97-S86=E M('1O('1H92!F:7)S="!L979E;"!6:65W(&UE<W-A9V4@:&%N9&QE<BP@:68@ M;VYE#0H)97AI<W1S+"!A;G-W97)I;F<@:71S(')E<W5L="X@268@=&AE(&UE M<W-A9V4@:7,@;F]T(&AA;F1L960@:6X-"@E3;6%L;'1A;&L@87-K(&9O<B!T M:&4@9&5F875L="!W:6YD;W<@<')O8V5D=7)E('1O(&)E(&EN=F]K960N#0H) M06YS=V5R(&%N($Q215-53%0@=F%L=64@=VAI8V@@:7,@96ET:&5R('1H92!R M97-U;'0@86YS=V5R960@8GD@=&AE($1O;'!H:6X-"@EH86YD;&5R+"!O<BP@ M:68@=&AA="!D;V5S(&YO="!Y:65L9"!A;B!,4D5354Q4+"!T:&4@86YS=V5R M(&9R;VT@=&AE("=S=7!E<F-L87-S)PT*"7=I;F1O=R!P<F]C961U<F4@*&4N M9RX@=&AE(&1E9F%U;'0@=VEN9&]W('!R;V-E9'5R92DN(@T*#0H)?"!S96QE M8W1O<B!A;G-W97(@? T*"6%N<W=E<B Z/2 H;65S<V%G92 \(%=-7U5315(- M"@D):694<G5E.B!;#0H)"0DB270G<R!A('-Y<W1E;2!M97-S86=E+B(-"@D) M"2AS96QE8W1O<B Z/2!-97-S86=E36%P(&%T.B!M97-S86=E*S$I(&YO=$YI M; T*"0D)"6EF5')U93H@6W-E;&8@<&5R9F]R;3H@<V5L96-T;W(@=VET:#H@ M;65S<V%G92!W:71H.B!W4&%R86T@=VET:#H@;%!A<F%M75T-"@D):69&86QS M93H@6PT*"0D);65S<V%G92 \/2!7;55S97),87-T#0H)"0D):694<G5E.B!; M("))="=S(&$@=7-E<B!M97-S86=E+B(-"@D)"0D)<V5L9B!D:7-P871C:%5S M97(Z(&UE<W-A9V4@+2!735]54T52('=087)A;3H@=U!A<F%M(&Q087)A;3H@ M;%!A<F%M70T*"0D)"6EF1F%L<V4Z(%L@(DET)W,@82!R96=I<W1E<F5D(&UE M<W-A9V4N(@T*"0D)"0ES96QF(&1I<W!A=&-H4F5G:7-T97)E9#H@;65S<V%G M92!W4&%R86TZ('=087)A;2!L4&%R86TZ(&Q087)A;5U=*2!A<T1W;W)D+@T* M(T-5861D960N#0H)*&%N<W=E<B!N;W1.:[hidden email]!;86YS=V5R(&ES26YT M96=E<B!N;W1=*2!I9E1R=64Z#0H)"5M\(&UE=&AO9"!\#0H)"7-E;&5C=&]R M(&ES3FEL(&EF5')U93H@6W-E;&5C=&]R(#H](&UE<W-A9V4@/#T@5VU5<V5R M3&%S= T*"0D)"0D):694<G5E.B!;(V1I<W!A=&-H57-E<CIW4&%R86TZ;%!A M<F%M.ET-"@D)"0D)"6EF1F%L<V4Z(%LC9&ES<&%T8VA296=I<W1E<F5D.G=0 M87)A;3IL4&%R86TZ75TN#0H)"6UE=&AO9" Z/2!S96QF(&-L87-S(&QO;VMU M<$UE=&AO9#H@<V5L96-T;W(N#0H)"51R86YS8W)I<'0@9&ES<&QA>3H@;65T M:&]D.R!D:7-P;&%Y.B G(&%N<W=E<G,@)SL@<')I;G0Z(&%N<W=E<CL@8W)= M+@T*#0H)(E=E($U54U0@86YS=V5R(&%N(&EN=&5G97(@=F%L=64N($EF(&]N M92!W87,@;F]T('!R;W9I9&5D+"!T:&5N(&%S<W5M92!D969A=6QT#0H)=VEN M9&]W('!R;V-E<W-I;F<@:7,@<F5Q=6ER960N(@T*"5YA;G-W97(@:7-);G1E M9V5R#0H)"6EF5')U93H@6V%N<W=E<ET-"@D):69&86QS93H@6W-E;&8@9&5F M875L=%=I;F1O=U!R;V-E<W-I;F<Z(&UE<W-A9V4@=U!A<F%M.B!W4&%R86T@ M;%!A<F%M.B!L4&%R86U=(0T*#0IT<F%C:T-O;G1E>'1-96YU5VET:%1R86-I M;F<Z(&%0;VEN=$5V96YT#0H)(E!R:79A=&4@+2!3:&]W<R!A;F0@=')A8VMS M(&$@8V]N=&5X="!M96YU(&9O<B!T:&4@<F5C96EV97(@9G)O;2!T:&4@#0H) M;6]U<V4@<&]S:71I;VX@:6X@84-O;G1E>'1-96YU179E;G0N($%N<W=E<B!N M:6P@:68@=&AE(')E8V5I=F5R(&1O97,@;F]T#0H):&%V92!A(&-O;G1E>'1- M96YU('1O('-H;W<L(&]R(&$@0F]O;&5A;B!I9B!I="!H87,N(@T*#0H)?"!M M96YU('P-"B-#56%D9&5D+@T*"6UE;G4@.CT@<V5L9B!Q=65R>4-O;G1E>'1- M96YU+@T*"5YM96YU(&YO=$YI;"!I9E1R=64Z(%L@?"!P;W,@? T*"0EP;W,@ M.CT@85!O:6YT179E;G0@<&]S:71I;VXN#0H)"7!O<R ]("@M,4 M,2D@:694 M<G5E.B!;<&]S(#H]('-E;&8@<&]S:71I;VY&;W)+97EB;V%R9$-O;G1E>'1- M96YU72X-"@D)5')A;G-C<FEP="!N97AT4'5T06QL.B G06)O=70@=&\@<VAO M=R!M96YU.B G.R!D:7-P;&%Y.B!M96YU(&ET96US.R!C<BX-"@D);65N=2!S M:&]W26XZ('-E;&8@<&]S:71I;VXZ('!O<RX-"@D)=')U95T-"B$@(0T*(59I M97<@8V%T96=O<FEE<T9O<CH@(V1I<W!A=&-H365S<V%G95=I=&A4<F%C:6YG M.G=087)A;3IL4&%R86TZ(61I<W!A=&-H:6YG(7!R:79A=&4A("$-"B%6:65W M(&-A=&5G;W)I97-&;W(Z("-T<F%C:T-O;G1E>'1-96YU5VET:%1R86-I;F<Z M(6UE;G5S(7!R:79A=&4A("$-"@T*(D5N9"!O9B!P86-K86=E(&1E9FEN:71I M;VXB(0T*#0HB4V]U<F-E($=L;V)A;',B(0T*#0HB0VQA<W-E<R(A#0H-"D)U M9V=Y4VAE;&P@9W5I9#H@*$=5240@9G)O;5-T<FEN9SH@)WM"-C8W,S(V,"TP M-4,X+31&,D8M0C$S0RU$0D9"-4,Y,T-"14-])RDA#0I"=6=G>5-H96QL(&-O M;6UE;G0Z("<G(0T*(4)U9V=Y4VAE;&P@8V%T96=O<FEE<T9O<D-L87-S(4U6 M4"U0<F5S96YT97)S(2 A#0HB0FEN87)Y($=L;V)A;',B(0T*#0HB4F5S;W5R M8V5S(B$-"@T**%)E<V]U<F-E261E;G1I9FEE<B!C;&%S<SH@0G5G9WE3:&5L M;"!N86UE.B G1&5F875L="!V:65W)RD@87-S:6=N.B H3V)J96-T(&9R;VU" M:6YA<GE3=&]R94)Y=&5S.@T**$)Y=&5!<G)A>2!F<F]M2&5X4W1R:6YG.B G M,C$U,S4T-#(R,#,P,C T-C R,$,P,# Q,# P,# P-38V.38U-S<U,C8U-S,V M1C<U-S(V,S8U,# P,# P,# P13 Q,C0P,#4S-30T,C4R-C4W,S9&-S4W,C8S M-C4U,S4T-#(T,C<Y-S0V-30Q-S(W,C8Q-SDT,38S-C,V-3<S-S,V1C<R-3 W M,C9&-S@W.3 P,# P,# P,S8P,# Y,# T,C<Y-S0V-30Q-S(W,C8Q-SE%.3 Y M,# P,#(Q-3,U-#0R,C S,#(P-$4P.#!#,# P03 P,# P,#4S-30T,C4V-CDV M-3<W-3 W,C9&-S@W.3 P,# P,# P-$4P,C!$,# P,3 P,# P,#4S-30T,C0S M-D,V,3<S-S,U,#<R-D8W.#<Y,# P,# P,# S-C P,#8P,#4S-S0W,C8Y-D4V M-S$P,# P,# P-#0V1C9#-S V.#8Y-D4R,#1$-38U,#(P-#(V,3<S-C4Y,C P M,# P,# Y,# P,# P-3,V.#8U-D,V0S4V-CDV-3<W,C8P,# U,# T,3<R-S(V M,3<Y,4(P,# P,# P,# P,# P,# P,# P,# P0S(P,# P,# P,C P,# P,# Q M,# Y13 Q,#$P,# R,# V,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P M,# W,#(P,# P,# P,# P,# P,# P,# P,# P,# P,# P-C P,# P,# P-C W M,$,P,#0R-D8W,C8T-C4W,C1#-C$W.39&-S4W-# P,# P,# P,#$P,# P,# P M,3 P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P-4$P,# P M,# P,# P,# P,#=!,# P,# P,# P,# P,#!!,# P,# P,#DR,# P,# P,$0P M,# P,# T,S9&-D4W-#8Q-CDV138U-S(U-C8Y-C4W-T,R,# P,# P,$8P,# P M,# P,# P,# P,#8P,# P,# P0S(P,# P,# P,C P,# P,#,V,# P0S P-$,V M,3<R-C<V-30Y-D4W-#8U-C<V-3<R,#0P,# P,# P,# P,# T-# Q,# P,C P M,3 P,3 P,# P,# P,# P,# P,# P,# P,# P,# P,# P-S P,# P,#0V,#4P M-# P,#(P,# P,# T1#8U-D4W-3 P,# P,# P,# P,# P,# Q,# P,# P,$,R M,# P,# P,#$P,# P,# T-C R,$8P,# Q,# P,# P-#,V1C9$-D0V,39%-C0T M1#8U-D4W-30Y-S0V-39$,# P,# P,# P,3 P,# P,#0V,#0Q,C P,#(P,# P M,# T,S9&-D0V1#8Q-D4V-#0T-C4W,S8S-S(V.3<P-S0V.39&-D4P,# P,# P M,#!%,#$P13 P-3,U-#0R-3,W.39$-C(V1C9#-3 W,C9&-S@W.3 P,# P,# P M.3(P,# P,# P.3 P,# P,#9%-D8T,S9&-D0V1#8Q-D4V-#DR,# P,# P,$$P M,# P,# T1C<U-S0V-3<R,C V1#8U-D4W-3 Q,# P,# P,# P,# P,# Y,C P M,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,3 P,3 P,# P M,# P,# P,#!%,#(Q03 P-3,U-#0R-#DV-#8U-D4W-#8Y-S0W.30T-CDV,S<T M-CDV1C9%-C$W,C<Y-3 W,C9&-S@W.3 P,# P,# P-T$P,# P,# P,# P,# P M,#DR,# P,# P,#<P,# P,# T-#9&-D,W,#8X-CDV13DR,# P,# P,3(P,# P M,# T.38T-C4V13<T-CDW-#<Y-#0V.38S-S0V.39&-D4V,3<R-SE#,C P,# P M,# R,# P,# P-4$P,# P,# P,# P,# P,#(P,#$P,# P0S(P,# P,# P1C P M,# P,# P,# P,# P,3 P,3 P,#!#,C P,# P,# R,# P,# P-C(P,3 P,# P M-# P,# P,# P,# P,#0T,#$P,# R,#!!,# R,# P,# P,# P,# P-#8P,3 S M,# P,3 P,# P,#4R-#<T,C P,# P,# P1D8P,3 Q,#$P,# P,# P,# W,# P M,# P,# P,# P,# P,# P,# P,# P,# P,# P03 P,C P,# P,# P,# P,#1! M,#(P,# P,# P,# P,# V,# R,# P,$,R,# P,# P,#(P,# P,# U03 P,# P M,# P,# P,# P-T$P,# P,# P,# P,# P,#DR,# P,# P,3<P,# P,# T-#9& M-D,W,#8X-CDV13(P-#,V1C9$-D0V1C9%,C T,S9&-D4W-#<R-D8V0S<S.3(P M,# P,# P.# P,# P,#4T-S(V-38U-38V.38U-S=#,C P,# P,#%",# P,# P M,# P,# P,#!!,# R,# P,$,R,# P,# P,#(P,# P,# V,C Q,# P,# T,# P M,# P,C,P,# P-#0P,3 P,# P,#(P,#,P,# P-#8P-# Y,# P,C P,# P,#4T M-S(V-38U-$0V1C8T-C4V0S P,# P,# P,# P,# P,# P-C S,#@P,#4T-S(V M-38U-$4V1C8T-C4P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,#1! M,#(P,# P,# P,# P,# V,# R,# P,$,R,# P,# P,# P,# P,# P-C P,30P M,#0Y-C0V-39%-S0V.3<T-SDU,S8U-C$W,C8S-C@U,#9&-D,V.38S-SDP,# P M,# P,$4R,#(P,# P,# P,# P,# P,49&,#$P,# P,# P,# P,#<P,# P,# X M,C Q,# P,# P,# P,# P,# P,# P,# Q,# P,# P,$,R,# P,# P,#$P,# P M,#!",C Q,# P,# P,# P,# P,#$P,# P,#!$,C Q,# P,# P,# P,# P,# P M,C P,# Y,C P,# P,#!!,# P,# P-#DV139%-C4W,C(P-$0V-39%-S4P,3 P M,# P,# P,# P,# P.3(P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P M,# P,# P,#(P,#,P,# P,# P,# P,# V,C Q,# P,# X,# P,# P-#,P,D9& M1D8P,# P,# P,#=!,# P,# P,# P,# P,#!!,# P,# P,#DR,# P,# P,3$P M,# P,# T,C8Q-S,V.38S-$,V.3<S-S0T,38R-S,W-#<R-C$V,S<T-T$P,# P M,# P,# P,# P,#0P,#,P,# P.3(P,# P,# Q,C P,# P,#0Y-C,V1C9%-CDV M,S1#-CDW,S<T-#$V,C<S-S0W,C8Q-C,W-#!%,#(Q,3 P-3,U-#0R-3,V.39% M-C<V0S8U-S0V1C9%-3 W,C9&-S@W.3 P,# P,# P-T$P,# P,# P,# P,# P M,$$P,# P,# P.3(P,# P,# Q,# P,# P,#0Y-C,V1C9%-#DV1#8Q-C<V-31$ M-C$V138Q-C<V-3<R1D$P,3 P,# P,# P,# P,#DR,# P,# P,#<P,# P,# V M,S<U-S(W,C8U-D4W-# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P M,# P,# P,# T03 R,# P,# P,# P,# P-T$P,# P,# P,# P,# P,#<P,#(P M,# P.3(P,# P,# P0C P,# P,#1#-D8V1C9"-S4W,#4T-C$V,C9#-C5%,# S M,# P,#$Q,# P,# P1D$P,3 P,# P,# P,# P,#DR,# P,# P,#<P,# P,# V M139&-#DV,S9&-D4W,S Q,# P,# P,# P,# P,# P-C Q,$8P,#1$-C4W,S<S M-C$V-S8U-3,V-3<Q-S4V-39%-C,V-3 P,# P,# P,$4P,C$R,# U,S4T-#(T M,S9&-D,V0S8U-C,W-#8Y-D8V134P-S(V1C<X-SDP,# P,# P,#=!,# P,# P M,# P,# P,# W,# R,# P,#DR,# P,# P,3$P,# P,# T1C<R-C0V-3<R-C4V M-#0S-D8V0S9#-C4V,S<T-CDV1C9%0S(P,# P,# P,C P,# P,# V,#,P0C P M-$0V-3<S-S,V,38W-C4U,S8U-D4V-# P,# P,# P1D$P,3 P,# P,# P,# P M,#DR,# P,# P,3 P,# P,# V,S<R-C4V,3<T-C4T,3<T,T$V-3<X-S0V-39% M-S0S04,R,# P,# P,#(P,# P,# P-C R,#4P,#4P-D8V.39%-S0P,# P,# P M,$(U,# P,# P,CDP,# P,# T,C V,# P,# P,# P,# P034P,3 P,# R1# Q M,# P,#(P,#,P,# P1C(P-3 P,# P,# P,# P,$9!,#$P,# P,# P,# P,# Y M,C P,# P,#!#,# P,# P-C,V1C9%-S0V-3<X-S0T1#8U-D4W-3-!0S(P,# P M,# P,3 P,# P,#(P,#0P,# P,C P,S P,# P-C Q,$8P,#4W-#DT130T-$8U M-S4P-$,T,30S-#4T1#0U-$4U-# P,# P,# P,S8P,# Y,# T,C<Y-S0V-30Q M-S(W,C8Q-SDR0S P,# P,#)#,# P,# P,# P,# P,# P,3 P,# P,$9&1D9& M1D9&1D9&1D9&1D9&1D9&1D9&1D9&1D9&1D9&-4$P,# P,# Q-# P,# P,#)# M,#$P,# P04$P,# P,#!!03 U,# P,# P,# P,# P0S P-3 P,#!%,# S,# P M,#0R,#8P,# P,# P,# P,#!#,3 P,# P,$,Q,# P,# P,# P,# P,# Q-S P M,# P,#DR,# P,# P,$4P,# P,# T.39%-D4V-3<R-#,V1C9%-S0V,38Y-D4V M-3<R,# P,# P,# X,C U,# P,# P,# P,# P04$P-3 P,# P,# P,# P,$,P M,#4P,# P0S(P,# P,# P,3 P,# P,$8R,#4P,# P,# P,# P,# Q,# V,# P M,$,R,# P,# P,#(P,# P,# T,C V,# P,# P,# P,# P04(P,# P,# Q-3 P M,# P,#0R,#8P,# P,# P,# P,# R,3 S,# P,$8U,#$P,# P03 P,C P,#!" M,C V,# P,# P,# P,# P1#(P-C P,# R0S P,# P,#)#,# P,# P,# P,# P M,# P,3 P,# P,$9&1D9&1D9&1D9&1D9&1D9&1D9&1D9&1D9&1D9&1D9&-34P M,# P,# P03 P,# P,$4U,#$P,# P,#0P,3 P,#!!03 U,# P,# P,# P,# P M0S P-3 P,#!#,C P,# P,# Q,# P,# P,C P,S P,# P,# W,# P,# P,# P M,# P,3,P,# P,# Y,C P,# P,#!&,# P,# P-$0V.38T-C0V0S8U-#,V1C9% M-S0V,38Y-D4V-3<R,# P,# P,# X,C U,# P,# P,# P,# P04$P-3 P,# P M,# P,# P,$,P,#4P,# P0S(P,# P,# P,C P,# P,$8R,#4P,# P,# P,# P M,# Q,# V,# P,$,R,# P,# P,#(P,# P,# T,C V,# P,# P,# P,# P,#$P M,# P,# P,3 P,# P,#0R,#8P,# P,# P,# P,# Y-3 T,# P,#DQ,#$P,# P M,3 P,3 P,#!&,C U,# P,# P,# P,# P.# P-C P,#!#,C P,# P,# Q,# P M,# P.3 P,3 P,# Q,# Q,# P,$(R,#8P,# P,# P,# P,#!$,C V,# P,#)# M,# P,# P,D,P,# P,# P,# P,# P,# Q,# P,# P1D9&1D9&1D9&1D9&1D9& M1D9&1D9&1D9&1D9&1D9&1D8P,# P,# P,# P,# P,# P-$$P,C P,#!#.# P M,# P,$%!,#4P,# P,# P,# P,#!#,# U,# P,$,R,# P,# P,#$P,# P,#!! M,# R,# P,# P,#<P,# P,# P,# P,# Q,S P,# P,#1!,#(P,# P,# P,# P M,# V,# R,# P,$,R,# P,# P,#(P,# P,# Q,# Q,# P,#DR,# P,# P,$4P M,# P,# T1C<U-S0V-3<R-#,V1C9%-S0V,38Y-D4V-3<R,# P,# P,# P,# P M,# P,# P,# P,# P,# P,# P,# P,# P,# P,# Q,# P,# P,# P,# P,# P M,# P,# P,# P,# P,# P,# P,# P,# P,3 P,# P,# P,# P,# P,# P,# P M,# X,C U,# P,# P,# P,# P04$P-3 P,# P,# P,# P,$,P,#4P,# P0S(P M,# P,# P,S P,# P,$8R,#4P,# P,# P,# P,# Q,# V,# P,$,R,# P,# P M,#(P,# P,# T,C V,# P,# P,# P,# P,$(P,# P,# P0C P,# P,#0R,#8P M,# P,# P,# P,#!!-3 T,# P,$,W,#$P,# P-C P,# P,#!&,C U,# P,# P M,# P,# P1D$P,3 P,# P,# P,# P,#DR,# P,# P,#4P,# P,# W-#8U-S@W M-#-!0S(P,# P,# P,3 P,# P,#DR,# P,# P,$(P,# P,# T,C<U-C<V-S<Y M,C U,S8X-C4V0S9#-C P,# P,#!&,C U,# P,# P,# P,# P1D$P,3 P,# P M,# P,# P,#DR,# P,# P,#@P,# P,# V1#8U-D4W-30R-C$W,C-!0S(P,# P M,# P,3 P,# P,# P,# P,# P-C P,# P,#!",C V,# P,# P,# P,# P1#(P M-C P,# R0S P,# P,#)#,# P,# P,# P,# P,# P,# P,# P,$9&1D9&1D9& M1D9&1D9&1D9&1D9&1D9&1D9&1D9&1D9&,#4P,# P,# P-3 P,# P,#4W,#(P M,# P13@P,# P,#!!03 U,# P,# P,# P,# P0S P-3 P,#!#,C P,# P,# Q M,# P,# P,3 P,3 P,# P,# W,# P,# P,# P,# P,34P,# P,# T-C U,#0P M,# S,# P,# P-#DV,S9&-D4P,# P,# P,# P,# P,# P,3 P,# P,# P13 R M,3$P,#4S-30T,C4S-CDV138W-D,V-3<T-D8V134P-S(V1C<X-SDP,# P,# P M,#1%,#(P1# P,#$P,# P,# U,S4T-#(T,S9#-C$W,S<S-3 W,C9&-S@W.3 P M,# P,# P,S8P,# V,# U,S<T-S(V.39%-C<P-S P,# P,#0T-D8V0S<P-C@V M.39%,3(P,3 P,# Q.# P,# P,#0Y-D0V,38W-C4U,C8U-D,V,3<T-CDW-C8U M-#8V.39#-C4T0S9&-C,V,3<T-D8W,C!%,#$P13 P-3,U-#0R-3,W.39$-C(V M1C9#-3 W,C9&-S@W.3 P,# P,# P,3(P,3 P,# P-S P,# P,#8S-S4W,C<R M-C4V13<T,3(P,3 P,# P1# P,# P,#4S-C@V-39#-D,U-C8Y-C4W-S)%-CDV M,S9&,$4P,C%&,# U,S4T-#(T-3<X-S0V-3<R-D4V,39#-3(V-3<S-D8W-3<R M-C,V-31#-CDV,C<R-C$W,C<Y-3 W,C9&-S@W.3 P,# P,# P,3(P,3 P,# Q M,# P,# P,#8T-D8V0S<P-C@V.39%-C0W,C,P,S S-3)%-C0V0S9#,# P,# P *,# G*2DA#0H-"@`` ` end |
"Chris Uppal" <[hidden email]> wrote in message
news:[hidden email]... > (Bug #464 is Ian's one about the VC's PAI showing the wrong menu in beta1.) > > This one seems a bit odd. > > A bit of background: yesterday I was still on beta1 and had no net > connection, so when I was being held up by #464 I had a look to see if I > could fix it. What I found doesn't quite match the writeup in the new fixed > bugs database, and seems still to be happening in beta 2 (though not in the > VC). > > What I found, but can't fully explain, was that when I invoked a context > menu in the aspect tree of the VC (remember this is beta 1) it tried to > display *two* context menus. First it displayed the correct menu for the > aspect tree, and then (as part of handling the same right-mouse event) would > go on to try to display the context menu for the containing view *as well*. >... Thanks Chris, it definitely reproduces for me on a 2k machine. There is something screwy going on, so I will re-open that issue for further investigation. Regards Blair |
"Blair McGlashan" <[hidden email]> wrote in message
news:[hidden email]... > > "Chris Uppal" <[hidden email]> wrote in message > news:[hidden email]... > > (Bug #464 is Ian's one about the VC's PAI showing the wrong menu in > beta1.) > > > > This one seems a bit odd. > >... > > What I found, but can't fully explain, was that when I invoked a context > > menu in the aspect tree of the VC (remember this is beta 1) it tried to > > display *two* context menus. First it displayed the correct menu for > > aspect tree, and then (as part of handling the same right-mouse event) > would > > go on to try to display the context menu for the containing view *as > well*. > >... > > Thanks Chris, it definitely reproduces for me on a 2k machine. There is > something screwy going on, so I will re-open that issue for further > investigation. I have looked into this briefly a couple of times, and it appears to be something to do with the Windows TreeView control. As far as I can tell it always gives the parent first shot at displaying a context menu (i.e. it appears to deliberately send it a WM_CONTEXTMENU). Try the following: 1) Create a new shell in the VC 2) Define a context menu for the shell 3) Add a TreePresenter default view 4) Define a context menu for the tree 5) "Test" it, and right click in the tree I always get the context menu for the shell. If I replace the TreeView from step 3 with a ListView, then I always get the context menu for the list. In other words, this appears to be the behaviour of the control, and I'm amazed we have never noticed it before. It needs a workaround. I notice from the docs for WM_CONTEXTMENU that the wParam is the "Handle to the window in which the user right clicked the mouse. This can be a child window of the window receiving the message.". Therefore the "fix" for Dolphin may be as simple as ignoring the message where wParam is not equal to the hWnd of the receiver. There may also be some unwanted interaction with the default window procedure, which relays the message to the parent too. Regards Blair |
Free forum by Nabble | Edit this page |