xpra icon
Bug tracker and wiki

Opened 5 months ago

Closed 5 months ago

#1703 closed defect (wontfix)

raising windows in i3wm

Reported by: Boruch Owned by: Antoine Martin
Priority: minor Milestone: 2.2
Component: platforms Version: trunk
Keywords: i3wm Cc:

Description

Version: Xpra gtk2 client version 2.1.3-r17247 64-bit
Platform: Debian Stretch / Devuan Ascii
Kernel: Linux 4.9.0-3-amd64 [Debian version: 4.9.30-2+deb9u5 (2017-09-19)]

I'm not sure whether you want to deal with the idiosyncrasies of every minor window manager, but ...

When using xpra in an i3wm environment, the "raise windows' menu item of the xpra system tray menu does not raise the xpra client window. However, it does change focus to that window.

The command-line one-liner to perform this for a single xpra "session info" window in i3wm would be

i3-msg -t command '[class="Xpra"] focus floating move scratchpad move workspace current'

A convenient command-line way to get a specific X-window identifier for any window is to use the xprop command and click the 'X' cursor on the target window.

Change History (1)

comment:1 Changed 5 months ago by Antoine Martin

Resolution: wontfix
Status: newclosed

We use gtk.Window.present(): The present() method presents a window to the user. This may mean raising the window in the stacking order, deiconifying it, moving it to the current desktop, and/or giving it the keyboard focus, possibly dependent on the user's platform, window manager, and preferences. If the window is hidden, this method calls the the gtk.Widget.show() method as well. This method should be used when the user tries to open a window that's already open. Say for example the preferences dialog is currently open, and the user chooses Preferences from the menu a second time; use the present() method to move the already-open dialog where the user can see it.

If that doesn't do what is required, then it's likely that the window manager decided not to honour the request as it was intended. We can't force it.

Note: See TracTickets for help on using tickets.