Skip to content

Commit

Permalink
Merge pull request #576 from mjakeman/blueprint-tweaks
Browse files Browse the repository at this point in the history
Blueprint tweaks
  • Loading branch information
mjakeman authored Mar 2, 2024
2 parents b4db872 + aec8116 commit e533305
Show file tree
Hide file tree
Showing 11 changed files with 31 additions and 76 deletions.
6 changes: 5 additions & 1 deletion src/exm-browse-page.blp
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ using Gtk 4.0;
using Adw 1;

template $ExmBrowsePage : Gtk.Widget {
notify::manager => $on_bind_manager();

Gtk.ScrolledWindow {
Adw.StatusPage {
title: _("Search for extensions");
Expand All @@ -18,8 +20,8 @@ template $ExmBrowsePage : Gtk.Widget {

Gtk.SearchEntry search_entry {
hexpand: true;

realize => $on_search_entry_realize();
search-changed => $on_search_changed() swapped;
}

// Keep the same order as the ExmSearchSort enum
Expand All @@ -28,6 +30,7 @@ template $ExmBrowsePage : Gtk.Widget {
// Translators: dropdown items for sorting search results
strings [_("Relevance"), C_("Sort search results", "Downloads"), _("Recent"), _("Name")]
};
notify::selected => $on_search_changed() swapped;
}
}

Expand Down Expand Up @@ -57,6 +60,7 @@ template $ExmBrowsePage : Gtk.Widget {
halign: center;
margin-top: 24;
use-underline: true;
clicked => $on_load_more_results();
}
};
}
Expand Down
23 changes: 3 additions & 20 deletions src/exm-browse-page.c
Original file line number Diff line number Diff line change
Expand Up @@ -401,6 +401,9 @@ exm_browse_page_class_init (ExmBrowsePageClass *klass)
gtk_widget_class_bind_template_child (widget_class, ExmBrowsePage, more_results_btn);

gtk_widget_class_bind_template_callback (widget_class, on_search_entry_realize);
gtk_widget_class_bind_template_callback (widget_class, on_search_changed);
gtk_widget_class_bind_template_callback (widget_class, on_load_more_results);
gtk_widget_class_bind_template_callback (widget_class, on_bind_manager);

gtk_widget_class_set_layout_manager_type (widget_class, GTK_TYPE_BIN_LAYOUT);
}
Expand All @@ -427,26 +430,6 @@ exm_browse_page_init (ExmBrowsePage *self)

g_object_unref (settings);

g_signal_connect_swapped (self->search_entry,
"search-changed",
G_CALLBACK (on_search_changed),
self);

g_signal_connect_swapped (self->search_dropdown,
"notify::selected",
G_CALLBACK (on_search_changed),
self);

g_signal_connect (self->more_results_btn,
"clicked",
G_CALLBACK (on_load_more_results),
self);

g_signal_connect (self,
"notify::manager",
G_CALLBACK (on_bind_manager),
NULL);

load_suggestions (self);
}

4 changes: 4 additions & 0 deletions src/exm-comment-tile.blp
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,20 @@ template $ExmCommentTile : Gtk.Widget {
Gtk.Label author {
styles ["dim-label"]
xalign: 0;
label: bind template.comment as <$ExmComment>.author;
}

Gtk.Label author_badge {
styles ["author-badge"]
label: _("Author");
visible: bind template.comment as <$ExmComment>.is_extension_creator;
}

$ExmRating rating {
halign: end;
hexpand: true;
rating: bind template.comment as <$ExmComment>.rating;
visible: bind template.comment as <$ExmComment>.rating as <bool>;
}
}

Expand Down
19 changes: 1 addition & 18 deletions src/exm-comment-tile.c
Original file line number Diff line number Diff line change
Expand Up @@ -88,31 +88,14 @@ exm_comment_tile_constructed (GObject *object)

TextFrame *frame;

gboolean is_extension_creator;
gchar *text, *author;
int score;
gchar *text;
g_object_get (self->comment,
"is_extension_creator", &is_extension_creator,
"comment", &text,
"author", &author,
"rating", &score,
NULL);

if (score >= 1 && score <= 5)
{
g_object_set (self->rating, "rating", score, NULL);
gtk_widget_set_visible (GTK_WIDGET (self->rating), TRUE);
}
else
{
gtk_widget_set_visible (GTK_WIDGET (self->rating), FALSE);
}

frame = format_parse_html (text);

g_object_set (self->display, "frame", frame, NULL);
gtk_label_set_text (self->author, author);
gtk_widget_set_visible (GTK_WIDGET (self->author_badge), is_extension_creator);

G_OBJECT_CLASS (exm_comment_tile_parent_class)->constructed (object);
}
Expand Down
2 changes: 2 additions & 0 deletions src/exm-installed-page.blp
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ using Gtk 4.0;
using Adw 1;

