~ubuntu-branches/debian/sid/openbox/sid

« back to all changes in this revision

Viewing changes to openbox/actions/maximize.c

  • Committer: Bazaar Package Importer
  • Author(s): Nico Golde, Nico Golde, Eugenio Paolantonio
  • Date: 2011-10-03 22:59:30 UTC
  • mfrom: (1.1.11 upstream)
  • Revision ID: james.westby@ubuntu.com-20111003225930-tdvyax5tx63dyoez
Tags: 3.5.0-1
[Nico Golde]
* New upstream release (Closes: #638783).
  - Fix crashes in the menu code (Closes: #563891).
* Add Brazilian translation to openbox.desktop,
  thanks Sérgio Cipolla (Closes: #627912).
* Remove 06_fix_swap_byte_order.patch, applied upstream.
* Bump debhelper dependency to >= 7.0.50~ due to override.
* Remove CHANGELOG from openbox.docs to prevent double installation.
* Add 02_fix_freedesktop_compliance.dpatch desktop file to
  /usr/share/applications.

[Eugenio Paolantonio]
* debian/patches:
  - Disabled 03_place_windows_in_quadrants.patch
  - Updated 01_rc.xml.patch and 06_fix_swap_byte_order.patch
  - Removed 04_fix_ftbfs_no-add-needed.patch and 20_24bits_support.patch
* debian/control:
  - Added myself to the Uploaders.
  - Build-Depends: removed libxau-dev, libxft-dev and python-xdg;
    added libimlib2-dev
  - openbox Suggests: added python-xdg
  - libobrender21 renamed to libobrender27
  - libobparser21 renamed to libobt0
* debian/rules:
  - Rewrote using a simpler debhelper syntax
  - Moved the install pass to openbox.install
* debian/*.{install,links,dirs}:
  - Updated.
* debian/openbox.xsession:
  - Removed. Openbox now ships it by default.

Show diffs side-by-side

added added

removed removed

Lines of Context:
12
12
    MaxDirection dir;
13
13
} Options;
14
14
 
15
 
static gpointer setup_both_func(ObParseInst *i, xmlDocPtr doc,
16
 
                              xmlNodePtr node);
17
 
static gpointer setup_horz_func(ObParseInst *i, xmlDocPtr doc,
18
 
                               xmlNodePtr node);
19
 
static gpointer setup_vert_func(ObParseInst *i,
20
 
                                  xmlDocPtr doc, xmlNodePtr node);
 
15
static gpointer setup_func(xmlNodePtr node);
 
16
static void free_func(gpointer o);
21
17
static gboolean run_func_on(ObActionsData *data, gpointer options);
22
18
static gboolean run_func_off(ObActionsData *data, gpointer options);
23
19
static gboolean run_func_toggle(ObActionsData *data, gpointer options);
 
20
/* 3.4-compatibility */
 
21
static gpointer setup_both_func(xmlNodePtr node);
 
22
static gpointer setup_horz_func(xmlNodePtr node);
 
23
static gpointer setup_vert_func(xmlNodePtr node);
24
24
 
25
25
void action_maximize_startup(void)
26
26
{
27
 
    actions_register("MaximizeFull", setup_both_func, g_free,
28
 
                     run_func_on, NULL, NULL);
29
 
    actions_register("UnmaximizeFull", setup_both_func, g_free,
30
 
                     run_func_off, NULL, NULL);
31
 
    actions_register("ToggleMaximizeFull", setup_both_func, g_free,
32
 
                     run_func_toggle, NULL, NULL);
33
 
    actions_register("MaximizeHorz", setup_horz_func, g_free,
34
 
                     run_func_on, NULL, NULL);
35
 
    actions_register("UnmaximizeHorz", setup_horz_func, g_free,
36
 
                     run_func_off, NULL, NULL);
37
 
    actions_register("ToggleMaximizeHorz", setup_horz_func, g_free,
38
 
                     run_func_toggle, NULL, NULL);
39
 
    actions_register("MaximizeVert", setup_vert_func, g_free,
40
 
                     run_func_on, NULL, NULL);
41
 
    actions_register("UnmaximizeVert", setup_vert_func, g_free,
42
 
                     run_func_off, NULL, NULL);
43
 
    actions_register("ToggleMaximizeVert", setup_vert_func, g_free,
44
 
                     run_func_toggle, NULL, NULL);
 
27
    actions_register("Maximize", setup_func, free_func, run_func_on);
 
28
    actions_register("Unmaximize", setup_func, free_func, run_func_off);
 
29
    actions_register("ToggleMaximize", setup_func, free_func, run_func_toggle);
 
30
    /* 3.4-compatibility */
 
31
    actions_register("MaximizeFull", setup_both_func, free_func,
 
32
                     run_func_on);
 
33
    actions_register("UnmaximizeFull", setup_both_func, free_func,
 
34
                     run_func_off);
 
35
    actions_register("ToggleMaximizeFull", setup_both_func, free_func,
 
36
                     run_func_toggle);
 
37
    actions_register("MaximizeHorz", setup_horz_func, free_func,
 
38
                     run_func_on);
 
39
    actions_register("UnmaximizeHorz", setup_horz_func, free_func,
 
40
                     run_func_off);
 
41
    actions_register("ToggleMaximizeHorz", setup_horz_func, free_func,
 
42
                     run_func_toggle);
 
43
    actions_register("MaximizeVert", setup_vert_func, free_func,
 
44
                     run_func_on);
 
45
    actions_register("UnmaximizeVert", setup_vert_func, free_func,
 
46
                     run_func_off);
 
47
    actions_register("ToggleMaximizeVert", setup_vert_func, free_func,
 
48
                     run_func_toggle);
45
49
}
46
50
 
47
 
static gpointer setup_both_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node)
 
51
static gpointer setup_func(xmlNodePtr node)
48
52
{
49
 
    Options *o = g_new0(Options, 1);
 
53
    xmlNodePtr n;
 
54
    Options *o;
 
55
 
 
56
    o = g_slice_new0(Options);
50
57
    o->dir = BOTH;
51
 
    return o;
52
 
}
53
 
 
54
 
static gpointer setup_horz_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node)
55
 
{
56
 
    Options *o = g_new0(Options, 1);
57
 
    o->dir = HORZ;
58
 
    return o;
59
 
}
60
 
 
61
 
static gpointer setup_vert_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node)
62
 
