This adds a topbar design to the SpokeWindows to complement the sidebar on the StandaloneWindows and the HubWindows. The style is set in the anaconda-gtk.css file. --- data/anaconda-gtk.css | 37 ++++++++++++++++++++++++++----------- widgets/src/BaseWindow.c | 3 ++- widgets/src/SpokeWindow.c | 34 ---------------------------------- 3 files changed, 28 insertions(+), 46 deletions(-)
diff --git a/data/anaconda-gtk.css b/data/anaconda-gtk.css index a56ddf6..af51e45 100644 --- a/data/anaconda-gtk.css +++ b/data/anaconda-gtk.css @@ -1,32 +1,47 @@ /* vendor-specific colors/images */
-@define-color sidebar_redhat #41413e; -@define-color sidebar_fedora #006eb4; +@define-color redhat #41413e; +@define-color fedora #006eb4;
/* logo and sidebar classes for RHEL */ + +.sidebar { + background-image: url('/usr/share/anaconda/pixmaps/sidebar-bg.png'); + background-color: @redhat; +} + .logo { - background-image: url('/usr/share/anaconda/pixmaps/redhat-logo.png'); + background-image: url('/usr/share/anaconda/pixmaps/sidebar-logo.png'); background-position: 50% 20px; background-repeat: no-repeat; background-color: transparent; }
-.sidebar { - background-image: url('/usr/share/anaconda/pixmaps/redhat-bg.png'); - background-color: @sidebar_redhat; +AnacondaSpokeWindow #nav-box { + background-color: @redhat; + background-image: url('/usr/share/anaconda/pixmaps/topbar-bg.png'); + background-repeat: repeat; + color: white; +} + +AnacondaSpokeWindow #layout-indicator { + color: black; }
/* swap these into logo & sidebar classes for Fedora */ /* -.logo-fedora { - background-image: url('/usr/share/anaconda/pixmaps/fedora-logo.png'); +.logo{ + background-image: url('/usr/share/anaconda/pixmaps/logo.png'); background-position: 50% 20px; background-repeat: no-repeat; background-color: transparent; }
-.sidebar-fedora { - background-image: url('/usr/share/anaconda/pixmaps/noise-texture.png'); - background-color: @sidebar_fedora; +.sidebar { + background-color: @fedora; +} + +AnacondaSpokeWindow #nav-box { + background-color: @fedora; } */ diff --git a/widgets/src/BaseWindow.c b/widgets/src/BaseWindow.c index 0fcf4e8..c9080c4 100644 --- a/widgets/src/BaseWindow.c +++ b/widgets/src/BaseWindow.c @@ -221,7 +221,7 @@ static void anaconda_base_window_init(AnacondaBaseWindow *win) { */
win->priv->nav_box = gtk_event_box_new(); - gtk_widget_set_app_paintable(win->priv->nav_box, TRUE); + gtk_widget_set_name(win->priv->nav_box, "nav-box"); gtk_box_pack_start(GTK_BOX(win->priv->main_box), win->priv->nav_box, FALSE, FALSE, 0);
win->priv->nav_area = gtk_grid_new(); @@ -281,6 +281,7 @@ static void anaconda_base_window_init(AnacondaBaseWindow *win) { win->priv->layout_indicator = anaconda_layout_indicator_new(); anaconda_layout_indicator_set_label_width(ANACONDA_LAYOUT_INDICATOR(win->priv->layout_indicator), LAYOUT_INDICATOR_LABEL_WIDTH); + gtk_widget_set_name(win->priv->layout_indicator, "layout-indicator"); gtk_widget_set_halign(win->priv->layout_indicator, GTK_ALIGN_START); gtk_widget_set_hexpand(win->priv->layout_indicator, FALSE); gtk_widget_set_margin_top(win->priv->layout_indicator, 6); diff --git a/widgets/src/SpokeWindow.c b/widgets/src/SpokeWindow.c index 93f1b30..dc32915 100644 --- a/widgets/src/SpokeWindow.c +++ b/widgets/src/SpokeWindow.c @@ -165,44 +165,10 @@ static void anaconda_spoke_window_init(AnacondaSpokeWindow *win) { }
static void anaconda_spoke_window_realize(GtkWidget *widget, gpointer user_data) { - GtkWidget *nav_box; GtkAccelGroup *accel_group; - GError *error; - GdkPixbuf *pixbuf; - cairo_pattern_t *pattern; - cairo_surface_t *surface; - cairo_t *cr;
AnacondaSpokeWindow *window = ANACONDA_SPOKE_WINDOW(widget);
- /* Set the background gradient in the header. If we fail to load the - * background for any reason, just print an error message and display the - * header without an image. - */ - error = NULL; - nav_box = anaconda_base_window_get_nav_area_background_window(ANACONDA_BASE_WINDOW(window)); - pixbuf = gdk_pixbuf_new_from_file_at_scale("/usr/share/anaconda/pixmaps/anaconda_spoke_header.png", - -1, gdk_window_get_height(gtk_widget_get_window(nav_box)), - FALSE, &error); - - if (!pixbuf) { - fprintf(stderr, "could not load header background: %s\n", error->message); - g_error_free(error); - } else { - surface = gdk_window_create_similar_surface(gtk_widget_get_window(nav_box), CAIRO_CONTENT_COLOR_ALPHA, - gdk_pixbuf_get_width(pixbuf), gdk_pixbuf_get_height(pixbuf)); - cr = cairo_create(surface); - - gdk_cairo_set_source_pixbuf(cr, pixbuf, 0, 0); - cairo_paint(cr); - cairo_destroy(cr); - pattern = cairo_pattern_create_for_surface(surface); - cairo_surface_destroy(surface); - - cairo_pattern_set_extend(pattern, CAIRO_EXTEND_REPEAT); - gdk_window_set_background_pattern(gtk_widget_get_window(nav_box), pattern); - } - /* Pressing F12 should send you back to the hub, similar to how the old UI worked. */ accel_group = gtk_accel_group_new(); gtk_window_add_accel_group(GTK_WINDOW(window), accel_group);
anaconda-patches@lists.fedorahosted.org