this includes a number of things since my magnificent return....

1. some random compiling/style cleanups
2. some bigfixes
 - mislogic in per-window-settings and focusing new windows
 - use client_can_focus rather than checking variables for directional focus
 - MAYBE fix all those lock-ups forever. using event_curtime (a new variable) now instead of event_lasttime. event_lasttime is still used however when the event being processed did not have a time associated with it. this may or may not be a problem, and will be seen.
3. um.. i forget
4. oh yeah, 3rd party docks are now treated like the internal ob dock irt focus. that is, clicking on them won't pass them focus. this is going to be ratified as expected behavior in the wm-spec just now. if docks/panels want focus they can request it with _net_active_window, and then they can have all the focus they want! one day alt-tabbing around dock windows might be nice. but not until the ob dock is moved out into a separate application. going to have to add a wmapp selection and stuff for that though... ugly. who uses wmdockapps anymore !? someone must.. *sigh*
This commit is contained in:
Dana Jansens 2007-03-02 02:23:00 +00:00
parent 2b99b62abf
commit 78af5d15e9
34 changed files with 245 additions and 193 deletions

View file

@ -1034,7 +1034,7 @@ void action_run_list(GSList *acts, ObClient *c, ObFrameContext context,
it won't work right unless we XUngrabKeyboard first,
even though we grabbed the key/button Asychronously.
e.g. "gnome-panel-control --main-menu" */
XUngrabKeyboard(ob_display, event_lasttime);
XUngrabKeyboard(ob_display, event_curtime);
}
for (it = acts; it; it = g_slist_next(it)) {
@ -1111,16 +1111,30 @@ void action_execute(union ActionData *data)
void action_activate(union ActionData *data)
{
client_activate(data->activate.any.c, data->activate.here);
/* similar to the openbox dock for dockapps, don't let user actions give
focus to 3rd-party docks (panels) either (unless they ask for it
themselves). */
if (data->client.any.c->type != OB_CLIENT_TYPE_DOCK) {
/* if using focus_delay, stop the timer now so that focus doesn't go
moving on us */
event_halt_focus_delay();
client_activate(data->activate.any.c, data->activate.here, TRUE);
}
}
void action_focus(union ActionData *data)
{
/* if using focus_delay, stop the timer now so that focus doesn't go moving
on us */
event_halt_focus_delay();
/* similar to the openbox dock for dockapps, don't let user actions give
focus to 3rd-party docks (panels) either (unless they ask for it
themselves). */
if (data->client.any.c->type != OB_CLIENT_TYPE_DOCK) {
/* if using focus_delay, stop the timer now so that focus doesn't go
moving on us */
event_halt_focus_delay();
client_focus(data->client.any.c);
client_focus(data->client.any.c);
}
}
void action_unfocus (union ActionData *data)

View file

@ -371,8 +371,9 @@ void client_manage(Window window)
/* focus the new window? */
if (ob_state() != OB_STATE_STARTING &&
(config_focus_new || client_search_focus_parent(self)) ||
(settings && settings->focus == TRUE) &&
((settings && settings->focus == TRUE) ||
(!settings && (config_focus_new ||
client_search_focus_parent(self)))) &&
/* note the check against Type_Normal/Dialog, not client_normal(self),
which would also include other types. in this case we want more
strict rules for focus */
@ -810,19 +811,21 @@ static void client_toggle_border(ObClient *self, gboolean show)
static void client_get_all(ObClient *self)
{
client_get_area(self);
client_update_transient_for(self);
client_update_wmhints(self);
client_get_startup_id(self);
client_get_desktop(self);
client_get_shaped(self);
client_get_mwm_hints(self);
client_get_type(self);/* this can change the mwmhints for special cases */
/* The transient hint is used to pick a type, but the type can also affect
transiency (dialogs are always made transients). This is Havoc's idea,
but it is needed to make some apps work right (eg tsclient). */
transiency (dialogs are always made transients of their group if they
have one). This is Havoc's idea, but it is needed to make some apps
work right (eg tsclient). */
client_update_transient_for(self);
client_get_type(self);/* this can change the mwmhints for special cases */
client_update_transient_for(self);
client_update_wmhints(self);
client_get_startup_id(self);
client_get_desktop(self);/* uses transient data/group/startup id if a
desktop is not specified */
client_get_shaped(self);
client_get_state(self);
@ -1303,6 +1306,7 @@ void client_setup_decor_and_functions(ObClient *self)
if (! (self->mwmhints.decorations & OB_MWM_DECOR_ALL)) {
if (! ((self->mwmhints.decorations & OB_MWM_DECOR_HANDLE) ||
(self->mwmhints.decorations & OB_MWM_DECOR_TITLE)))
{
/* if the mwm hints request no handle or title, then all
decorations are disabled, but keep the border if that's
specified */
@ -1310,6 +1314,7 @@ void client_setup_decor_and_functions(ObClient *self)
self->decorations = OB_FRAME_DECOR_BORDER;
else
self->decorations = 0;
}
}
}
@ -2497,7 +2502,7 @@ void client_close(ObClient *self)
ce.xclient.window = self->window;
ce.xclient.format = 32;
ce.xclient.data.l[0] = prop_atoms.wm_delete_window;
ce.xclient.data.l[1] = event_lasttime;
ce.xclient.data.l[1] = event_curtime;
ce.xclient.data.l[2] = 0l;
ce.xclient.data.l[3] = 0l;
ce.xclient.data.l[4] = 0l;
@ -2818,7 +2823,7 @@ gboolean client_focus(ObClient *self)
#799. So now it is RevertToNone again.
*/
XSetInputFocus(ob_display, self->window, RevertToNone,
event_lasttime);
event_curtime);
}
if (self->focus_notify) {
@ -2829,7 +2834,7 @@ gboolean client_focus(ObClient *self)
ce.xclient.window = self->window;
ce.xclient.format = 32;
ce.xclient.data.l[0] = prop_atoms.wm_take_focus;
ce.xclient.data.l[1] = event_lasttime;
ce.xclient.data.l[1] = event_curtime;
ce.xclient.data.l[2] = 0l;
ce.xclient.data.l[3] = 0l;
ce.xclient.data.l[4] = 0l;
@ -2839,7 +2844,7 @@ gboolean client_focus(ObClient *self)
#ifdef DEBUG_FOCUS
ob_debug("%sively focusing %lx at %d\n",
(self->can_focus ? "act" : "pass"),
self->window, (gint) event_lasttime);
self->window, (gint) event_curtime);
#endif
/* Cause the FocusIn to come back to us. Important for desktop switches,
@ -2861,8 +2866,11 @@ void client_unfocus(ObClient *self)
}
}
void client_activate(ObClient *self, gboolean here)
void client_activate(ObClient *self, gboolean here, gboolean user)
{
/* XXX do some stuff here if user is false to determine if we really want
to activate it or not (a parent or group member is currently active) */
if (client_normal(self) && screen_showing_desktop)
screen_show_desktop(FALSE);
if (self->iconic)
@ -2997,8 +3005,8 @@ ObClient *client_find_directional(ObClient *c, ObDirection dir)
continue;
if(cur->iconic)
continue;
if(client_focus_target(cur) == cur &&
!(cur->can_focus || cur->focus_notify))
if(!(client_focus_target(cur) == cur &&
client_can_focus(cur)))
continue;
/* find the centre coords of this window, from the

View file

@ -477,8 +477,10 @@ void client_unfocus(ObClient *self);
when the user deliberately selects a window for use.
@param here If true, then the client is brought to the current desktop;
otherwise, the desktop is changed to where the client lives.
@param user If true, then a user action is what requested the activation;
otherwise, it means an application requested it on its own
*/
void client_activate(ObClient *self, gboolean here);
void client_activate(ObClient *self, gboolean here, gboolean user);
/*! Calculates the stacking layer for the client window */
void client_calc_layer(ObClient *self);

