help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ediff frame appear in another page of Fvwm. How to debug/fix?


From: jpkotta
Subject: Re: ediff frame appear in another page of Fvwm. How to debug/fix?
Date: Wed, 26 Sep 2012 08:07:55 -0700 (PDT)
User-agent: G2/1.0

On Wednesday, September 26, 2012 4:23:04 AM UTC-5, Oleksandr Gavenko wrote:
> M-x ediff RET RET create ediff frame. It shown at right upper corner.
> 
> 
> 
> But recently it shown in another page of Fvwm, so I don't see main Emacs 
> frame.
> 
> 
> 
> I try set:
> 
> 
> 
> (defun my-ediff-control-frame-position 
> 
> (ctl-buffer ctl-frame-width ctl-frame-height)
> 
>   (list '(name . "TEST Ediff") '(top . -10) '(left . -30)))
> 
> 
> 
> - now it appear on another page but lower right corner.
> 
> 
> 
> I try disable my Fvwm hack:
> 
> 
> 
> DestroyFunc MyFuncFocusWindow
> 
> AddToFunc MyFuncFocusWindow
> 
> + I FlipFocus
> 
> + I WarpToWindow 50 50
> 
> DestroyModuleConfig FvwmEvent-NewWindow
> 
> *FvwmEvent-NewWindow: Cmd
> 
> *FvwmEvent-NewWindow: Delay 1
> 
> *FvwmEvent-NewWindow: StartDelay 10
> 
> *FvwmEvent-NewWindow: add_window MyFuncFocusWindow
> 
> 
> 
> AddToFunc StartFunction I Module FvwmEvent
> 
> AddToFunc StartFunction I FvwmEvent FvwmEvent-NewWindow
> 
> 
> 
> and now ediff work good.
> 
> 
> 
> This Fvwm code emulate Windows focus behavior that I like.
> 
> 
> 
> Any suggestion to fix issue?

On Wednesday, September 26, 2012 4:23:04 AM UTC-5, Oleksandr Gavenko wrote:
> M-x ediff RET RET create ediff frame. It shown at right upper corner.
> 
> 
> 
> But recently it shown in another page of Fvwm, so I don't see main Emacs 
> frame.
> 
> 
> 
> I try set:
> 
> 
> 
> (defun my-ediff-control-frame-position 
> 
> (ctl-buffer ctl-frame-width ctl-frame-height)
> 
>   (list '(name . "TEST Ediff") '(top . -10) '(left . -30)))
> 
> 
> 
> - now it appear on another page but lower right corner.
> 
> 
> 
> I try disable my Fvwm hack:
> 
> 
> 
> DestroyFunc MyFuncFocusWindow
> 
> AddToFunc MyFuncFocusWindow
> 
> + I FlipFocus
> 
> + I WarpToWindow 50 50
> 
> DestroyModuleConfig FvwmEvent-NewWindow
> 
> *FvwmEvent-NewWindow: Cmd
> 
> *FvwmEvent-NewWindow: Delay 1
> 
> *FvwmEvent-NewWindow: StartDelay 10
> 
> *FvwmEvent-NewWindow: add_window MyFuncFocusWindow
> 
> 
> 
> AddToFunc StartFunction I Module FvwmEvent
> 
> AddToFunc StartFunction I FvwmEvent FvwmEvent-NewWindow
> 
> 
> 
> and now ediff work good.
> 
> 
> 
> This Fvwm code emulate Windows focus behavior that I like.
> 
> 
> 
> Any suggestion to fix issue?

Are you talking about the ediff control window?  Personally, I prefer it to be 
in the same frame as the buffers being compared: (setq 
ediff-window-setup-function 'ediff-setup-windows-plain).

But even when I use emacs -q and run ediff, the control frame never goes off 
the page, so it must be related to your Fvwm config.  I doubt it has anything 
to do with changing focus; it's probably due to whatever placement styles you 
have enabled.  Here is the part of my Fvwm config which is probably relevant:

,----
| Style * SnapAttraction 10 All Screen
| 
| Style * ResizeOpaque
| 
| Style * UsePPosition
| 
| Style * MinOverlapPlacement
| 
| # start on screen with pointer
| Style * StartsOnScreen c
| 
| # do not jump to a desk that a window suddenly pops up on
| Style * SkipMapping
`----
,----
| # widows are focused by clicking on them
| # the focusing click is passed to the window
| # clicking in the window does not raise, but clicking on the decorations does
| Style * ClickToFocus, FPClickDecorToFocus
| Style * !FPClickRaisesFocused, !FPClickRaisesUnfocused, \
|     FPClickDecorRaisesFocused, FPClickDecorRaisesUnfocused
| 
| # programs can focus themselves
| Style * FPFocusByProgram
| 
| # new windows/transients grab the focus when created
| # closing a window/transient releases focus to the previously focused window
| Style * FPGrabFocus, FPGrabFocusTransient, FPReleaseFocus, 
FPReleaseFocusTransient
`----

I don't have any emacs-specific fvwm styles.  You should probably ask the Fvwm 
list.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]