The i3 FAQ has migrated to https://github.com/i3/i3/discussions. All content here is read-only.
Ask Your Question
1

Tabbed layout for skype chats

asked 2013-09-26 05:40:08 +0000

G12ES gravatar image

updated 2013-09-27 08:24:44 +0000

I would like placed skype windows in such case:
- contact list in left side in tiling mode
- chats in right side in tabbed mode
How I can change mode for some windows?
Thank you.

------------------------------------------------------------
| chat1 | chat2 | chat3 | | Contacts |
------------------------------------------------------------
| | |
| | |
| | |
| | |
| | |
| | |
| | |
------------------------------------------------------------
edit retag flag offensive close merge delete

2 answers

Sort by » oldest newest most voted
0

answered 2013-09-26 16:42:05 +0000

Michael gravatar image

I think the easiest way is to enter tabbed mode (Mod+w in the default config), open the chat windows, then move the contacts window to the right (Mod+Shift+Right arrow in the default config) repeatedly until it pops out. Afterwards resize the boundary between the tabbed container and the contacts window with the mouse.

edit flag offensive delete link more

Comments

Thank you, Michael, I can do it manually, but I want that new Skype Chat window opened in tabbed container. How I can write this rule in cofig file? (for_window may be)

G12ES gravatar imageG12ES ( 2013-09-27 08:18:34 +0000 )edit

Thanks Michael, that's one more lesson in "doing things the i3 way" I've learned.

KJ44 gravatar imageKJ44 ( 2014-03-03 22:50:44 +0000 )edit
0

answered 2014-03-03 23:03:47 +0000

KJ44 gravatar image

updated 2014-03-27 17:19:50 +0000

OK, this isn't a way to automate, as you and I would like, but it's a workaround. It relies on the observation that one's Skype username is in the title of the Contacts Window.

The Contacts Window is in the scratchpad, so you can toggle its visibility with a key; the Chat Windows remain tiled. Thus, when you lay out the tiled Chat Windows as tabbed or stacked, you exclude the Contacts Window.

# Skype.                                                                                                                                                             
for_window [instance="skype" title="G12ES"] floating enable, move scratchpad, scratchpad show;
bindsym $mod+backslash [instance="skype" title="G12ES"] scratchpad show;

Unfortunately it seems one can't assign the floating scratchpad window to a workspace, but one can assign the tiled Chat windows to a workspace.

UPDATE

I have abandoned the floating window approach. I now (1) fire up Skype in a workspace (2) enter my special "workspace layout" mode (3) type 's k y' and hey presto I have the contacts window on the left and a stacking container on the left (a terminal). If I then (4) open a chat window, it appears stacked in the terminal container. This is a vile hack ...

mode "Layout" {

    # Skype.                                                                                                                                                         
    # https://faq.i3wm.org/question/2593/tabbed-layout-for-skype-chats/                                                                                              
    # The terminal acts as a stacked container for chat windows.                                                                                                     
    # The contacts window is moved to the right of the terminal.                                                                                                     
    # Chat windows are configured to appear inside the stacked container.                                                                                            
    # See "Define workspace layouts ..." elsewhere in this file.                                                                                                     
    bindsym s exec i3-sensible-terminal --title "Skype™ Chat"
    bindsym k layout stacking
    bindsym y [instance="skype"] focus, move right, mode "default"

    # Go back to normal.                                                                                                                                             
    bindsym Return mode "default"
    bindsym Escape mode "default"
    bindsym    Tab mode "default"
}
# Define workspace layouts in conjunction with layout mode.                                                                                                          
assign [title="Skype™ Chat"] sk
assign [instance="skype"] sk
for_window [instance="skype" title="Skype™ Chat"] move left, move left
edit flag offensive delete link more

Question Tools

Stats

Asked: 2013-09-26 05:40:08 +0000

Seen: 2,069 times

Last updated: Mar 27 '14