Commit Graph

72 Commits

Author SHA1 Message Date
Uli Schlachter 7b65f068a1 Reorder some code for fullscreening windows
When one sets a client to fullscreen, this is what currently happens:
- lua code: c.fullscreen = true
- The C code emits request::fullscreen without having touched the client's
  fullscreen property yet (c.fullscreen is still false)
- awful.ewmh changes the client's geometry to fullscreen via c:geometry()
- This causes property::geometry to be emitted
- awful.layout reacts on this and causes the screen to be re-arranged, undoing
  the fullscreen geometry set in awful.ewmh
- The C code for c.fullscreen = true continues and actually changes the client's
  fullscreen flag

The result of this is that we get a client which thinks it is fullscreen'd
without actually being that.

Fix this by first changing the client's fullscreen property and then emitting
request::fullscreen. Same thing for maximized_{vertical,horizontal}.

Thanks to Jim Pryor for reporting this bug and helping reproducing it.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2010-06-18 18:24:05 +02:00
Julien Danjou 61430f860d ewmh: use client signals to update NET_ACTIVE_WINDOW
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:36:35 +02:00
Julien Danjou f4876b5275 ewmh: use signals to update client hints
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:29:34 +02:00
Julien Danjou 38edc58097 client: implements maximized and fullscreen requests with Lua
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:29:29 +02:00
Julien Danjou abd73e4f08 stack: stack_client_* calls stack_windows()
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:29:16 +02:00
Julien Danjou 4ef5e816ec client: remove internal geometry
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:29:11 +02:00
Julien Danjou c94f7b6767 window: import border_width property
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:29:06 +02:00
Julien Danjou a20400d60f client: move stack code into stack
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:28:49 +02:00
Julien Danjou 2b5bb2c34c window: add border_color property
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:28:15 +02:00
Julien Danjou cdd888d6cf xwindow: add xwindow_set_border_color helper function
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:28:10 +02:00
Julien Danjou d3c277b8ab window: add buttons support
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:28:05 +02:00
Julien Danjou f7746a198c luaclass: take care of inheritance garbage collection
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:27:49 +02:00
Julien Danjou 92717a0849 window: add strut support
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:27:45 +02:00
Julien Danjou 220d072164 window: import class
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:27:42 +02:00
Julien Danjou fccc451f89 luaclass: add inheritance support
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-05-28 13:27:04 +02:00
Uli Schlachter 49ee5cea05 client_focus_update(): Balance the lua stack
There is a push 15 lines before the push that is removed here, but the client
that is pushed there was never popped. Bad.

Fix this by letting luaA_class_emit_signal() do the needed pop for us.

Signed-off-by: Uli Schlachter <psychon@znc.in>
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-02-09 19:46:30 +01:00
Julien Danjou 8d36fefd15 image: remove bad usage of globalconf.L
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-11-10 10:48:23 +01:00
Julien Danjou 6ee5122462 client: remove redraw()
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-11-09 13:02:45 +01:00
Julien Danjou d8c0f516ba luaclass: implement object checking
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-10-27 12:16:30 +01:00
Julien Danjou 3ce7638e0f window: rename to xwindow
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-10-20 20:42:05 +02:00
Julien Danjou 371ee3e8cc titlebar: remove
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-10-20 20:42:05 +02:00
Julien Danjou e204473dfc client: move into objects
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-10-20 20:42:05 +02:00