[gnome-boxes/wip/rishi/rhel: 3/16] wizard, wizard-source: Use the headerbar to go back from "Enter URL"
- From: Debarshi Ray <debarshir src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-boxes/wip/rishi/rhel: 3/16] wizard, wizard-source: Use the headerbar to go back from "Enter URL"
- Date: Mon, 11 Sep 2017 16:21:17 +0000 (UTC)
commit 0614b386cace8ca85c324b71ba34c26208d6995c
Author: Debarshi Ray <debarshir gnome org>
Date: Wed Aug 23 18:35:10 2017 +0200
wizard, wizard-source: Use the headerbar to go back from "Enter URL"
This makes the "Enter URL" page visually consistent with the others,
and enables the alt+<left> keyboard shortcut.
https://bugzilla.gnome.org/show_bug.cgi?id=786689
data/ui/wizard-source.ui | 42 ------------------------------------------
src/wizard-source.vala | 6 ------
src/wizard.vala | 19 +++++++++++++++----
3 files changed, 15 insertions(+), 52 deletions(-)
---
diff --git a/data/ui/wizard-source.ui b/data/ui/wizard-source.ui
index d85376c..4664fe7 100644
--- a/data/ui/wizard-source.ui
+++ b/data/ui/wizard-source.ui
@@ -202,48 +202,6 @@
<class name="boxes-menu"/>
</style>
<child>
- <object class="GtkButton" id="url_back_button">
- <property name="visible">True</property>
- <signal name="clicked" handler="on_url_back_button_clicked"/>
- <style>
- <class name="boxes-menu-row"/>
- </style>
- <child>
- <object class="GtkBox" id="url_back_box">
- <property name="visible">True</property>
- <property name="margin-top">10</property>
- <property name="margin-bottom">10</property>
- <property name="margin-start">20</property>
- <property name="margin-end">20</property>
- <property name="spacing">20</property>
- <property name="orientation">horizontal</property>
- <child>
- <object class="GtkLabel" id="enter_url_back_label">
- <property name="visible">True</property>
- <property name="label" translatable="yes">◀</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="enter_url_label2">
- <property name="visible">True</property>
- <property name="halign">start</property>
- <property name="label" translatable="yes">Enter URL</property>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- </child>
-
- <child>
<object class="GtkBox" id="url_entry_vbox">
<property name="visible">True</property>
<property name="orientation">vertical</property>
diff --git a/src/wizard-source.vala b/src/wizard-source.vala
index eb99882..70936a4 100644
--- a/src/wizard-source.vala
+++ b/src/wizard-source.vala
@@ -223,12 +223,6 @@ private class Boxes.WizardSource: Gtk.Stack {
activated ();
}
- [GtkCallback]
- private void on_url_back_button_clicked () {
- selected = null;
- page = SourcePage.MAIN;
- }
-
private async void add_media_entries () {
var medias = yield media_manager.list_installer_medias ();
diff --git a/src/wizard.vala b/src/wizard.vala
index c4cacb2..d056026 100644
--- a/src/wizard.vala
+++ b/src/wizard.vala
@@ -133,7 +133,7 @@ private class Boxes.Wizard: Gtk.Stack, Boxes.UI {
return;
_page = value;
- back_button.sensitive = (value != WizardPage.SOURCE);
+ update_back_button_sensitivity ();
wizard_window.topbar.set_title_for_page (value);
visible_child_name = page_names[value];
@@ -154,6 +154,7 @@ private class Boxes.Wizard: Gtk.Stack, Boxes.UI {
}
private void wizard_source_update_next () {
+ update_back_button_sensitivity ();
if (page != WizardPage.SOURCE)
return;
@@ -628,9 +629,14 @@ private class Boxes.Wizard: Gtk.Stack, Boxes.UI {
cancel_button.clicked.connect (cancel);
back_button = wizard_window.topbar.back_btn;
back_button.clicked.connect (() => {
- prepare_cancellable.cancel ();
-
- page = page - 1;
+ if (page == WizardPage.SOURCE) {
+ return_if_fail (wizard_source.page == SourcePage.URL);
+ wizard_source.selected = null;
+ wizard_source.page = SourcePage.MAIN;
+ } else {
+ prepare_cancellable.cancel ();
+ page = page - 1;
+ }
});
continue_button = wizard_window.topbar.continue_btn;
continue_button.clicked.connect (() => {
@@ -645,6 +651,11 @@ private class Boxes.Wizard: Gtk.Stack, Boxes.UI {
wizard_source.setup_ui (window);
}
+ public void update_back_button_sensitivity () {
+ var disable_back_button = page == WizardPage.SOURCE && wizard_source.page == SourcePage.MAIN;
+ back_button.sensitive = !disable_back_button;
+ }
+
public void open_with_uri (string uri, bool skip_review_for_live = true) {
window.set_state (UIState.WIZARD);
this.skip_review_for_live = skip_review_for_live;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]