{
63
 
    Options *o = g_new0(Options, 1);
64
 
    o->dir = VERT;
65
 
    return o;
 
58
 
 
59
    if ((n = obt_xml_find_node(node, "direction"))) {
 
60
        gchar *s = obt_xml_node_string(n);
 
61
        if (!g_ascii_strcasecmp(s, "vertical") ||
 
62
            !g_ascii_strcasecmp(s, "vert"))
 
63
            o->dir = VERT;
 
64
        else if (!g_ascii_strcasecmp(s, "horizontal") ||
 
65
                 !g_ascii_strcasecmp(s, "horz"))
 
66
            o->dir = HORZ;
 
67
        g_free(s);
 
68
    }
 
69
 
 
70
    return o;
 
71
}
 
72
 
 
73
static void free_func(gpointer o)
 
74
{
 
75
    g_slice_free(Options, o);
66
76
}
67
77
 
68
78
/* Always return FALSE because its not interactive */
105
115
    }
106
116
    return FALSE;
107
117
}
 
118
 
 
119
/* 3.4-compatibility */
 
120
static gpointer setup_both_func(xmlNodePtr node)
 
121
{
 
122
    Options *o = g_slice_new0(Options);
 
123
    o->dir = BOTH;
 
124
    return o;
 
125
}
 
126
 
 
127
static gpointer setup_horz_func(xmlNodePtr node)
 
128
{
 
129
    Options *o = g_slice_new0(Options);
 
130
    o->dir = HORZ;
 
131
    return o;
 
132
}
 
133
 
 
134
static gpointer setup_vert_func(xmlNodePtr node)
 
135
{
 
136
    Options *o = g_slice_new0(Options);
 
137
    o->dir = VERT;
 
138
    return o;
 
139
}
 
140