Commit Graph

2955 Commits

Author SHA1 Message Date
Julien Danjou c007cacd09 xutil: make atoms cache an array
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-27 12:08:19 +02:00
Julien Danjou ba13fba67c xutil: stop leaking atom when called with no cache
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-27 11:13:33 +02:00
Julien Danjou 0fddca87c3 draw: stop leaking image on double parsing
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-27 10:08:22 +02:00
Julien Danjou b63e10b7e8 xutil: stop leaking atom name, and don't dup on cache hit
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-27 10:06:31 +02:00
Pierre Habouzit a67e5023c0 If awesome believes we have the focus, well, do not unfocus ourselves.
This avoid flickering when you repeteadly click on a client.
Also make the function client_focus void, it always returned true, and
nobody cares about the result.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-27 09:34:47 +02:00
Julien Danjou 4bf6d2df62 widgets: add documentation support
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 23:32:33 +02:00
Pierre Habouzit 3f9c7aee54 actually call our xcb events setup function
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-26 23:04:55 +02:00
Pierre Habouzit 585496b66a Make event handler setup private to the event module.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-26 22:47:56 +02:00
Pierre Habouzit cde80ab49a Move CLEANMASK to xutil.h, remove useless #Includes
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-26 22:47:56 +02:00
Julien Danjou fc509e4d16 lua-src: fix a bug if l is nil, add , as optional
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 22:44:07 +02:00
Julien Danjou 2cdfb71f15 textbox: remove wrong comment
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 22:06:47 +02:00
Julien Danjou 04368236b2 update AUTHORS file
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 22:01:09 +02:00
Michael Gehring f56f34d715 widgets: remove unnecessary #includes 2008-06-26 19:33:43 +02:00
Michael Gehring 3f1fa89dde cmake: hide CMAKE_INSTALL_PREFIX in ccmake 2008-06-26 19:33:43 +02:00
Michael Gehring ba13bece9d cmake: use PREFIX instead of CMAKE_INSTALL_PREFIX 2008-06-26 19:33:43 +02:00
Michael Gehring a24a38dbc0 cmake: cache PREFIX/SYSCONFDIR so they are editable via ccmake 2008-06-26 19:33:43 +02:00
Félix C. Morency 7d2c5da8dd fixed out-of-source luac file generation 2008-06-26 19:33:43 +02:00
Julien Danjou 013b2afe62 remove useless #include
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 18:10:45 +02:00
Julien Danjou 19a454d978 awful: fix to use new widget API
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 17:53:38 +02:00
Julien Danjou 25f795b04f graph: add comments
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 17:22:01 +02:00
Julien Danjou c9311efd5b widgets: s/lstack/luastack/
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 17:13:02 +02:00
Lucas de Vries b1c48b6834 [statusbar] add colors_set 2008-06-26 17:12:41 +02:00
Julien Danjou 37e8b95ad9 widgets: handle image size in text data
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 16:53:58 +02:00
Julien Danjou 0012b8dfc0 draw: honor bg_resize
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 16:49:16 +02:00
Julien Danjou 7dbd06c8ca draw: markup bg image do not change the size
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 16:49:05 +02:00
Julien Danjou 094d0ebc50 widget: new widget index method
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 16:35:07 +02:00
Julien Danjou 4508836133 statusbar: replace getfield/optstring with luaA_getopt_string()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 16:05:25 +02:00
Julien Danjou db07fd0362 widget: add missing mouse_remove in index()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 15:56:55 +02:00
Pierre Habouzit d45590fbcc 0 may be a valid function, LUA_REFNIL is what we want.
Also don't forget to unref the function on deletion.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 14:23:59 +02:00
Julien Danjou 086bada825 client: split out of setfloating layer handling
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-25 22:26:53 +02:00
Julien Danjou 775e634e13 tabulous: add documentation, cleanup
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-25 20:35:00 +02:00
Julien Danjou db88877587 lua: split getopt_string/getopt_lstring; fix mouse corner
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-25 17:33:05 +02:00
Julien Danjou d5ed48ffdd widget: use __index to get method
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-25 16:37:51 +02:00
Julien Danjou 68f0eda193 iconbox: remove
This can be replaced by textbox.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-25 16:37:16 +02:00
Julien Danjou d9be65bb1b ewmh: remove unused value
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-25 16:22:02 +02:00
Julien Danjou 6ec76c3b97 client: honor size hints is now by client
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-25 15:42:07 +02:00
Julien Danjou 92797c11b9 awesomerc: use table for floating rules
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-25 13:49:27 +02:00
Julien Danjou 3e6dbd64ee client: set fullscreen/modal windows on top of statusbars
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-25 13:41:25 +02:00
Michael Gehring 46aa0b55ac cmake: compile lua libs 2008-06-25 12:46:53 +02:00
Julien Danjou fee4116e3d Merge commit 'madcoder/master' 2008-06-25 11:48:22 +02:00
Pierre Habouzit ead90f618c Ignore keys that have a multibyte length of more than 1.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 11:45:57 +02:00
Pierre Habouzit 0f23ce88cb Divert lua string.len to a multibyte aware implementation.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 11:42:06 +02:00
Pierre Habouzit 232fb692eb More ignores.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 11:04:56 +02:00
Pierre Habouzit 5a07ee4946 Put keybindings in binary searchable arrays.
This patch sorts keybindings in arrays by keycode or keysym to speed up look
up using binary searches. This is a preliminary work to enable more powerful
keybindings stuff, where keybindings can be cascaded or why not, attached to
specific clients.

