Boris 'billiob' Faure wrote:
> Hi!
>
> I've got an annoying misfeature. I've got the pager settings to "Show
> popup on urgent window". I've rxvt-unicode to set the UrgencyHint
> whenever a bell occured in a terminal. This is great to get
> notifications when i get pinged on irc... But it's really annoying
> when the window setting the bell is already focused (for example when
> i mistype on vim, or get pinged while chatting on irssi) because the
> popup is shown.
>
> Here is ICCCM section 4.1.2.4 about UrgencyHint:
> -----
> The UrgencyHint flag, if set in the flags field, indicates that the
> client deems the window contents to be urgent, requiring the timely
> response of the user. The window manager must make some effort to draw
> the user's attention to this window while this flag is set. The window
> manager must also monitor the state of this flag for the entire time
> the window is in the Normal or Iconic state and must take appropriate
> action when the state of the flag changes. The flag is otherwise
> independent of the window's state; in particular, the window manager
> is not required to deiconify the window if the client sets the flag on
> an Iconic window. Clients must provide some means by which the user
> can cause the UrgencyHint flag to be set to zero or the window to be
> withdrawn. The user's action can either mitigate the actual condition
> that made the window urgent, or it can merely shut off the alarm.
>
> Rationale
>
>     This mechanism is useful for alarm dialog boxes or reminder
> windows, in cases where mapping the window is not enough (e.g. in the
> presence of multi-workspace or virtual desktop window managers), and
> where using an override-redirect window is too intrusive. For example,
> the window manager may attract attention to an urgent window by adding
> an indicator to its title bar or its icon. Window managers may also
> take additional action for a window that is newly urgent, such as by
> flashing its icon (if the window is iconic) or by raising it to the
> top of the stack.
> -----
>
> My main issue is where to patch, if you agree that this behaviour
> should be changed:
> - in ecore/src/lib/ecore_x/xlib/ecore_x_icccm.c, do not set is_urgent
> to 1 when window is focused.
>   

Neither vim nor your terminal are using ecore_x, so this will not change 
anything for you.

> - in e/src/bin/e_border.c, do not emit "e,state,urgent" when the
> window is focused
> - in e/src/modules/pager/e_mod_main.c
>   

The correct way would be to patch the app, because it is up to the app 
to decide when the urgent situation is gone. This might be when the 
window got the focus, but this can also be some 'real' action like 
hitting a button or change some value, or correcting a wrong written word.


A different situation is with _NET_WM_STATE_DEMANDS_ATTENTION, there it 
is up to the window manager to decide when the window got the demanded 
attention, e.g. when the window got the focus.

Regards Peter

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to