Unity does nothing with URGENT window flag

Bug #1108348 reported by Seth Arnold
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Unity
New
Undecided
Unassigned
unity (Ubuntu)
New
Undecided
Unassigned
Nominated for Raring by Seth Arnold
Nominated for Saucy by Seth Arnold

Bug Description

Under other window managers, I've become quite used to terminal bells raising the URGENT flag and then alerting the window manager that I need to pay attention to something. Unity appears to ignore the URGENT flag.

To test:
1. open any terminal. (I've tried both urxvt and gnome-terminal.)
2. run "sleep 2; echo ^V^G"
3. quickly change desktops away to another desktop
4. note that nothing happens after two seconds

Unity should indicate to the user which window has set the URGENT flag. Unity should indicate to the user on which desktop the URGENT flag has been raised. Unity should provide a keyboard shortcut to switch desktop and focus to the window with the URGENT flag. (This may or may not exist already -- I just haven't found it.)

Thanks

unity:
  Installed: 6.12.0-0ubuntu0.2
  Candidate: 6.12.0-0ubuntu0.2
  Version table:
 *** 6.12.0-0ubuntu0.2 0
        500 http://us.archive.ubuntu.com/ubuntu/ quantal-updates/main amd64 Packages
        100 /var/lib/dpkg/status
     6.8.0-0ubuntu2 0
        500 http://us.archive.ubuntu.com/ubuntu/ quantal/main amd64 Packages

ProblemType: Bug
DistroRelease: Ubuntu 12.10
Package: unity 6.12.0-0ubuntu0.2
ProcVersionSignature: Ubuntu 3.5.0-22.34-generic 3.5.7.2
Uname: Linux 3.5.0-22-generic x86_64
.tmp.unity.support.test.0:

ApportVersion: 2.6.1-0ubuntu10
Architecture: amd64
CompizPlugins: [core,composite,opengl,compiztoolbox,decor,vpswitch,snap,mousepoll,resize,place,move,wall,grid,regex,imgpng,session,gnomecompat,animation,fade,unitymtgrabhandles,workarounds,scale,expo,ezoom,unityshell]
CompositorRunning: compiz
Date: Mon Jan 28 15:35:11 2013
DistUpgraded: 2013-01-19 18:04:29,144 DEBUG enabling apt cron job
DistroCodename: quantal
DistroVariant: ubuntu
GraphicsCard:
 Intel Corporation 3rd Gen Core processor Graphics Controller [8086:0166] (rev 09) (prog-if 00 [VGA controller])
   Subsystem: Lenovo Device [17aa:21f6]
InstallationDate: Installed on 2012-10-18 (102 days ago)
InstallationMedia: Ubuntu 12.04.1 LTS "Precise Pangolin" - Release amd64 (20120823.1)
MachineType: LENOVO 2359CTO
MarkForUpload: True
ProcEnviron:
 TERM=xterm
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.5.0-22-generic root=UUID=7b8c2e1b-d2e6-47d9-9030-c078e9701a1d ro quiet splash vt.handoff=7
SourcePackage: unity
UpgradeStatus: Upgraded to quantal on 2013-01-20 (8 days ago)
dmi.bios.date: 09/13/2012
dmi.bios.vendor: LENOVO
dmi.bios.version: G4ET62WW (2.04 )
dmi.board.asset.tag: Not Available
dmi.board.name: 2359CTO
dmi.board.vendor: LENOVO
dmi.board.version: Not Defined
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Not Available
dmi.modalias: dmi:bvnLENOVO:bvrG4ET62WW(2.04):bd09/13/2012:svnLENOVO:pn2359CTO:pvrThinkPadT530:rvnLENOVO:rn2359CTO:rvrNotDefined:cvnLENOVO:ct10:cvrNotAvailable:
dmi.product.name: 2359CTO
dmi.product.version: ThinkPad T530
dmi.sys.vendor: LENOVO
version.compiz: compiz 1:0.9.8.6-0ubuntu1
version.ia32-libs: ia32-libs N/A
version.libdrm2: libdrm2 2.4.39-0ubuntu1
version.libgl1-mesa-dri: libgl1-mesa-dri 9.0-0ubuntu1
version.libgl1-mesa-dri-experimental: libgl1-mesa-dri-experimental N/A
version.libgl1-mesa-glx: libgl1-mesa-glx 9.0-0ubuntu1
version.xserver-xorg-core: xserver-xorg-core 2:1.13.0-0ubuntu6.1
version.xserver-xorg-input-evdev: xserver-xorg-input-evdev 1:2.7.3-0ubuntu2
version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:6.99.99~git20120913.8637f772-0ubuntu1
version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.20.9-0ubuntu2
version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:1.0.2-0ubuntu3

Revision history for this message
Seth Arnold (seth-arnold) wrote :
Revision history for this message
Andrea Azzarone (azzar1) wrote :

Ubuntu 12.10 reached end-of-life so it's no longer supported. Can you
still reproduce this bug on 14.04 (or laters)?

Changed in unity:
status: New → Incomplete
Changed in unity (Ubuntu):
status: New → Incomplete
Changed in unity:
status: Incomplete → New
Changed in unity (Ubuntu):
status: Incomplete → New
Revision history for this message
Seth Arnold (seth-arnold) wrote :

Andrea, the URGENT flag still doesn't work in Ubuntu 14.04 LTS Unity. I haven't upgraded to 14.10 yet

tags: added: trusty
removed: quantal
Revision history for this message
Andrea Azzarone (azzar1) wrote :

I'm pretty sure we do honor the UrgencyHint [1].
Not sure what's ^V^G is supposed to do.
 Do you have any documentation?

[1] http://tronche.com/gui/x/xlib/ICC/client-to-window-manager/wm-hints.html

Revision history for this message
Seth Arnold (seth-arnold) wrote :

^G is the ascii BEL character; most terminals will pass that along to X11 as an URGENT flag.

$ ascii bel
ASCII 0/7 is decimal 007, hex 07, octal 007, bits 00000111: called ^G, BEL
Official name: Bell
C escape: '\a'
Other names: Alert

From urxvt(1):

       urgentOnBell: boolean
           True: set the urgency hint for the wm on receipt of a
           bell character. False: do not set the urgency hint
           [default].

           urxvt resets the urgency hint on every focus change.

This little C program should do the job: https://<email address hidden>/msg00641.html

Thanks

Revision history for this message
Seth Arnold (seth-arnold) wrote :

In 16.04 LTS this is part-way met -- the launcher bar's icon for the window class will 'jiggle' when the URGENT flag is raised. This is nice.

However, this still doesn't show:

- Which specific window of the type raised the flag
- Which desktop the window is on
- Or a fast way to focus the specific window.

Thanks

Revision history for this message
Seth Arnold (seth-arnold) wrote :

tyhicks points out the following handy alias that may be easier to use than my keyboard ^V^G trick:

alias bell="echo -ne '\a'"

To test your unity, start an environment with two or more workspaces, two or more terminals.

In one of them, run "sleep 2 ; bell" and then wait. Notice what happens as you move around workspaces or focus different terminals before each test: You won't know which workspace triggered this, you won't know which terminal triggered this. But the little icon in the launcher will jiggle, so at least you'll know which class of applications caused it.

Thanks

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.