View file

@ -20,7 +20,7 @@
#ifndef ob__client_list_combined_menu_h
#define ob__client_list_combined_menu_h
void client_list_menu_combined_startup(gboolean reconfig);
void client_list_menu_combined_shutdown(gboolean reconfig);
void client_list_combined_menu_startup(gboolean reconfig);
void client_list_combined_menu_shutdown(gboolean reconfig);
#endif

View file

@ -44,7 +44,7 @@ gboolean config_title_number;
gint config_desktops_num;
GSList *config_desktops_names;
gint config_screen_firstdesk;
guint config_screen_firstdesk;
gboolean config_resize_redraw;
gboolean config_resize_four_corners;
@ -455,7 +455,7 @@ static void parse_desktops(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node,
if ((n = parse_find_node("firstdesk", node))) {
gint d = parse_int(doc, n);
if (d > 0)
config_screen_firstdesk = d;
config_screen_firstdesk = (unsigned) d;
}
if ((n = parse_find_node("names", node))) {
GSList *it;
@ -718,7 +718,7 @@ static void bind_default_mouse()
uact = OB_USER_ACTION_MOUSE_DOUBLE_CLICK; break;
case OB_MOUSE_ACTION_MOTION:
uact = OB_USER_ACTION_MOUSE_MOTION; break;
case OB_NUM_MOUSE_ACTIONS:
default:
g_assert_not_reached();
}
mouse_bind(it->button, it->context, it->mact,

View file

@ -96,7 +96,7 @@ extern gboolean config_title_number;
/*! The number of desktops */
extern gint config_desktops_num;
/*! Desktop to start on, put 5 to start in the center of a 3x3 grid */
extern gint config_screen_firstdesk;
extern guint config_screen_firstdesk;
/*! Names for the desktops */
extern GSList *config_desktops_names;

View file

@ -313,6 +313,8 @@ void dock_configure()
dock->y = a->height;
gravity = SouthEastGravity;
break;
default:
g_assert_not_reached();
}
}
@ -578,6 +580,8 @@ void dock_app_drag(ObDockApp *app, XMotionEvent *e)
case OB_ORIENTATION_VERT:
after = (y > over->h / 2);
break;
default:
g_assert_not_reached();
}
/* remove before doing the it->next! */

