Commit Graph

571 Commits

Author SHA1 Message Date
Pierre Habouzit 37d69b8dcc markup substitutions enhancements.
Do not preemptively allocate a g_markup_escape_text for substitutions,
just remember what we want to substitute markup with, and substitute it in
the final buffer efficiently.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-22 16:58:56 +02:00
Pierre Habouzit 943e2035fa Rework the markup_parser_* allocation API.
We have a stack, don't be ashamed to use it.

Instead of:

    foo_t *foo;

    foo = foo_new();
    /* work with foo */
    foo_delete(&foo);

It's way better to:

    foo_t foo;

    foo_init(&foo);
    /* work with &foo */
    foo_wipe(&foo);

Remember: more mallocs == more fragmentation.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-22 16:17:12 +02:00
Pierre Habouzit 5c601dfd19 Use extensible buffers in markup parsing.
This should avoid quite a few malloc calls.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-22 15:12:42 +02:00
Julien Danjou de0d6045ba client: do not send request for WM_NAME
It's X standard.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-20 16:42:07 +02:00
Julien Danjou 46ead6ea3f comments fixing
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-20 08:38:00 +02:00
Julien Danjou 7b15c1d6c0 client: set ICONIC on hidden, WITHDRAWN on ban
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-19 19:53:15 +02:00
Julien Danjou a5478e5438 ewmh: add support for _NET_WM_WINDOW_TYPE_DESKTOP
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-19 19:51:58 +02:00
Michael Gehring 60591fe9bd client: export client_geometry_hints 2008-06-18 18:48:38 +02:00
Michael Gehring 1c570feff7 client: add hassizehints 2008-06-18 18:48:38 +02:00
Julien Danjou 92f369e3aa lua: userdata_new is now macro
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-18 18:31:35 +02:00
Julien Danjou 694f97e4d7 titlebar: set above client edge border
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-18 17:05:10 +02:00
Julien Danjou 7709b22261 titlebar: fix titlebar rendering in tiled mode
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-18 14:04:24 +02:00
Julien Danjou 32a73f9ae6 titlebar: add support for border, refactorize code
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-18 11:22:54 +02:00
Julien Danjou 1cfc00f605 ewmh: fix various client list updates
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-17 23:20:03 +02:00
Arnaud Fontaine b9e1ec69d0 Replace xcb_aux_get_screen() by a safer function 2008-06-17 17:14:00 +02:00
Julien Danjou 26738c4dab xshape: remove, nothing prove it's really useful
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-17 15:06:05 +02:00
Julien Danjou 5bae1f0c37 window: rework root_grabbuttons()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-17 14:35:58 +02:00
Julien Danjou 16646c86ab lua: __eq methods are not macros
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-16 11:37:55 +02:00
Julien Danjou 79eedb2f06 client: split out atom request on kill
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-15 20:37:34 +02:00
Julien Danjou 7707dd69c6 client: split out atom requests
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-15 20:34:15 +02:00
Julien Danjou 1142c382f7 mouse: make button bindings objects
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-13 15:35:47 +02:00
Julien Danjou 008cf2b340 ewmh: add modal windows support and a modal layout
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-13 14:41:42 +02:00
Julien Danjou 0fd1779b3a [client] Restack clients on manage
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-12 13:12:38 +02:00
Julien Danjou e6b14c1d39 [client] Fix border width setting
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-11 08:14:54 +02:00
Julien Danjou 11e93c2dbf [client] Fix titlebar destruction
We need to unref AFTER...

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-11 07:38:40 +02:00
Michael Gehring 276f5f8849 [doxygen] Add \lvalue and convert existing doc.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-11 07:36:34 +02:00
Julien Danjou 213b2190ed [client] Fix typo
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-10 20:48:38 +02:00
Julien Danjou f11c913bc4 [lua] Fix gettop() usages
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-10 20:32:26 +02:00
Julien Danjou 88c76cadf4 [titlebar] Allow nil to be arg of titlebar_set()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-10 19:35:38 +02:00
Julien Danjou e9bfdcf681 [client] Documentation update
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-10 19:29:53 +02:00
Julien Danjou c5c75bf960 [client] Add ishidden() method
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-10 19:17:12 +02:00
Julien Danjou 4573147196 [hooks] Rename newclient to `manage', add unmanage hook
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-10 19:03:10 +02:00
Julien Danjou df2770bb2f [client] Loadprops use screen_t
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-10 15:15:13 +02:00
Julien Danjou aa6bfc560a [draw] Do inline UTF-8 conversion
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-10 07:32:35 +02:00
Julien Danjou 1049393840 Revert "Replace tags by workspaces"
This reverts commit 00f966ea04.

Revert "[focus] Fix bogus arguments"
This reverts commit 816b5d16bc.

Revert "[mouse] Fix bug with floating"
This reverts commit 89daa72790.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-09 21:56:03 +02:00
Julien Danjou ac1517bacb [client] Add support for hide/unhide
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-09 18:24:12 +02:00
Julien Danjou 00f966ea04 Replace tags by workspaces
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-09 16:30:46 +02:00
Michael Gehring 59c04890fc [cleanup] random doxygen fixes
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-08 17:13:09 +02:00
Julien Danjou 75cb6b81af [screen] s/move_client_to_screen/screen_client_moveto/
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-08 11:02:34 +02:00
Alex Cornejo adedb9e397 Added get_class to client.
This is useful for writing rules in the awesomerc.lua, since
in the lua-less version it was possible to trigger rules based
on the class of the window (as opposed to the name).

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-05 14:53:57 +02:00
Julien Danjou 6ba90facb0 [client] Various documentation update and fixes
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-05 09:27:16 +02:00
Julien Danjou 98119d5d3f [lua] Check for object validity
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-04 18:27:10 +02:00
Julien Danjou eb8378749b [titlebar] Add titlebar_client_get()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-04 17:54:52 +02:00
Julien Danjou 5f2585d82e [screen] s/get_display_area/display_area_get/
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-04 15:34:11 +02:00
Julien Danjou 80ec848130 [client] Add titlebar_get()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-04 13:36:13 +02:00
Julien Danjou aecc3c0e45 [titlebar] Store titlebar inside client
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-04 11:50:21 +02:00
Julien Danjou 1e08a992b8 [titlebar] Rewrote titlebar based on widgets
This is the new titlebar handling code, based on widgets.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-03 18:41:54 +02:00
Julien Danjou 930997898b [client] Add unmanage function
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-02 08:32:16 +02:00
Julien Danjou c332971b21 [draw] Rename draw_color_new() to xcolor_new()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-30 12:34:38 +02:00
Julien Danjou e39bb8eac6 [markup] Stop recomputing len, use slen
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-30 07:52:29 +02:00
Julien Danjou b24c0b286c [client] Fix border_set documentation
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-29 09:50:49 +02:00
Julien Danjou 3ab739553c [client] Add and honor the noborder attribute
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-28 14:33:45 +02:00
Julien Danjou ebb56ce6b1 [client] Add a hook on urgent flag
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-28 11:08:48 +02:00
Julien Danjou bc38b86c80 [client] Need arrange on focus
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-27 21:46:13 +02:00
Julien Danjou e890297617 [client] Focus even if we think we already have focus
Because sometimes clients steal focus.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-27 21:34:52 +02:00
Julien Danjou 55b4c773d0 [client] Fix client_resize() comments
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-27 20:17:33 +02:00
Julien Danjou 0e3531d3a3 [client] Rework raise and mouse stuff
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-26 18:08:29 +02:00
Julien Danjou 93741f6b91 [client] Push client on stack list on manage
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-25 19:47:19 +02:00
Julien Danjou c81dacf091 [client] Add proper stacking support
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-25 19:32:30 +02:00
Julien Danjou f6f74c4565 [client] Add client.name_set() function and hook on title update
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-25 17:51:45 +02:00
Julien Danjou d9dd1fba8e Revert "[client] Remove ismax attribute."
This reverts commit fb822997b3.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-25 17:42:20 +02:00
Julien Danjou c9fde5a9f0 [client] Check that tag and client are on the same screen
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-25 12:06:10 +02:00
Fabienne Ducroquet 1d8481fc9e [client] Save geometry of windows when resizing in floating layout
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-25 08:26:39 +02:00
Julien Danjou 0bbd2d4b3e Rename AwesomeConf to awesome_t
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-24 08:59:27 +02:00
Julien Danjou 67b2702b7d [client] Remove newcomer attribute
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-23 23:01:41 +02:00
Julien Danjou db5430420d [client] Create luaA_client_userdata_new() function
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-23 22:56:03 +02:00
Julien Danjou 495b99f1c5 [focus] Rewrite focus handling on arrange.
Also add some documentation.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-23 22:48:27 +02:00
Julien Danjou 981b26cbc8 [lua] Add name_get() method and make mplayer floating by default
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-23 15:12:01 +02:00
Julien Danjou a04417494b [mouse] Rename Button to button_t
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-23 15:12:01 +02:00
Julien Danjou 0142f0efc9 [layout] Rename LayoutArrange to layout_t
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-23 15:11:59 +02:00
Julien Danjou ccb2a2db77 [lua] Remove regex matching
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-23 13:17:02 +02:00
Julien Danjou fb822997b3 [client] Remove ismax attribute.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-23 13:11:47 +02:00
Julien Danjou e25434fe25 [client/tasklist] Reactivate icon drawing with client.icon_set()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-20 22:37:08 +02:00
Julien Danjou ec21647c87 [client] Remove useless client_get_byname()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-20 19:59:58 +02:00
Julien Danjou dc431ec430 [scratch] Remove scratch client support.
This can be done in Lua now.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-20 19:47:29 +02:00
Julien Danjou ddae225363 [client] Execute hook on real focus
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-20 18:06:02 +02:00
Julien Danjou 1f046b3c9f [everything] Switch from libconfuse to Lua
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-20 18:01:15 +02:00
Julien Danjou e5ed2f2f1c [swindow] Permit to delete NULL swindow
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-13 18:56:33 +02:00
Arnaud Fontaine f288fda0c5 [client] Send requests to the X server and treat replies as late as possible 2008-05-12 19:42:56 +01:00
Arnaud Fontaine a4c7ffffc7 [client] Add client_redraw (FS#170) 2008-05-11 17:56:26 +01:00
Arnaud Fontaine 162b8a690c [all] Implement an atom cache in xutil as an ordered linked-list 2008-05-11 01:10:37 +02:00
Julien Danjou 7f284ba15a [client] Remove erronous call to xcb_change_window_attributes() for borders
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 15:11:02 +02:00
Julien Danjou 39a070a5ae [client] Fix bug with atoi() and make uicb focus take 0 as arg
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:17:49 +02:00
Julien Danjou c88b0b15ff [client] Merge zoom with swap, change togglefloating to setfloating
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:35 +02:00
Julien Danjou b75e462223 [client] Merge vertical and horizontalmax inside togglemax
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:35 +02:00
Julien Danjou d5859c60f7 [client] Merge focus{prev,next} and swap{prev,next}
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:35 +02:00
Julien Danjou f0e29977d8 [client] introduce client_style_get() and use it in tasklist/titlebar
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:06 +02:00
Julien Danjou 8603f0dac1 [client] Documentation update
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:06 +02:00
Julien Danjou de3fbffcf1 [xutil] Rewrite gettextprop() proto
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:06 +02:00
Julien Danjou 7468bb6794 [client] Fix potential memory leak on client string parsing errors
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:06 +02:00
Julien Danjou fd9d012f73 [client] Do not escape in client's name attribution
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:05 +02:00
Julien Danjou 088446e97d [client] Free markup data
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:05 +02:00
Julien Danjou 09e166ca1e [client] Pass signed to xutil_gettextprop()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:04 +02:00
Arnaud Fontaine 0624f4ce6a [client] Useless accessors functions have been removed from
xcb-util/icccm which had a bug making urgency hint unusable.
2008-05-03 12:01:04 +02:00
Julien Danjou eab7633675 [tasklist] Remove styles; use drawtext format
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:04 +02:00
Julien Danjou ccfcde3555 [client] Escape clients name
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:03 +02:00
Julien Danjou e4d091ab2e [tag] Rename Tag type to tag_t
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:03 +02:00
Julien Danjou d1635db59f [client] Rename Client type to client_t
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:03 +02:00
Arnaud Fontaine 20442adfa0 Cosmetic 2008-05-03 12:01:03 +02:00
Julien Danjou c9f4c45007 [rules] Rename Rule to rule_t
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:03 +02:00