Commit graph

262 commits

Author SHA1 Message Date
Julien Danjou
47a5eac10c don't leave unused pixels 2008-01-21 16:31:15 +01:00
Julien Danjou
9d4aaa5461 draw a background for icons in tasklist 2008-01-21 16:31:15 +01:00
Julien Danjou
9f28582820 add Display as arg 2008-01-21 16:31:14 +01:00
Julien Danjou
6fc766a847 clean some tag stuff 2008-01-21 16:31:14 +01:00
Julien Danjou
45ac9d24f4 rename tag_view to tag_view_byindex 2008-01-21 16:31:14 +01:00
Julien Danjou
17a8c4a4c4 draw_text takes a Area as arg 2008-01-21 16:31:14 +01:00
Julien Danjou
d59fc62739 draw rectangle take an Area as arg 2008-01-21 16:31:14 +01:00
Julien Danjou
654fba9b5e insert and use rule_matching_client() 2008-01-21 16:31:14 +01:00
marco candrian
b8ff99f652 graph-widgets works with floats now
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-01-21 16:31:13 +01:00
Julien Danjou
7b5b02416a fix a bug in the tasklist loop that made clicking on tasklist focusing a wrong client 2008-01-18 09:49:04 +01:00
Julien Danjou
b3f1b213a6 don't draw if icon is not valid 2008-01-17 13:45:24 +01:00
Nikos Ntarmos
cedfecc68d Simplify textbox_tell
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-01-15 17:18:07 +01:00
Julien Danjou
903555e502 better fix for max windows 2008-01-11 17:56:50 +01:00
Julien Danjou
3ed6ac2bdf fix flags assignment 2008-01-11 16:01:10 +01:00
Julien Danjou
ce0b433aba check if client is not NULL
Debian bug #459992
2008-01-10 07:05:54 +01:00
marco candrian
4f05f954d0 direct calculating of the line length to draw
the graph_tell() does not modify directly the line-lenght to draw, rather
then calculating the value in percent and in the graph_draw, calculating
the line length ouf of that the percent.

