예제 #1
0
파일: manage.go 프로젝트: flying99999/wingo
func (c *Client) maybeAddToFocusStack() {
	if c.PrimaryType() == TypeDesktop ||
		c.PrimaryType() == TypeDock {

		return
	}
	focus.InitialAdd(c)
}
예제 #2
0
func (c *client) manage() {
	c.refreshName()
	logger.Message.Printf("Managing new client: %s", c)

	c.fetchXProperties()
	c.setPrimaryType()
	c.setInitialLayer()

	// Determine whether the client should start iconified or not.
	c.iconified = c.nhints.Flags&icccm.HintState > 0 &&
		c.hints.InitialState == icccm.StateIconic

	// newClientFrames sets c.frame.
	c.frames = c.newClientFrames()
	c.states = c.newClientStates()
	c.prompts = c.newClientPrompts()

	wingo.add(c)
	focus.InitialAdd(c)
	stack.Raise(c)
	wingo.workspace().Add(c)
	c.attachEventCallbacks()
}