Interstingly enough, this patch saves 100ko of initial memory (Heap) usage here.

The underlying idea is that we should be able to define keybindings_t as
trees of keybindings_t which would then define key sequences.

The OO approach kind of make sense in fact, since you create a base
keybinding (e.g. reacting on Mod4-w) and then you will probably (with
appropriate apis) be able to populate new submaps from that point more or
less dynamically.

And if you have two keybindings on Mod4-w, then adding them will replace the
previous one. This means that you can fake per-client bindings with e.g.:

  k_default = keybindings.new({"Mod4"}, "w", something);
  k_mplayer = keybindings.new({"Mod4"}, "w", something_else);
  k_default:add()

and in your focus hook:

  if /* code for testing if it's mplayer */ then
      k_mplayer:add()
  else
      k_default:add()
  end

This would not work before, it does now.

It will take way more sense with submaps of course.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 11:04:56 +02:00
Pierre Habouzit 8c717622fd Put keybindings in arrays.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 11:04:56 +02:00
Pierre Habouzit 4d7a7694ae Calling destructor on splice is wrong, take doesn't want it e.g.
Also fix one assert.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 11:04:56 +02:00
Pierre Habouzit d3b030aa2c More ignores.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 10:52:53 +02:00
Pierre Habouzit 4c288c006b Put keybindings in binary searchable arrays.
This patch sorts keybindings in arrays by keycode or keysym to speed up look
up using binary searches. This is a preliminary work to enable more powerful
keybindings stuff, where keybindings can be cascaded or why not, attached to
specific clients.

Interstingly enough, this patch saves 100ko of initial memory (Heap) usage here.

The underlying idea is that we should be able to define keybindings_t as
trees of keybindings_t which would then define key sequences.

The OO approach kind of make sense in fact, since you create a base
keybinding (e.g. reacting on Mod4-w) and then you will probably (with
appropriate apis) be able to populate new submaps from that point more or
less dynamically.

And if you have two keybindings on Mod4-w, then adding them will replace the
previous one. This means that you can fake per-client bindings with e.g.:

  k_default = keybindings.new({"Mod4"}, "w", something);
  k_mplayer = keybindings.new({"Mod4"}, "w", something_else);
  k_default:add()

and in your focus hook:

  if /* code for testing if it's mplayer */ then
      k_mplayer:add()
  else
      k_default:add()
  end

This would not work before, it does now.

It will take way more sense with submaps of course.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 10:52:28 +02:00
Pierre Habouzit 8c1aec2e96 Put keybindings in arrays.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 09:45:08 +02:00
Pierre Habouzit 3a1c9e0cfb Calling destructor on splice is wrong, take doesn't want it e.g.
Also fix one assert.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 09:45:08 +02:00