template $ExmInstalledPage : Gtk.Widget {
notify::manager => $on_bind_manager();

Gtk.Box {
orientation: vertical;

Expand Down
7 changes: 2 additions & 5 deletions src/exm-installed-page.c
Original file line number Diff line number Diff line change
Expand Up @@ -326,6 +326,8 @@ exm_installed_page_class_init (ExmInstalledPageClass *klass)
gtk_widget_class_bind_template_child (widget_class, ExmInstalledPage, updates_action_bar);
gtk_widget_class_bind_template_child (widget_class, ExmInstalledPage, global_toggle);

gtk_widget_class_bind_template_callback (widget_class, on_bind_manager);

gtk_widget_class_set_layout_manager_type (widget_class, GTK_TYPE_BIN_LAYOUT);
}

Expand Down Expand Up @@ -374,11 +376,6 @@ exm_installed_page_init (ExmInstalledPage *self)

gtk_widget_init_template (GTK_WIDGET (self));

g_signal_connect (self,
"notify::manager",
G_CALLBACK (on_bind_manager),
NULL);

settings = g_settings_new (APP_ID);

g_settings_bind (settings, "sort-enabled-first",
Expand Down
1 change: 1 addition & 0 deletions src/exm-search-row.blp
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ template $ExmSearchRow: Gtk.ListBoxRow {
$ExmInstallButton install_btn {
valign: center;
halign: end;
clicked => $install_remote();
}

Gtk.Image {
Expand Down
3 changes: 2 additions & 1 deletion src/exm-search-row.c
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,6 @@ exm_search_row_constructed (GObject *object)
? EXM_INSTALL_BUTTON_STATE_DEFAULT
: EXM_INSTALL_BUTTON_STATE_UNSUPPORTED);

g_signal_connect (self->install_btn, "clicked", G_CALLBACK (install_remote), self);
g_object_set (self->install_btn, "state", install_state, NULL);

G_OBJECT_CLASS (exm_search_row_parent_class)->constructed (object);
Expand Down Expand Up @@ -185,6 +184,8 @@ exm_search_row_class_init (ExmSearchRowClass *klass)
gtk_widget_class_set_template_from_resource (widget_class, "/com/mattjakeman/ExtensionManager/exm-search-row.ui");

gtk_widget_class_bind_template_child (widget_class, ExmSearchRow, install_btn);

gtk_widget_class_bind_template_callback (widget_class, install_remote);
}

static void
Expand Down
3 changes: 3 additions & 0 deletions src/exm-upgrade-assistant.blp
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ template $ExmUpgradeAssistant : Adw.Window {
default-width: 400;
default-height: 550;
title: _("Upgrade Assistant");
notify::manager => $on_bind_manager();

Adw.ToolbarView {

Expand Down Expand Up @@ -48,6 +49,7 @@ template $ExmUpgradeAssistant : Adw.Window {
halign: center;
valign: end;
use-underline: true;
clicked => $do_compatibility_check() swapped;
}
}
};
Expand Down Expand Up @@ -127,6 +129,7 @@ template $ExmUpgradeAssistant : Adw.Window {
label: _("_Copy to Clipboard");
halign: center;
use-underline: true;
clicked => $copy_to_clipboard() swapped;
}
};
};
Expand Down
19 changes: 4 additions & 15 deletions src/exm-upgrade-assistant.c
Original file line number Diff line number Diff line change
Expand Up @@ -654,6 +654,10 @@ exm_upgrade_assistant_class_init (ExmUpgradeAssistantClass *klass)
gtk_widget_class_bind_template_child (widget_class, ExmUpgradeAssistant, summary);
gtk_widget_class_bind_template_child (widget_class, ExmUpgradeAssistant, copy_details);

gtk_widget_class_bind_template_callback (widget_class, do_compatibility_check);
gtk_widget_class_bind_template_callback (widget_class, copy_to_clipboard);
gtk_widget_class_bind_template_callback (widget_class, on_bind_manager);

gtk_widget_class_add_binding_action (widget_class, GDK_KEY_Escape, 0, "window.close", NULL);
}

Expand All @@ -664,21 +668,6 @@ exm_upgrade_assistant_init (ExmUpgradeAssistant *self)

gtk_widget_init_template (GTK_WIDGET (self));

g_signal_connect_swapped (self->run_button,
"clicked",
G_CALLBACK (do_compatibility_check),
self);

g_signal_connect_swapped (self->copy_details,
"clicked",
G_CALLBACK (copy_to_clipboard),
self);

g_signal_connect (self,
"notify::manager",
G_CALLBACK (on_bind_manager),
NULL);

self->data_provider = exm_data_provider_new ();
self->target_shell_version = NULL;

Expand Down
20 changes: 4 additions & 16 deletions src/exm-window.blp
Original file line number Diff line number Diff line change
Expand Up @@ -83,23 +83,11 @@ template $ExmWindow : Adw.ApplicationWindow {

menu primary_menu {
section {
item {
label: _("Sort Enabled First");
action: "app.sort-enabled-first";
}
item {
label: _("Show Unsupported");
action: "app.show-unsupported";
}
item (_("Sort Enabled First"), "app.sort-enabled-first")
item (_("Show Unsupported"), "app.show-unsupported")
}
section {
item {
label: _("Upgrade Assistant");
action: "win.show-upgrade-assistant";
}
item {
label: _("About Extension Manager");
action: "app.about";
}
item (_("Upgrade Assistant"), "win.show-upgrade-assistant")
item (_("About Extension Manager"), "app.about")
}
}

0 comments on commit e533305

Please sign in to comment.