(while trying to fix something little, a whole new scale thing resulted;
also I didn't really understand the old system, my fault that is)
2008-01-09 10:10:29 +01:00
Julien Danjou
bbc94b97f8 fix some cache flags 2008-01-09 09:59:45 +01:00
Nikos Ntarmos
95e348ab31 Don't draw a square on the taglist for skipped windows
I tend to prefer to not see a square on the taglist for tags which only
have skipped windows. E.g., if I run 'stalonetray --sticky
-w/--skip-taskbar', in which case it appears on all tags but not on the
tasklist, showing all of the tags as occupied seems somewhat awkward.
2008-01-09 09:11:23 +01:00
Julien Danjou
5c9291ff0b use a cache system for status bar 2008-01-07 18:12:38 +01:00
Julien Danjou
a41c25c0f5 modify the tell function to respect spaces 2008-01-07 15:48:42 +01:00
Rico Schiekel
079569e6b4 tell textbox widget colors
usage is simple:
,----
| echo "<screen> widget_tell <mytextbox> #[fg_color] #[bg_color] <text>" | awesome-client
| e.g.
| echo "0 widget_tell t normal behaviour" | awesome-client
| echo "0 widget_tell t #ff0000 red text on default background" | awesome-client
| echo "0 widget_tell t #ffffff #ff0000 white text on red background" | awesome-client
| ...
`----
the fg and bg colors are optional. if not given, the last state is
used.
2008-01-07 15:21:50 +01:00
Julien Danjou
8877aae6c9 add show_all option to tasklist 2008-01-07 11:20:24 +01:00
Nikos Ntarmos
32163d80e1 Clipping instead of ignoring for progressbar widget
FS#25
2008-01-07 09:29:11 +01:00
Nikos Ntarmos
348440bc8e autoscale graph widget
FS#26
2008-01-07 09:28:07 +01:00
marco candrian
40dc6eab21 rounding on progressbar fixed 2008-01-07 09:24:21 +01:00
Julien Danjou
9fa01e34de rename textwidth to draw_textwidth 2008-01-06 22:57:23 +01:00
marco candrian
37da7d0d01 graph widget added
example config:

graph gr_cpu {
  width = 80
  height = "0.8"
  fg = "#336633"
  bg = "#000000"
  bordercolor = "#669966"
  padding_left = 0
  mouse = {...}
  x = ...
  y = ...
}

Looks like here: http://www.calmar.ws/tmp/112-Sun-screen.png

I renamed lpadding to padding_left, and bcolor to bordercolor
also on the progressbar widget.

The awesomerc page would still be to write, when this patch will get accepted.

Hints are always welcomed.
2008-01-06 20:51:40 +01:00
Julien Danjou
b1c62a618f store widget height 2008-01-05 12:44:14 +01:00
Julien Danjou
609318cbec use 2 vars for knowing if users supplied coords 2008-01-05 12:35:12 +01:00
Julien Danjou
a34d1bc583 fix comparisons 2008-01-05 12:01:09 +01:00
Nikos Ntarmos
64658bcf93 widgets/textbox.c area.x miscalculation due to variable width 2008-01-05 09:12:20 +01:00
Hans Ulrich Niedermann
2476faf85d Include sub-Makefiles directly, then remove them 2008-01-04 22:14:53 +01:00
Julien Danjou
a4c09d142c add support for x,y coords supplying in widgets 2008-01-04 22:05:52 +01:00
Julien Danjou
6ca7d7b2db use Area in Widget 2008-01-04 21:46:25 +01:00
Hans Ulrich Niedermann
ec09073087 switch to autotools as build system 2008-01-04 20:49:49 +01:00
Julien Danjou
1d6613349e typedef enum Alignment 2008-01-04 19:17:20 +01:00
Julien Danjou
af6ff367eb typedef enum Position 2008-01-04 19:12:07 +01:00
Julien Danjou
36e9e07f84 fix memory leak on icon get 2008-01-04 15:59:17 +01:00
Julien Danjou
8485c13b1b taglist now supports clicks if statusbar is right/left 2008-01-04 13:22:24 +01:00
Julien Danjou
65fe4e8933 add support for right/left statusbar position and clicks 2008-01-04 13:04:34 +01:00
Julien Danjou
a69b5dfc40 add option to show appicons in tasklist 2008-01-03 19:21:36 +01:00
Julien Danjou
33cd7c261f set widget->width to the right size(TM) 2008-01-03 19:06:44 +01:00
Julien Danjou
62d5711a7e move NetWMIcon get to ewmh.c 2008-01-03 19:02:23 +01:00
Julien Danjou
675b6e6255 use right statusbar in various widgets 2008-01-03 17:15:21 +01:00
Julien Danjou
a06d739dfb add align option to tasklist 2008-01-03 16:05:39 +01:00
Julien Danjou
7c716e0ec0 add align option to focustitle 2008-01-03 16:04:16 +01:00
Julien Danjou
ec53f3d070 add align option to textbox 2008-01-03 16:02:41 +01:00
Julien Danjou
aed3e569de add a align option to draw_text 2008-01-03 15:57:07 +01:00
Julien Danjou
53a36375fa remove useless #include 2008-01-03 14:38:12 +01:00
Julien Danjou
11da7412b3 add support for _NET_WM_STATE_SKIP_TASKBAR 2008-01-03 13:15:15 +01:00
Julien Danjou
67127f00f7 simply add draw_rectangle instead of drawtext 2008-01-03 12:43:37 +01:00
Julien Danjou
c4e88f9928 add new tasklist widget 2008-01-03 12:39:28 +01:00
Julien Danjou
9fc22e9e4e remove some get_phys_screen() calls 2008-01-02 17:41:03 +01:00
Julien Danjou
437bc5c22c add 2008 copyright notice 2008-01-02 16:59:43 +01:00
Julien Danjou
2f19bab193 simplify update 2008-01-02 15:01:30 +01:00
Julien Danjou
1b48166ad5 add resize option to iconbox 2008-01-02 14:59:15 +01:00
Julien Danjou
4f65aa8f51 rework headers inclusion 2008-01-01 18:02:36 +01:00
calmar
b832f96ba1 fix border color 2008-01-01 17:04:06 +01:00
Julien Danjou
c4b4a1fded change warn() message and use simply , as strtok delimiter 2008-01-01 16:29:59 +01:00
Julien Danjou
bb06e80199 simplify some stuff, cosmetic 2008-01-01 16:29:58 +01:00
marco candrian
0945e3ad34 additonal settings for the progressbar 2008-01-01 16:29:53 +01:00
Julien Danjou
13e5b96807 don't stick textbox size to the first textsize sent via widget_tell 2007-12-30 21:03:22 +01:00
Julien Danjou
75c7d04adf allow textbox to have special width 2007-12-30 14:49:03 +01:00
Julien Danjou
0eb4743385 draw_text don't pad with font->height / 2 by default: padding is now an arg 2007-12-30 14:42:51 +01:00
Julien Danjou
e57f387df0 fix size stuff for square 2007-12-30 14:06:45 +01:00
Julien Danjou
f7263bbca8 bug fix: reset widget->width to 0 2007-12-30 13:42:49 +01:00
Julien Danjou
1021f86e24 rework draw stuff
- remove display from DrawCtx
- add Drawable in statusbar
2007-12-30 12:26:11 +01:00
Julien Danjou
34ddf418ad fix colors handling 2007-12-29 22:01:11 +01:00
Julien Danjou
3d71a2e9a4 merge draw_get_image_{width,height}() into draw_get_image_size() 2007-12-29 21:44:44 +01:00
Julien Danjou
11a4ecc32a optimize loop 2007-12-29 21:37:04 +01:00
Robert Millar
eb65306127 Custom netwm icons, scaling icons!
I hacked together support for custom netwm icons set in the rules
section of .awesomerc, and for iconboxes and netwm icons to be scaled
to fit into the statusbar. It could probably be done a bit more
cleanly than I've done it, though :)

Rob
2007-12-29 21:30:37 +01:00
Julien Danjou
bf5d5fa17e add support for fg/bg colors and dedicated font for focustitle widget 2007-12-29 19:39:46 +01:00
Julien Danjou
360d9023a4 allow textbox widgets to have their own font 2007-12-29 16:04:06 +01:00
Julien Danjou
48d9ea047f simplify is_client_tagged() proto 2007-12-27 23:05:34 +01:00
Julien Danjou
38c3547dfb fix warning 2007-12-27 20:35:53 +01:00
Julien Danjou
5f92667773 simplify sel handling 2007-12-27 19:57:46 +01:00
Julien Danjou
8f9be2289a focus_get_latest_client_for_tags() now supports Tag **, use it for widgets 2007-12-27 19:23:10 +01:00
Julien Danjou
e335b32e5f add copyright notice 2007-12-27 18:11:47 +01:00
Julien Danjou
c900e37843 add mouse bindings to status bar 2007-12-27 15:49:00 +01:00
Julien Danjou
88b3f28f49 remove get_current_tag() call 2007-12-27 11:36:49 +01:00
Julien Danjou
33add50256 store location and width of each widgets 2007-12-27 11:35:45 +01:00
Julien Danjou
7be6a97972 change "default" in textbox to "text" and set it to a good default 2007-12-27 00:16:29 +01:00
Julien Danjou
91cc5a4618 use image instead of symbols for layouts 2007-12-27 00:13:44 +01:00
Julien Danjou
d5d9439777 add support for Urgency hint 2007-12-23 15:16:10 +01:00
Julien Danjou
2906ead93c better computing for margin 2007-12-23 14:51:55 +01:00
Julien Danjou
ddbdbb2ed3 new width: progressbar 2007-12-23 14:27:56 +01:00
Julien Danjou
d428982af7 simplify 2007-12-23 13:46:36 +01:00
Julien Danjou
10200477c8 change info in copyright 2007-12-22 20:55:39 +01:00
Julien Danjou
b0a8522466 rename a bunch of widget functions 2007-12-22 20:55:17 +01:00
Julien Danjou
c232576631 rename a bunch of draw functions 2007-12-22 20:17:24 +01:00
Julien Danjou
e72a278080 allow to shrink net_wm_icon to statusbar size 2007-12-22 20:14:13 +01:00
Julien Danjou
8c898256b1 new widget: add support for netwmicon 2007-12-22 19:32:47 +01:00
Julien Danjou
5dfd96a3f2 add copyright 2007-12-22 15:43:48 +01:00
Julien Danjou
1a1c75b4bd add copyright 2007-12-22 15:42:34 +01:00
Julien Danjou
e505b76062 cosmetic + copyright 2007-12-22 15:41:28 +01:00
Julien Danjou
70707a37ad push iconbox.c 2007-12-22 15:38:14 +01:00
Julien Danjou
55be368539 cosmetic 2007-12-22 15:30:23 +01:00
Aldo Cortesi
7190e4fa48 Change awesome_config -> AwesomeConf.
All other struct definitions in the project follow this naming convention.
2007-12-19 10:43:02 +01:00
Aldo Cortesi
9bb28772ed Make textbox foreground and background configurable. 2007-12-19 10:41:50 +01:00
Aldo Cortesi
ce556ec743 The preferred line length is 80 characters. 2007-12-18 11:27:26 +01:00
Aldo Cortesi
205f2c55ca Make "Statusbar statusbar" the in VirtScreen "Statusbar *statusbar". This is
more consistent with the rest of the interface, and will make our life easier
when we have mulitiple statusbars per screen.
2007-12-18 11:26:18 +01:00
Aldo Cortesi
21fe1add9e Make drawtext interface more general. 2007-12-18 11:25:50 +01:00
Aldo Cortesi
4723ab3627 This patch is a first draft of independently targetable textboxes, and a
protocol to speak to them. Given a textbox widget definition like this:

        textbox mail {
            default = 0
        }
        textbox time {}

We can update the boxes individually by going:

    echo 0 tell_widget mail 10
    echo 0 tell_widget time 12:01

Text boxes will dynamically resize to fit their contents. A textbox can be
cleared by going:

    echo 0 tell_widget name

A text-box containing no text will take up 0 space in the bar, i.e. it will not
be visible at all

Textboxes now supersede statusbar_set_text, so this call has been removed.
2007-12-17 18:22:05 +01:00
Aldo Cortesi
d5fd96dbd2 Refactor the focus.c interface to use globalconf. 2007-12-17 18:21:42 +01:00
Julien Danjou
077ffb5b43 update titleinfo with the right window 2007-12-16 18:23:37 +01:00
Aldo Cortesi
5715b70ab3 Make empty status bar look nice.
It's now possible to have unfilled space on the status bar. Fill it with the
background colour on creation.

Normalise line lengths while I'm at it.
2007-12-16 12:58:21 +01:00
Aldo Cortesi
5923c90aaa Solidify widgets.
Factor out common initialisation into a common_new function. Copy the section
title into the Widget title attribute.
2007-12-16 12:57:47 +01:00
Aldo Cortesi
8880a3804e Simplify widget draw interface. 2007-12-16 12:54:42 +01:00
Aldo Cortesi
65d8d846f2 Fix compiler warning re unused argument, and improve the function interface
while we're at it.
2007-12-16 12:54:09 +01:00
Aldo Cortesi
2f74c079aa Massive, massive interface refactoring.
The big change here is that we now keep our configuration structure in a global
variable called globalconf. This radically simplifies many interfaces, since
passing awesomeconf everywhere is no longer necessary. There are also more
subtle interface effects - now we can reliably identify a screen from just a
screen ID, rather than an awesomeconf, screenid tuple.

Overall, this patch makes most of the interfaces in awesome much nicer to use -
enjoy!

Yes, this is a huge patch, but since a lot of the refactoring was done
systematically using vim macros, splitting this up would have been very hard.
2007-12-16 12:12:48 +01:00
Julien Danjou
3b013f90b1 cosmetic and don't cast for nothing 2007-12-15 16:25:54 +01:00
Aldo Cortesi
76ddf235ac Widget-ise the statusbar.
We now have the beginnings of a flexible widget structure for the statusbar.
For now, there is no behavioural change, and the interface is a bit crude, but
watch this space!
2007-12-15 10:15:42 +01:00