Compare commits

..

1 Commits

Author SHA1 Message Date
Matthias Clasen b1cf09f112 x11: Update shadow width capability
When the window manager changes, we have to update this, otherwise
we might end up stuck with no shadows.

Fixes: #6558
2024-04-08 08:38:29 -04:00
21 changed files with 643 additions and 1242 deletions
+27 -17
View File
@@ -456,33 +456,43 @@ gtk_fishbowl_do_update (GtkFishbowl *fishbowl)
{
GtkFishbowlPrivate *priv = gtk_fishbowl_get_instance_private (fishbowl);
GdkFrameClock *frame_clock;
GdkFrameTimings *end;
gint64 end_counter;
double fps, expected_fps;
GdkFrameTimings *start, *end;
gint64 start_counter, end_counter;
gint64 n_frames, expected_frames;
gint64 start_timestamp, end_timestamp;
gint64 interval;
frame_clock = gtk_widget_get_frame_clock (GTK_WIDGET (fishbowl));
if (frame_clock == NULL)
return;
fps = gdk_frame_clock_get_fps (frame_clock);
if (fps <= 0.0)
start_counter = gdk_frame_clock_get_history_start (frame_clock);
end_counter = gdk_frame_clock_get_frame_counter (frame_clock);
start = gdk_frame_clock_get_timings (frame_clock, start_counter);
for (end = gdk_frame_clock_get_timings (frame_clock, end_counter);
end_counter > start_counter && end != NULL && !gdk_frame_timings_get_complete (end);
end = gdk_frame_clock_get_timings (frame_clock, end_counter))
end_counter--;
if (end_counter - start_counter < 4)
return;
priv->framerate = fps;
start_timestamp = gdk_frame_timings_get_presentation_time (start);
end_timestamp = gdk_frame_timings_get_presentation_time (end);
if (start_timestamp == 0 || end_timestamp == 0)
{
start_timestamp = gdk_frame_timings_get_frame_time (start);
end_timestamp = gdk_frame_timings_get_frame_time (end);
}
n_frames = end_counter - start_counter;
priv->framerate = ((double) n_frames) * G_USEC_PER_SEC / (end_timestamp - start_timestamp);
priv->framerate = ((int)(priv->framerate * 100))/100.0;
g_object_notify_by_pspec (G_OBJECT (fishbowl), props[PROP_FRAMERATE]);
if (!priv->benchmark)
return;
end_counter = gdk_frame_clock_get_frame_counter (frame_clock);
for (end = gdk_frame_clock_get_timings (frame_clock, end_counter);
end != NULL && !gdk_frame_timings_get_complete (end);
end = gdk_frame_clock_get_timings (frame_clock, end_counter))
end_counter--;
if (end == NULL)
return;
interval = gdk_frame_timings_get_refresh_interval (end);
if (interval == 0)
{
@@ -490,16 +500,16 @@ gtk_fishbowl_do_update (GtkFishbowl *fishbowl)
if (interval == 0)
return;
}
expected_fps = (double) G_USEC_PER_SEC / interval;
expected_frames = round ((double) (end_timestamp - start_timestamp) / interval);
if (fps > (expected_fps - 1))
if (n_frames >= expected_frames)
{
if (priv->last_benchmark_change > 0)
priv->last_benchmark_change *= 2;
else
priv->last_benchmark_change = 1;
}
else if (0.95 * fps < expected_fps)
else if (n_frames + 1 < expected_frames)
{
if (priv->last_benchmark_change < 0)
priv->last_benchmark_change--;
+1 -9
View File
@@ -114,7 +114,6 @@ gdk_subsurface_attach (GdkSubsurface *subsurface,
const graphene_rect_t *source,
const graphene_rect_t *dest,
GdkTextureTransform transform,
gboolean lightbox,
gboolean above,
GdkSubsurface *sibling)
{
@@ -157,7 +156,7 @@ gdk_subsurface_attach (GdkSubsurface *subsurface,
}
}
return GDK_SUBSURFACE_GET_CLASS (subsurface)->attach (subsurface, texture, source, dest, transform, lightbox, above, sibling);
return GDK_SUBSURFACE_GET_CLASS (subsurface)->attach (subsurface, texture, source, dest, transform, above, sibling);
}
void
@@ -214,10 +213,3 @@ gdk_subsurface_get_transform (GdkSubsurface *subsurface)
return GDK_SUBSURFACE_GET_CLASS (subsurface)->get_transform (subsurface);
}
gboolean
gdk_subsurface_get_lightbox (GdkSubsurface *subsurface)
{
g_return_val_if_fail (GDK_IS_SUBSURFACE (subsurface), FALSE);
return GDK_SUBSURFACE_GET_CLASS (subsurface)->get_lightbox (subsurface);
}
-4
View File
@@ -67,7 +67,6 @@ struct _GdkSubsurfaceClass
const graphene_rect_t *source,
const graphene_rect_t *dest,
GdkTextureTransform transform,
gboolean lightbox,
gboolean above,
GdkSubsurface *sibling);
void (* detach) (GdkSubsurface *subsurface);
@@ -78,7 +77,6 @@ struct _GdkSubsurfaceClass
graphene_rect_t *dest);
GdkTextureTransform
(* get_transform) (GdkSubsurface *subsurface);
gboolean (* get_lightbox) (GdkSubsurface *subsurface);
};
GType gdk_subsurface_get_type (void) G_GNUC_CONST;
@@ -90,7 +88,6 @@ gboolean gdk_subsurface_attach (GdkSubsurface *subsurfac
const graphene_rect_t *source,
const graphene_rect_t *dest,
GdkTextureTransform transform,
gboolean lightbox,
gboolean above,
GdkSubsurface *sibling);
void gdk_subsurface_detach (GdkSubsurface *subsurface);
@@ -102,7 +99,6 @@ void gdk_subsurface_get_dest (GdkSubsurface *subsurfac
gboolean gdk_subsurface_is_above_parent (GdkSubsurface *subsurface);
GdkTextureTransform
gdk_subsurface_get_transform (GdkSubsurface *subsurface);
gboolean gdk_subsurface_get_lightbox (GdkSubsurface *subsurface);
G_END_DECLS
@@ -25,7 +25,6 @@ struct _GdkWaylandSubsurface
cairo_rectangle_int_t dest;
graphene_rect_t source;
enum wl_output_transform transform;
gboolean lightbox;
struct wl_region *opaque_region;
-11
View File
@@ -168,7 +168,6 @@ gdk_wayland_subsurface_attach (GdkSubsurface *sub,
const graphene_rect_t *dest,
GdkTextureTransform transform,
gboolean above,
gboolean lightbox,
GdkSubsurface *sibling)
{
GdkWaylandSubsurface *self = GDK_WAYLAND_SUBSURFACE (sub);
@@ -203,7 +202,6 @@ gdk_wayland_subsurface_attach (GdkSubsurface *sub,
self->source.size.height = source->size.height;
self->transform = gdk_texture_transform_to_wl (transform);
self->lightbox = lightbox;
scale = gdk_fractional_scale_to_double (&parent->scale);
@@ -432,14 +430,6 @@ gdk_wayland_subsurface_get_transform (GdkSubsurface *sub)
return wl_output_transform_to_gdk (self->transform);
}
static gboolean
gdk_wayland_subsurface_get_lightbox (GdkSubsurface *sub)
{
GdkWaylandSubsurface *self = GDK_WAYLAND_SUBSURFACE (sub);
return self->lightbox;
}
static void
gdk_wayland_subsurface_class_init (GdkWaylandSubsurfaceClass *class)
{
@@ -454,7 +444,6 @@ gdk_wayland_subsurface_class_init (GdkWaylandSubsurfaceClass *class)
subsurface_class->get_source = gdk_wayland_subsurface_get_source;
subsurface_class->get_dest = gdk_wayland_subsurface_get_dest;
subsurface_class->get_transform = gdk_wayland_subsurface_get_transform;
subsurface_class->get_lightbox = gdk_wayland_subsurface_get_lightbox;
};
static void
+17 -7
View File
@@ -113,6 +113,8 @@ static void gdk_internal_connection_watch (Display *display,
gboolean opening,
XPointer *watch_data);
static void update_shadow_width (GdkDisplay *display);
typedef struct _GdkEventTypeX11 GdkEventTypeX11;
struct _GdkEventTypeX11
@@ -669,6 +671,7 @@ gdk_x11_display_translate_event (GdkEventTranslator *translator,
g_free (x11_screen->window_manager_name);
x11_screen->window_manager_name = g_strdup ("unknown");
update_shadow_width (display);
/* careful, reentrancy */
_gdk_x11_screen_window_manager_changed (x11_screen);
@@ -1429,9 +1432,6 @@ gdk_x11_display_open (const char *display_name)
int ignore;
int maj, min;
char *cm_name;
gboolean frame_extents;
gboolean rgba;
gboolean composited;
XInitThreads ();
@@ -1646,16 +1646,26 @@ gdk_x11_display_open (const char *display_name)
gdk_x11_get_xatom_by_name_for_display (display, cm_name)) != None);
g_free (cm_name);
update_shadow_width (display);
gdk_display_emit_opened (display);
return display;
}
static void
update_shadow_width (GdkDisplay *display)
{
gboolean frame_extents;
gboolean rgba;
gboolean composited;
frame_extents = gdk_x11_screen_supports_net_wm_hint (gdk_x11_display_get_screen (display),
g_intern_static_string ("_GTK_FRAME_EXTENTS"));
rgba = gdk_display_is_rgba (display);
composited = gdk_display_is_composited (display);
gdk_display_set_shadow_width (display, frame_extents && rgba && composited);
gdk_display_emit_opened (display);
return display;
}
/**
-2
View File
@@ -2077,8 +2077,6 @@ gsk_gpu_node_processor_add_texture_scale_node (GskGpuNodeProcessor *self,
/* now intersect with actual node bounds */
if (!gsk_rect_intersection (&clip_bounds, &node->bounds, &clip_bounds))
return;
clip_bounds.size.width = ceilf (clip_bounds.size.width);
clip_bounds.size.height = ceilf (clip_bounds.size.height);
offscreen = gsk_gpu_node_processor_create_offscreen (self->frame,
graphene_vec2_one (),
&clip_bounds,
+1 -3
View File
@@ -245,9 +245,7 @@ gsk_gpu_render_pass_end_op_vk_command (GskGpuOp *op,
vkCmdEndRenderPass (state->vk_command_buffer);
if ((gsk_gpu_image_get_flags (self->target) & GSK_GPU_IMAGE_CAN_MIPMAP) &&
(gsk_gpu_image_get_width (self->target) > 1 ||
gsk_gpu_image_get_height (self->target) > 1))
if (gsk_gpu_image_get_flags (self->target) & GSK_GPU_IMAGE_CAN_MIPMAP)
{
vkCmdPipelineBarrier (state->vk_command_buffer,
gsk_vulkan_image_get_vk_pipeline_stage (GSK_VULKAN_IMAGE (self->target)),
+1 -1
View File
@@ -71,7 +71,7 @@ static inline guint
gsk_vulkan_mipmap_levels (gsize width,
gsize height)
{
return g_bit_nth_msf (MAX (MAX (width, height) - 1, 1), -1) + 1;
return g_bit_nth_msf (MAX (width, height) - 1, -1) + 1;
}
G_END_DECLS
+11 -38
View File
@@ -82,59 +82,34 @@ find_texture_transform (GskTransform *transform)
static GdkTexture *
find_texture_to_attach (GskOffload *self,
const GskRenderNode *subsurface_node,
GdkSubsurface *subsurface,
const GskRenderNode *node,
graphene_rect_t *out_clip,
GdkTextureTransform *out_texture_transform,
gboolean *out_lightbox)
GdkTextureTransform *out_texture_transform)
{
GdkSubsurface *subsurface;
const GskRenderNode *node;
gboolean has_clip = FALSE;
graphene_rect_t clip;
GskTransform *transform = NULL;
GdkTexture *ret = NULL;
*out_texture_transform = GDK_TEXTURE_TRANSFORM_NORMAL;
*out_lightbox = FALSE;
subsurface = gsk_subsurface_node_get_subsurface (subsurface_node);
node = subsurface_node;
for (;;)
{
switch ((int) GSK_RENDER_NODE_TYPE (node))
{
case GSK_DEBUG_NODE:
case GSK_SUBSURFACE_NODE:
node = gsk_debug_node_get_child (node);
break;
case GSK_CONTAINER_NODE:
if (gsk_container_node_get_n_children (node) == 1)
if (gsk_container_node_get_n_children (node) != 1)
{
node = gsk_container_node_get_child (node, 0);
break;
GDK_DISPLAY_DEBUG (gdk_surface_get_display (self->surface), OFFLOAD,
"Can't offload subsurface %p: too much content, container with %d children",
subsurface, gsk_container_node_get_n_children (node));
goto out;
}
else if (gsk_container_node_get_n_children (node) == 2)
{
GskRenderNode *child;
child = gsk_container_node_get_child (node, 0);
if (GSK_RENDER_NODE_TYPE (child) == GSK_COLOR_NODE &&
gsk_rect_equal (&child->bounds, &subsurface_node->bounds) &&
gdk_rgba_equal (gsk_color_node_get_color (child), &(GdkRGBA) { 0, 0, 0, 1 }))
{
g_print ("found lightbox\n");
*out_lightbox = TRUE;
node = gsk_container_node_get_child (node, 1);
break;
}
}
GDK_DISPLAY_DEBUG (gdk_surface_get_display (self->surface), OFFLOAD,
"Can't offload subsurface %p: too much content, container with %d children",
subsurface, gsk_container_node_get_n_children (node));
goto out;
node = gsk_container_node_get_child (node, 0);
break;
case GSK_TRANSFORM_NODE:
{
@@ -640,7 +615,7 @@ complex_clip:
}
else
{
info->texture = find_texture_to_attach (self, node, &info->source, &info->transform, &info->lightbox);
info->texture = find_texture_to_attach (self, subsurface, gsk_subsurface_node_get_child (node), &info->source, &info->transform);
if (info->texture)
{
info->can_offload = TRUE;
@@ -716,7 +691,6 @@ gsk_offload_new (GdkSurface *surface,
&info->source,
&info->dest,
info->transform,
info->lightbox,
TRUE, NULL);
else
info->is_offloaded = gdk_subsurface_attach (info->subsurface,
@@ -724,7 +698,6 @@ gsk_offload_new (GdkSurface *surface,
&info->source,
&info->dest,
info->transform,
info->lightbox,
info->place_above != NULL,
info->place_above);
}
-1
View File
@@ -34,7 +34,6 @@ typedef struct
graphene_rect_t dest;
graphene_rect_t source;
GdkTextureTransform transform;
gboolean lightbox;
guint was_offloaded : 1;
guint can_offload : 1;
-7
View File
@@ -208,13 +208,6 @@ gtk_graphics_offload_snapshot (GtkWidget *widget,
if (self->subsurface)
gtk_snapshot_push_subsurface (snapshot, self->subsurface);
if (self->enabled == GTK_GRAPHICS_OFFLOAD_ENABLED_WITH_LIGHTBOX)
gtk_snapshot_append_color (snapshot,
&(GdkRGBA) { 0, 0, 0, 1 },
&GRAPHENE_RECT_INIT (0, 0,
gtk_widget_get_width (widget),
gtk_widget_get_height (widget)));
gtk_widget_snapshot_child (widget, self->child, snapshot);
if (self->subsurface)
-1
View File
@@ -57,7 +57,6 @@ typedef enum
{
GTK_GRAPHICS_OFFLOAD_ENABLED,
GTK_GRAPHICS_OFFLOAD_DISABLED,
GTK_GRAPHICS_OFFLOAD_ENABLED_WITH_LIGHTBOX,
} GtkGraphicsOffloadEnabled;
GDK_AVAILABLE_IN_4_14
+489 -989
View File
File diff suppressed because it is too large Load Diff
+91 -123
View File
@@ -22,8 +22,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gtk\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gtk/-/issues/\n"
"POT-Creation-Date: 2024-04-04 16:15+0000\n"
"PO-Revision-Date: 2024-04-06 17:31+0300\n"
"POT-Creation-Date: 2024-03-24 23:20+0000\n"
"PO-Revision-Date: 2024-03-25 17:15+0300\n"
"Last-Translator: Sabri Ünal <yakushabb@gmail.com>\n"
"Language-Team: Türkçe <takim@gnome.org.tr>\n"
"Language: tr\n"
@@ -73,46 +73,46 @@ msgstr "Vulkan desteği GDK_DEBUG yoluyla devre dışı bırakılmış"
msgid "GL support disabled via GDK_DEBUG"
msgstr "GL desteği, GDK_DEBUG yoluyla devre dışı bırakılmış"
#: gdk/gdkdisplay.c:1675
#: gdk/gdkdisplay.c:1674
msgid "No EGL configuration available"
msgstr "Kullanılabilir EGL yapılandırması yok"
#: gdk/gdkdisplay.c:1683
#: gdk/gdkdisplay.c:1682
msgid "Failed to get EGL configurations"
msgstr "EGL yapılandırmaları alınamadı"
#: gdk/gdkdisplay.c:1713
#: gdk/gdkdisplay.c:1712
msgid "No EGL configuration with required features found"
msgstr "Gerekli özellikleri olan EGL yapılandırması bulunamadı"
#: gdk/gdkdisplay.c:1720
#: gdk/gdkdisplay.c:1719
msgid "No perfect EGL configuration found"
msgstr "Kusursuz EGL yapılandırması bulunamadı"
#: gdk/gdkdisplay.c:1762
#: gdk/gdkdisplay.c:1761
#, c-format
msgid "EGL implementation is missing extension %s"
msgid_plural "EGL implementation is missing %2$d extensions: %1$s"
msgstr[0] "EGL uygulamasında %2$d eksik uzantı: %1$s"
# https://twitter.com/mserdark/status/932936929213079559
#: gdk/gdkdisplay.c:1811
#: gdk/gdkdisplay.c:1810
msgid "libEGL not available in this sandbox"
msgstr "libEGL bu kum havuzunda kullanılamıyor"
#: gdk/gdkdisplay.c:1812
#: gdk/gdkdisplay.c:1811
msgid "libEGL not available"
msgstr "libEGL kullanılamıyor"
#: gdk/gdkdisplay.c:1822
#: gdk/gdkdisplay.c:1821
msgid "Failed to create EGL display"
msgstr "EGL ekranı oluşturulamadı"
#: gdk/gdkdisplay.c:1831
#: gdk/gdkdisplay.c:1830
msgid "Could not initialize EGL display"
msgstr "EGL ekranı ilklendirilemedi"
#: gdk/gdkdisplay.c:1841
#: gdk/gdkdisplay.c:1840
#, c-format
msgid "EGL version %d.%d is too old. GTK requires %d.%d"
msgstr "EGL sürümü %d.%d çok eski. GTK, %d.%d gerektiriyor"
@@ -1083,7 +1083,7 @@ msgid "Pick a Font"
msgstr "Yazı Tipi Seç"
#: gtk/deprecated/gtkfontbutton.c:600 gtk/gtkfilechooserwidget.c:3815
#: gtk/gtkfontdialogbutton.c:126 gtk/inspector/visual.ui:285
#: gtk/gtkfontdialogbutton.c:126 gtk/inspector/visual.ui:169
msgid "Font"
msgstr "Yazı Tipi"
@@ -2338,7 +2338,7 @@ msgid "If you delete an item, it will be permanently lost."
msgstr "Eğer bir öge silerseniz kalıcı olarak kaybolur."
#: gtk/gtkfilechooserwidget.c:1188 gtk/gtkfilechooserwidget.c:1786
#: gtk/gtklabel.c:5723 gtk/gtktext.c:6194 gtk/gtktextview.c:9099
#: gtk/gtklabel.c:5712 gtk/gtktext.c:6194 gtk/gtktextview.c:9099
msgid "_Delete"
msgstr "_Sil"
@@ -2679,31 +2679,31 @@ msgstr "Kapat"
msgid "Close the infobar"
msgstr "Bilgi çubuğunu kapat"
#: gtk/gtklabel.c:5720 gtk/gtktext.c:6182 gtk/gtktextview.c:9087
#: gtk/gtklabel.c:5709 gtk/gtktext.c:6182 gtk/gtktextview.c:9087
msgid "Cu_t"
msgstr "Ke_s"
#: gtk/gtklabel.c:5721 gtk/gtktext.c:6186 gtk/gtktextview.c:9091
#: gtk/gtklabel.c:5710 gtk/gtktext.c:6186 gtk/gtktextview.c:9091
msgid "_Copy"
msgstr "_Kopyala"
#: gtk/gtklabel.c:5722 gtk/gtktext.c:6190 gtk/gtktextview.c:9095
#: gtk/gtklabel.c:5711 gtk/gtktext.c:6190 gtk/gtktextview.c:9095
msgid "_Paste"
msgstr "_Yapıştır"
#: gtk/gtklabel.c:5728 gtk/gtktext.c:6203 gtk/gtktextview.c:9120
#: gtk/gtklabel.c:5717 gtk/gtktext.c:6203 gtk/gtktextview.c:9120
msgid "Select _All"
msgstr "_Tümünü Seç"
#: gtk/gtklabel.c:5733
#: gtk/gtklabel.c:5722
msgid "_Open Link"
msgstr "Bağlantı _Aç"
#: gtk/gtklabel.c:5737
#: gtk/gtklabel.c:5726
msgid "Copy _Link Address"
msgstr "_Bağlantı Adresini Kopyala"
#: gtk/gtklabel.c:5781 gtk/gtktext.c:2723 gtk/gtktextview.c:9169
#: gtk/gtklabel.c:5770 gtk/gtktext.c:2723 gtk/gtktextview.c:9169
msgid "Context menu"
msgstr "Bağlamsal menü"
@@ -3392,7 +3392,7 @@ msgstr "Kağıt bitti"
#. Translators: this is a printer status.
#: gtk/print/gtkprintoperation-win32.c:640
#: modules/printbackends/gtkprintbackendcpdb.c:1533
#: modules/printbackends/gtkprintbackendcpdb.c:1528
#: modules/printbackends/gtkprintbackendcups.c:2639
msgid "Paused"
msgstr "Duraklatıldı"
@@ -3463,42 +3463,42 @@ msgstr "Yazıcı bilgileri alınıyor…"
#. * multiple pages on a sheet when printing
#.
#: gtk/print/gtkprintunixdialog.c:2753
#: modules/printbackends/gtkprintbackendcups.c:5677
#: modules/printbackends/gtkprintbackendcups.c:5672
msgid "Left to right, top to bottom"
msgstr "Soldan sağa, yukarıdan aşağıya"
#: gtk/print/gtkprintunixdialog.c:2753
#: modules/printbackends/gtkprintbackendcups.c:5677
#: modules/printbackends/gtkprintbackendcups.c:5672
msgid "Left to right, bottom to top"
msgstr "Soldan sağa, aşağıdan yukarıya"
#: gtk/print/gtkprintunixdialog.c:2754
#: modules/printbackends/gtkprintbackendcups.c:5678
#: modules/printbackends/gtkprintbackendcups.c:5673
msgid "Right to left, top to bottom"
msgstr "Sağdan sola, yukarıdan aşağıya"
#: gtk/print/gtkprintunixdialog.c:2754
#: modules/printbackends/gtkprintbackendcups.c:5678
#: modules/printbackends/gtkprintbackendcups.c:5673
msgid "Right to left, bottom to top"
msgstr "Sağdan sola, aşağıdan yukarıya"
#: gtk/print/gtkprintunixdialog.c:2755
#: modules/printbackends/gtkprintbackendcups.c:5679
#: modules/printbackends/gtkprintbackendcups.c:5674
msgid "Top to bottom, left to right"
msgstr "Yukarıdan aşağıya, soldan sağa"
#: gtk/print/gtkprintunixdialog.c:2755
#: modules/printbackends/gtkprintbackendcups.c:5679
#: modules/printbackends/gtkprintbackendcups.c:5674
msgid "Top to bottom, right to left"
msgstr "Yukarıdan aşağıya, sağdan sola"
#: gtk/print/gtkprintunixdialog.c:2756
#: modules/printbackends/gtkprintbackendcups.c:5680
#: modules/printbackends/gtkprintbackendcups.c:5675
msgid "Bottom to top, left to right"
msgstr "Aşağıdan yukarıya, soldan sağ"
#: gtk/print/gtkprintunixdialog.c:2756
#: modules/printbackends/gtkprintbackendcups.c:5680
#: modules/printbackends/gtkprintbackendcups.c:5675
msgid "Bottom to top, right to left"
msgstr "Aşağıdan yukarıya, sağdan sola"
@@ -4059,7 +4059,7 @@ msgstr "Çerçeve Sayısı"
msgid "Frame Rate"
msgstr "Çerçeve Oranı"
#: gtk/inspector/misc-info.ui:527 gtk/inspector/visual.ui:315
#: gtk/inspector/misc-info.ui:527
msgid "Scale"
msgstr "Ölçekle"
@@ -4321,7 +4321,7 @@ msgstr "Hiyerarşi"
msgid "Implements"
msgstr "Sağladıkları"
#: gtk/inspector/visual.c:765 gtk/inspector/visual.c:784
#: gtk/inspector/visual.c:672 gtk/inspector/visual.c:691
msgid "Theme is hardcoded by GTK_THEME"
msgstr "Tema GTK_THEME ile kodlanmış"
@@ -4345,67 +4345,39 @@ msgstr "İmleç Boyutu"
msgid "Icon Theme"
msgstr "Simge Teması"
#: gtk/inspector/visual.ui:169
#: gtk/inspector/visual.ui:199
msgid "Font Scale"
msgstr "Yazı Tipi Ölçeği"
#: gtk/inspector/visual.ui:244
msgid "Text Direction"
msgstr "Metin Yönü"
#: gtk/inspector/visual.ui:184
#: gtk/inspector/visual.ui:259
msgid "Left-to-Right"
msgstr "Soldan Sağa"
#: gtk/inspector/visual.ui:185
#: gtk/inspector/visual.ui:260
msgid "Right-to-Left"
msgstr "Sağdan Sola"
#: gtk/inspector/visual.ui:202
#: gtk/inspector/visual.ui:277
msgid "Animations"
msgstr "Canlandırmalar"
#: gtk/inspector/visual.ui:227
#: gtk/inspector/visual.ui:302
msgid "Slowdown"
msgstr "Yavaşlama"
#: gtk/inspector/visual.ui:362
msgid "Antialiasing"
msgstr "Kenar Yumuşatma"
#: gtk/inspector/visual.ui:387
msgid "Hinting"
msgstr "Düzeltme"
#: gtk/inspector/visual.ui:402
msgctxt "Font hinting style"
msgid "None"
msgstr "Yok"
#: gtk/inspector/visual.ui:403
msgctxt "Font hinting style"
msgid "Slight"
msgstr "Hafif"
#: gtk/inspector/visual.ui:404
msgctxt "Font hinting style"
msgid "Medium"
msgstr "Orta"
#: gtk/inspector/visual.ui:405
msgctxt "Font hinting style"
msgid "Full"
msgstr "Tam"
#: gtk/inspector/visual.ui:422
msgid "Metrics Hinting"
msgstr "Metrik Düzeltme"
#: gtk/inspector/visual.ui:457
#: gtk/inspector/visual.ui:356
msgid "Show Framerate"
msgstr "Kare Hızını Göster"
#: gtk/inspector/visual.ui:482
#: gtk/inspector/visual.ui:381
msgid "Show Graphic Updates"
msgstr "Grafik Güncellemeleri Göster"
#: gtk/inspector/visual.ui:502
#: gtk/inspector/visual.ui:401
msgid ""
"Tints all the places where the current renderer uses Cairo instead of the "
"GPU."
@@ -4413,47 +4385,47 @@ msgstr ""
"Geçerli gerçekleyicinin Ekran Kartı yerine Cairo kullandığı tüm yerleri "
"renklendirir."
#: gtk/inspector/visual.ui:508
#: gtk/inspector/visual.ui:407
msgid "Show Cairo Rendering"
msgstr "Cairo Gerçeklemeyi Göster"
#: gtk/inspector/visual.ui:533
#: gtk/inspector/visual.ui:432
msgid "Show Baselines"
msgstr "Grafik Güncellemelerini Göster"
#: gtk/inspector/visual.ui:561
#: gtk/inspector/visual.ui:460
msgid "Show Layout Borders"
msgstr "Yerleşim Sınırlarını Göster"
#: gtk/inspector/visual.ui:618
#: gtk/inspector/visual.ui:517
msgid "CSS Padding"
msgstr "CSS Dolgu"
#: gtk/inspector/visual.ui:628
#: gtk/inspector/visual.ui:527
msgid "CSS Border"
msgstr "CSS Kenarlığı"
#: gtk/inspector/visual.ui:638
#: gtk/inspector/visual.ui:537
msgid "CSS Margin"
msgstr "CSS Boşluğu"
#: gtk/inspector/visual.ui:648
#: gtk/inspector/visual.ui:547
msgid "Widget Margin"
msgstr "Parçacık Boşluğu"
#: gtk/inspector/visual.ui:683
#: gtk/inspector/visual.ui:582
msgid "Show Focus"
msgstr "Odağı Göster"
#: gtk/inspector/visual.ui:708
#: gtk/inspector/visual.ui:607
msgid "Show Accessibility warnings"
msgstr "Erişilebilirlik uyarılarını göster"
#: gtk/inspector/visual.ui:733
#: gtk/inspector/visual.ui:632
msgid "Show Graphics Offload"
msgstr "Grafik Boşaltmaları Göster"
#: gtk/inspector/visual.ui:765
#: gtk/inspector/visual.ui:664
msgid "Inspect Inspector"
msgstr "Denetleyiciyi İncele"
@@ -6579,35 +6551,34 @@ msgstr "Gelişmiş"
msgid "Some of the settings in the dialog conflict"
msgstr "Penceredeki kimi ayarlar çakışıyor"
#: modules/printbackends/gtkprintbackendcpdb.c:542
#: modules/printbackends/gtkprintbackendcups.c:5668
msgctxt "Print job priority"
#. Translators: These strings name the possible values of the
#. * job priority option in the print dialog
#.
#: modules/printbackends/gtkprintbackendcpdb.c:541
#: modules/printbackends/gtkprintbackendcups.c:5667
msgid "Urgent"
msgstr "Acil"
#: modules/printbackends/gtkprintbackendcpdb.c:543
#: modules/printbackends/gtkprintbackendcups.c:5669
msgctxt "Print job priority"
#: modules/printbackends/gtkprintbackendcpdb.c:541
#: modules/printbackends/gtkprintbackendcups.c:5667
msgid "High"
msgstr "Yüksek"
#: modules/printbackends/gtkprintbackendcpdb.c:544
#: modules/printbackends/gtkprintbackendcups.c:5670
msgctxt "Print job priority"
#: modules/printbackends/gtkprintbackendcpdb.c:541
#: modules/printbackends/gtkprintbackendcups.c:5667
msgid "Medium"
msgstr "Orta"
#: modules/printbackends/gtkprintbackendcpdb.c:545
#: modules/printbackends/gtkprintbackendcups.c:5671
msgctxt "Print job priority"
#: modules/printbackends/gtkprintbackendcpdb.c:541
#: modules/printbackends/gtkprintbackendcups.c:5667
msgid "Low"
msgstr "Düşük"
#. Translators, this is the label used for the option in the print
#. * dialog that controls the front cover page.
#.
#: modules/printbackends/gtkprintbackendcpdb.c:567
#: modules/printbackends/gtkprintbackendcups.c:5814
#: modules/printbackends/gtkprintbackendcpdb.c:562
#: modules/printbackends/gtkprintbackendcups.c:5809
msgctxt "printer option"
msgid "Before"
msgstr "Önce"
@@ -6615,33 +6586,33 @@ msgstr "Önce"
#. Translators, this is the label used for the option in the print
#. * dialog that controls the back cover page.
#.
#: modules/printbackends/gtkprintbackendcpdb.c:574
#: modules/printbackends/gtkprintbackendcups.c:5829
#: modules/printbackends/gtkprintbackendcpdb.c:569
#: modules/printbackends/gtkprintbackendcups.c:5824
msgctxt "printer option"
msgid "After"
msgstr "Sonra"
#: modules/printbackends/gtkprintbackendcpdb.c:597
#: modules/printbackends/gtkprintbackendcpdb.c:592
msgid "Print at"
msgstr "Yazdırılma"
#: modules/printbackends/gtkprintbackendcpdb.c:607
#: modules/printbackends/gtkprintbackendcpdb.c:602
msgid "Print at time"
msgstr "Yazdırılma zamanı"
#: modules/printbackends/gtkprintbackendcpdb.c:670
#: modules/printbackends/gtkprintbackendcpdb.c:665
msgctxt "print option"
msgid "Borderless"
msgstr "Kenarlıksız"
#. Translators: this is a printer status.
#: modules/printbackends/gtkprintbackendcpdb.c:1530
#: modules/printbackends/gtkprintbackendcpdb.c:1525
#: modules/printbackends/gtkprintbackendcups.c:2636
msgid "Paused; Rejecting Jobs"
msgstr "Duraklatıldı; İşler Reddediliyor"
#. Translators: this is a printer status.
#: modules/printbackends/gtkprintbackendcpdb.c:1536
#: modules/printbackends/gtkprintbackendcpdb.c:1531
#: modules/printbackends/gtkprintbackendcups.c:2642
msgid "Rejecting Jobs"
msgstr "İşler Reddediliyor"
@@ -7008,51 +6979,51 @@ msgstr "Yazıcı Öntanımlısı"
#. Translators, this string is used to label the job priority option
#. * in the print dialog
#.
#: modules/printbackends/gtkprintbackendcups.c:5702
#: modules/printbackends/gtkprintbackendcups.c:5697
msgid "Job Priority"
msgstr "İş Önceliği"
#. Translators, this string is used to label the billing info entry
#. * in the print dialog
#.
#: modules/printbackends/gtkprintbackendcups.c:5713
#: modules/printbackends/gtkprintbackendcups.c:5708
msgid "Billing Info"
msgstr "Fatura Bilgisi"
#. Translators, these strings are names for various 'standard' cover
#. * pages that the printing system may support.
#.
#: modules/printbackends/gtkprintbackendcups.c:5737
#: modules/printbackends/gtkprintbackendcups.c:5732
msgctxt "cover page"
msgid "None"
msgstr "Hiçbiri"
#: modules/printbackends/gtkprintbackendcups.c:5738
#: modules/printbackends/gtkprintbackendcups.c:5733
msgctxt "cover page"
msgid "Classified"
msgstr "Sınıflandırılmış"
#: modules/printbackends/gtkprintbackendcups.c:5739
#: modules/printbackends/gtkprintbackendcups.c:5734
msgctxt "cover page"
msgid "Confidential"
msgstr "Kişiye Özel"
#: modules/printbackends/gtkprintbackendcups.c:5740
#: modules/printbackends/gtkprintbackendcups.c:5735
msgctxt "cover page"
msgid "Secret"
msgstr "Gizli"
#: modules/printbackends/gtkprintbackendcups.c:5741
#: modules/printbackends/gtkprintbackendcups.c:5736
msgctxt "cover page"
msgid "Standard"
msgstr "Standart"
#: modules/printbackends/gtkprintbackendcups.c:5742
#: modules/printbackends/gtkprintbackendcups.c:5737
msgctxt "cover page"
msgid "Top Secret"
msgstr "Çok Gizli"
#: modules/printbackends/gtkprintbackendcups.c:5743
#: modules/printbackends/gtkprintbackendcups.c:5738
msgctxt "cover page"
msgid "Unclassified"
msgstr "Sınıflandırılmamış"
@@ -7060,7 +7031,7 @@ msgstr "Sınıflandırılmamış"
#. Translators, this string is used to label the pages-per-sheet option
#. * in the print dialog
#.
#: modules/printbackends/gtkprintbackendcups.c:5755
#: modules/printbackends/gtkprintbackendcups.c:5750
msgctxt "printer option"
msgid "Pages per Sheet"
msgstr "Yaprak Başına Sayfa"
@@ -7068,7 +7039,7 @@ msgstr "Yaprak Başına Sayfa"
#. Translators, this string is used to label the option in the print
#. * dialog that controls in what order multiple pages are arranged
#.
#: modules/printbackends/gtkprintbackendcups.c:5772
#: modules/printbackends/gtkprintbackendcups.c:5767
msgctxt "printer option"
msgid "Page Ordering"
msgstr "Sayfa Sıralaması"
@@ -7077,7 +7048,7 @@ msgstr "Sayfa Sıralaması"
#. * a print job is printed. Possible values are 'now', a specified time,
#. * or 'on hold'
#.
#: modules/printbackends/gtkprintbackendcups.c:5849
#: modules/printbackends/gtkprintbackendcups.c:5844
msgctxt "printer option"
msgid "Print at"
msgstr "Yazdırılma"
@@ -7085,7 +7056,7 @@ msgstr "Yazdırılma"
#. Translators: this is the name of the option that allows the user
#. * to specify a time when a print job will be printed.
#.
#: modules/printbackends/gtkprintbackendcups.c:5860
#: modules/printbackends/gtkprintbackendcups.c:5855
msgctxt "printer option"
msgid "Print at time"
msgstr "Yazdırılma zamanı"
@@ -7095,19 +7066,19 @@ msgstr "Yazdırılma zamanı"
#. * the width and height in points. E.g: "Custom
#. * 230.4x142.9"
#.
#: modules/printbackends/gtkprintbackendcups.c:5907
#: modules/printbackends/gtkprintbackendcups.c:5902
#, c-format
msgid "Custom %s×%s"
msgstr "Özel %s×%s"
#. TRANSLATORS: this is the ICC color profile to use for this job
#: modules/printbackends/gtkprintbackendcups.c:6018
#: modules/printbackends/gtkprintbackendcups.c:6013
msgctxt "printer option"
msgid "Printer Profile"
msgstr "Yazıcı Profili"
#. TRANSLATORS: this is when color profile information is unavailable
#: modules/printbackends/gtkprintbackendcups.c:6025
#: modules/printbackends/gtkprintbackendcups.c:6020
msgctxt "printer option value"
msgid "Unavailable"
msgstr "Erişilemez"
@@ -8098,9 +8069,6 @@ msgstr ""
"Eğer burada gerçekten bir simge önbelleği oluşturmak istiyorsanız, --ignore-"
"theme-indexʼi kullanın.\n"
#~ msgid "Font Scale"
#~ msgstr "Yazı Tipi Ölçeği"
#~ msgid "Backend does not support window scaling"
#~ msgstr "Art alanda çalışan uygulama pencere ölçeklemeyi desteklemiyor"
+5 -5
View File
@@ -42,9 +42,9 @@ test_subsurface_stacking (void)
texture = gdk_texture_new_from_resource ("/org/gtk/libgtk/icons/16x16/actions/media-eject.png");
gdk_subsurface_attach (sub0, texture, &TEXTURE_RECT (texture), &GRAPHENE_RECT_INIT (0, 0, 10, 10), GDK_TEXTURE_TRANSFORM_NORMAL, FALSE, TRUE, NULL);
gdk_subsurface_attach (sub1, texture, &TEXTURE_RECT (texture), &GRAPHENE_RECT_INIT (0, 0, 10, 10), GDK_TEXTURE_TRANSFORM_NORMAL, FALSE, TRUE, NULL);
gdk_subsurface_attach (sub2, texture, &TEXTURE_RECT (texture), &GRAPHENE_RECT_INIT (0, 0, 10, 10), GDK_TEXTURE_TRANSFORM_NORMAL, FALSE, TRUE, NULL);
gdk_subsurface_attach (sub0, texture, &TEXTURE_RECT (texture), &GRAPHENE_RECT_INIT (0, 0, 10, 10), GDK_TEXTURE_TRANSFORM_NORMAL, TRUE, NULL);
gdk_subsurface_attach (sub1, texture, &TEXTURE_RECT (texture), &GRAPHENE_RECT_INIT (0, 0, 10, 10), GDK_TEXTURE_TRANSFORM_NORMAL, TRUE, NULL);
gdk_subsurface_attach (sub2, texture, &TEXTURE_RECT (texture), &GRAPHENE_RECT_INIT (0, 0, 10, 10), GDK_TEXTURE_TRANSFORM_NORMAL, TRUE, NULL);
g_assert_true (surface->subsurfaces_above == sub2);
g_assert_true (sub2->sibling_below == NULL);
@@ -67,7 +67,7 @@ test_subsurface_stacking (void)
g_assert_true (sub0->sibling_above == NULL);
g_assert_true (sub0->above_parent);
gdk_subsurface_attach (sub2, texture, &TEXTURE_RECT (texture), &GRAPHENE_RECT_INIT (0, 0, 10, 10), GDK_TEXTURE_TRANSFORM_NORMAL, FALSE, FALSE, NULL);
gdk_subsurface_attach (sub2, texture, &TEXTURE_RECT (texture), &GRAPHENE_RECT_INIT (0, 0, 10, 10), GDK_TEXTURE_TRANSFORM_NORMAL, FALSE, NULL);
g_assert_true (surface->subsurfaces_above == sub0);
g_assert_true (sub0->sibling_below == NULL);
@@ -79,7 +79,7 @@ test_subsurface_stacking (void)
g_assert_true (sub2->sibling_above == NULL);
g_assert_false (sub2->above_parent);
gdk_subsurface_attach (sub1, texture, &TEXTURE_RECT (texture), &GRAPHENE_RECT_INIT (0, 0, 10, 10), GDK_TEXTURE_TRANSFORM_NORMAL, FALSE, TRUE, sub2);
gdk_subsurface_attach (sub1, texture, &TEXTURE_RECT (texture), &GRAPHENE_RECT_INIT (0, 0, 10, 10), GDK_TEXTURE_TRANSFORM_NORMAL, TRUE, sub2);
g_assert_true (surface->subsurfaces_below == sub1);
g_assert_true (sub1->sibling_above == NULL);
@@ -1,7 +0,0 @@
texture-scale {
bounds: 0 0 10 10;
filter: trilinear;
texture: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQImWP4z8DwHwAFAAH/q842\
iQAAAABJRU5ErkJggg==\
");
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 B

@@ -1,14 +0,0 @@
color {
bounds: 0 0 3 2;
color: rgb(0,0,0);
}
transform {
transform: scale(2);
child: texture-scale {
bounds: 0 0 1.5 1;
filter: nearest;
texture: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVQImWNoYGAAAAGEAIGs40g+\
AAAAAElFTkSuQmCC\
");
}
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 B

-2
View File
@@ -104,7 +104,6 @@ compare_render_tests = [
'mask-modes-with-alpha',
'mask-texture-color-alpha',
'mipmap-generation-later',
'mipmap-with-1x1',
'nested-rounded-clips',
'offscreen-forced-downscale',
'offscreen-fractional-translate-nogl',
@@ -171,7 +170,6 @@ compare_render_tests = [
'texture-scale-filters-nocairo',
'texture-scale-magnify-10000x',
'texture-scale-magnify-rotate',
'texture-scale-nearest-noninteger-scaled-nogl',
'texture-scale-nearest-vs-linear',
'texture-scale-offset',
'texture-scale-stripes',