Updated progress bars rendering for Gtk 3.20
This commit is contained in:
parent
916aeaeee5
commit
e9049336df
@ -1,7 +1,7 @@
|
|||||||
diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/gtk3drawing.c
|
diff -up firefox-43.0.3/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0.3/widget/gtk/gtk3drawing.c
|
||||||
--- firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 2015-12-08 19:06:46.000000000 +0100
|
--- firefox-43.0.3/widget/gtk/gtk3drawing.c.gtk3-20 2015-12-23 23:11:14.000000000 +0100
|
||||||
+++ firefox-43.0/widget/gtk/gtk3drawing.c 2015-12-16 20:40:48.591930885 +0100
|
+++ firefox-43.0.3/widget/gtk/gtk3drawing.c 2016-01-13 16:40:37.940796568 +0100
|
||||||
@@ -17,15 +17,29 @@
|
@@ -17,15 +17,35 @@
|
||||||
|
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
@ -18,6 +18,12 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
+ GtkStyleContext* styleCheck;
|
+ GtkStyleContext* styleCheck;
|
||||||
+ GtkStyleContext* styleLabel;
|
+ GtkStyleContext* styleLabel;
|
||||||
+} GtkWidgetToogleBox;
|
+} GtkWidgetToogleBox;
|
||||||
|
+
|
||||||
|
+typedef struct {
|
||||||
|
+ GtkWidget* widget;
|
||||||
|
+ GtkStyleContext* styleProgress;
|
||||||
|
+ GtkStyleContext* styleTrough;
|
||||||
|
+} GtkWidgetProgressBar;
|
||||||
+
|
+
|
||||||
static GtkWidget* gProtoWindow;
|
static GtkWidget* gProtoWindow;
|
||||||
static GtkWidget* gProtoLayout;
|
static GtkWidget* gProtoLayout;
|
||||||
@ -35,7 +41,16 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
static GtkWidget* gSpinWidget;
|
static GtkWidget* gSpinWidget;
|
||||||
static GtkWidget* gHScaleWidget;
|
static GtkWidget* gHScaleWidget;
|
||||||
static GtkWidget* gVScaleWidget;
|
static GtkWidget* gVScaleWidget;
|
||||||
@@ -97,6 +111,33 @@ GetStateFlagsFromGtkWidgetState(GtkWidge
|
@@ -42,7 +62,7 @@ static GtkWidget* gHandleBoxWidget;
|
||||||
|
static GtkWidget* gToolbarWidget;
|
||||||
|
static GtkWidget* gFrameWidget;
|
||||||
|
static GtkWidget* gStatusbarWidget;
|
||||||
|
-static GtkWidget* gProgressWidget;
|
||||||
|
+static GtkWidgetProgressBar gProgressBar;
|
||||||
|
static GtkWidget* gTabWidget;
|
||||||
|
static GtkWidget* gTooltipWidget;
|
||||||
|
static GtkWidget* gMenuBarWidget;
|
||||||
|
@@ -97,6 +117,33 @@ GetStateFlagsFromGtkWidgetState(GtkWidge
|
||||||
return stateFlags;
|
return stateFlags;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -69,7 +84,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
/* Because we have such an unconventional way of drawing widgets, signal to the GTK theme engine
|
/* Because we have such an unconventional way of drawing widgets, signal to the GTK theme engine
|
||||||
that they are drawing for Mozilla instead of a conventional GTK app so they can do any specific
|
that they are drawing for Mozilla instead of a conventional GTK app so they can do any specific
|
||||||
things they may want to do. */
|
things they may want to do. */
|
||||||
@@ -195,9 +236,21 @@ ensure_button_arrow_widget()
|
@@ -195,9 +242,21 @@ ensure_button_arrow_widget()
|
||||||
static gint
|
static gint
|
||||||
ensure_checkbox_widget()
|
ensure_checkbox_widget()
|
||||||
{
|
{
|
||||||
@ -94,7 +109,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
}
|
}
|
||||||
return MOZ_GTK_SUCCESS;
|
return MOZ_GTK_SUCCESS;
|
||||||
}
|
}
|
||||||
@@ -205,9 +258,21 @@ ensure_checkbox_widget()
|
@@ -205,9 +264,21 @@ ensure_checkbox_widget()
|
||||||
static gint
|
static gint
|
||||||
ensure_radiobutton_widget()
|
ensure_radiobutton_widget()
|
||||||
{
|
{
|
||||||
@ -119,7 +134,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
}
|
}
|
||||||
return MOZ_GTK_SUCCESS;
|
return MOZ_GTK_SUCCESS;
|
||||||
}
|
}
|
||||||
@@ -215,13 +280,31 @@ ensure_radiobutton_widget()
|
@@ -215,13 +286,31 @@ ensure_radiobutton_widget()
|
||||||
static gint
|
static gint
|
||||||
ensure_scrollbar_widget()
|
ensure_scrollbar_widget()
|
||||||
{
|
{
|
||||||
@ -158,7 +173,29 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
}
|
}
|
||||||
return MOZ_GTK_SUCCESS;
|
return MOZ_GTK_SUCCESS;
|
||||||
}
|
}
|
||||||
@@ -757,7 +840,7 @@ moz_gtk_checkbox_get_metrics(gint* indic
|
@@ -528,9 +617,18 @@ ensure_tab_widget()
|
||||||
|
static gint
|
||||||
|
ensure_progress_widget()
|
||||||
|
{
|
||||||
|
- if (!gProgressWidget) {
|
||||||
|
- gProgressWidget = gtk_progress_bar_new();
|
||||||
|
- setup_widget_prototype(gProgressWidget);
|
||||||
|
+ if (!gProgressBar.widget) {
|
||||||
|
+ GtkCssNode path[] = {
|
||||||
|
+ { GTK_TYPE_LABEL, "progressbar", NULL, NULL },
|
||||||
|
+ { G_TYPE_NONE, "trough", NULL, NULL },
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ gProgressBar.widget = gtk_progress_bar_new();
|
||||||
|
+ setup_widget_prototype(gProgressBar.widget);
|
||||||
|
+
|
||||||
|
+ gProgressBar.styleProgress = moz_gtk_style_create(&path[0], NULL);
|
||||||
|
+ gProgressBar.styleTrough = moz_gtk_style_create(&path[1],
|
||||||
|
+ gProgressBar.styleProgress);
|
||||||
|
}
|
||||||
|
return MOZ_GTK_SUCCESS;
|
||||||
|
}
|
||||||
|
@@ -757,7 +855,7 @@ moz_gtk_checkbox_get_metrics(gint* indic
|
||||||
{
|
{
|
||||||
ensure_checkbox_widget();
|
ensure_checkbox_widget();
|
||||||
|
|
||||||
@ -167,7 +204,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
"indicator_size", indicator_size,
|
"indicator_size", indicator_size,
|
||||||
"indicator_spacing", indicator_spacing,
|
"indicator_spacing", indicator_spacing,
|
||||||
NULL);
|
NULL);
|
||||||
@@ -770,7 +853,7 @@ moz_gtk_radio_get_metrics(gint* indicato
|
@@ -770,7 +868,7 @@ moz_gtk_radio_get_metrics(gint* indicato
|
||||||
{
|
{
|
||||||
ensure_radiobutton_widget();
|
ensure_radiobutton_widget();
|
||||||
|
|
||||||
@ -176,7 +213,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
"indicator_size", indicator_size,
|
"indicator_size", indicator_size,
|
||||||
"indicator_spacing", indicator_spacing,
|
"indicator_spacing", indicator_spacing,
|
||||||
NULL);
|
NULL);
|
||||||
@@ -961,15 +1044,14 @@ moz_gtk_toggle_paint(cairo_t *cr, GdkRec
|
@@ -961,15 +1059,14 @@ moz_gtk_toggle_paint(cairo_t *cr, GdkRec
|
||||||
gint indicator_size, indicator_spacing;
|
gint indicator_size, indicator_spacing;
|
||||||
gint x, y, width, height;
|
gint x, y, width, height;
|
||||||
gint focus_x, focus_y, focus_width, focus_height;
|
gint focus_x, focus_y, focus_width, focus_height;
|
||||||
@ -195,7 +232,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
}
|
}
|
||||||
|
|
||||||
// XXX we should assert rect->height >= indicator_size too
|
// XXX we should assert rect->height >= indicator_size too
|
||||||
@@ -988,11 +1070,9 @@ moz_gtk_toggle_paint(cairo_t *cr, GdkRec
|
@@ -988,11 +1085,9 @@ moz_gtk_toggle_paint(cairo_t *cr, GdkRec
|
||||||
focus_width = width + 2 * indicator_spacing;
|
focus_width = width + 2 * indicator_spacing;
|
||||||
focus_height = height + 2 * indicator_spacing;
|
focus_height = height + 2 * indicator_spacing;
|
||||||
|
|
||||||
@ -210,7 +247,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
|
|
||||||
if (selected)
|
if (selected)
|
||||||
state_flags |= checkbox_check_state;
|
state_flags |= checkbox_check_state;
|
||||||
@@ -1000,13 +1080,12 @@ moz_gtk_toggle_paint(cairo_t *cr, GdkRec
|
@@ -1000,13 +1095,12 @@ moz_gtk_toggle_paint(cairo_t *cr, GdkRec
|
||||||
if (inconsistent)
|
if (inconsistent)
|
||||||
state_flags |= GTK_STATE_FLAG_INCONSISTENT;
|
state_flags |= GTK_STATE_FLAG_INCONSISTENT;
|
||||||
|
|
||||||
@ -227,7 +264,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
focus_width, focus_height);
|
focus_width, focus_height);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1015,15 +1094,14 @@ moz_gtk_toggle_paint(cairo_t *cr, GdkRec
|
@@ -1015,15 +1109,14 @@ moz_gtk_toggle_paint(cairo_t *cr, GdkRec
|
||||||
* 'indeterminate' type on checkboxes. In GTK, the shadow type
|
* 'indeterminate' type on checkboxes. In GTK, the shadow type
|
||||||
* must also be changed for the state to be drawn.
|
* must also be changed for the state to be drawn.
|
||||||
*/
|
*/
|
||||||
@ -247,7 +284,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
|
|
||||||
return MOZ_GTK_SUCCESS;
|
return MOZ_GTK_SUCCESS;
|
||||||
}
|
}
|
||||||
@@ -1109,9 +1187,9 @@ moz_gtk_scrollbar_button_paint(cairo_t *
|
@@ -1109,9 +1202,9 @@ moz_gtk_scrollbar_button_paint(cairo_t *
|
||||||
ensure_scrollbar_widget();
|
ensure_scrollbar_widget();
|
||||||
|
|
||||||
if (flags & MOZ_GTK_STEPPER_VERTICAL)
|
if (flags & MOZ_GTK_STEPPER_VERTICAL)
|
||||||
@ -259,7 +296,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
|
|
||||||
gtk_widget_set_direction(scrollbar, direction);
|
gtk_widget_set_direction(scrollbar, direction);
|
||||||
|
|
||||||
@@ -1177,26 +1255,22 @@ moz_gtk_scrollbar_trough_paint(GtkThemeW
|
@@ -1177,26 +1270,22 @@ moz_gtk_scrollbar_trough_paint(GtkThemeW
|
||||||
GtkTextDirection direction)
|
GtkTextDirection direction)
|
||||||
{
|
{
|
||||||
GtkStyleContext* style;
|
GtkStyleContext* style;
|
||||||
@ -294,7 +331,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
gtk_render_background(style, cr, rect->x, rect->y, rect->width, rect->height);
|
gtk_render_background(style, cr, rect->x, rect->y, rect->width, rect->height);
|
||||||
gtk_render_frame(style, cr, rect->x, rect->y, rect->width, rect->height);
|
gtk_render_frame(style, cr, rect->x, rect->y, rect->width, rect->height);
|
||||||
|
|
||||||
@@ -1204,7 +1278,6 @@ moz_gtk_scrollbar_trough_paint(GtkThemeW
|
@@ -1204,7 +1293,6 @@ moz_gtk_scrollbar_trough_paint(GtkThemeW
|
||||||
gtk_render_focus(style, cr,
|
gtk_render_focus(style, cr,
|
||||||
rect->x, rect->y, rect->width, rect->height);
|
rect->x, rect->y, rect->width, rect->height);
|
||||||
}
|
}
|
||||||
@ -302,7 +339,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
return MOZ_GTK_SUCCESS;
|
return MOZ_GTK_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1222,19 +1295,16 @@ moz_gtk_scrollbar_thumb_paint(GtkThemeWi
|
@@ -1222,19 +1310,16 @@ moz_gtk_scrollbar_thumb_paint(GtkThemeWi
|
||||||
|
|
||||||
ensure_scrollbar_widget();
|
ensure_scrollbar_widget();
|
||||||
|
|
||||||
@ -330,7 +367,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
gtk_style_context_get_margin (style, state_flags, &margin);
|
gtk_style_context_get_margin (style, state_flags, &margin);
|
||||||
|
|
||||||
gtk_render_slider(style, cr,
|
gtk_render_slider(style, cr,
|
||||||
@@ -1245,8 +1315,6 @@ moz_gtk_scrollbar_thumb_paint(GtkThemeWi
|
@@ -1245,8 +1330,6 @@ moz_gtk_scrollbar_thumb_paint(GtkThemeWi
|
||||||
(widget == MOZ_GTK_SCROLLBAR_THUMB_HORIZONTAL) ?
|
(widget == MOZ_GTK_SCROLLBAR_THUMB_HORIZONTAL) ?
|
||||||
GTK_ORIENTATION_HORIZONTAL : GTK_ORIENTATION_VERTICAL);
|
GTK_ORIENTATION_HORIZONTAL : GTK_ORIENTATION_VERTICAL);
|
||||||
|
|
||||||
@ -339,7 +376,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
return MOZ_GTK_SUCCESS;
|
return MOZ_GTK_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1801,29 +1869,27 @@ moz_gtk_container_paint(cairo_t *cr, Gdk
|
@@ -1801,29 +1884,27 @@ moz_gtk_container_paint(cairo_t *cr, Gdk
|
||||||
gboolean isradio, GtkTextDirection direction)
|
gboolean isradio, GtkTextDirection direction)
|
||||||
{
|
{
|
||||||
GtkStateFlags state_flags = GetStateFlagsFromGtkWidgetState(state);
|
GtkStateFlags state_flags = GetStateFlagsFromGtkWidgetState(state);
|
||||||
@ -377,7 +414,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
|
|
||||||
return MOZ_GTK_SUCCESS;
|
return MOZ_GTK_SUCCESS;
|
||||||
}
|
}
|
||||||
@@ -1833,32 +1899,25 @@ moz_gtk_toggle_label_paint(cairo_t *cr,
|
@@ -1833,32 +1914,25 @@ moz_gtk_toggle_label_paint(cairo_t *cr,
|
||||||
GtkWidgetState* state,
|
GtkWidgetState* state,
|
||||||
gboolean isradio, GtkTextDirection direction)
|
gboolean isradio, GtkTextDirection direction)
|
||||||
{
|
{
|
||||||
@ -395,15 +432,15 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
} else {
|
} else {
|
||||||
ensure_checkbox_widget();
|
ensure_checkbox_widget();
|
||||||
- widget = gCheckboxWidget;
|
- widget = gCheckboxWidget;
|
||||||
- }
|
+ widget = &gCheckbox;
|
||||||
|
}
|
||||||
- style = gtk_widget_get_style_context(widget);
|
- style = gtk_widget_get_style_context(widget);
|
||||||
- gtk_style_context_save(style);
|
- gtk_style_context_save(style);
|
||||||
- if (isradio) {
|
- if (isradio) {
|
||||||
- gtk_style_context_add_class(style, GTK_STYLE_CLASS_RADIO);
|
- gtk_style_context_add_class(style, GTK_STYLE_CLASS_RADIO);
|
||||||
- } else {
|
- } else {
|
||||||
- gtk_style_context_add_class(style, GTK_STYLE_CLASS_CHECK);
|
- gtk_style_context_add_class(style, GTK_STYLE_CLASS_CHECK);
|
||||||
+ widget = &gCheckbox;
|
- }
|
||||||
}
|
|
||||||
- gtk_widget_set_direction(widget, direction);
|
- gtk_widget_set_direction(widget, direction);
|
||||||
+ gtk_style_context_save(widget->styleLabel);
|
+ gtk_style_context_save(widget->styleLabel);
|
||||||
+ gtk_widget_set_direction(widget->widget, direction);
|
+ gtk_widget_set_direction(widget->widget, direction);
|
||||||
@ -418,20 +455,103 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
|
|
||||||
return MOZ_GTK_SUCCESS;
|
return MOZ_GTK_SUCCESS;
|
||||||
}
|
}
|
||||||
@@ -2841,10 +2900,10 @@ moz_gtk_get_widget_border(GtkThemeWidget
|
@@ -2006,18 +2080,13 @@ static gint
|
||||||
|
moz_gtk_progressbar_paint(cairo_t *cr, GdkRectangle* rect,
|
||||||
|
GtkTextDirection direction)
|
||||||
|
{
|
||||||
|
- GtkStyleContext* style;
|
||||||
|
-
|
||||||
|
ensure_progress_widget();
|
||||||
|
- gtk_widget_set_direction(gProgressWidget, direction);
|
||||||
|
+ gtk_widget_set_direction(gProgressBar.widget, direction);
|
||||||
|
|
||||||
|
- style = gtk_widget_get_style_context(gProgressWidget);
|
||||||
|
- gtk_style_context_save(style);
|
||||||
|
- gtk_style_context_add_class(style, GTK_STYLE_CLASS_TROUGH);
|
||||||
|
-
|
||||||
|
- gtk_render_background(style, cr, rect->x, rect->y, rect->width, rect->height);
|
||||||
|
- gtk_render_frame(style, cr, rect->x, rect->y, rect->width, rect->height);
|
||||||
|
- gtk_style_context_restore(style);
|
||||||
|
+ gtk_render_background(gProgressBar.styleProgress, cr,
|
||||||
|
+ rect->x, rect->y, rect->width, rect->height);
|
||||||
|
+ gtk_render_frame(gProgressBar.styleProgress, cr,
|
||||||
|
+ rect->x, rect->y, rect->width, rect->height);
|
||||||
|
|
||||||
|
return MOZ_GTK_SUCCESS;
|
||||||
|
}
|
||||||
|
@@ -2027,16 +2096,9 @@ moz_gtk_progress_chunk_paint(cairo_t *cr
|
||||||
|
GtkTextDirection direction,
|
||||||
|
GtkThemeWidgetType widget)
|
||||||
|
{
|
||||||
|
- GtkStyleContext* style;
|
||||||
|
-
|
||||||
|
ensure_progress_widget();
|
||||||
|
- gtk_widget_set_direction(gProgressWidget, direction);
|
||||||
|
-
|
||||||
|
- style = gtk_widget_get_style_context(gProgressWidget);
|
||||||
|
- gtk_style_context_save(style);
|
||||||
|
- gtk_style_context_remove_class(style, GTK_STYLE_CLASS_TROUGH);
|
||||||
|
- gtk_style_context_add_class(style, GTK_STYLE_CLASS_PROGRESSBAR);
|
||||||
|
-
|
||||||
|
+ gtk_widget_set_direction(gProgressBar.widget, direction);
|
||||||
|
+
|
||||||
|
if (widget == MOZ_GTK_PROGRESS_CHUNK_INDETERMINATE ||
|
||||||
|
widget == MOZ_GTK_PROGRESS_CHUNK_VERTICAL_INDETERMINATE) {
|
||||||
|
/**
|
||||||
|
@@ -2074,12 +2136,14 @@ moz_gtk_progress_chunk_paint(cairo_t *cr
|
||||||
|
// gtk_render_activity was used to render progress chunks on GTK versions
|
||||||
|
// before 3.13.7, see bug 1173907.
|
||||||
|
if (!gtk_check_version(3, 13, 7)) {
|
||||||
|
- gtk_render_background(style, cr, rect->x, rect->y, rect->width, rect->height);
|
||||||
|
- gtk_render_frame(style, cr, rect->x, rect->y, rect->width, rect->height);
|
||||||
|
+ gtk_render_background(gProgressBar.styleTrough, cr,
|
||||||
|
+ rect->x, rect->y, rect->width, rect->height);
|
||||||
|
+ gtk_render_frame(gProgressBar.styleTrough, cr,
|
||||||
|
+ rect->x, rect->y, rect->width, rect->height);
|
||||||
|
} else {
|
||||||
|
- gtk_render_activity(style, cr, rect->x, rect->y, rect->width, rect->height);
|
||||||
|
- }
|
||||||
|
- gtk_style_context_restore(style);
|
||||||
|
+ gtk_render_activity(gProgressBar.styleTrough, cr,
|
||||||
|
+ rect->x, rect->y, rect->width, rect->height);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
return MOZ_GTK_SUCCESS;
|
||||||
|
}
|
||||||
|
@@ -2815,9 +2879,12 @@ moz_gtk_get_widget_border(GtkThemeWidget
|
||||||
|
w = gTabWidget;
|
||||||
|
break;
|
||||||
|
case MOZ_GTK_PROGRESSBAR:
|
||||||
|
- ensure_progress_widget();
|
||||||
|
- w = gProgressWidget;
|
||||||
|
- break;
|
||||||
|
+ {
|
||||||
|
+ ensure_progress_widget();
|
||||||
|
+ moz_gtk_add_style_border(gProgressBar.styleProgress,
|
||||||
|
+ left, top, right, bottom);
|
||||||
|
+ return MOZ_GTK_SUCCESS;
|
||||||
|
+ }
|
||||||
|
case MOZ_GTK_SPINBUTTON_ENTRY:
|
||||||
|
case MOZ_GTK_SPINBUTTON_UP:
|
||||||
|
case MOZ_GTK_SPINBUTTON_DOWN:
|
||||||
|
@@ -2841,12 +2908,13 @@ moz_gtk_get_widget_border(GtkThemeWidget
|
||||||
{
|
{
|
||||||
if (widget == MOZ_GTK_CHECKBUTTON_CONTAINER) {
|
if (widget == MOZ_GTK_CHECKBUTTON_CONTAINER) {
|
||||||
ensure_checkbox_widget();
|
ensure_checkbox_widget();
|
||||||
- w = gCheckboxWidget;
|
- w = gCheckboxWidget;
|
||||||
+ w = gCheckbox.widget;
|
+ w = gCheckbox.widget;
|
||||||
|
+ style = gCheckbox.styleCheck;
|
||||||
} else {
|
} else {
|
||||||
ensure_radiobutton_widget();
|
ensure_radiobutton_widget();
|
||||||
- w = gRadiobuttonWidget;
|
- w = gRadiobuttonWidget;
|
||||||
+ w = gRadiobutton.widget;
|
+ w = gRadiobutton.widget;
|
||||||
|
+ style = gRadiobutton.styleCheck;
|
||||||
}
|
}
|
||||||
style = gtk_widget_get_style_context(w);
|
- style = gtk_widget_get_style_context(w);
|
||||||
|
|
||||||
@@ -3123,7 +3182,7 @@ moz_gtk_get_scrollbar_metrics(MozGtkScro
|
*left = *top = *right = *bottom = gtk_container_get_border_width(GTK_CONTAINER(w));
|
||||||
|
moz_gtk_add_style_border(style,
|
||||||
|
@@ -3123,7 +3191,7 @@ moz_gtk_get_scrollbar_metrics(MozGtkScro
|
||||||
{
|
{
|
||||||
ensure_scrollbar_widget();
|
ensure_scrollbar_widget();
|
||||||
|
|
||||||
@ -440,7 +560,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
"slider_width", &metrics->slider_width,
|
"slider_width", &metrics->slider_width,
|
||||||
"trough_border", &metrics->trough_border,
|
"trough_border", &metrics->trough_border,
|
||||||
"stepper_size", &metrics->stepper_size,
|
"stepper_size", &metrics->stepper_size,
|
||||||
@@ -3131,7 +3190,7 @@ moz_gtk_get_scrollbar_metrics(MozGtkScro
|
@@ -3131,7 +3199,7 @@ moz_gtk_get_scrollbar_metrics(MozGtkScro
|
||||||
NULL);
|
NULL);
|
||||||
|
|
||||||
metrics->min_slider_size =
|
metrics->min_slider_size =
|
||||||
@ -449,7 +569,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
|
|
||||||
return MOZ_GTK_SUCCESS;
|
return MOZ_GTK_SUCCESS;
|
||||||
}
|
}
|
||||||
@@ -3377,7 +3436,7 @@ GtkWidget* moz_gtk_get_scrollbar_widget(
|
@@ -3377,7 +3445,7 @@ GtkWidget* moz_gtk_get_scrollbar_widget(
|
||||||
{
|
{
|
||||||
MOZ_ASSERT(is_initialized, "Forgot to call moz_gtk_init()");
|
MOZ_ASSERT(is_initialized, "Forgot to call moz_gtk_init()");
|
||||||
ensure_scrollbar_widget();
|
ensure_scrollbar_widget();
|
||||||
@ -458,7 +578,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
}
|
}
|
||||||
|
|
||||||
gboolean moz_gtk_has_scrollbar_buttons(void)
|
gboolean moz_gtk_has_scrollbar_buttons(void)
|
||||||
@@ -3385,7 +3444,7 @@ gboolean moz_gtk_has_scrollbar_buttons(v
|
@@ -3385,7 +3453,7 @@ gboolean moz_gtk_has_scrollbar_buttons(v
|
||||||
gboolean backward, forward, secondary_backward, secondary_forward;
|
gboolean backward, forward, secondary_backward, secondary_forward;
|
||||||
MOZ_ASSERT(is_initialized, "Forgot to call moz_gtk_init()");
|
MOZ_ASSERT(is_initialized, "Forgot to call moz_gtk_init()");
|
||||||
ensure_scrollbar_widget();
|
ensure_scrollbar_widget();
|
||||||
@ -467,7 +587,7 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
"has-backward-stepper", &backward,
|
"has-backward-stepper", &backward,
|
||||||
"has-forward-stepper", &forward,
|
"has-forward-stepper", &forward,
|
||||||
"has-secondary-backward-stepper", &secondary_backward,
|
"has-secondary-backward-stepper", &secondary_backward,
|
||||||
@@ -3414,10 +3473,10 @@ moz_gtk_shutdown()
|
@@ -3414,10 +3482,10 @@ moz_gtk_shutdown()
|
||||||
gButtonWidget = NULL;
|
gButtonWidget = NULL;
|
||||||
gToggleButtonWidget = NULL;
|
gToggleButtonWidget = NULL;
|
||||||
gButtonArrowWidget = NULL;
|
gButtonArrowWidget = NULL;
|
||||||
@ -482,9 +602,18 @@ diff -up firefox-43.0/widget/gtk/gtk3drawing.c.gtk3-20 firefox-43.0/widget/gtk/g
|
|||||||
gSpinWidget = NULL;
|
gSpinWidget = NULL;
|
||||||
gHScaleWidget = NULL;
|
gHScaleWidget = NULL;
|
||||||
gVScaleWidget = NULL;
|
gVScaleWidget = NULL;
|
||||||
diff -up firefox-43.0/widget/gtk/gtkdrawing.h.gtk3-20 firefox-43.0/widget/gtk/gtkdrawing.h
|
@@ -3434,7 +3502,7 @@ moz_gtk_shutdown()
|
||||||
--- firefox-43.0/widget/gtk/gtkdrawing.h.gtk3-20 2015-12-08 19:06:46.000000000 +0100
|
gToolbarWidget = NULL;
|
||||||
+++ firefox-43.0/widget/gtk/gtkdrawing.h 2015-12-16 20:38:30.313116412 +0100
|
gStatusbarWidget = NULL;
|
||||||
|
gFrameWidget = NULL;
|
||||||
|
- gProgressWidget = NULL;
|
||||||
|
+ //gProgressBar = NULL;
|
||||||
|
gTabWidget = NULL;
|
||||||
|
gTooltipWidget = NULL;
|
||||||
|
gMenuBarWidget = NULL;
|
||||||
|
diff -up firefox-43.0.3/widget/gtk/gtkdrawing.h.gtk3-20 firefox-43.0.3/widget/gtk/gtkdrawing.h
|
||||||
|
--- firefox-43.0.3/widget/gtk/gtkdrawing.h.gtk3-20 2015-12-23 23:11:14.000000000 +0100
|
||||||
|
+++ firefox-43.0.3/widget/gtk/gtkdrawing.h 2016-01-13 14:54:34.231234533 +0100
|
||||||
@@ -67,6 +67,13 @@ typedef enum {
|
@@ -67,6 +67,13 @@ typedef enum {
|
||||||
MOZ_GTK_TAB_SELECTED = 1 << 10
|
MOZ_GTK_TAB_SELECTED = 1 << 10
|
||||||
} GtkTabFlags;
|
} GtkTabFlags;
|
||||||
@ -510,9 +639,9 @@ diff -up firefox-43.0/widget/gtk/gtkdrawing.h.gtk3-20 firefox-43.0/widget/gtk/gt
|
|||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
diff -up firefox-43.0/widget/gtk/mozgtk/mozgtk.c.gtk3-20 firefox-43.0/widget/gtk/mozgtk/mozgtk.c
|
diff -up firefox-43.0.3/widget/gtk/mozgtk/mozgtk.c.gtk3-20 firefox-43.0.3/widget/gtk/mozgtk/mozgtk.c
|
||||||
--- firefox-43.0/widget/gtk/mozgtk/mozgtk.c.gtk3-20 2015-12-08 19:06:46.000000000 +0100
|
--- firefox-43.0.3/widget/gtk/mozgtk/mozgtk.c.gtk3-20 2015-12-23 23:11:14.000000000 +0100
|
||||||
+++ firefox-43.0/widget/gtk/mozgtk/mozgtk.c 2015-12-16 20:38:30.313116412 +0100
|
+++ firefox-43.0.3/widget/gtk/mozgtk/mozgtk.c 2016-01-13 14:54:34.231234533 +0100
|
||||||
@@ -547,6 +547,7 @@ STUB(gtk_style_context_get_border_color)
|
@@ -547,6 +547,7 @@ STUB(gtk_style_context_get_border_color)
|
||||||
STUB(gtk_style_context_get_color)
|
STUB(gtk_style_context_get_color)
|
||||||
STUB(gtk_style_context_get_margin)
|
STUB(gtk_style_context_get_margin)
|
||||||
@ -534,9 +663,9 @@ diff -up firefox-43.0/widget/gtk/mozgtk/mozgtk.c.gtk3-20 firefox-43.0/widget/gtk
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef GTK2_SYMBOLS
|
#ifdef GTK2_SYMBOLS
|
||||||
diff -up firefox-43.0/widget/gtk/nsLookAndFeel.cpp.gtk3-20 firefox-43.0/widget/gtk/nsLookAndFeel.cpp
|
diff -up firefox-43.0.3/widget/gtk/nsLookAndFeel.cpp.gtk3-20 firefox-43.0.3/widget/gtk/nsLookAndFeel.cpp
|
||||||
--- firefox-43.0/widget/gtk/nsLookAndFeel.cpp.gtk3-20 2015-12-08 19:06:46.000000000 +0100
|
--- firefox-43.0.3/widget/gtk/nsLookAndFeel.cpp.gtk3-20 2015-12-23 23:11:14.000000000 +0100
|
||||||
+++ firefox-43.0/widget/gtk/nsLookAndFeel.cpp 2015-12-16 20:38:30.314116418 +0100
|
+++ firefox-43.0.3/widget/gtk/nsLookAndFeel.cpp 2016-01-13 14:54:34.232234536 +0100
|
||||||
@@ -983,7 +983,7 @@ nsLookAndFeel::Init()
|
@@ -983,7 +983,7 @@ nsLookAndFeel::Init()
|
||||||
style = create_context(path);
|
style = create_context(path);
|
||||||
gtk_style_context_add_class(style, GTK_STYLE_CLASS_SCROLLBAR);
|
gtk_style_context_add_class(style, GTK_STYLE_CLASS_SCROLLBAR);
|
||||||
|
@ -77,7 +77,7 @@
|
|||||||
Summary: Mozilla Firefox Web browser
|
Summary: Mozilla Firefox Web browser
|
||||||
Name: firefox
|
Name: firefox
|
||||||
Version: 43.0.3
|
Version: 43.0.3
|
||||||
Release: 4%{?pre_tag}%{?dist}
|
Release: 5%{?pre_tag}%{?dist}
|
||||||
URL: http://www.mozilla.org/projects/firefox/
|
URL: http://www.mozilla.org/projects/firefox/
|
||||||
License: MPLv1.1 or GPLv2+ or LGPLv2+
|
License: MPLv1.1 or GPLv2+ or LGPLv2+
|
||||||
Group: Applications/Internet
|
Group: Applications/Internet
|
||||||
@ -761,6 +761,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
|||||||
#---------------------------------------------------------------------
|
#---------------------------------------------------------------------
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Jan 13 2016 Martin Stransky <stransky@redhat.com> - 43.0.3-5
|
||||||
|
- Updated progress bars rendering for Gtk 3.20
|
||||||
|
|
||||||
* Thu Jan 7 2016 Martin Stransky <stransky@redhat.com> - 43.0.3-4
|
* Thu Jan 7 2016 Martin Stransky <stransky@redhat.com> - 43.0.3-4
|
||||||
- Added fix for mozbz#1234026 - crashes on XWayland
|
- Added fix for mozbz#1234026 - crashes on XWayland
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user