View file

@ -86,7 +86,12 @@ static gboolean menu_hide_delay_func(gpointer data);
(e)->xfocus.detail == NotifyAncestor || \
(e)->xfocus.detail > NotifyNonlinearVirtual)
Time event_lasttime = 0;
/* The most recent time at which an event with a timestamp occured. */
static Time event_lasttime = 0;
/* The time for the current event being processed
(it's the event_lasttime for events without times, if this is a bug then
use CurrentTime instead, but it seems ok) */
Time event_curtime = CurrentTime;
/*! The value of the mask for the NumLock modifier */
guint NumLockMask;
@ -251,8 +256,14 @@ static void event_set_lasttime(XEvent *e)
break;
}
if (t > event_lasttime)
if (t > event_lasttime) {
event_lasttime = t;
event_curtime = event_lasttime;
} else if (t == 0) {
event_curtime = event_lasttime;
} else {
event_curtime = t;
}
}
#define STRIP_MODS(s) \
@ -919,7 +930,7 @@ static void event_handle_client(ObClient *client, XEvent *e)
it can happen now when the window is on
another desktop, but we still don't
want it! */
client_activate(client, FALSE);
client_activate(client, FALSE, TRUE);
break;
case ClientMessage:
/* validate cuz we query stuff off the client here */
@ -973,8 +984,15 @@ static void event_handle_client(ObClient *client, XEvent *e)
ob_debug("net_close_window for 0x%lx\n", client->window);
client_close(client);
} else if (msgtype == prop_atoms.net_active_window) {
ob_debug("net_active_window for 0x%lx\n", client->window);
client_activate(client, FALSE);
ob_debug("net_active_window for 0x%lx source=%s\n",
client->window,
(e->xclient.data.l[0] == 0 ? "unknown" :
(e->xclient.data.l[0] == 1 ? "application" :
(e->xclient.data.l[0] == 2 ? "user" : "INVALID"))));
/* XXX make use of data.l[1] and [2] ! */
client_activate(client, FALSE,
(e->xclient.data.l[0] == 0 ||
e->xclient.data.l[0] == 2));
} else if (msgtype == prop_atoms.net_wm_moveresize) {
ob_debug("net_wm_moveresize for 0x%lx\n", client->window);
if ((Atom)e->xclient.data.l[2] ==

View file

@ -25,7 +25,7 @@
struct _ObClient;
/*! Time at which the last event with a timestamp occured. */
extern Time event_lasttime;
extern Time event_curtime;
/*! The value of the mask for the NumLock modifier */
extern guint NumLockMask;

View file

@ -144,7 +144,7 @@ void focus_shutdown(gboolean reconfig)
g_free(focus_order);
/* reset focus to root */
XSetInputFocus(ob_display, PointerRoot, RevertToNone, event_lasttime);
XSetInputFocus(ob_display, PointerRoot, RevertToNone, CurrentTime);
RrColorFree(color_white);
@ -186,7 +186,7 @@ void focus_set_client(ObClient *client)
#endif
/* when nothing will be focused, send focus to the backup target */
XSetInputFocus(ob_display, screen_support_win, RevertToNone,
event_lasttime);
event_curtime);
XSync(ob_display, FALSE);
}
@ -318,6 +318,11 @@ ObClient* focus_fallback_target(ObFocusFallbackType type)
if (client_normal(it->data) && client_can_focus(it->data))
return it->data;
/* XXX fallback to the "desktop window" if one exists ?
could store it while going through all the windows in the loop right
above this..
*/
return NULL;
}
@ -603,7 +608,7 @@ void focus_cycle(gboolean forward, gboolean linear, gboolean interactive,
done_cycle:
if (done && focus_cycle_target)
client_activate(focus_cycle_target, FALSE);
client_activate(focus_cycle_target, FALSE, TRUE);
t = NULL;
first = NULL;
@ -665,7 +670,7 @@ void focus_directional_cycle(ObDirection dir, gboolean interactive,
done_cycle:
if (done && focus_cycle_target)
client_activate(focus_cycle_target, FALSE);
client_activate(focus_cycle_target, FALSE, TRUE);
first = NULL;
focus_cycle_target = NULL;

View file

@ -54,14 +54,14 @@ gboolean grab_keyboard(gboolean grab)
if (kgrabs++ == 0) {
ret = XGrabKeyboard(ob_display, RootWindow(ob_display, ob_screen),
FALSE, GrabModeAsync, GrabModeAsync,
event_lasttime) == Success;
event_curtime) == Success;
if (!ret)
--kgrabs;
} else
ret = TRUE;
} else if (kgrabs > 0) {
if (--kgrabs == 0)
XUngrabKeyboard(ob_display, event_lasttime);
XUngrabKeyboard(ob_display, event_curtime);
ret = TRUE;
}
@ -77,14 +77,14 @@ gboolean grab_pointer(gboolean grab, ObCursor cur)
ret = XGrabPointer(ob_display, screen_support_win,
False, GRAB_PTR_MASK, GrabModeAsync,
GrabModeAsync, None,
ob_cursor(cur), event_lasttime) == Success;
ob_cursor(cur), event_curtime) == Success;
if (!ret)
--pgrabs;
} else
ret = TRUE;
} else if (pgrabs > 0) {
if (--pgrabs == 0) {
XUngrabPointer(ob_display, event_lasttime);
XUngrabPointer(ob_display, event_curtime);
}
ret = TRUE;
}
@ -100,14 +100,14 @@ gboolean grab_pointer_window(gboolean grab, ObCursor cur, Window win)
ret = XGrabPointer(ob_display, win, False, GRAB_PTR_MASK,
GrabModeAsync, GrabModeAsync, None,
ob_cursor(cur),
event_lasttime) == Success;
event_curtime) == Success;
if (!ret)
--pgrabs;
} else
ret = TRUE;
} else if (pgrabs > 0) {
if (--pgrabs == 0) {
XUngrabPointer(ob_display, event_lasttime);
XUngrabPointer(ob_display, event_curtime);
}
ret = TRUE;
}

