Update to 3.17.5
This commit is contained in:
parent
191902336d
commit
8163acf093
1
.gitignore
vendored
1
.gitignore
vendored
@ -113,3 +113,4 @@ gtk+-2.90.5.tar.bz2
|
|||||||
/gtk+-3.17.1.tar.xz
|
/gtk+-3.17.1.tar.xz
|
||||||
/gtk+-3.17.3.tar.xz
|
/gtk+-3.17.3.tar.xz
|
||||||
/gtk+-3.17.4.tar.xz
|
/gtk+-3.17.4.tar.xz
|
||||||
|
/gtk+-3.17.5.tar.xz
|
||||||
|
@ -1,144 +0,0 @@
|
|||||||
From 6323010e2e5f1103a7e89248b28a0b75a8b7fd71 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Benjamin Otte <otte@redhat.com>
|
|
||||||
Date: Sun, 5 Jul 2015 22:45:34 +0200
|
|
||||||
Subject: [PATCH 158/193] csstypes: expand GtkCssChange enum
|
|
||||||
|
|
||||||
Instead of GTK_CSS_CHANGE_POSITION we now have 4 values:
|
|
||||||
GTK_CSS_CHANGE_FIRST_CHILD, GTK_CSS_CHANGE_LAST_CHILD,
|
|
||||||
GTK_CSS_CHANGE_NTH_CHILD and GTK_CSS_CHANGE_NTH_LAST_CHILD
|
|
||||||
|
|
||||||
Nobody is using them directly yet.
|
|
||||||
---
|
|
||||||
gtk/gtkcsstypes.c | 15 ++++++++--
|
|
||||||
gtk/gtkcsstypesprivate.h | 75 ++++++++++++++++++++++++++++++++----------------
|
|
||||||
2 files changed, 63 insertions(+), 27 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/gtk/gtkcsstypes.c b/gtk/gtkcsstypes.c
|
|
||||||
index 6ab3bc5..440f60a 100644
|
|
||||||
--- a/gtk/gtkcsstypes.c
|
|
||||||
+++ b/gtk/gtkcsstypes.c
|
|
||||||
@@ -54,7 +54,10 @@ _gtk_css_change_for_sibling (GtkCssChange match)
|
|
||||||
static const GtkCssChangeTranslation table[] = {
|
|
||||||
{ GTK_CSS_CHANGE_CLASS, GTK_CSS_CHANGE_SIBLING_CLASS },
|
|
||||||
{ GTK_CSS_CHANGE_NAME, GTK_CSS_CHANGE_SIBLING_NAME },
|
|
||||||
- { GTK_CSS_CHANGE_POSITION, GTK_CSS_CHANGE_SIBLING_POSITION },
|
|
||||||
+ { GTK_CSS_CHANGE_FIRST_CHILD, GTK_CSS_CHANGE_SIBLING_FIRST_CHILD },
|
|
||||||
+ { GTK_CSS_CHANGE_LAST_CHILD, GTK_CSS_CHANGE_SIBLING_LAST_CHILD },
|
|
||||||
+ { GTK_CSS_CHANGE_NTH_CHILD, GTK_CSS_CHANGE_SIBLING_NTH_CHILD },
|
|
||||||
+ { GTK_CSS_CHANGE_NTH_LAST_CHILD, GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD },
|
|
||||||
{ GTK_CSS_CHANGE_STATE, GTK_CSS_CHANGE_SIBLING_STATE },
|
|
||||||
{ GTK_CSS_CHANGE_SOURCE, 0 },
|
|
||||||
{ GTK_CSS_CHANGE_PARENT_STYLE, 0 }
|
|
||||||
@@ -69,11 +72,17 @@ _gtk_css_change_for_child (GtkCssChange match)
|
|
||||||
static const GtkCssChangeTranslation table[] = {
|
|
||||||
{ GTK_CSS_CHANGE_CLASS, GTK_CSS_CHANGE_PARENT_CLASS },
|
|
||||||
{ GTK_CSS_CHANGE_NAME, GTK_CSS_CHANGE_PARENT_NAME },
|
|
||||||
- { GTK_CSS_CHANGE_POSITION, GTK_CSS_CHANGE_PARENT_POSITION },
|
|
||||||
+ { GTK_CSS_CHANGE_FIRST_CHILD, GTK_CSS_CHANGE_PARENT_FIRST_CHILD },
|
|
||||||
+ { GTK_CSS_CHANGE_LAST_CHILD, GTK_CSS_CHANGE_PARENT_LAST_CHILD },
|
|
||||||
+ { GTK_CSS_CHANGE_NTH_CHILD, GTK_CSS_CHANGE_PARENT_NTH_CHILD },
|
|
||||||
+ { GTK_CSS_CHANGE_NTH_LAST_CHILD, GTK_CSS_CHANGE_PARENT_NTH_LAST_CHILD },
|
|
||||||
{ GTK_CSS_CHANGE_STATE, GTK_CSS_CHANGE_PARENT_STATE },
|
|
||||||
{ GTK_CSS_CHANGE_SIBLING_CLASS, GTK_CSS_CHANGE_PARENT_SIBLING_CLASS },
|
|
||||||
{ GTK_CSS_CHANGE_SIBLING_NAME, GTK_CSS_CHANGE_PARENT_SIBLING_NAME },
|
|
||||||
- { GTK_CSS_CHANGE_SIBLING_POSITION, GTK_CSS_CHANGE_PARENT_SIBLING_POSITION },
|
|
||||||
+ { GTK_CSS_CHANGE_SIBLING_FIRST_CHILD, GTK_CSS_CHANGE_PARENT_SIBLING_FIRST_CHILD },
|
|
||||||
+ { GTK_CSS_CHANGE_SIBLING_LAST_CHILD, GTK_CSS_CHANGE_PARENT_SIBLING_LAST_CHILD },
|
|
||||||
+ { GTK_CSS_CHANGE_SIBLING_NTH_CHILD, GTK_CSS_CHANGE_PARENT_SIBLING_NTH_CHILD },
|
|
||||||
+ { GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD, GTK_CSS_CHANGE_PARENT_SIBLING_NTH_LAST_CHILD },
|
|
||||||
{ GTK_CSS_CHANGE_SIBLING_STATE, GTK_CSS_CHANGE_PARENT_SIBLING_STATE },
|
|
||||||
{ GTK_CSS_CHANGE_SOURCE, 0 },
|
|
||||||
{ GTK_CSS_CHANGE_PARENT_STYLE, 0 }
|
|
||||||
diff --git a/gtk/gtkcsstypesprivate.h b/gtk/gtkcsstypesprivate.h
|
|
||||||
index 2f80491..5466269 100644
|
|
||||||
--- a/gtk/gtkcsstypesprivate.h
|
|
||||||
+++ b/gtk/gtkcsstypesprivate.h
|
|
||||||
@@ -30,34 +30,61 @@ typedef struct _GtkCssStyle GtkCssStyle;
|
|
||||||
typedef struct _GtkStyleProviderPrivate GtkStyleProviderPrivate; /* dummy typedef */
|
|
||||||
|
|
||||||
typedef enum { /*< skip >*/
|
|
||||||
- GTK_CSS_CHANGE_CLASS = (1 << 0),
|
|
||||||
- GTK_CSS_CHANGE_NAME = (1 << 1),
|
|
||||||
- GTK_CSS_CHANGE_ID = GTK_CSS_CHANGE_NAME,
|
|
||||||
- GTK_CSS_CHANGE_REGION = GTK_CSS_CHANGE_NAME,
|
|
||||||
- GTK_CSS_CHANGE_POSITION = (1 << 2),
|
|
||||||
- GTK_CSS_CHANGE_STATE = (1 << 3),
|
|
||||||
- GTK_CSS_CHANGE_SIBLING_CLASS = (1 << 4),
|
|
||||||
- GTK_CSS_CHANGE_SIBLING_NAME = (1 << 5),
|
|
||||||
- GTK_CSS_CHANGE_SIBLING_POSITION = (1 << 6),
|
|
||||||
- GTK_CSS_CHANGE_SIBLING_STATE = (1 << 7),
|
|
||||||
- GTK_CSS_CHANGE_PARENT_CLASS = (1 << 8),
|
|
||||||
- GTK_CSS_CHANGE_PARENT_NAME = (1 << 9),
|
|
||||||
- GTK_CSS_CHANGE_PARENT_REGION = GTK_CSS_CHANGE_PARENT_NAME,
|
|
||||||
- GTK_CSS_CHANGE_PARENT_POSITION = (1 << 10),
|
|
||||||
- GTK_CSS_CHANGE_PARENT_STATE = (1 << 11),
|
|
||||||
- GTK_CSS_CHANGE_PARENT_SIBLING_CLASS = (1 << 12),
|
|
||||||
- GTK_CSS_CHANGE_PARENT_SIBLING_NAME = (1 << 13),
|
|
||||||
- GTK_CSS_CHANGE_PARENT_SIBLING_POSITION = (1 << 14),
|
|
||||||
- GTK_CSS_CHANGE_PARENT_SIBLING_STATE = (1 << 15),
|
|
||||||
+ GTK_CSS_CHANGE_CLASS = (1 << 0),
|
|
||||||
+ GTK_CSS_CHANGE_NAME = (1 << 1),
|
|
||||||
+ GTK_CSS_CHANGE_ID = GTK_CSS_CHANGE_NAME,
|
|
||||||
+ GTK_CSS_CHANGE_REGION = GTK_CSS_CHANGE_NAME,
|
|
||||||
+ GTK_CSS_CHANGE_FIRST_CHILD = (1 << 2),
|
|
||||||
+ GTK_CSS_CHANGE_LAST_CHILD = (1 << 3),
|
|
||||||
+ GTK_CSS_CHANGE_NTH_CHILD = (1 << 4),
|
|
||||||
+ GTK_CSS_CHANGE_NTH_LAST_CHILD = (1 << 5),
|
|
||||||
+ GTK_CSS_CHANGE_STATE = (1 << 6),
|
|
||||||
+ GTK_CSS_CHANGE_SIBLING_CLASS = (1 << 7),
|
|
||||||
+ GTK_CSS_CHANGE_SIBLING_NAME = (1 << 8),
|
|
||||||
+ GTK_CSS_CHANGE_SIBLING_FIRST_CHILD = (1 << 9),
|
|
||||||
+ GTK_CSS_CHANGE_SIBLING_LAST_CHILD = (1 << 10),
|
|
||||||
+ GTK_CSS_CHANGE_SIBLING_NTH_CHILD = (1 << 11),
|
|
||||||
+ GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD = (1 << 12),
|
|
||||||
+ GTK_CSS_CHANGE_SIBLING_STATE = (1 << 13),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_CLASS = (1 << 14),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_NAME = (1 << 15),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_REGION = GTK_CSS_CHANGE_PARENT_NAME,
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_POSITION = (1 << 16),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_FIRST_CHILD = (1 << 17),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_LAST_CHILD = (1 << 18),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_NTH_CHILD = (1 << 19),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_NTH_LAST_CHILD = (1 << 20),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_STATE = (1 << 21),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_SIBLING_CLASS = (1 << 22),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_SIBLING_NAME = (1 << 23),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_SIBLING_FIRST_CHILD = (1 << 24),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_SIBLING_LAST_CHILD = (1 << 25),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_SIBLING_NTH_CHILD = (1 << 26),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_SIBLING_NTH_LAST_CHILD = (1 << 27),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_SIBLING_POSITION = (1 << 28),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_SIBLING_STATE = (1 << 29),
|
|
||||||
/* add more */
|
|
||||||
- GTK_CSS_CHANGE_SOURCE = (1 << 16),
|
|
||||||
- GTK_CSS_CHANGE_PARENT_STYLE = (1 << 17),
|
|
||||||
- GTK_CSS_CHANGE_TIMESTAMP = (1 << 18),
|
|
||||||
- GTK_CSS_CHANGE_ANIMATIONS = (1 << 19),
|
|
||||||
+ GTK_CSS_CHANGE_SOURCE = (1 << 30),
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_STYLE = (1 << 31),
|
|
||||||
+ GTK_CSS_CHANGE_TIMESTAMP = (1LL << 32),
|
|
||||||
+ GTK_CSS_CHANGE_ANIMATIONS = (1LL << 33),
|
|
||||||
|
|
||||||
- GTK_CSS_CHANGE_RESERVED_BIT = (1 << 31) /* Used internally in gtkcssselector.c */
|
|
||||||
+ GTK_CSS_CHANGE_RESERVED_BIT = (1LL << 62) /* Used internally in gtkcssselector.c */
|
|
||||||
} GtkCssChange;
|
|
||||||
|
|
||||||
+/* if this complains we need to use defines instead of an enum */
|
|
||||||
+G_STATIC_ASSERT(sizeof (GtkCssChange) >= 8);
|
|
||||||
+
|
|
||||||
+#define GTK_CSS_CHANGE_POSITION (GTK_CSS_CHANGE_FIRST_CHILD | GTK_CSS_CHANGE_LAST_CHILD | \
|
|
||||||
+ GTK_CSS_CHANGE_NTH_CHILD | GTK_CSS_CHANGE_NTH_LAST_CHILD)
|
|
||||||
+#define GTK_CSS_CHANGE_SIBLING_POSITION (GTK_CSS_CHANGE_SIBLING_FIRST_CHILD | GTK_CSS_CHANGE_SIBLING_LAST_CHILD | \
|
|
||||||
+ GTK_CSS_CHANGE_SIBLING_NTH_CHILD | GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD)
|
|
||||||
+#define GTK_CSS_CHANGE_PARENT_POSITION (GTK_CSS_CHANGE_PARENT_FIRST_CHILD | GTK_CSS_CHANGE_PARENT_LAST_CHILD | \
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_NTH_CHILD | GTK_CSS_CHANGE_PARENT_NTH_LAST_CHILD)
|
|
||||||
+#define GTK_CSS_CHANGE_PARENT_SIBLING_POSITION (GTK_CSS_CHANGE_PARENT_SIBLING_FIRST_CHILD | GTK_CSS_CHANGE_PARENT_SIBLING_LAST_CHILD | \
|
|
||||||
+ GTK_CSS_CHANGE_PARENT_SIBLING_NTH_CHILD | GTK_CSS_CHANGE_PARENT_SIBLING_NTH_LAST_CHILD)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
#define GTK_CSS_CHANGE_ANY ((1 << 19) - 1)
|
|
||||||
#define GTK_CSS_CHANGE_ANY_SELF (GTK_CSS_CHANGE_CLASS | GTK_CSS_CHANGE_NAME | GTK_CSS_CHANGE_POSITION | GTK_CSS_CHANGE_STATE)
|
|
||||||
#define GTK_CSS_CHANGE_ANY_SIBLING (GTK_CSS_CHANGE_SIBLING_CLASS | GTK_CSS_CHANGE_SIBLING_NAME | \
|
|
||||||
--
|
|
||||||
2.4.5
|
|
||||||
|
|
@ -1,50 +0,0 @@
|
|||||||
From 69e396ea0ab6e25ebeb87ee55ea11d3a5c376f44 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Benjamin Otte <otte@redhat.com>
|
|
||||||
Date: Mon, 6 Jul 2015 00:21:03 +0200
|
|
||||||
Subject: [PATCH 159/193] cssselector: Report finer granularity for position
|
|
||||||
changes
|
|
||||||
|
|
||||||
---
|
|
||||||
gtk/gtkcssselector.c | 26 +++++++++++++++++++++++++-
|
|
||||||
1 file changed, 25 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/gtk/gtkcssselector.c b/gtk/gtkcssselector.c
|
|
||||||
index eae014e..6ad744c 100644
|
|
||||||
--- a/gtk/gtkcssselector.c
|
|
||||||
+++ b/gtk/gtkcssselector.c
|
|
||||||
@@ -1036,7 +1036,31 @@ comp_pseudoclass_position (const GtkCssSelector *a,
|
|
||||||
return a->position.b - b->position.b;
|
|
||||||
}
|
|
||||||
|
|
||||||
-#define GTK_CSS_CHANGE_PSEUDOCLASS_POSITION GTK_CSS_CHANGE_POSITION
|
|
||||||
+static GtkCssChange
|
|
||||||
+change_pseudoclass_position (const GtkCssSelector *selector)
|
|
||||||
+{
|
|
||||||
+ switch (selector->position.type)
|
|
||||||
+ {
|
|
||||||
+ case POSITION_FORWARD:
|
|
||||||
+ if (selector->position.a == 0 && selector->position.b == 1)
|
|
||||||
+ return GTK_CSS_CHANGE_FIRST_CHILD;
|
|
||||||
+ else
|
|
||||||
+ return GTK_CSS_CHANGE_NTH_CHILD;
|
|
||||||
+ case POSITION_BACKWARD:
|
|
||||||
+ if (selector->position.a == 0 && selector->position.b == 1)
|
|
||||||
+ return GTK_CSS_CHANGE_LAST_CHILD;
|
|
||||||
+ else
|
|
||||||
+ return GTK_CSS_CHANGE_NTH_LAST_CHILD;
|
|
||||||
+ case POSITION_ONLY:
|
|
||||||
+ return GTK_CSS_CHANGE_FIRST_CHILD | GTK_CSS_CHANGE_LAST_CHILD;
|
|
||||||
+ default:
|
|
||||||
+ g_assert_not_reached ();
|
|
||||||
+ case POSITION_SORTED:
|
|
||||||
+ return 0;
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+#define GTK_CSS_CHANGE_PSEUDOCLASS_POSITION change_pseudoclass_position(selector)
|
|
||||||
DEFINE_SIMPLE_SELECTOR(pseudoclass_position, PSEUDOCLASS_POSITION, print_pseudoclass_position,
|
|
||||||
match_pseudoclass_position, hash_pseudoclass_position, comp_pseudoclass_position,
|
|
||||||
FALSE, TRUE, FALSE)
|
|
||||||
--
|
|
||||||
2.4.5
|
|
||||||
|
|
@ -1,36 +0,0 @@
|
|||||||
From df7113812bbccc4ad862e1c931c8ba2c94d91c4a Mon Sep 17 00:00:00 2001
|
|
||||||
From: Benjamin Otte <otte@redhat.com>
|
|
||||||
Date: Mon, 6 Jul 2015 03:58:56 +0200
|
|
||||||
Subject: [PATCH 160/193] csstypes: Change NTH_CHILD and NTH_LAST_CHILD change
|
|
||||||
propagation
|
|
||||||
|
|
||||||
For now assume that if those flags change for a node, they also changed
|
|
||||||
for all sibling nodes. This is not strictly true but simplifies
|
|
||||||
invalidation.
|
|
||||||
|
|
||||||
The reason it simplifies invalidation is that when removing or adding a
|
|
||||||
node, we can just invalidate the first node (for NTH_LAST_CHILD) and the
|
|
||||||
new node (for NTH_CHILD) and all the other nodes will be invalidated
|
|
||||||
automatically.
|
|
||||||
---
|
|
||||||
gtk/gtkcsstypes.c | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/gtk/gtkcsstypes.c b/gtk/gtkcsstypes.c
|
|
||||||
index 440f60a..2fa18df 100644
|
|
||||||
--- a/gtk/gtkcsstypes.c
|
|
||||||
+++ b/gtk/gtkcsstypes.c
|
|
||||||
@@ -56,8 +56,8 @@ _gtk_css_change_for_sibling (GtkCssChange match)
|
|
||||||
{ GTK_CSS_CHANGE_NAME, GTK_CSS_CHANGE_SIBLING_NAME },
|
|
||||||
{ GTK_CSS_CHANGE_FIRST_CHILD, GTK_CSS_CHANGE_SIBLING_FIRST_CHILD },
|
|
||||||
{ GTK_CSS_CHANGE_LAST_CHILD, GTK_CSS_CHANGE_SIBLING_LAST_CHILD },
|
|
||||||
- { GTK_CSS_CHANGE_NTH_CHILD, GTK_CSS_CHANGE_SIBLING_NTH_CHILD },
|
|
||||||
- { GTK_CSS_CHANGE_NTH_LAST_CHILD, GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD },
|
|
||||||
+ { GTK_CSS_CHANGE_NTH_CHILD, GTK_CSS_CHANGE_NTH_CHILD | GTK_CSS_CHANGE_SIBLING_NTH_CHILD },
|
|
||||||
+ { GTK_CSS_CHANGE_NTH_LAST_CHILD, GTK_CSS_CHANGE_NTH_LAST_CHILD | GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD },
|
|
||||||
{ GTK_CSS_CHANGE_STATE, GTK_CSS_CHANGE_SIBLING_STATE },
|
|
||||||
{ GTK_CSS_CHANGE_SOURCE, 0 },
|
|
||||||
{ GTK_CSS_CHANGE_PARENT_STYLE, 0 }
|
|
||||||
--
|
|
||||||
2.4.5
|
|
||||||
|
|
@ -1,74 +0,0 @@
|
|||||||
From 8d3737e4e376bc6dcd4d581cbd34aa2ae3396c59 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Benjamin Otte <otte@redhat.com>
|
|
||||||
Date: Mon, 6 Jul 2015 04:29:09 +0200
|
|
||||||
Subject: [PATCH 161/193] cssnode: Do finer-grained position invalidation
|
|
||||||
|
|
||||||
As a side effect, this should fix this bug:
|
|
||||||
|
|
||||||
https://bugzilla.gnome.org/show_bug.cgi?id=751910
|
|
||||||
---
|
|
||||||
gtk/gtkcssnode.c | 31 ++++++++++++++++++++++++++-----
|
|
||||||
1 file changed, 26 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/gtk/gtkcssnode.c b/gtk/gtkcssnode.c
|
|
||||||
index 50c3891..29301eb 100644
|
|
||||||
--- a/gtk/gtkcssnode.c
|
|
||||||
+++ b/gtk/gtkcssnode.c
|
|
||||||
@@ -643,15 +643,22 @@ gtk_css_node_reposition (GtkCssNode *node,
|
|
||||||
/* Take a reference here so the whole function has a reference */
|
|
||||||
g_object_ref (node);
|
|
||||||
|
|
||||||
- if (node->next_sibling)
|
|
||||||
+ if (node->visible)
|
|
||||||
{
|
|
||||||
- if (node->visible)
|
|
||||||
- gtk_css_node_invalidate (node->next_sibling, GTK_CSS_CHANGE_POSITION | GTK_CSS_CHANGE_ANY_SIBLING);
|
|
||||||
+ if (node->next_sibling)
|
|
||||||
+ gtk_css_node_invalidate (node->next_sibling,
|
|
||||||
+ GTK_CSS_CHANGE_ANY_SIBLING
|
|
||||||
+ | GTK_CSS_CHANGE_NTH_CHILD
|
|
||||||
+ | (node->previous_sibling ? 0 : GTK_CSS_CHANGE_FIRST_CHILD));
|
|
||||||
+ else if (node->previous_sibling)
|
|
||||||
+ gtk_css_node_invalidate (node->previous_sibling, GTK_CSS_CHANGE_LAST_CHILD);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (old_parent != NULL)
|
|
||||||
{
|
|
||||||
g_signal_emit (old_parent, cssnode_signals[NODE_REMOVED], 0, node, node->previous_sibling);
|
|
||||||
+ if (old_parent->first_child)
|
|
||||||
+ gtk_css_node_invalidate (old_parent->first_child, GTK_CSS_CHANGE_NTH_LAST_CHILD);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (old_parent != new_parent)
|
|
||||||
@@ -687,12 +694,26 @@ gtk_css_node_reposition (GtkCssNode *node,
|
|
||||||
if (new_parent)
|
|
||||||
{
|
|
||||||
g_signal_emit (new_parent, cssnode_signals[NODE_ADDED], 0, node, previous);
|
|
||||||
+ gtk_css_node_invalidate (new_parent->first_child, GTK_CSS_CHANGE_NTH_LAST_CHILD);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (node->next_sibling)
|
|
||||||
- gtk_css_node_invalidate_style (node->next_sibling);
|
|
||||||
+ {
|
|
||||||
+ if (node->previous_sibling == NULL)
|
|
||||||
+ gtk_css_node_invalidate (node->next_sibling, GTK_CSS_CHANGE_FIRST_CHILD);
|
|
||||||
+ else
|
|
||||||
+ gtk_css_node_invalidate_style (node->next_sibling);
|
|
||||||
+ }
|
|
||||||
+ else if (node->previous_sibling)
|
|
||||||
+ {
|
|
||||||
+ gtk_css_node_invalidate (node->previous_sibling, GTK_CSS_CHANGE_LAST_CHILD);
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- gtk_css_node_invalidate (node, GTK_CSS_CHANGE_ANY_PARENT | GTK_CSS_CHANGE_POSITION | GTK_CSS_CHANGE_ANY_SIBLING);
|
|
||||||
+ gtk_css_node_invalidate (node, GTK_CSS_CHANGE_ANY_PARENT
|
|
||||||
+ | GTK_CSS_CHANGE_ANY_SIBLING
|
|
||||||
+ | GTK_CSS_CHANGE_NTH_CHILD
|
|
||||||
+ | (node->previous_sibling ? 0 : GTK_CSS_CHANGE_FIRST_CHILD)
|
|
||||||
+ | (node->next_sibling ? 0 : GTK_CSS_CHANGE_LAST_CHILD));
|
|
||||||
|
|
||||||
g_object_unref (node);
|
|
||||||
}
|
|
||||||
--
|
|
||||||
2.4.5
|
|
||||||
|
|
@ -1,38 +0,0 @@
|
|||||||
From bdf0820c501437a2150d8ff0d5340246e713f73f Mon Sep 17 00:00:00 2001
|
|
||||||
From: Matthias Clasen <mclasen@redhat.com>
|
|
||||||
Date: Tue, 7 Jul 2015 20:39:45 -0400
|
|
||||||
Subject: [PATCH 186/193] Simplify Xft setting fallback
|
|
||||||
|
|
||||||
If we don't find Xft values in the X resource db, simply fall
|
|
||||||
back to the values that are hardcoded in /etc/X11/Xresources
|
|
||||||
anyway. Extra trickery with likely-made-up screen dimensions
|
|
||||||
is not going to yield better results, and only makes for a
|
|
||||||
deeper rabbit hole when debugging.
|
|
||||||
---
|
|
||||||
gdk/x11/gdkxftdefaults.c | 5 ++---
|
|
||||||
1 file changed, 2 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/gdk/x11/gdkxftdefaults.c b/gdk/x11/gdkxftdefaults.c
|
|
||||||
index 5f4a3f2..fa1cfde 100644
|
|
||||||
--- a/gdk/x11/gdkxftdefaults.c
|
|
||||||
+++ b/gdk/x11/gdkxftdefaults.c
|
|
||||||
@@ -168,14 +168,13 @@ init_xft_settings (GdkScreen *screen)
|
|
||||||
x11_screen->xft_hinting = b;
|
|
||||||
|
|
||||||
if (!get_integer_default (xdisplay, "hintstyle", &x11_screen->xft_hintstyle))
|
|
||||||
- x11_screen->xft_hintstyle = FC_HINT_FULL;
|
|
||||||
+ x11_screen->xft_hintstyle = FC_HINT_MEDIUM;
|
|
||||||
|
|
||||||
if (!get_integer_default (xdisplay, "rgba", &x11_screen->xft_rgba))
|
|
||||||
x11_screen->xft_rgba = FC_RGBA_UNKNOWN;
|
|
||||||
|
|
||||||
if (!get_double_default (xdisplay, "dpi", &dpi_double))
|
|
||||||
- dpi_double = (((double) DisplayHeight (xdisplay, x11_screen->screen_num) * 25.4) /
|
|
||||||
- (double) DisplayHeightMM (xdisplay, x11_screen->screen_num));
|
|
||||||
+ dpi_double = 96.0;
|
|
||||||
|
|
||||||
x11_screen->xft_dpi = (int)(0.5 + PANGO_SCALE * dpi_double);
|
|
||||||
}
|
|
||||||
--
|
|
||||||
2.4.5
|
|
||||||
|
|
20
gtk3.spec
20
gtk3.spec
@ -17,22 +17,14 @@
|
|||||||
|
|
||||||
Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X
|
Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X
|
||||||
Name: gtk3
|
Name: gtk3
|
||||||
Version: 3.17.4
|
Version: 3.17.5
|
||||||
Release: 2%{?dist}
|
Release: 1%{?dist}
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
Group: System Environment/Libraries
|
Group: System Environment/Libraries
|
||||||
URL: http://www.gtk.org
|
URL: http://www.gtk.org
|
||||||
#VCS: git:git://git.gnome.org/gtk+
|
#VCS: git:git://git.gnome.org/gtk+
|
||||||
|
|
||||||
Source: http://download.gnome.org/sources/gtk+/3.17/gtk+-%{version}.tar.xz
|
Source: http://download.gnome.org/sources/gtk+/3.17/gtk+-%{version}.tar.xz
|
||||||
# These are all post-3.17.4 upstream backports, can be dropped with 3.17.5
|
|
||||||
# First four fix https://bugzilla.gnome.org/show_bug.cgi?id=752247
|
|
||||||
# Last one helps with https://bugzilla.redhat.com/show_bug.cgi?id=1241724
|
|
||||||
Patch0: 0158-csstypes-expand-GtkCssChange-enum.patch
|
|
||||||
Patch1: 0159-cssselector-Report-finer-granularity-for-position-ch.patch
|
|
||||||
Patch2: 0160-csstypes-Change-NTH_CHILD-and-NTH_LAST_CHILD-change-.patch
|
|
||||||
Patch3: 0161-cssnode-Do-finer-grained-position-invalidation.patch
|
|
||||||
Patch4: 0186-Simplify-Xft-setting-fallback.patch
|
|
||||||
|
|
||||||
BuildRequires: gnome-common autoconf automake intltool gettext
|
BuildRequires: gnome-common autoconf automake intltool gettext
|
||||||
BuildRequires: pkgconfig(atk) >= %{atk_version}
|
BuildRequires: pkgconfig(atk) >= %{atk_version}
|
||||||
@ -171,11 +163,6 @@ the functionality of the installed %{name} package.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n gtk+-%{version}
|
%setup -q -n gtk+-%{version}
|
||||||
%patch0 -p1
|
|
||||||
%patch1 -p1
|
|
||||||
%patch2 -p1
|
|
||||||
%patch3 -p1
|
|
||||||
%patch4 -p1
|
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
@ -364,6 +351,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
|||||||
%{_datadir}/installed-tests
|
%{_datadir}/installed-tests
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Jul 21 2015 David King <amigadave@amigadave.com> - 3.17.5-1
|
||||||
|
- Update to 3.17.5
|
||||||
|
|
||||||
* Mon Jul 13 2015 Adam Williamson <awilliam@redhat.com> - 3.17.4-2
|
* Mon Jul 13 2015 Adam Williamson <awilliam@redhat.com> - 3.17.4-2
|
||||||
- backport upstream CSS changes to fix BGO #752247
|
- backport upstream CSS changes to fix BGO #752247
|
||||||
- backport upstream font default changes to help with RHBZ #1241724
|
- backport upstream font default changes to help with RHBZ #1241724
|
||||||
|
Loading…
Reference in New Issue
Block a user