From 3c14d2f6ac8f4aa425b5f2572cae2ad661c70699 Mon Sep 17 00:00:00 2001 From: CentOS Buildsys Date: Mar 12 2014 10:04:31 +0000 Subject: import mutter-3.8.4-10.el7.src.rpm --- diff --git a/SOURCES/0001-background-Allow-using-sliced-textures-for-file-base.patch b/SOURCES/0001-background-Allow-using-sliced-textures-for-file-base.patch new file mode 100644 index 0000000..13bdb48 --- /dev/null +++ b/SOURCES/0001-background-Allow-using-sliced-textures-for-file-base.patch @@ -0,0 +1,37 @@ +From b7840bec7d135fec3c268b5eab1233d6c6c7cdf6 Mon Sep 17 00:00:00 2001 +From: Ray Strode +Date: Fri, 14 Jun 2013 14:49:13 -0400 +Subject: [PATCH] background: Allow using sliced textures for file based + backgrounds + +Some cards have 2k texture limits, which can be smaller than +commonly sized backgrounds. + +One way to get around this problem is to use Cogl's "sliced texture" +feature, that transparently uses several hardware textures under the hood. + +This commit changes background textures loaded from file to potentially +use slicing. Based on a patch by Jasper St. Pierre +. + +https://bugzilla.gnome.org/show_bug.cgi?id=702283 +--- + src/compositor/meta-background.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/compositor/meta-background.c b/src/compositor/meta-background.c +index b8e0d52..568614f 100644 +--- a/src/compositor/meta-background.c ++++ b/src/compositor/meta-background.c +@@ -1090,7 +1090,7 @@ meta_background_load_file_finish (MetaBackground *self, + + texture = cogl_texture_new_from_data (width, + height, +- COGL_TEXTURE_NO_SLICING, ++ COGL_TEXTURE_NO_ATLAS, + has_alpha ? + COGL_PIXEL_FORMAT_RGBA_8888 : + COGL_PIXEL_FORMAT_RGB_888, +-- +1.8.4.2 + diff --git a/SOURCES/0001-background-don-t-save-pixbuf-in-user-data.patch b/SOURCES/0001-background-don-t-save-pixbuf-in-user-data.patch new file mode 100644 index 0000000..3270091 --- /dev/null +++ b/SOURCES/0001-background-don-t-save-pixbuf-in-user-data.patch @@ -0,0 +1,38 @@ +From c52b30d01f0abcba397c7bfa62abb311d7ea2c8a Mon Sep 17 00:00:00 2001 +From: Tim Lunn +Date: Mon, 26 Aug 2013 11:39:38 +1000 +Subject: [PATCH] background: don't save pixbuf in user data + +https://bugzilla.gnome.org/show_bug.cgi?id=706777 +--- + src/compositor/meta-background.c | 7 ------- + 1 file changed, 7 deletions(-) + +diff --git a/src/compositor/meta-background.c b/src/compositor/meta-background.c +index 76477c8..af33f58 100644 +--- a/src/compositor/meta-background.c ++++ b/src/compositor/meta-background.c +@@ -1031,7 +1031,6 @@ meta_background_load_file_finish (MetaBackground *self, + GAsyncResult *result, + GError **error) + { +- static CoglUserDataKey key; + GTask *task; + LoadFileTaskData *task_data; + CoglTexture *texture; +@@ -1077,12 +1076,6 @@ meta_background_load_file_finish (MetaBackground *self, + goto out; + } + +- cogl_object_set_user_data (COGL_OBJECT (texture), +- &key, +- g_object_ref (pixbuf), +- (CoglUserDataDestroyCallback) +- g_object_unref); +- + ensure_pipeline (self); + unset_texture (self); + set_style (self, task_data->style); +-- +1.8.5.3 + diff --git a/SOURCES/0001-core-Add-minimal-handling-of-touch-events.patch b/SOURCES/0001-core-Add-minimal-handling-of-touch-events.patch new file mode 100644 index 0000000..ac0f8fd --- /dev/null +++ b/SOURCES/0001-core-Add-minimal-handling-of-touch-events.patch @@ -0,0 +1,245 @@ +From 9eeb657cd98eeb198e50130b4081b2b34b1d7469 Mon Sep 17 00:00:00 2001 +From: Carlos Garnacho +Date: Tue, 11 Feb 2014 19:24:12 +0100 +Subject: [PATCH] core: Add minimal handling of touch events + +Currently touch events are ignored in the core event handler, +and hence dealt with within GDK. If those touch events were +emulating pointer events, GDK would attempt to convert back +those events to pointer events as the frame GdkWindow doesn't +have the GDK_TOUCH_MASK set. + +This results in XI_TouchBegin events being initially processed +by GDK, converted to button events, and triggering a grab op +that subverts touch events into pointer events, so the touch +is never ever seen again by GDK. This leaves GDK in an +inconsistent internal state wrt pointer grabs, so future +pointer-emulating touches will refer to the same window forever. + +Fix this by handling touch events minimally, just enough to +convert XI_TouchBegin to GDK_BUTTON_PRESS within mutter, so GDK +is bypassed for every touch event just like it is for pointer +events. This, and the XIGrabDevice() that keeps coercing pointer +events when the grab operation starts, are enough to fix window +drag and drop on touch devices. +--- + src/core/display.c | 51 +++++++++++++++++++++++++++++++++++++++------------ + src/ui/ui.c | 18 ++++++++++++++---- + 2 files changed, 53 insertions(+), 16 deletions(-) + +diff --git a/src/core/display.c b/src/core/display.c +index d611314..435d9d9 100644 +--- a/src/core/display.c ++++ b/src/core/display.c +@@ -1838,6 +1838,9 @@ get_input_event (MetaDisplay *display, + + switch (input_event->evtype) + { ++ case XI_TouchBegin: ++ case XI_TouchUpdate: ++ case XI_TouchEnd: + case XI_Motion: + case XI_ButtonPress: + case XI_ButtonRelease: +@@ -2041,6 +2044,7 @@ event_callback (XEvent *event, + { + XIDeviceEvent *device_event = (XIDeviceEvent *) input_event; + XIEnterEvent *enter_event = (XIEnterEvent *) input_event; ++ gint button = 0; + + if (window && !window->override_redirect && + ((input_event->type == XI_KeyPress) || (input_event->type == XI_ButtonPress))) +@@ -2076,19 +2080,32 @@ event_callback (XEvent *event, + if (meta_display_process_key_event (display, window, (XIDeviceEvent *) input_event)) + filter_out_event = bypass_compositor = TRUE; + break; ++ case XI_TouchBegin: ++ /* Filter out non-pointer-emulating touches */ ++ if ((((XIDeviceEvent *) input_event)->flags & XITouchEmulatingPointer) == 0) ++ break; ++ ++ /* Fall through */ + case XI_ButtonPress: + if (display->grab_op == META_GRAB_OP_COMPOSITOR) + break; + + display->overlay_key_only_pressed = FALSE; + +- if (device_event->detail == 4 || device_event->detail == 5) +- /* Scrollwheel event, do nothing and deliver event to compositor below */ +- break; ++ if (input_event->evtype == XI_ButtonPress) ++ { ++ if (device_event->detail == 4 || device_event->detail == 5) ++ /* Scrollwheel event, do nothing and deliver event to compositor below */ ++ break; ++ else ++ button = device_event->detail; ++ } ++ else if (input_event->evtype == XI_TouchBegin) ++ button = 1; + + if ((window && + meta_grab_op_is_mouse (display->grab_op) && +- display->grab_button != device_event->detail && ++ display->grab_button != button && + display->grab_window == window) || + grab_op_is_keyboard (display->grab_op)) + { +@@ -2130,8 +2147,7 @@ event_callback (XEvent *event, + */ + unmodified = (device_event->mods.effective & grab_mask) == 0; + +- if (unmodified || +- device_event->detail == 1) ++ if (unmodified || button == 1) + { + /* don't focus if frame received, will be lowered in + * frames.c or special-cased if the click was on a +@@ -2152,7 +2168,7 @@ event_callback (XEvent *event, + { + meta_topic (META_DEBUG_FOCUS, + "Focusing %s due to unmodified button %u press (display.c)\n", +- window->desc, device_event->detail); ++ window->desc, button); + meta_window_focus (window, device_event->time); + } + else +@@ -2168,7 +2184,7 @@ event_callback (XEvent *event, + if (!unmodified) + begin_move = TRUE; + } +- else if (!unmodified && device_event->detail == meta_prefs_get_mouse_button_resize()) ++ else if (!unmodified && button == meta_prefs_get_mouse_button_resize()) + { + if (window->has_resize_func) + { +@@ -2210,21 +2226,21 @@ event_callback (XEvent *event, + op, + TRUE, + FALSE, +- device_event->detail, ++ button, + 0, + device_event->time, + device_event->root_x, + device_event->root_y); + } + } +- else if (device_event->detail == meta_prefs_get_mouse_button_menu()) ++ else if (button == meta_prefs_get_mouse_button_menu()) + { + if (meta_prefs_get_raise_on_click ()) + meta_window_raise (window); + meta_window_show_menu (window, + device_event->root_x, + device_event->root_y, +- device_event->detail, ++ button, + device_event->time); + } + +@@ -2267,7 +2283,7 @@ event_callback (XEvent *event, + META_GRAB_OP_MOVING, + TRUE, + FALSE, +- device_event->detail, ++ button, + 0, + device_event->time, + device_event->root_x, +@@ -2438,6 +2454,14 @@ event_callback (XEvent *event, + filter_out_event = bypass_compositor = TRUE; + break; + #endif /* HAVE_XI23 */ ++ case XI_TouchUpdate: ++ case XI_TouchEnd: ++ /* Currently unhandled, if any grab_op is started through XI_TouchBegin, ++ * the XIGrabDevice() evmask drops touch events, so only emulated ++ * XI_Motions and XI_ButtonRelease will follow. ++ */ ++ filter_out_event = TRUE; ++ break; + } + } + else +@@ -2963,6 +2987,9 @@ event_get_modified_window (MetaDisplay *display, + case XI_ButtonRelease: + case XI_KeyPress: + case XI_KeyRelease: ++ case XI_TouchBegin: ++ case XI_TouchUpdate: ++ case XI_TouchEnd: + return ((XIDeviceEvent *) input_event)->event; + case XI_FocusIn: + case XI_FocusOut: +diff --git a/src/ui/ui.c b/src/ui/ui.c +index af28263..582fdce 100644 +--- a/src/ui/ui.c ++++ b/src/ui/ui.c +@@ -126,6 +126,7 @@ maybe_redirect_mouse_event (XEvent *xevent) + + switch (xev->evtype) + { ++ case XI_TouchBegin: + case XI_ButtonPress: + case XI_ButtonRelease: + case XI_Motion: +@@ -162,20 +163,27 @@ maybe_redirect_mouse_event (XEvent *xevent) + + switch (xev->evtype) + { ++ case XI_TouchBegin: + case XI_ButtonPress: + case XI_ButtonRelease: +- if (xev_d->evtype == XI_ButtonPress) ++ if (xev_d->evtype == XI_ButtonPress || xev_d->evtype == XI_TouchBegin) + { + GtkSettings *settings = gtk_settings_get_default (); + int double_click_time; + int double_click_distance; ++ int button; + + g_object_get (settings, + "gtk-double-click-time", &double_click_time, + "gtk-double-click-distance", &double_click_distance, + NULL); + +- if (xev_d->detail == ui->button_click_number && ++ if (xev->evtype == XI_TouchBegin) ++ button = 1; ++ else ++ button = xev_d->detail; ++ ++ if (button == ui->button_click_number && + xev_d->event == ui->button_click_window && + xev_d->time < ui->button_click_time + double_click_time && + ABS (xev_d->event_x - ui->button_click_x) <= double_click_distance && +@@ -188,20 +196,22 @@ maybe_redirect_mouse_event (XEvent *xevent) + else + { + gevent = gdk_event_new (GDK_BUTTON_PRESS); +- ui->button_click_number = xev_d->detail; ++ ui->button_click_number = button; + ui->button_click_window = xev_d->event; + ui->button_click_time = xev_d->time; + ui->button_click_x = xev_d->event_x; + ui->button_click_y = xev_d->event_y; + } ++ ++ gevent->button.button = button; + } + else + { + gevent = gdk_event_new (GDK_BUTTON_RELEASE); ++ gevent->button.button = xev_d->detail; + } + + gevent->button.window = g_object_ref (gdk_window); +- gevent->button.button = xev_d->detail; + gevent->button.time = xev_d->time; + gevent->button.x = xev_d->event_x; + gevent->button.y = xev_d->event_y; +-- +1.8.5.3 + diff --git a/SOURCES/0001-workspace-Add-missing-chain-up-for-finalize.patch b/SOURCES/0001-workspace-Add-missing-chain-up-for-finalize.patch new file mode 100644 index 0000000..e6733f8 --- /dev/null +++ b/SOURCES/0001-workspace-Add-missing-chain-up-for-finalize.patch @@ -0,0 +1,25 @@ +From 2a4678ecee0839f9efe12f169002c3d19c1a40fa Mon Sep 17 00:00:00 2001 +From: Pavel Vasin +Date: Sat, 14 Sep 2013 16:18:02 +0400 +Subject: [PATCH] workspace: Add missing chain-up for finalize() + +https://bugzilla.gnome.org/show_bug.cgi?id=708070 +--- + src/core/workspace.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/core/workspace.c b/src/core/workspace.c +index d2c1552..e5da6d2 100644 +--- a/src/core/workspace.c ++++ b/src/core/workspace.c +@@ -78,6 +78,7 @@ static void + meta_workspace_finalize (GObject *object) + { + /* Actual freeing done in meta_workspace_remove() for now */ ++ G_OBJECT_CLASS (meta_workspace_parent_class)->finalize (object); + } + + static void +-- +1.9.0 + diff --git a/SOURCES/MetaWindowGroup-fix-paint-volume.patch b/SOURCES/MetaWindowGroup-fix-paint-volume.patch new file mode 100644 index 0000000..c685323 --- /dev/null +++ b/SOURCES/MetaWindowGroup-fix-paint-volume.patch @@ -0,0 +1,54 @@ +From a796938b3991535ac9b5e79436ce1dbf1da72904 Mon Sep 17 00:00:00 2001 +From: "Owen W. Taylor" +Date: Tue, 3 Dec 2013 00:27:03 -0500 +Subject: [PATCH] MetaWindowGroup: fix paint volume + +In the past, MetaWindowGroup was allocated the size of the screen and +painted the size of the screen because it contained the screen background, +but now we also have the "top window group" which contains only popup +windows, so the allocation doesn't properly reflect the paint bounds +of the window group. Compute the paint bounds accurately from the +children. + +https://bugzilla.gnome.org/show_bug.cgi?id=719669 +--- + src/compositor/meta-window-group.c | 23 +++++++++++++++++++++-- + 1 file changed, 21 insertions(+), 2 deletions(-) + + +diff -up mutter-3.8.4/src/compositor/meta-window-group.c.window-group-paint-volume mutter-3.8.4/src/compositor/meta-window-group.c +--- mutter-3.8.4/src/compositor/meta-window-group.c.window-group-paint-volume 2014-02-11 11:36:22.448065800 -0500 ++++ mutter-3.8.4/src/compositor/meta-window-group.c 2014-02-11 11:40:28.723506360 -0500 +@@ -250,11 +250,30 @@ meta_window_group_paint (ClutterActor *a + g_list_free (children); + } + ++/* Adapted from clutter_actor_update_default_paint_volume() */ + static gboolean +-meta_window_group_get_paint_volume (ClutterActor *actor, ++meta_window_group_get_paint_volume (ClutterActor *self, + ClutterPaintVolume *volume) + { +- return clutter_paint_volume_set_from_allocation (volume, actor); ++ ClutterActorIter iter; ++ ClutterActor *child; ++ ++ clutter_actor_iter_init (&iter, self); ++ while (clutter_actor_iter_next (&iter, &child)) ++ { ++ const ClutterPaintVolume *child_volume; ++ ++ if (!CLUTTER_ACTOR_IS_MAPPED (child)) ++ continue; ++ ++ child_volume = clutter_actor_get_transformed_paint_volume (child, self); ++ if (child_volume == NULL) ++ return FALSE; ++ ++ clutter_paint_volume_union (volume, child_volume); ++ } ++ ++ return TRUE; + } + + static void diff --git a/SOURCES/deal-more-gracefully-with-oversized-windows.patch b/SOURCES/deal-more-gracefully-with-oversized-windows.patch new file mode 100644 index 0000000..ff248ce --- /dev/null +++ b/SOURCES/deal-more-gracefully-with-oversized-windows.patch @@ -0,0 +1,115 @@ +From 45b76b121a6f7fd01742b78f9c44a48a3caffbf0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Florian=20M=C3=BCllner?= +Date: Fri, 10 Jan 2014 06:26:57 -0500 +Subject: [PATCH 1/2] window-actor: Guard against %NULL frame mask + +Creating a new cogl texture may fail, in which case the intent to +free it will crash. While something is clearly wrong (insanely +large window, oom, ...), crashing the WM is harsh and we should +try to avoid it if at all possible, so carry on. + +https://bugzilla.gnome.org/show_bug.cgi?id=722266 +--- + src/compositor/meta-window-actor.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/compositor/meta-window-actor.c b/src/compositor/meta-window-actor.c +index 42d1257..055b413 100644 +--- a/src/compositor/meta-window-actor.c ++++ b/src/compositor/meta-window-actor.c +@@ -2181,7 +2181,8 @@ build_and_scan_frame_mask (MetaWindowActor *self, + + meta_shaped_texture_set_mask_texture (META_SHAPED_TEXTURE (priv->actor), + mask_texture); +- cogl_object_unref (mask_texture); ++ if (mask_texture) ++ cogl_object_unref (mask_texture); + + g_free (mask_data); + } +-- +1.9.0 + + +From bd6fa34598b774de36c4c65d2cfa577c24f18722 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Florian=20M=C3=BCllner?= +Date: Wed, 12 Mar 2014 02:04:13 +0100 +Subject: [PATCH 2/2] constraints: Enforce X11 size limits + +X11 limits windows to a maximum of 32767x32767, enforce that restriction +to keep insanely huge windows from crashing the WM. +--- + src/core/constraints.c | 39 +++++++++++++++++++++++++++++++++++++++ + 1 file changed, 39 insertions(+) + +diff --git a/src/core/constraints.c b/src/core/constraints.c +index 606baea..2a510e0 100644 +--- a/src/core/constraints.c ++++ b/src/core/constraints.c +@@ -104,6 +104,7 @@ typedef enum + PRIORITY_SIZE_HINTS_LIMITS = 3, + PRIORITY_TITLEBAR_VISIBLE = 4, + PRIORITY_PARTIALLY_VISIBLE_ON_WORKAREA = 4, ++ PRIORITY_XLIMITS = 4, + PRIORITY_MAXIMUM = 4 /* Dummy value used for loop end = max(all priorities) */ + } ConstraintPriority; + +@@ -192,6 +193,10 @@ static gboolean constrain_partially_onscreen (MetaWindow *window, + ConstraintInfo *info, + ConstraintPriority priority, + gboolean check_only); ++static gboolean constrain_xlimits (MetaWindow *window, ++ ConstraintInfo *info, ++ ConstraintPriority priority, ++ gboolean check_only); + + static void setup_constraint_info (ConstraintInfo *info, + MetaWindow *window, +@@ -236,6 +241,7 @@ static const Constraint all_constraints[] = { + {constrain_fully_onscreen, "constrain_fully_onscreen"}, + {constrain_titlebar_visible, "constrain_titlebar_visible"}, + {constrain_partially_onscreen, "constrain_partially_onscreen"}, ++ {constrain_xlimits, "constrain_xlimits"}, + {NULL, NULL} + }; + +@@ -1518,3 +1524,36 @@ constrain_partially_onscreen (MetaWindow *window, + + return retval; + } ++ ++ ++#define MAX_WINDOW_SIZE 32767 ++ ++static gboolean ++constrain_xlimits (MetaWindow *window, ++ ConstraintInfo *info, ++ ConstraintPriority priority, ++ gboolean check_only) ++{ ++ int max_w, max_h; ++ gboolean constraint_already_satisfied; ++ ++ if (priority > PRIORITY_XLIMITS) ++ return TRUE; ++ ++ max_w = MAX_WINDOW_SIZE; ++ if (window->frame) ++ max_w -= (info->borders->total.left + info->borders->total.right); ++ ++ max_h = MAX_WINDOW_SIZE; ++ if (window->frame) ++ max_h -= (info->borders->total.top + info->borders->total.bottom); ++ ++ constraint_already_satisfied = info->current.width < max_w && info->current.height < max_h; ++ if (check_only || constraint_already_satisfied) ++ return constraint_already_satisfied; ++ ++ info->current.width = MIN (info->current.width, max_w); ++ info->current.height = MIN (info->current.height, max_h); ++ ++ return TRUE; ++} +-- +1.9.0 + diff --git a/SOURCES/mutter-translation-updates.patch b/SOURCES/mutter-translation-updates.patch new file mode 100644 index 0000000..4af0bae --- /dev/null +++ b/SOURCES/mutter-translation-updates.patch @@ -0,0 +1,12703 @@ +--- a/mutter-3.8.4/po/bn_IN.po 2013-11-28 17:15:31.984866743 +0530 ++++ a/mutter-3.8.4/po/bn_IN.po 2013-11-28 17:17:23.036871335 +0530 +@@ -2,54 +2,236 @@ + # Bengali India Translation for Metacity 2.4 + # Copyright (C) 2003 Free Software Foundation + # This file is distributed under the same license as the METACITY package. +-# ++# + # Dr Anirban Mitra , 2003. + # Mahay Alam Khan , 2005. + # Samia Niamatullah , 2005. + # Runa Bhattacharjee , 2006. + # Runa Bhattacharjee , 2009. + # Sayak Sarkar , 2012. ++# sray , 2013. #zanata + msgid "" + msgstr "" + "Project-Id-Version: bn_IN\n" +-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +-"product=mutter&keywords=I18N+L10N&component=general\n" ++"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=" ++"mutter&keywords=I18N+L10N&component=general\n" + "POT-Creation-Date: 2012-10-11 20:02+0000\n" +-"PO-Revision-Date: 2012-10-12 05:01+0530\n" +-"Last-Translator: Sayak Sarkar \n" ++"PO-Revision-Date: 2013-10-22 03:37-0400\n" ++"Last-Translator: sray \n" + "Language-Team: Bengali (India) \n" +-"Language: bn_IN\n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" +-"X-Generator: Lokalize 1.4\n" ++"Language: bn-IN\n" + "Plural-Forms: nplurals=2; plural=(n != 1);\n" + "\n" + "\n" ++"X-Generator: Zanata 3.1.2\n" ++ ++#: ../src/50-mutter-navigation.xml.in.h:1 ++msgid "Navigation" ++msgstr "ন্যাভিগেশন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:2 ++msgid "Move window to workspace 1" ++msgstr "উইন্ডো কর্মক্ষেত্র ১ এ সরান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:3 ++msgid "Move window to workspace 2" ++msgstr "উইন্ডো কর্মক্ষেত্র ২ এ সরান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:4 ++msgid "Move window to workspace 3" ++msgstr "উইন্ডো কর্মক্ষেত্র ৩ এ সরান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:5 ++msgid "Move window to workspace 4" ++msgstr "উইন্ডো কর্মক্ষেত্র ৪ এ সরান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:6 ++msgid "Move window one workspace to the left" ++msgstr "উইন্ডো বাম দিকে এক কর্মক্ষেত্র সরান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:7 ++msgid "Move window one workspace to the right" ++msgstr "উইন্ডো ডান দিকে এক কর্মক্ষেত্র সরান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:8 ++msgid "Move window one workspace up" ++msgstr "উইন্ডো এক কর্মক্ষেত্র উপরে সরান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:9 ++msgid "Move window one workspace down" ++msgstr "উইন্ডো এক কর্মক্ষেত্র নীচে সরান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:10 ++msgid "Switch applications" ++msgstr "অ্যাপ্লিকেশনগুলি স্যুইচ করুন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:11 ++msgid "Switch windows" ++msgstr "উইন্ডোগুলি স্যুইচ করুন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:12 ++msgid "Switch windows of an application" ++msgstr "কোনো অ্যাপ্লিকেশনের উইন্ডোগুলি স্যুইচ করুন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:13 ++msgid "Switch system controls" ++msgstr "সিস্টেম কন্ট্রোলগুলি স্যুইচ করুন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:14 ++msgid "Switch windows directly" ++msgstr "উইন্ডোগুলি সরাসরি স্যুইচ করুন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:15 ++msgid "Switch windows of an app directly" ++msgstr "কোনো অ্যাপ্লিকেশনের উইন্ডোগুলি সরাসরি স্যুইচ করুন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:16 ++msgid "Switch system controls directly" ++msgstr "সিস্টেম কন্ট্রোলগুলি সরাসরি স্যুইচ করুন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:17 ++msgid "Hide all normal windows" ++msgstr "সমস্ত সাধারণ উইন্ডো লুকান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:18 ++msgid "Switch to workspace 1" ++msgstr "কর্মক্ষেত্র ১ এ স্যুইচ করুন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:19 ++msgid "Switch to workspace 2" ++msgstr "কর্মক্ষেত্র ২ এ স্যুইচ করুন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:20 ++msgid "Switch to workspace 3" ++msgstr "কর্মক্ষেত্র ৩ এ স্যুইচ করুন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:21 ++msgid "Switch to workspace 4" ++msgstr "কর্মক্ষেত্র ৪ এ স্যুইচ করুন" ++ ++#: ../src/50-mutter-navigation.xml.in.h:22 ++msgid "Move to workspace left" ++msgstr "বাম দিকের কর্মক্ষেত্রে সরান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:23 ++msgid "Move to workspace right" ++msgstr "ডান দিকের কর্মক্ষেত্রে সরান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:24 ++msgid "Move to workspace above" ++msgstr "উপরের দিকের কর্মক্ষেত্রে সরান" ++ ++#: ../src/50-mutter-navigation.xml.in.h:25 ++msgid "Move to workspace below" ++msgstr "নীচের দিকের কর্মক্ষেত্রে সরান" ++ ++#: ../src/50-mutter-system.xml.in.h:1 ++msgid "System" ++msgstr "সিস্টেম" ++ ++#: ../src/50-mutter-system.xml.in.h:2 ++msgid "Show the run command prompt" ++msgstr "চালনা কম্যান্ড প্রমপ্ট দেখান" ++ ++#: ../src/50-mutter-system.xml.in.h:3 ++msgid "Show the activities overview" ++msgstr "ক্রিয়াকলাপের পূর্বরূপ দেখান" + + #: ../src/50-mutter-windows.xml.in.h:1 + msgid "Windows" + msgstr "উইন্ডোগুলি" + + #: ../src/50-mutter-windows.xml.in.h:2 ++msgid "Activate the window menu" ++msgstr "উইন্ডো মেনু সক্রিয় করুন" ++ ++#: ../src/50-mutter-windows.xml.in.h:3 ++msgid "Toggle fullscreen mode" ++msgstr "সম্পূর্ণ পর্দা মোড টগল করুন" ++ ++#: ../src/50-mutter-windows.xml.in.h:4 ++msgid "Toggle maximization state" ++msgstr "বড় করার অবস্থা টগল করুন" ++ ++#: ../src/50-mutter-windows.xml.in.h:5 ++msgid "Maximize window" ++msgstr "উইন্ডো বড় করুন" ++ ++#: ../src/50-mutter-windows.xml.in.h:6 ++msgid "Restore window" ++msgstr "উইন্ডো পূর্বাবস্থা করুন" ++ ++#: ../src/50-mutter-windows.xml.in.h:7 ++msgid "Toggle shaded state" ++msgstr "ছায়াবৃত অবস্থা টগল করুন" ++ ++#: ../src/50-mutter-windows.xml.in.h:8 ++msgid "Close window" ++msgstr "উইন্ডো বন্ধ করুন" ++ ++#: ../src/50-mutter-windows.xml.in.h:9 ++msgid "Hide window" ++msgstr "উইন্ডো লুকান" ++ ++#: ../src/50-mutter-windows.xml.in.h:10 ++msgid "Move window" ++msgstr "উইন্ডো সরান" ++ ++#: ../src/50-mutter-windows.xml.in.h:11 ++msgid "Resize window" ++msgstr "উইন্ডোর মাপ পরিবর্তন করুন" ++ ++#: ../src/50-mutter-windows.xml.in.h:12 ++msgid "Toggle window on all workspaces or one" ++msgstr "সমস্ত কর্মক্ষেত্রে বা একটিতে উইন্ডো টগল করুন" ++ ++#: ../src/50-mutter-windows.xml.in.h:13 ++msgid "Raise window if covered, otherwise lower it" ++msgstr "ঢাকা থাকলে উইন্ডো ওঠান অথবা এটিকে নামান" ++ ++#: ../src/50-mutter-windows.xml.in.h:14 ++msgid "Raise window above other windows" ++msgstr "উইন্ডো অন্যান্য উইন্ডোর উপরে ওঠান" ++ ++#: ../src/50-mutter-windows.xml.in.h:15 ++msgid "Lower window below other windows" ++msgstr "উইন্ডো অন্যান্য উইন্ডোর নীচে নামান" ++ ++#: ../src/50-mutter-windows.xml.in.h:16 ++msgid "Maximize window vertically" ++msgstr "উইন্ডো উল্লম্বভাবে বড় করুন" ++ ++#: ../src/50-mutter-windows.xml.in.h:17 ++msgid "Maximize window horizontally" ++msgstr "উইন্ডো অনুভূমিক ভাবে বড় করুন" ++ ++#: ../src/50-mutter-windows.xml.in.h:18 + msgid "View split on left" + msgstr "বাম বিভক্ত দেখুন" + +-#: ../src/50-mutter-windows.xml.in.h:3 ++#: ../src/50-mutter-windows.xml.in.h:19 + msgid "View split on right" + msgstr "ডান বিভক্ত দেখুন" + + #. This probably means that a non-WM compositor like xcompmgr is running; + #. * we have no way to get it to exit +-#: ../src/compositor/compositor.c:492 ++#: ../src/compositor/compositor.c:568 + #, c-format + msgid "" +-"Another compositing manager is already running on screen %i on display \"%s" +-"\"." ++"Another compositing manager is already running on screen %i on display " ++"\"%s\"." + msgstr "" +-"অন্য কম্পোসিটিং পরিচালককে পর্দা %i-তে ইতিমধ্যেই চলমান প্রদর্শন করা হয়েছে \"%s\"।" ++"অন্য কম্পোসিটিং পরিচালককে পর্দা %i-তে ইতিমধ্যেই চলমান প্রদর্শন করা হয়েছে " ++"\"%s\"।" ++ ++#: ../src/compositor/meta-background.c:1076 ++msgid "background texture could not be created from file" ++msgstr "ফাইল থেকে ব্যাকগ্রাউন্ড পরিকাঠামো তৈরি করা যায়নি" + +-#: ../src/core/bell.c:320 ++#: ../src/core/bell.c:322 + msgid "Bell event" + msgstr "বেল ইভেন্ট" + +@@ -58,85 +240,91 @@ + msgid "Unknown window information request: %d" + msgstr "উইন্ডোর তথ্য সম্বন্ধে অজানা অনুরোধ: %d" + +-#: ../src/core/delete.c:113 ++#: ../src/core/delete.c:111 + #, c-format +-msgid "%s is not responding." +-msgstr "%s থেকে প্রতিক্রিয়া পাওয়া যাচ্ছে না।" ++msgid "“%s” is not responding." ++msgstr "“%s” সাড়া দিচ্ছে না।" + +-#: ../src/core/delete.c:117 ++#: ../src/core/delete.c:113 + msgid "Application is not responding." + msgstr "অ্যাপ্লিকেশনটির থেকে প্রতিক্রিয়া পাওয়া যাচ্ছে না।" + +-#: ../src/core/delete.c:122 ++#: ../src/core/delete.c:118 + msgid "" + "You may choose to wait a short while for it to continue or force the " + "application to quit entirely." + msgstr "" +-"এটি চালু হওয়ার জন্য আপনি একটি সংক্ষিপ্ত সময় অপেক্ষা করতে পারেন বাঅ্যাপ্লিকেশনটিকে " +-"সম্পূর্ণরূপে বন্ধ হতে বাধ্য করতে পারেন‌।" ++"এটি চালু হওয়ার জন্য আপনি একটি সংক্ষিপ্ত সময় অপেক্ষা করতে পারেন " ++"বাঅ্যাপ্লিকেশনটিকে সম্পূর্ণরূপে বন্ধ হতে বাধ্য করতে পারেন‌।" + +-#: ../src/core/delete.c:129 ++#: ../src/core/delete.c:125 + msgid "_Wait" + msgstr "অপেক্ষা করা হবে (_W)" + +-#: ../src/core/delete.c:129 ++#: ../src/core/delete.c:125 + msgid "_Force Quit" + msgstr "বলপূর্বক বন্ধ করুন (_F)" + +-#: ../src/core/display.c:396 ++#: ../src/core/display.c:421 + #, c-format + msgid "Missing %s extension required for compositing" + msgstr "কম্পোসিটিং-র জন্য আবশ্যক %s এক্সটেনশন অনুপস্থিত" + +-#: ../src/core/display.c:492 ++#: ../src/core/display.c:513 + #, c-format + msgid "Failed to open X Window System display '%s'\n" + msgstr "X উইন্ডো সিস্টেম প্রদর্শন খুলতে ব্যর্থ '%s'\n" + + # " উইন্ডো অবৃহদায়ত কর" +-#: ../src/core/keybindings.c:853 ++#: ../src/core/keybindings.c:1138 + #, c-format + msgid "" + "Some other program is already using the key %s with modifiers %x as a " + "binding\n" +-msgstr "একটি পৃথক প্রোগ্রাম দ্বারা বর্তমানে %s-কি, %x বাইন্ডিং সহ ব্যবহৃত হচ্ছে\n" ++msgstr "" ++"একটি পৃথক প্রোগ্রাম দ্বারা বর্তমানে %s-কি, %x বাইন্ডিং সহ ব্যবহৃত হচ্ছে\n" ++ ++#: ../src/core/keybindings.c:1335 ++#, c-format ++msgid "\"%s\" is not a valid accelerator\n" ++msgstr "\"%s\" একটি বৈধ অ্যাকসিলেটর নয়\n" + +-#: ../src/core/main.c:196 ++#: ../src/core/main.c:197 + msgid "Disable connection to session manager" + msgstr "সেশান পরিচালন ব্যবস্থার সাথে সংযোগ বিচ্ছিন্ন করা হবে" + +-#: ../src/core/main.c:202 ++#: ../src/core/main.c:203 + msgid "Replace the running window manager" + msgstr "চলমান উইন্ডো পরিচালন ব্যবস্থা প্রতিস্থাপন করুন" + +-#: ../src/core/main.c:208 ++#: ../src/core/main.c:209 + msgid "Specify session management ID" + msgstr "সেশান পরিচালনার ID উল্লেখ করুন" + +-#: ../src/core/main.c:213 ++#: ../src/core/main.c:214 + msgid "X Display to use" + msgstr "ব্যবহারের জন্য এক্স ডিসপ্লে" + +-#: ../src/core/main.c:219 ++#: ../src/core/main.c:220 + msgid "Initialize session from savefile" + msgstr "সংরক্ষণ ফাইল থেকে সেশন চালু করো" + +-#: ../src/core/main.c:225 ++#: ../src/core/main.c:226 + msgid "Make X calls synchronous" + msgstr "X-র কল সিঙ্ক্রোনাস করা হবে" + +-#: ../src/core/main.c:494 ++#: ../src/core/main.c:534 + #, c-format + msgid "Failed to scan themes directory: %s\n" + msgstr "থীম এর ডিরেক্টরি স্ক্যান করতে ব্যর্থ: %s\n" + +-#: ../src/core/main.c:510 ++#: ../src/core/main.c:550 + #, c-format + msgid "" + "Could not find a theme! Be sure %s exists and contains the usual themes.\n" + msgstr "" +-"কোনো থিম খুঁজে পাওয়া যায়নি! অনুগ্রহ করে পরীক্ষা করুন %s উপস্থিত আছে কি না ও এর মধ্যে " +-"সাধারণ থিমগুলি অন্তর্ভুক্ত কি না।\n" ++"কোনো থিম খুঁজে পাওয়া যায়নি! অনুগ্রহ করে পরীক্ষা করুন %s উপস্থিত আছে কি না ও " ++"এর মধ্যে সাধারণ থিমগুলি অন্তর্ভুক্ত কি না।\n" + + #: ../src/core/mutter.c:40 + #, c-format +@@ -149,9 +337,10 @@ + msgstr "" + "mutter %s\n" + "স্বত্বাধিকার (C) ২০০১-%d হ্যাভক পেনিংটন, Red Hat, Inc., ও অন্যান্যদের\n" +-"এটি একটি মুক্ত সফ্টওয়্যার; পুনব্যবহারের নিয়মাবলীর জন্য সোর্সের মধ্যে উপলব্ধ নথিপত্র " +-"দেখুন।\n" +-"এর কোনো ওয়ারেন্টি উপলব্ধ নেই; বাণিজ্যিক ও কোনো সুনির্দিষ্ট কর্ম সাধনের জন্যও নয়।\n" ++"এটি একটি মুক্ত সফ্টওয়্যার; পুনব্যবহারের নিয়মাবলীর জন্য সোর্সের মধ্যে উপলব্ধ " ++"নথিপত্র দেখুন।\n" ++"এর কোনো ওয়ারেন্টি উপলব্ধ নেই; বাণিজ্যিক ও কোনো সুনির্দিষ্ট কর্ম সাধনের জন্যও " ++"নয়।\n" + + #: ../src/core/mutter.c:54 + msgid "Print version" +@@ -161,75 +350,78 @@ + msgid "Mutter plugin to use" + msgstr "Mutter-এর ব্যবহারযোগ্য প্লাগইন" + +-#: ../src/core/prefs.c:1079 ++#: ../src/core/prefs.c:1210 + msgid "" + "Workarounds for broken applications disabled. Some applications may not " + "behave properly.\n" + msgstr "" +-"ক্ষতিগ্রস্ত অ্যাপ্লিকেশনের ত্রুটি অগ্রাহ্য করার প্রণালী নিষ্ক্রিয় করা হয়েছে। কয়েকটি " +-"অ্যাপ্লিকেশন সম্ভবত সঠিকরূপে চালানো সম্ভব হবে না।\n" ++"ক্ষতিগ্রস্ত অ্যাপ্লিকেশনের ত্রুটি অগ্রাহ্য করার প্রণালী নিষ্ক্রিয় করা হয়েছে। " ++"কয়েকটি অ্যাপ্লিকেশন সম্ভবত সঠিকরূপে চালানো সম্ভব হবে না।\n" + +-#: ../src/core/prefs.c:1154 ++#: ../src/core/prefs.c:1285 + #, c-format + msgid "Could not parse font description \"%s\" from GSettings key %s\n" + msgstr "\"%s\" ফন্টের বিবরণ GSettings-কি %s থেকে পার্স করতে ব্যর্থ\n" + +-#: ../src/core/prefs.c:1220 ++#: ../src/core/prefs.c:1351 + #, c-format + msgid "" + "\"%s\" found in configuration database is not a valid value for mouse button " + "modifier\n" + msgstr "" +-"কনফিগারেশন ডাটাবেসের মধ্যে উপস্থিত \"%s\" মাউস বাটন পরিবর্তকের জন্য বৈধ মান নয়\n" ++"কনফিগারেশন ডাটাবেসের মধ্যে উপস্থিত \"%s\" মাউস বাটন পরিবর্তকের জন্য বৈধ মান " ++"নয়\n" + +-#: ../src/core/prefs.c:1747 ++#: ../src/core/prefs.c:1928 + #, c-format + msgid "" + "\"%s\" found in configuration database is not a valid value for keybinding " + "\"%s\"\n" + msgstr "" +-"কনফিগারেশন ডাটাবেসের মধ্যে উপলব্ধ \"%s\", \"%s\" কি-বাইন্ডিং'র ক্ষেত্রে বৈধ মান " +-"নয়\n" ++"কনফিগারেশন ডাটাবেসের মধ্যে উপলব্ধ \"%s\", \"%s\" কি-বাইন্ডিং'র ক্ষেত্রে বৈধ " ++"মান নয়\n" + +-#: ../src/core/prefs.c:1844 ++#: ../src/core/prefs.c:2018 + #, c-format + msgid "Workspace %d" + msgstr "কর্মক্ষেত্র %d" + +-#: ../src/core/screen.c:652 ++#: ../src/core/screen.c:691 + #, c-format + msgid "Screen %d on display '%s' is invalid\n" + msgstr "পর্দা %d (ডিসপ্লে '%s') বৈধ নয়\n" + +-#: ../src/core/screen.c:668 ++#: ../src/core/screen.c:707 + #, c-format + msgid "" + "Screen %d on display \"%s\" already has a window manager; try using the --" + "replace option to replace the current window manager.\n" + msgstr "" +-"পর্দা %d'র (\"%s\" ডিসপ্লে) ক্ষেত্রে একটি উইন্ডো পরিচালনব্যবস্থা বর্তমানে উপস্তিত " +-"রয়েছে; বর্তমানে উইন্ডো পরিচালন ব্যবস্থা পরিবর্তন করতে --replace বিকল্প প্রয়োগ করুন।\n" ++"পর্দা %d'র (\"%s\" ডিসপ্লে) ক্ষেত্রে একটি উইন্ডো পরিচালনব্যবস্থা বর্তমানে " ++"উপস্তিত রয়েছে; বর্তমানে উইন্ডো পরিচালন ব্যবস্থা পরিবর্তন করতে --replace " ++"বিকল্প প্রয়োগ করুন।\n" + +-#: ../src/core/screen.c:695 ++#: ../src/core/screen.c:734 + #, c-format +-msgid "" +-"Could not acquire window manager selection on screen %d display \"%s\"\n" ++msgid "Could not acquire window manager selection on screen %d display \"%s\"\n" + msgstr "" +-"পর্দা %d (ডিসপ্লে \"%s\")'র মধ্যে উইন্ডো পরিচালন ব্যবস্থার নির্বাচিত অংশ গ্রহণ করতে " +-"ব্যর্থ\n" ++"পর্দা %d (ডিসপ্লে \"%s\")'র মধ্যে উইন্ডো পরিচালন ব্যবস্থার নির্বাচিত অংশ " ++"গ্রহণ করতে ব্যর্থ\n" + +-#: ../src/core/screen.c:750 ++#: ../src/core/screen.c:812 + #, c-format + msgid "Screen %d on display \"%s\" already has a window manager\n" + msgstr "" +-"পর্দা %d'র ( \"%s\" ডিসপ্লে) ক্ষেত্রে একটি উইন্ডো পরিচালন ব্যবস্থা উপস্থিত রয়েছে\n" ++"পর্দা %d'র ( \"%s\" ডিসপ্লে) ক্ষেত্রে একটি উইন্ডো পরিচালন ব্যবস্থা উপস্থিত " ++"রয়েছে\n" + +-#: ../src/core/screen.c:935 ++#: ../src/core/screen.c:998 + #, c-format + msgid "Could not release screen %d on display \"%s\"\n" + msgstr "পর্দা %d (ডিসপ্লে \"%s\") মুক্ত করতে ব্যর্থ\n" + +-#: ../src/core/session.c:843 ../src/core/session.c:850 ++#: ../src/core/session.c:843 ++#: ../src/core/session.c:850 + #, c-format + msgid "Could not create directory '%s': %s\n" + msgstr "ডিরেক্টরি '%s' নির্মাণ করতে ব্যর্থ: %s\n" +@@ -257,10 +449,13 @@ + #: ../src/core/session.c:1185 + #, c-format + msgid " attribute seen but we already have the session ID" +-msgstr " বৈশিষ্ট্য প্রদর্শিত কিন্তু সেশান ID বর্তমানে উপস্থিত রয়েছে" ++msgstr "" ++" বৈশিষ্ট্য প্রদর্শিত কিন্তু সেশান ID বর্তমানে উপস্থিত রয়েছে" + +-#: ../src/core/session.c:1198 ../src/core/session.c:1273 +-#: ../src/core/session.c:1305 ../src/core/session.c:1377 ++#: ../src/core/session.c:1198 ++#: ../src/core/session.c:1273 ++#: ../src/core/session.c:1305 ++#: ../src/core/session.c:1377 + #: ../src/core/session.c:1437 + #, c-format + msgid "Unknown attribute %s on <%s> element" +@@ -281,54 +476,55 @@ + "These windows do not support "save current setup" and will have to " + "be restarted manually next time you log in." + msgstr "" +-"এই উইন্ডোগুলির দ্বারা \"save current setup\" বৈশিষ্ট্য সমর্থিত হয় না এবং পরবর্তীবার " +-"লগ-ইন করা হলে ব্যবহারকারীর দ্বারা পুনরায় আরম্ভীত করা প্রয়োজন।" ++"এই উইন্ডোগুলির দ্বারা \"save current setup\" বৈশিষ্ট্য সমর্থিত হয় না এবং " ++"পরবর্তীবার লগ-ইন করা হলে ব্যবহারকারীর দ্বারা পুনরায় আরম্ভীত করা প্রয়োজন।" + +-#: ../src/core/util.c:80 ++#: ../src/core/util.c:84 + #, c-format + msgid "Failed to open debug log: %s\n" + msgstr "ডিবাগ লগ খুলতে ব্যর্থ: %s\n" + +-#: ../src/core/util.c:90 ++#: ../src/core/util.c:94 + #, c-format + msgid "Failed to fdopen() log file %s: %s\n" + msgstr "fdopen() লগ ফাইল %s খুলতে ব্যর্থ: %s\n" + +-#: ../src/core/util.c:96 ++#: ../src/core/util.c:100 + #, c-format + msgid "Opened log file %s\n" + msgstr "লগ ফাইল %s খোলা হয়েছে\n" + +-#: ../src/core/util.c:115 ../src/tools/mutter-message.c:149 ++#: ../src/core/util.c:119 ++#: ../src/tools/mutter-message.c:149 + #, c-format + msgid "Mutter was compiled without support for verbose mode\n" + msgstr "ভার্বোস মোডের সমর্থন অন্তর্ভুক্ত না করে Mutter কম্পাইল করা হয়েছে\n" + +-#: ../src/core/util.c:259 ++#: ../src/core/util.c:264 + msgid "Window manager: " + msgstr "উইন্ডো পরিচালন ব্যবস্থা: " + +-#: ../src/core/util.c:407 ++#: ../src/core/util.c:412 + msgid "Bug in window manager: " + msgstr "উইন্ডো পরিচালনব্যবস্থা সংক্রান্ত সমস্যা: " + +-#: ../src/core/util.c:438 ++#: ../src/core/util.c:443 + msgid "Window manager warning: " + msgstr "উইন্ডো পরিচালন ব্যবস্থা সংক্রান্ত সতর্কবার্তা: " + +-#: ../src/core/util.c:466 ++#: ../src/core/util.c:471 + msgid "Window manager error: " + msgstr "উইন্ডো পরিচালন ব্যবস্থা সংক্রান্ত ত্রুটি: " + + #. first time through +-#: ../src/core/window.c:7237 ++#: ../src/core/window.c:7643 + #, c-format + msgid "" + "Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER " + "window as specified in the ICCCM.\n" + msgstr "" +-"উইন্ডো %s দ্বারা ICCCM'এ নির্ধারিত WM_CLIENT_LEADER উইন্ডোর পরিবর্তে নিজের উপর " +-"SM_CLIENT_ID নির্ধারিত হয়েছে।\n" ++"উইন্ডো %s দ্বারা ICCCM'এ নির্ধারিত WM_CLIENT_LEADER উইন্ডোর পরিবর্তে নিজের " ++"উপর SM_CLIENT_ID নির্ধারিত হয়েছে।\n" + + #. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the + #. * authoritative source for that info. Some apps such as mplayer or +@@ -336,34 +532,35 @@ + #. * leads to e.g. us not fullscreening their windows. Apps that set + #. * MWM but not WM_NORMAL_HINTS are basically broken. We complain + #. * about these apps but make them work. +-#. +-#: ../src/core/window.c:7902 ++#: ../src/core/window.c:8367 + #, c-format + msgid "" + "Window %s sets an MWM hint indicating it isn't resizable, but sets min size " + "%d x %d and max size %d x %d; this doesn't make much sense.\n" + msgstr "" ++"উইন্ডো %s একটি MWM হিন্ট করে যা সূচিত করে যে এটির মাপ পরিবর্তন করা যায় না, " ++"তবে সর্বনিম্ন মাপ %d x %d এবং সর্বাধিক মাপ %d x %d সেট করে; যার খুব বেশি " ++"গুরুত্ব নেই।\n" + +-#: ../src/core/window-props.c:274 ++#: ../src/core/window-props.c:318 + #, c-format + msgid "Application set a bogus _NET_WM_PID %lu\n" + msgstr "অ্যাপ্লিকেশন দ্বারা ভুল _NET_WM_PID %lu নির্ধারিত হয়েছে\n" + +-#: ../src/core/window-props.c:393 ++#: ../src/core/window-props.c:434 + #, c-format + msgid "%s (on %s)" + msgstr "%s (%s'র উপর)" + +-#: ../src/core/window-props.c:1448 ++#: ../src/core/window-props.c:1517 + #, c-format + msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n" + msgstr "অবৈধ WM_TRANSIENT_FOR উইন্ডো 0x%lx, %s'র জন্য নির্ধারিত হয়েছে।\n" + +-#: ../src/core/window-props.c:1459 +-#, fuzzy, c-format +-#| msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n" ++#: ../src/core/window-props.c:1528 ++#, c-format + msgid "WM_TRANSIENT_FOR window 0x%lx for %s would create loop.\n" +-msgstr "অবৈধ WM_TRANSIENT_FOR উইন্ডো 0x%lx, %s'র জন্য নির্ধারিত হয়েছে।\n" ++msgstr "WM_TRANSIENT_FOR উইন্ডো 0x%lx %s এর জন্য লুপ তৈরি করবে।\n" + + #: ../src/core/xprops.c:155 + #, c-format +@@ -374,32 +571,37 @@ + "This is most likely an application bug, not a window manager bug.\n" + "The window has title=\"%s\" class=\"%s\" name=\"%s\"\n" + msgstr "" ++"উইন্ডো 0x%lx এর বিশিষ্টতা হল %s\n" ++"যার প্রত্যাশিত ধরন হল %s ফর্ম্যাট %d\n" ++"এবং বাস্তবিক ধরন হল %s ফর্ম্যাট %d n_items %d।\n" ++"খুব সম্ভবতঃ এটি একটি অ্যাপ্লিকেশন বাগ, এবং উইন্ডো ম্যানেজার বাগ নয়।\n" ++"উইন্ডোর টাইটেল=\"%s\" ক্লাস=\"%s\" নাম=\"%s\"\n" + + #: ../src/core/xprops.c:411 + #, c-format + msgid "Property %s on window 0x%lx contained invalid UTF-8\n" + msgstr "" +-"%s বৈশিষ্ট্যটি 0x%lx উইন্ডোর উপর উপস্থিত ও এর মধ্যে অবৈধ UTF-8 অক্ষর অন্তর্ভুক্ত " +-"রয়েছে\n" ++"%s বৈশিষ্ট্যটি 0x%lx উইন্ডোর উপর উপস্থিত ও এর মধ্যে অবৈধ UTF-8 অক্ষর " ++"অন্তর্ভুক্ত রয়েছে\n" + + # FIXME msgstr "%s বিশেষত্বটি জানালা 0x%lx -তে অন্যায্য UTF-8 আছে\n + #: ../src/core/xprops.c:494 + #, c-format + msgid "" +-"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n" ++"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the " ++"list\n" + msgstr "" +-"%s বৈশিষ্ট্যটি 0x%lx উইন্ডোর উপর উপস্থিত ও এর তালিকায় %d সংখ্যক বস্তুর মধ্যে অবৈধ " +-"UTF-8 অক্ষর অন্তর্ভুক্ত রয়েছে\n" ++"%s বৈশিষ্ট্যটি 0x%lx উইন্ডোর উপর উপস্থিত ও এর তালিকায় %d সংখ্যক বস্তুর মধ্যে " ++"অবৈধ UTF-8 অক্ষর অন্তর্ভুক্ত রয়েছে\n" + +-#: ../src/mutter.desktop.in.h:1 ../src/mutter-wm.desktop.in.h:1 ++#: ../src/mutter.desktop.in.h:1 ++#: ../src/mutter-wm.desktop.in.h:1 + msgid "Mutter" + msgstr "Mutter" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:1 +-#, fuzzy +-#| msgid "Modifier to use for modified window click actions" + msgid "Modifier to use for extended window management operations" +-msgstr "পরিবর্তিত উইন্ডো ক্লিক কর্মের ফলে ব্যবহারযোগ্য পরিবর্তক" ++msgstr "বর্ধিত উইন্ডো পরিচালনা কাজের জন্য ব্যবহার করার সংশোধক" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:2 + msgid "" +@@ -408,10 +610,13 @@ + "\"Windows key\" on PC hardware. It's expected that this binding either the " + "default or set to the empty string." + msgstr "" ++"এই কী \"ওভারলে\" এর সূচনা করবে, যা হল এক সমন্বয় উইন্ডো পূর্বরূপ এবং " ++"অ্যাপ্লিকেশন লঞ্চিং সিস্টেম। অভিপ্রেত ডিফল্ট হল PC হার্ডওয়্যারে \"Windows " ++"কী\"। প্রত্যাশিত হল, এই বন্ধন হয় ডিফল্ট বা খালি স্ট্রীঙে সেট করা।" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:3 + msgid "Attach modal dialogs" +-msgstr "" ++msgstr "মোডেল ডায়ালগ সংযুক্ত করুন" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:4 + msgid "" +@@ -419,21 +624,28 @@ + "attached to the titlebar of the parent window and are moved together with " + "the parent window." + msgstr "" ++"সত্য হলে, স্বতন্ত্র টাইটেলবার থাকার পরিবর্তে, মোডেল ডায়ালগ পেরেন্ট উইন্ডোর " ++"টাইটেল বারে সংযুক্ত অবস্থায় অাসে এবং পেরেন্ট উইন্ডোর সাথে একসাথে অবস্থান " ++"পরিবর্তন করে।" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:5 + msgid "Enable edge tiling when dropping windows on screen edges" +-msgstr "" ++msgstr "উইন্ডো স্ক্রীন কিনারায় অানার সময়ে কিনারা টাইল পরিবৃত করা সক্ষম করুন" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:6 + msgid "" + "If enabled, dropping windows on vertical screen edges maximizes them " +-"vertically and resizes them horizontally to cover half of the available " +-"area. Dropping windows on the top screen edge maximizes them completely." ++"vertically and resizes them horizontally to cover half of the available area." ++" Dropping windows on the top screen edge maximizes them completely." + msgstr "" ++"সক্রিয় করা হলে, উইন্ডো উল্লম্ব স্ক্রীন কিনারায় রাখা হলে, তা উল্লম্ব ভাবে " ++"বর্ধিত হয় এবং উপলব্ধ অঞ্চলের অর্ধেক অাবৃত করতে তাদের মাপ অনুভূমিক ভাবে " ++"পরিবর্তন করে। উইন্ডো উপরের স্ক্রীন কিনারায় ছাড়া হলে তা তাদের সম্পূর্ণ ভাবে " ++"বড় করে।" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:7 + msgid "Workspaces are managed dynamically" +-msgstr "" ++msgstr "কর্মক্ষেত্রগুলি ডায়নামিক ভাবে ব্যবস্থাপনা করা হয়" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:8 + msgid "" +@@ -441,67 +653,79 @@ + "static number of workspaces (determined by the num-workspaces key in org." + "gnome.desktop.wm.preferences)." + msgstr "" ++"কর্মক্ষেত্রগুলি ডায়নামিক ভাবে পরিচালিত হয় নাকি কর্মক্ষেত্রের সংখ্যা স্থির তা " ++"নির্ধারণ করে (এখানে num-workspaces কী দ্বারা নির্ধারিত হয় org.gnome.desktop." ++"wm.preferences)।" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:9 + msgid "Workspaces only on primary" +-msgstr "" ++msgstr "কর্মক্ষেত্রগুলি শুধুমাত্র প্রাথমিকে" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:10 + msgid "" + "Determines whether workspace switching should happen for windows on all " + "monitors or only for windows on the primary monitor." + msgstr "" ++"কর্মক্ষেত্র একটি থেকে অন্যটিতে পাল্টানো সমস্ত মনিটরের উইন্ডোর জন্য নাকি " ++"শুধুমাত্র প্রাথমিক মনিটরের উইন্ডোর জন্য ঘটবে তা নির্ধারণ করে।" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:11 + msgid "No tab popup" +-msgstr "" ++msgstr "কোনো ট্যাব পপ-অাপ নেই" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:12 + msgid "" + "Determines whether the use of popup and highlight frame should be disabled " + "for window cycling." + msgstr "" ++"উইন্ডো অাবর্তনের ক্ষেত্রে পপ-অাপ এবং ফ্রেম হাইলাইট ব্যবহার করা হবে কিনা তা " ++"নির্ধারণ করে।" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:13 + msgid "Delay focus changes until the pointer stops moving" +-msgstr "" ++msgstr "ফোকাসে বিলম্ব পয়েন্টার অবস্থান পরিবর্তন করা পর্যন্ত পরিবর্তিত হয়" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:14 +-#, fuzzy +-#| msgid "" +-#| "If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then " +-#| "the focused window will be automatically raised after a delay specified " +-#| "by the auto_raise_delay key. This is not related to clicking on a window " +-#| "to raise it, nor to entering a window during drag-and-drop." + msgid "" + "If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then " + "the focus will not be changed immediately when entering a window, but only " + "after the pointer stops moving." + msgstr "" +-"মান true ধার্য করা হলে ও উজ্জ্বল করার মোড \"sloppy\" অথবা \"mouse\" হয়ে থাকলে " +-"auto_raise_delay কি দ্বারা চিহ্নিত মিলিসেকেন্ড পরে উজ্জ্বলিত উইন্ডোটি স্বয়ংক্রিয়রূপে " +-"বড় করা হবে। উইন্ডোর উপর ক্লিক করে উইন্ডো বড় করার বৈশিষ্ট্য অথবা ড্র্যাগ-ড্রপ কর্ম " +-"সঞ্চালনকালে উইন্ডোর মধ্যে প্রবেশের সাথে এর কোনো সম্পর্ক নেই।" ++"সত্য হিসাবে সেট করা হলে, এবং ফোকাস মোড \"sloppy\" বা \"mouse\" হলে একটি " ++"উইন্ডোতে প্রবেশ করার সময়ে ফোকাস সংগে সংগে পরিবর্তিত হবে না, তবে তা ঘটবে " ++"পয়েন্টার অবস্থান পরিবর্তন করা থামালে তবেই।" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:15 + msgid "Draggable border width" +-msgstr "" ++msgstr "টানা যায় এমন কিনারার প্রস্থ" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:16 + msgid "" + "The amount of total draggable borders. If the theme's visible borders are " + "not enough, invisible borders will be added to meet this value." + msgstr "" ++"টানা যায় এমন সর্বমোট কিনারার পরিমাণ। থিমের দৃশ্যমান কিনারা পর্যাপ্ত না হলে, " ++"এই মান পূরণ করতে অদৃশ্যমান কিনারা যোগ করা হবে।" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:17 +-#, fuzzy +-#| msgid "Remove Window From Top" +-msgid "Select window from tab popup" +-msgstr "উইন্ডো সর্বোচ্চ স্তর থেকে সরিয়ে ফেলা হবে" ++msgid "Auto maximize nearly monitor sized windows" ++msgstr "প্রায় মনিটরের মাপের উইন্ডো স্বয়ংক্রিয় ভাবে বড় করুন" + + #: ../src/org.gnome.mutter.gschema.xml.in.h:18 +-msgid "Cancel tab popup" ++msgid "" ++"If enabled, new windows that are initially the size of the monitor " ++"automatically get maximized." + msgstr "" ++"সক্রিয় করা হলে, প্রাথমিক ভাবে মনিটরের সমান মাপের নতুন উইন্ডোগুলি স্বয়ংক্রিয় " ++"ভাবে বড় হয়।" ++ ++#: ../src/org.gnome.mutter.gschema.xml.in.h:19 ++msgid "Select window from tab popup" ++msgstr "উইন্ডো ট্যাব পপ-অাপ থেকে নির্বাচন করুন" ++ ++#: ../src/org.gnome.mutter.gschema.xml.in.h:20 ++msgid "Cancel tab popup" ++msgstr "ট্যাব পপ-অাপ বাতিল করুন" + + #: ../src/tools/mutter-message.c:123 + #, c-format +@@ -550,7 +774,8 @@ + + #. separator + #. Translators: Translate this string the same way as you do in libwnck! +-#: ../src/ui/menu.c:86 ../src/ui/menu.c:88 ++#: ../src/ui/menu.c:86 ++#: ../src/ui/menu.c:88 + msgid "Always on _Top" + msgstr "সর্বদা উপরে (_T)" + +@@ -613,7 +838,6 @@ + #. * that use the shift key. If the text on this key isn't typically + #. * translated on keyboards used for your language, don't translate + #. * this. +-#. + #: ../src/ui/metaaccellabel.c:77 + msgid "Shift" + msgstr "Shift" +@@ -622,7 +846,6 @@ + #. * that use the control key. If the text on this key isn't typically + #. * translated on keyboards used for your language, don't translate + #. * this. +-#. + #: ../src/ui/metaaccellabel.c:83 + msgid "Ctrl" + msgstr "Ctrl" +@@ -631,7 +854,6 @@ + #. * that use the alt key. If the text on this key isn't typically + #. * translated on keyboards used for your language, don't translate + #. * this. +-#. + #: ../src/ui/metaaccellabel.c:89 + msgid "Alt" + msgstr "Alt" +@@ -640,7 +862,6 @@ + #. * that use the meta key. If the text on this key isn't typically + #. * translated on keyboards used for your language, don't translate + #. * this. +-#. + #: ../src/ui/metaaccellabel.c:95 + msgid "Meta" + msgstr "মিটা" +@@ -649,7 +870,6 @@ + #. * that use the super key. If the text on this key isn't typically + #. * translated on keyboards used for your language, don't translate + #. * this. +-#. + #: ../src/ui/metaaccellabel.c:101 + msgid "Super" + msgstr "Super" +@@ -658,7 +878,6 @@ + #. * that use the hyper key. If the text on this key isn't typically + #. * translated on keyboards used for your language, don't translate + #. * this. +-#. + #: ../src/ui/metaaccellabel.c:107 + msgid "Hyper" + msgstr "Hyper" +@@ -667,7 +886,6 @@ + #. * that use the mod2 key. If the text on this key isn't typically + #. * translated on keyboards used for your language, don't translate + #. * this. +-#. + #: ../src/ui/metaaccellabel.c:113 + msgid "Mod2" + msgstr "Mod2" +@@ -676,7 +894,6 @@ + #. * that use the mod3 key. If the text on this key isn't typically + #. * translated on keyboards used for your language, don't translate + #. * this. +-#. + #: ../src/ui/metaaccellabel.c:119 + msgid "Mod3" + msgstr "Mod3" +@@ -685,7 +902,6 @@ + #. * that use the mod4 key. If the text on this key isn't typically + #. * translated on keyboards used for your language, don't translate + #. * this. +-#. + #: ../src/ui/metaaccellabel.c:125 + msgid "Mod4" + msgstr "Mod4" +@@ -694,256 +910,279 @@ + #. * that use the mod5 key. If the text on this key isn't typically + #. * translated on keyboards used for your language, don't translate + #. * this. +-#. + #: ../src/ui/metaaccellabel.c:131 + msgid "Mod5" + msgstr "Mod5" + + #. Translators: This represents the size of a window. The first number is + #. * the width of the window and the second is the height. +-#. +-#: ../src/ui/resizepopup.c:113 ++#: ../src/ui/resizepopup.c:136 + #, c-format + msgid "%d x %d" + msgstr "%d x %d" + +-#: ../src/ui/theme.c:234 ++#: ../src/ui/theme.c:236 + msgid "top" + msgstr "উপরে" + +-#: ../src/ui/theme.c:236 ++#: ../src/ui/theme.c:238 + msgid "bottom" + msgstr "নীচে" + +-#: ../src/ui/theme.c:238 ++#: ../src/ui/theme.c:240 + msgid "left" + msgstr "বাঁদিকে" + +-#: ../src/ui/theme.c:240 ++#: ../src/ui/theme.c:242 + msgid "right" + msgstr "ডানদিকে" + +-#: ../src/ui/theme.c:268 ++#: ../src/ui/theme.c:270 + #, c-format + msgid "frame geometry does not specify \"%s\" dimension" + msgstr "ফ্রেম জ্যামিতি দ্বারা \"%s\" পরিমাপ নির্ধারিত হয়নি" + +-#: ../src/ui/theme.c:287 ++#: ../src/ui/theme.c:289 + #, c-format + msgid "frame geometry does not specify dimension \"%s\" for border \"%s\"" + msgstr "ফ্রেম জ্যামিতি দ্বারা \"%s\" পরিমাপ \"%s\" প্রান্তের জন্য নির্ধারিত হয়নি" + +-#: ../src/ui/theme.c:324 ++#: ../src/ui/theme.c:326 + #, c-format + msgid "Button aspect ratio %g is not reasonable" + msgstr "বাটনের অ্যাপেক্ট অনুপাত %g যথাযথ নয়" + +-#: ../src/ui/theme.c:336 ++#: ../src/ui/theme.c:338 + #, c-format + msgid "Frame geometry does not specify size of buttons" + msgstr "ফ্রেম জ্যামিতি দ্বারা বাটনের মাপ নির্ধারিত হয়নি" + +-#: ../src/ui/theme.c:1049 ++#: ../src/ui/theme.c:1051 + #, c-format + msgid "Gradients should have at least two colors" + msgstr "গ্রেডিয়েন্টের ক্ষেত্রে দুটি রং নির্ধারিত হওয়া আবশ্যক" + +-#: ../src/ui/theme.c:1201 ++#: ../src/ui/theme.c:1203 + #, c-format + msgid "" + "GTK custom color specification must have color name and fallback in " + "parentheses, e.g. gtk:custom(foo,bar); could not parse \"%s\"" + msgstr "" ++"GTK কাস্টম রঙ বিশেষীকরণে অবশ্যই বন্ধনীর মধ্যে রঙের নাম এবং ফলব্যাকের উল্লেখ " ++"রাখতে হবে, উদাঃ gtk:custom(foo,bar); \"%s\" পার্জ করা যায়নি" + +-#: ../src/ui/theme.c:1217 ++#: ../src/ui/theme.c:1219 + #, c-format + msgid "" + "Invalid character '%c' in color_name parameter of gtk:custom, only A-Za-z0-9-" + "_ are valid" + msgstr "" ++"অবৈধ অক্ষর '%c' color_name প্যারামিটারে gtk:custom এর, শুধুমাত্র A-Za-z0-9-_ " ++"বৈধ" + +-#: ../src/ui/theme.c:1231 +-#, fuzzy, c-format +-#| msgid "" +-#| "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the " +-#| "format" ++#: ../src/ui/theme.c:1233 ++#, c-format + msgid "" + "Gtk:custom format is \"gtk:custom(color_name,fallback)\", \"%s\" does not " + "fit the format" + msgstr "" +-"ছায়ার বিন্যাস \"shade/base_color/factor\", \"%s\" বিন্যাসের সাথে সুসংগত নয়" ++"Gtk:কাস্টম ফর্ম্যাট হল \"gtk:custom(color_name,fallback)\", \"%s\" ফর্ম্যাটে " ++"মানানসই নয়" + +-#: ../src/ui/theme.c:1276 ++#: ../src/ui/theme.c:1278 + #, c-format + msgid "" + "GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] " + "where NORMAL is the state; could not parse \"%s\"" + msgstr "" ++"GTK রঙের বিশেষীকরণে অবশ্যই বন্ধনীর মধ্যে অবস্থার উল্লেখ করতে হবে, উদাঃ gtk:" ++"fg[NORMAL] যেখানে NORMAL হল অবস্থা; \"%s\" পার্জ করা যায়নি" + +-#: ../src/ui/theme.c:1290 ++#: ../src/ui/theme.c:1292 + #, c-format + msgid "" + "GTK color specification must have a close bracket after the state, e.g. gtk:" + "fg[NORMAL] where NORMAL is the state; could not parse \"%s\"" + msgstr "" ++"GTK রঙ বিশেষীকরণে অবশ্যই অবস্থার পরে একটি সমাপ্তি বন্ধনী থাকতে হবে, উদাঃ gtk:" ++"fg[NORMAL] যেখানে NORMAL হল অবস্থা; \"%s\" পার্জ করা যায়নি" + +-#: ../src/ui/theme.c:1301 ++#: ../src/ui/theme.c:1303 + #, c-format + msgid "Did not understand state \"%s\" in color specification" + msgstr "রং নির্ধারণের জন্য state \"%s\" বোধগম্য হয়নি" + +-#: ../src/ui/theme.c:1314 ++#: ../src/ui/theme.c:1316 + #, c-format + msgid "Did not understand color component \"%s\" in color specification" + msgstr "রং নির্ধারণের জন্য রং'র বিষয়বস্তু \"%s\" বোধগম্য হয়নি" + +-#: ../src/ui/theme.c:1343 ++#: ../src/ui/theme.c:1345 + #, c-format + msgid "" + "Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the " + "format" + msgstr "" +-"ব্লেন্ড বিন্যাস \"blend/bg_color/fg_color/alpha\", \"%s\" বিন্যাসের সাথে সুসংগত নয়" ++"ব্লেন্ড বিন্যাস \"blend/bg_color/fg_color/alpha\", \"%s\" বিন্যাসের সাথে " ++"সুসংগত নয়" + +-#: ../src/ui/theme.c:1354 ++#: ../src/ui/theme.c:1356 + #, c-format + msgid "Could not parse alpha value \"%s\" in blended color" + msgstr "ব্লেন্ড করা রং'এ আল্ফা মান \"%s\" পার্স করতে ব্যর্থ" + +-#: ../src/ui/theme.c:1364 ++#: ../src/ui/theme.c:1366 + #, c-format + msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0" + msgstr "ব্লেন্ড করা রং'এ আল্ফা মান \"%s\" 0.0 ও1.0 সীমারেখার মধ্যে নয়" + +-#: ../src/ui/theme.c:1411 ++#: ../src/ui/theme.c:1413 + #, c-format + msgid "" + "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format" + msgstr "" + "ছায়ার বিন্যাস \"shade/base_color/factor\", \"%s\" বিন্যাসের সাথে সুসংগত নয়" + +-#: ../src/ui/theme.c:1422 ++#: ../src/ui/theme.c:1424 + #, c-format + msgid "Could not parse shade factor \"%s\" in shaded color" + msgstr "ছায়াযুক্ত রং'র ক্ষেত্রে ছায়ার মাপ \"%s\" পার্স করতে ব্যর্থ" + +-#: ../src/ui/theme.c:1432 ++#: ../src/ui/theme.c:1434 + #, c-format + msgid "Shade factor \"%s\" in shaded color is negative" + msgstr "ছায়াযুক্ত রং'র ক্ষেত্রে ছায়ার মান \"%s\" শূণ্যের কম" + +-#: ../src/ui/theme.c:1461 ++#: ../src/ui/theme.c:1463 + #, c-format + msgid "Could not parse color \"%s\"" + msgstr "\"%s\" রং পার্স করতে ব্যর্থ" + +-#: ../src/ui/theme.c:1778 ++#: ../src/ui/theme.c:1780 + #, c-format + msgid "Coordinate expression contains character '%s' which is not allowed" +-msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে '%s' অক্ষর উপস্থিত এবং এর ব্যবহার অনুমোদিত নয়" ++msgstr "" ++"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে '%s' অক্ষর উপস্থিত এবং এর ব্যবহার অনুমোদিত নয়" + + # what is bengali for Coordinate expression ? অবস্থানের মান or অবস্থানের সমীকরণ? +-#: ../src/ui/theme.c:1805 ++#: ../src/ui/theme.c:1807 + #, c-format + msgid "" + "Coordinate expression contains floating point number '%s' which could not be " + "parsed" + msgstr "" +-"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে '%s' ফ্লোটিং পয়েন্ট সংখ্যা উপস্থিত যা পার্স করা সম্ভব " +-"হয়নি" ++"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে '%s' ফ্লোটিং পয়েন্ট সংখ্যা উপস্থিত যা পার্স " ++"করা সম্ভব হয়নি" + +-#: ../src/ui/theme.c:1819 ++#: ../src/ui/theme.c:1821 + #, c-format + msgid "Coordinate expression contains integer '%s' which could not be parsed" + msgstr "" +-"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে '%s' ইন্টিজার সংখ্যা উপস্থিত যা পার্স করা সম্ভব হয়নি" ++"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে '%s' ইন্টিজার সংখ্যা উপস্থিত যা পার্স করা " ++"সম্ভব হয়নি" + +-#: ../src/ui/theme.c:1940 ++#: ../src/ui/theme.c:1942 + #, c-format + msgid "" + "Coordinate expression contained unknown operator at the start of this text: " + "\"%s\"" + msgstr "" +-"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে টেক্সটের প্রারম্ভিক স্থানে অজানা অপারেটর: \"%s\"" ++"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে টেক্সটের প্রারম্ভিক স্থানে অজানা অপারেটর: " ++"\"%s\"" + +-#: ../src/ui/theme.c:1997 ++#: ../src/ui/theme.c:1999 + #, c-format + msgid "Coordinate expression was empty or not understood" + msgstr "কো-ওর্ডিনেট এক্সপ্রেশন ফাঁকা অথবা বোধগম্য নয়" + +-#: ../src/ui/theme.c:2110 ../src/ui/theme.c:2120 ../src/ui/theme.c:2154 ++#: ../src/ui/theme.c:2112 ++#: ../src/ui/theme.c:2122 ++#: ../src/ui/theme.c:2156 + #, c-format + msgid "Coordinate expression results in division by zero" +-msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের ফলাফলে শূণ্য দ্বারা ভাগ করার অবস্থা উৎপন্ন হয়" ++msgstr "" ++"কো-ওর্ডিনেট এক্সপ্রেশনের ফলাফলে শূণ্য দ্বারা ভাগ করার অবস্থা উৎপন্ন হয়" + +-#: ../src/ui/theme.c:2162 ++#: ../src/ui/theme.c:2164 + #, c-format + msgid "" + "Coordinate expression tries to use mod operator on a floating-point number" + msgstr "" +-"কো-ওর্ডিনেট এক্সপ্রেশন দ্বারা ফ্লোটিং পয়েন্ট সংখ্যার উপর mod অপারেটর ব্যবহারের প্রয়াস " +-"করা হয়েছে" ++"কো-ওর্ডিনেট এক্সপ্রেশন দ্বারা ফ্লোটিং পয়েন্ট সংখ্যার উপর mod অপারেটর " ++"ব্যবহারের প্রয়াস করা হয়েছে" + +-#: ../src/ui/theme.c:2218 ++#: ../src/ui/theme.c:2220 + #, c-format + msgid "" + "Coordinate expression has an operator \"%s\" where an operand was expected" + msgstr "" +-"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে \"%s\" অপারেটর উপস্থিত কিন্তু অপারেন্ড প্রত্যাশিত" ++"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে \"%s\" অপারেটর উপস্থিত কিন্তু অপারেন্ড " ++"প্রত্যাশিত" + +-#: ../src/ui/theme.c:2227 ++#: ../src/ui/theme.c:2229 + #, c-format + msgid "Coordinate expression had an operand where an operator was expected" +-msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে প্রত্যাশিত অপারেন্ডের পরিবর্তে অপারেটর উপস্থিত" ++msgstr "" ++"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে প্রত্যাশিত অপারেন্ডের পরিবর্তে অপারেটর " ++"উপস্থিত" + +-#: ../src/ui/theme.c:2235 ++#: ../src/ui/theme.c:2237 + #, c-format + msgid "Coordinate expression ended with an operator instead of an operand" +-msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের অন্তে প্রত্যাশিত অপারেন্ডের পরিবর্তে অপারেটর উপস্থিত" ++msgstr "" ++"কো-ওর্ডিনেট এক্সপ্রেশনের অন্তে প্রত্যাশিত অপারেন্ডের পরিবর্তে অপারেটর " ++"উপস্থিত" + +-#: ../src/ui/theme.c:2245 ++#: ../src/ui/theme.c:2247 + #, c-format + msgid "" + "Coordinate expression has operator \"%c\" following operator \"%c\" with no " + "operand in between" + msgstr "" +-"কো-ওর্ডিনেট এক্সপ্রেশনের ক্ষেত্রে \"%c\" অপারেটরের পরে \"%c\" অপারেটর উপস্থিত এবং " +-"দুটির মধ্যে কোনো অপারেন্ড উপস্থিত নেই" ++"কো-ওর্ডিনেট এক্সপ্রেশনের ক্ষেত্রে \"%c\" অপারেটরের পরে \"%c\" অপারেটর " ++"উপস্থিত এবং দুটির মধ্যে কোনো অপারেন্ড উপস্থিত নেই" + +-#: ../src/ui/theme.c:2396 ../src/ui/theme.c:2441 ++#: ../src/ui/theme.c:2398 ++#: ../src/ui/theme.c:2443 + #, c-format + msgid "Coordinate expression had unknown variable or constant \"%s\"" +-msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে অজানা ভেরিয়েবল অথবা কনস্ট্যান্ট \"%s\" উপস্থিত" ++msgstr "" ++"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে অজানা ভেরিয়েবল অথবা কনস্ট্যান্ট \"%s\" " ++"উপস্থিত" + +-#: ../src/ui/theme.c:2495 ++#: ../src/ui/theme.c:2497 + #, c-format + msgid "Coordinate expression parser overflowed its buffer." + msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের পার্সারের বাফারের সীমা অতিক্রান্ত হয়েছে।" + +-#: ../src/ui/theme.c:2524 ++#: ../src/ui/theme.c:2526 + #, c-format + msgid "Coordinate expression had a close parenthesis with no open parenthesis" + msgstr "" +-"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে শেষের বন্ধনী চিহ্ন উপস্থিত, প্রারম্ভিক চিহ্ন অনুপস্থিত" ++"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে শেষের বন্ধনী চিহ্ন উপস্থিত, প্রারম্ভিক চিহ্ন " ++"অনুপস্থিত" + +-#: ../src/ui/theme.c:2588 ++#: ../src/ui/theme.c:2590 + #, c-format +-msgid "Coordinate expression had an open parenthesis with no close parenthesis" ++msgid "" ++"Coordinate expression had an open parenthesis with no close parenthesis" + msgstr "" +-"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে প্রারম্ভিক বন্ধনী চিহ্ন উপস্থিত শেষের বন্ধনী চিহ্ন " +-"অনুপস্থিত" ++"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে প্রারম্ভিক বন্ধনী চিহ্ন উপস্থিত শেষের বন্ধনী " ++"চিহ্ন অনুপস্থিত" + +-#: ../src/ui/theme.c:2599 ++#: ../src/ui/theme.c:2601 + #, c-format + msgid "Coordinate expression doesn't seem to have any operators or operands" + msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে কোনো অপারেটর অথবা অপারেন্ড উপস্থিত নেই" + +-#: ../src/ui/theme.c:2812 ../src/ui/theme.c:2832 ../src/ui/theme.c:2852 ++#: ../src/ui/theme.c:2814 ++#: ../src/ui/theme.c:2834 ++#: ../src/ui/theme.c:2854 + #, c-format + msgid "Theme contained an expression that resulted in an error: %s\n" + msgstr "থিমের মধ্যে উপস্থিত এক্সপ্রেশনের ফলে সমস্যা উৎপন্ন হয়েছে: %s\n" + +-#: ../src/ui/theme.c:4498 ++#: ../src/ui/theme.c:4500 + #, c-format + msgid "" + "