View file

@ -418,7 +418,8 @@ static void sighandler(gint sig)
/* XXX special case for signals that default to core dump.
but throw some helpful output here... */
fprintf(stderr, "Fuck yah. Core dump. (Signal=%d)\n", sig);
fprintf(stderr, "How are you gentlemen? All your base are"
" belong to us. (Signal=%d)\n", sig);
/* die with a core dump */
abort();

View file

@ -251,6 +251,8 @@ static void menu_entry_frame_render(ObMenuEntryFrame *self)
case OB_MENU_ENTRY_TYPE_SEPARATOR:
th = SEPARATOR_HEIGHT + 2*PADDING;
break;
default:
g_assert_not_reached();
}
RECT_SET_SIZE(self->area, self->frame->inner_w, th);
XResizeWindow(ob_display, self->window,

View file

@ -200,7 +200,7 @@ void mouse_event(ObClient *client, XEvent *e)
if (CLIENT_CONTEXT(context, client)) {
/* Replay the event, so it goes to the client*/
XAllowEvents(ob_display, ReplayPointer, event_lasttime);
XAllowEvents(ob_display, ReplayPointer, event_curtime);
/* Fall through to the release case! */
} else
break;

View file

@ -27,7 +27,8 @@
static Rect *pick_head(ObClient *c)
{
Rect *area = NULL;
gint i, px, py;
guint i;
gint px, py;
/* try direct parent first */
if (c->transient_for && c->transient_for != OB_TRAN_GROUP) {
@ -220,7 +221,6 @@ typedef enum
static gboolean place_smart(ObClient *client, gint *x, gint *y,
ObSmartType type)
{
guint i;
gboolean ret = FALSE;
GSList *spaces = NULL, *sit;
GList *it;
@ -320,7 +320,6 @@ static gboolean place_smart(ObClient *client, gint *x, gint *y,
static gboolean place_under_mouse(ObClient *client, gint *x, gint *y)
{
guint i;
gint l, r, t, b;
gint px, py;
Rect *area;

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Openbox 3.3\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2004-11-25 10:29+0100\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2004-01-25 20:41+0100\n"
"Last-Translator: David Majà Martínez <davidmaja@gmail.com>\n"
"Language-Team: catalan\n"
@ -15,11 +15,11 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Vés aquí..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Escriptoris"
@ -108,16 +108,16 @@ msgstr "--sm-save-file necessita un argument\n"
msgid "Unable to make directory '%s': %s"
msgstr "No és pot crear el directori '%s': %s"
#: render/font.c:50
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "No s'ha pogut inicialitzar Xft."
#: render/font.c:170 render/font.c:175
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "No és pot carregar el tipus de lletra: %s\n"
#: render/font.c:171
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "S'està carregant el tipus de lletra de recanvi: %s\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Openbox 3.3\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2005-09-01 18:05+0200\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2006-06-11 10:41+0200\n"
"Last-Translator: Sebastian Vahl <svahl@web.de>\n"
"Language-Team: <de@li.org>\n"
@ -14,11 +14,11 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Gehe zu..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr ""
@ -107,17 +107,16 @@ msgstr ""
msgid "Unable to make directory '%s': %s"
msgstr ""
#: render/font.c:57
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "Konnte Xft nicht initializieren"
#: render/font.c:194 render/font.c:199
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "Font konnte nicht geladen werden: %s\n"
#: render/font.c:195
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr ""

View file

@ -31,8 +31,8 @@
msgid ""
msgstr ""
"Project-Id-Version: openbox 3.2\n"
"Report-Msgid-Bugs-To: mikachu@comhem.se\n"
"POT-Creation-Date: 2004-11-07 12:52+0100\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2004-11-07 12:52+0100\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -41,11 +41,11 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Go there..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Desktops"
@ -134,16 +134,16 @@ msgstr "--sm-save-file requires an argument\n"
msgid "Unable to make directory '%s': %s"
msgstr "Unable to make directory '%s': %s"
#: render/font.c:50
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "Couldn't initialize Xft."
#: render/font.c:122 render/font.c:127
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "Unable to load font: %s\n"
#: render/font.c:123
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "Trying fallback font: %s\n"

View file

@ -28,8 +28,8 @@
msgid ""
msgstr ""
"Project-Id-Version: openbox 3.2\n"
"Report-Msgid-Bugs-To: mikachu@comhem.se\n"
"POT-Creation-Date: 2004-11-07 12:52+0100\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2004-11-07 12:52+0100\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -38,11 +38,11 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Go there..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Desktops"
@ -131,16 +131,16 @@ msgstr "--sm-save-file requires an argument\n"
msgid "Unable to make directory '%s': %s"
msgstr "Unable to make directory '%s': %s"
#: render/font.c:50
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "Couldn't initialize Xft."
#: render/font.c:122 render/font.c:127
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "Unable to load font: %s\n"
#: render/font.c:123
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "Trying fallback font: %s\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Openbox 3.3\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2005-03-25 00:39+0100\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2005-03-25 09:31+0100\n"
"Last-Translator: Miguel Calleja Gómez <mcg79@lycos.es>\n"
"Language-Team: None\n"
@ -15,11 +15,11 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Ir ahí..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Escritorios"
@ -108,16 +108,16 @@ msgstr "--sm-save-file necesita un argumento\n"
msgid "Unable to make directory '%s': %s"
msgstr "No se puede crear el directorio '%s': %s"
#: render/font.c:50
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "No se pudo iniciar Xft."
#: render/font.c:164 render/font.c:169
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "No se puede cargar la fuente: %s\n"
#: render/font.c:165
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "Intentando recurrir a la fuente: %s\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: openbox 3.3\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2005-04-11 23:11+0300\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2005-03-15 21:29+0200\n"
"Last-Translator: Pauli Virtanen <pauli.virtanen@hut.fi>\n"
"Language-Team: Finnish <fi@li.org>\n"
@ -15,111 +15,109 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Näytä tämä..."
#: ../openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Työtilat"
#: ../openbox/client_menu.c:78
#: openbox/client_menu.c:78
msgid "Restore"
msgstr "Palauta"
#: ../openbox/client_menu.c:78
#: openbox/client_menu.c:78
msgid "Maximize"
msgstr "Suurenna"
#: ../openbox/client_menu.c:84
#: openbox/client_menu.c:84
msgid "Roll down"
msgstr "Rullaa auki"
#: ../openbox/client_menu.c:84
#: openbox/client_menu.c:84
msgid "Roll up"
msgstr "Rullaa"
#: ../openbox/client_menu.c:146
#: openbox/client_menu.c:146
msgid "All desktops"
msgstr "Kaikkiin työtiloihin"
#: ../openbox/client_menu.c:170
#: openbox/client_menu.c:170
msgid "Layer"
msgstr "Kerros"
#: ../openbox/client_menu.c:175
#: openbox/client_menu.c:175
msgid "Always on top"
msgstr "Aina päällimmäinen"
#: ../openbox/client_menu.c:180
#: openbox/client_menu.c:180
msgid "Normal"
msgstr "Tavallinen"
#: ../openbox/client_menu.c:185
#: openbox/client_menu.c:185
msgid "Always on bottom"
msgstr "Aina alimmainen"
#: ../openbox/client_menu.c:188
#: openbox/client_menu.c:188
msgid "Send to desktop"
msgstr "Siirrä työtilaan"
#: ../openbox/client_menu.c:192
#: openbox/client_menu.c:192
msgid "Client menu"
msgstr "Ikkunan valikko"
#: ../openbox/client_menu.c:205
#: openbox/client_menu.c:205
msgid "Iconify"
msgstr "Pienennä"
#: ../openbox/client_menu.c:222
#: openbox/client_menu.c:222
msgid "Raise to top"
msgstr "Nosta päällimmäiseksi"
#: ../openbox/client_menu.c:226
#: openbox/client_menu.c:226
msgid "Lower to bottom"
msgstr "Laske alimmaiseksi"
#: ../openbox/client_menu.c:239
#: openbox/client_menu.c:239
msgid "Decorate"
msgstr "Piirrä/poista kehykset"
#: ../openbox/client_menu.c:245
#: openbox/client_menu.c:245
msgid "Move"
msgstr "Siirrä"
#: ../openbox/client_menu.c:249
#: openbox/client_menu.c:249
msgid "Resize"
msgstr "Muuta kokoa"
#: ../openbox/client_menu.c:255
#: openbox/client_menu.c:255
msgid "Close"
msgstr "Sulje"
#. no args left
#: ../openbox/session.c:124
#: openbox/session.c:124
msgid "--sm-client-id requires an argument\n"
msgstr "--sm-client-id tarvitsee parametrin\n"
#. no args left
#: ../openbox/session.c:132
#: openbox/session.c:132
msgid "--sm-save-file requires an argument\n"
msgstr "--sm-save-file tarvitsee parametrin\n"
#: ../openbox/session.c:160
#: openbox/session.c:160
#, c-format
msgid "Unable to make directory '%s': %s"
msgstr "Hakemiston \"%s\" luonti epäonnistui: %s"
#: ../render/font.c:50
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "Xft:n käynnistys epäonnistui."
#: ../render/font.c:164 ../render/font.c:169
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "Kirjasinlajin lataaminen epäonnistui: %s\n"
#: ../render/font.c:165
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "Kokeillaan varakirjasinlajia: %s\n"

View file

@ -6,8 +6,8 @@
msgid ""
msgstr ""
"Project-Id-Version: Openbox 3.2\n"
"Report-Msgid-Bugs-To: mikachu@comhem.se\n"
"POT-Creation-Date: 2004-11-07 12:52+0100\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2004-06-11 23:06+0200\n"
"Last-Translator: Julien Louis <leonptitlouis@wanadoo.fr>\n"
"Language-Team: French <traduc@traduc.org>\n"
@ -15,11 +15,11 @@ msgstr ""
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Aller à..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Bureaux"
@ -108,16 +108,16 @@ msgstr "--sm-save-file requiert un argument\n"
msgid "Unable to make directory '%s': %s"
msgstr "Impossible de créer le répertoire '%s': %s"
#: render/font.c:50
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "Impossible d'initialiser Xft."
#: render/font.c:122 render/font.c:127
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "Impossible de charger la police : %s\n"
#: render/font.c:123
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "Tentative de remplacement de la police : %s\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Openbox 3.3\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2006-08-27 00:26+0200\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2006-09-05 16:45+0100\n"
"Last-Translator: Daniel Radetic <drade@boobah.info>\n"
"Language-Team: None\n"
@ -15,11 +15,11 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:96
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Odi na..."
#: openbox/client_list_menu.c:186
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Radne površine"
@ -112,8 +112,7 @@ msgstr "Nemogu napraviti direktorij '%s': %s"
msgid "Couldn't initialize Xft."
msgstr "Nemogu pokrenuti Xft."
#: render/font.c:193
#: render/font.c:198
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "Nemogu učitati slova: %s\n"
@ -122,4 +121,3 @@ msgstr "Nemogu učitati slova: %s\n"
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "Isprobavam osnovni tip slova: %s\n"

View file

@ -6,8 +6,8 @@
msgid ""
msgstr ""
"Project-Id-Version: Openbox 3.0\n"
"Report-Msgid-Bugs-To: mikachu@comhem.se\n"
"POT-Creation-Date: 2004-11-07 12:52+0100\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2003-11-20 15:00+0900\n"
"Last-Translator: Yukihiro Nakai <nakai@gnome.gr.jp>\n"
"Language-Team: Japanese <ja@li.org>\n"
@ -15,11 +15,11 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "移動する..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "デスクトップ"
@ -108,16 +108,16 @@ msgstr "--sm-save-file には引数が必要です\n"
msgid "Unable to make directory '%s': %s"
msgstr "ディレクトリ'%s'を作れません: %s"
#: render/font.c:50
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr ""
#: render/font.c:122 render/font.c:127
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr ""
#: render/font.c:123
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr ""

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: openbox 3.2\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2004-11-07 12:59+0100\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2004-03-29 18:33:39+0200\n"
"Last-Translator: Øyvind Albrigtsen\n"
"Language-Team: None\n"
@ -15,11 +15,11 @@ msgstr ""
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Gå dit"
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Skrivebord"
@ -108,16 +108,16 @@ msgstr "--sm-save-file krever et argument\n"
msgid "Unable to make directory '%s': %s"
msgstr "Kunde ikke lage katalogen '%s': %s"
#: render/font.c:50
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "Kunde ikke initialisere Xft."
#: render/font.c:122 render/font.c:127
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "Kunde ikke laste fonten \"%s\"\n"
#: render/font.c:123
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "Prøver med reservefonten: %s\n"

View file

@ -6,8 +6,8 @@
msgid ""
msgstr ""
"Project-Id-Version: Openbox 3.2\n"
"Report-Msgid-Bugs-To: mikachu@comhem.se\n"
"POT-Creation-Date: 2004-11-07 12:52+0100\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2004-09-07 21:17+0200\n"
"Last-Translator: Madej <madej@afn.no-ip.org>\n"
"Language-Team: NONE\n"
@ -15,11 +15,11 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Przejdź..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Pulpit"
@ -108,16 +108,16 @@ msgstr "--sm-save-file wymaga argumentu\n"
msgid "Unable to make directory '%s': %s"
msgstr "Nie mogę utworzyć katalogu '%s': %s"
#: render/font.c:50
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "Błąd przy inicjalizacji Xft."
#: render/font.c:122 render/font.c:127
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "Nie mogę załadować czcionki: %s\n"
#: render/font.c:123
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "Próbuję użyć czcionki: %s\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Openbox 3.3\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2006-08-20 21:54+0200\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2004-03-29 18:33:39+0200\n"
"Last-Translator: Gonçalo Ferreira <gonsas@gmail.com>\n"
"Language-Team: None\n"
@ -15,11 +15,11 @@ msgstr ""
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Ir até..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Áreas de trabalho"
@ -108,7 +108,7 @@ msgstr "--sm-save-file requer um argumento\n"
msgid "Unable to make directory '%s': %s"
msgstr "Incapaz de criar o directório '%s': %s "
#: render/font.c:57
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "Incapaz de inicializar Xft."

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: openbox 3.2\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2004-11-07 12:52+0100\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2004-04-23 13:00+0300\n"
"Last-Translator: Alexey Remizov <alexey@remizov.pp.ru>\n"
"Language-Team: Russian <gnome-cyr@gnome.org>\n"
@ -15,11 +15,11 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Перейти..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Рабочие места"
@ -108,16 +108,16 @@ msgstr "--sm-save-file требует параметр\n"
msgid "Unable to make directory '%s': %s"
msgstr "Невозможно создать каталог '%s': %s"
#: render/font.c:50
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "Не удалось инициализировать Xft."
#: render/font.c:122 render/font.c:127
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "Невозможно загрузить шрифт: %s\n"
#: render/font.c:123
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "Попытка вернуть шрифт: %s\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Openbox-3.3rc2\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2005-09-01 18:05+0200\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2006-08-25 00:52+0200\n"
"Last-Translator: Jozef Riha <jose1711@gmail.com\n"
"Language-Team: Slovak <LL@li.org>\n"
@ -15,11 +15,11 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Prejsť na..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Plochy"
@ -108,16 +108,16 @@ msgstr "--sm-save-file vyžaduje parameter\n"
msgid "Unable to make directory '%s': %s"
msgstr "Nebolo možné vytvoriť adresár '%s': %s"
#: render/font.c:57
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "Nepodarilo sa inicializovať Xft."
#: render/font.c:194 render/font.c:199
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "Nepodarilo sa načítať font: %s\n"
#: render/font.c:195
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "Pokus o návrat k fontu: %s\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: openbox 3.3\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2004-11-07 12:52+0100\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2004-03-29 18:33:39+0200\n"
"Last-Translator: Mikael Magnusson <mikachu@icculus.org>\n"
"Language-Team: None\n"
@ -15,11 +15,11 @@ msgstr ""
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "Gå dit"
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "Skrivbord"
@ -108,16 +108,16 @@ msgstr "--sm-save-file kr
msgid "Unable to make directory '%s': %s"
msgstr "Kunde inte skapa katalogen '%s': %s"
#: render/font.c:50
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "Kunde inte initialisera Xft."
#: render/font.c:122 render/font.c:127
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "Kunde inte ladda fonten \"%s\"\n"
#: render/font.c:123
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "Försöker med reservfonten \"%s\"\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: openbox 3.3rc2\n"
"Report-Msgid-Bugs-To: mikachu@icculus.org\n"
"POT-Creation-Date: 2005-09-01 18:05+0200\n"
"POT-Creation-Date: 2007-02-28 12:50-0500\n"
"PO-Revision-Date: 2006-03-01 12:00+0800\n"
"Last-Translator: Wei-Lun Chao <william.chao@ossii.com.tw>\n"
"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
@ -16,11 +16,11 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#: openbox/client_list_menu.c:95
#: openbox/client_list_menu.c:97
msgid "Go there..."
msgstr "到那裡去..."
#: openbox/client_list_menu.c:161
#: openbox/client_list_menu.c:187
msgid "Desktops"
msgstr "桌面"
@ -109,16 +109,16 @@ msgstr "--sm-save-file 要求引數\n"
msgid "Unable to make directory '%s': %s"
msgstr "無法製作目錄 '%s': %s"
#: render/font.c:57
#: render/font.c:58
msgid "Couldn't initialize Xft."
msgstr "無法初始化 Xft。"
#: render/font.c:194 render/font.c:199
#: render/font.c:193 render/font.c:198
#, c-format
msgid "Unable to load font: %s\n"
msgstr "無法載入字型:%s\n"
#: render/font.c:195
#: render/font.c:194
#, c-format
msgid "Trying fallback font: %s\n"
msgstr "正在嘗試權宜字型:%s\n"

View file

@ -116,12 +116,12 @@ static RrFont *openfont(const RrInstance *inst, gchar *fontstring)
if (FcPatternGetString(match, "style", 0, &tmp_string) !=
FcResultTypeMismatch) {
/* Bold ? */
if (!strcasecmp("bold", (gchar *)tmp_string)) {
if (!g_ascii_strcasecmp("bold", (gchar *)tmp_string)) {
pango_font_description_set_weight(out->pango_font_description,
PANGO_WEIGHT_BOLD);
}
/* Italic ? */
else if (!strcasecmp("italic", (gchar *)tmp_string)) {
else if (!g_ascii_strcasecmp("italic", (gchar *)tmp_string)) {
pango_font_description_set_style(out->pango_font_description,
PANGO_STYLE_ITALIC);
}
@ -135,19 +135,23 @@ static RrFont *openfont(const RrInstance *inst, gchar *fontstring)
}
/* based on gtkmain.c gtk_get_default_language() */
gchar *locale, *p;
locale = g_strdup(setlocale(LC_CTYPE, NULL));
if ((p = strchr(locale, '.')))
*p = '\0';
if ((p = strchr(locale, '@')))
*p = '\0';
PangoFontMetrics *metrics =
pango_context_get_metrics(context, out->pango_font_description,
pango_language_from_string(locale));
out->pango_ascent = pango_font_metrics_get_ascent(metrics);
out->pango_descent = pango_font_metrics_get_descent(metrics);
g_free(locale);
pango_font_metrics_unref(metrics);
{
gchar *locale, *p;
PangoFontMetrics *metrics;
locale = g_strdup(setlocale(LC_CTYPE, NULL));
if ((p = strchr(locale, '.')))
*p = '\0';
if ((p = strchr(locale, '@')))
*p = '\0';
metrics =
pango_context_get_metrics(context, out->pango_font_description,
pango_language_from_string(locale));
out->pango_ascent = pango_font_metrics_get_ascent(metrics);
out->pango_descent = pango_font_metrics_get_descent(metrics);
g_free(locale);
pango_font_metrics_unref(metrics);
}
#endif /* USE_PANGO */
if (FcPatternGetBool(match, OB_SHADOW, 0, &out->shadow) != FcResultMatch)

View file

@ -25,7 +25,7 @@
"To recreate this file, save an image as \"C-Source\" in The Gimp. Use \"ob_default_icon\" as the Prefixed Name. Enable Glib Types. Enable Save Alpha Channel. Enable Use Macros instead of Struct."
#define OB_DEFAULT_ICON_PIXEL_DATA ((guint8*) OB_DEFAULT_ICON_pixel_data)
static const guint8 OB_DEFAULT_ICON_pixel_data[48 * 48 * 4 + 1] =
("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
@ -435,5 +435,5 @@ static const guint8 OB_DEFAULT_ICON_pixel_data[48 * 48 * 4 + 1] =
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
"\0\0\0\0");
"\0\0\0\0";

View file

@ -68,7 +68,7 @@ typedef enum {
RR_SURFACE_DIAGONAL,
RR_SURFACE_CROSS_DIAGONAL,
RR_SURFACE_PYRAMID,
RR_SURFACE_MIRROR_HORIZONTAL,
RR_SURFACE_MIRROR_HORIZONTAL
} RrSurfaceColorType;
typedef enum {