summaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
authorGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>2018-09-05 10:39:59 -0300
committerGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>2018-09-05 10:39:59 -0300
commitbbd3993d9f4672bd7eee99dd194089abee424e0b (patch)
tree14ff7e74ce74c706ff904e6d576e026837359aee /data
parent8348b90b177b7eb3d86d403c4dad3c56a5d236d5 (diff)
downloadgnome-todo-bbd3993d9f4672bd7eee99dd194089abee424e0b.tar.gz
task-list-popover: Factor out from GtdNewTaskRow
This will allow a more contained implementation of the tasklist selector popover. Search is almost there, but lacks a filter list model to enable that.
Diffstat (limited to 'data')
-rw-r--r--data/todo.gresource.xml1
-rw-r--r--data/ui/new-task-row.ui18
-rw-r--r--data/ui/task-list-popover.ui42
3 files changed, 46 insertions, 15 deletions
diff --git a/data/todo.gresource.xml b/data/todo.gresource.xml
index 86c248b3..34143906 100644
--- a/data/todo.gresource.xml
+++ b/data/todo.gresource.xml
@@ -18,6 +18,7 @@
<file compressed="true" preprocess="xml-stripblanks">ui/provider-row.ui</file>
<file compressed="true" preprocess="xml-stripblanks">ui/provider-selector.ui</file>
<file compressed="true" preprocess="xml-stripblanks">ui/task-list-panel.ui</file>
+ <file compressed="true" preprocess="xml-stripblanks">ui/task-list-popover.ui</file>
<file compressed="true" preprocess="xml-stripblanks">ui/task-row.ui</file>
<file compressed="true" preprocess="xml-stripblanks">ui/window.ui</file>
<file compressed="true">theme/Adwaita.css</file>
diff --git a/data/ui/new-task-row.ui b/data/ui/new-task-row.ui
index 44545ebe..d7af3583 100644
--- a/data/ui/new-task-row.ui
+++ b/data/ui/new-task-row.ui
@@ -27,22 +27,10 @@
</child>
</template>
- <object class="GtkPopover" id="tasklist_popover">
+ <object class="GtdTaskListPopover" id="tasklist_popover">
<property name="can_focus">False</property>
<property name="relative-to">entry</property>
- <child>
- <object class="GtkListBox" id="tasklist_list">
- <property name="can_focus">False</property>
- <property name="margin">12</property>
- <property name="selection_mode">none</property>
- <signal name="row-activated" handler="tasklist_selected_cb" object="GtdNewTaskRow" swapped="no" />
- <style>
- <class name="background" />
- </style>
- </object>
- </child>
- </object>
- <object class="GtkSizeGroup" id="sizegroup">
- <property name="mode">horizontal</property>
+ <signal name="notify::task-list" handler="on_tasklist_popover_changed_cb" object="GtdNewTaskRow" swapped="no" />
+ <signal name="closed" handler="on_tasklist_popover_closed_cb" object="GtdNewTaskRow" swapped="no" after="yes" />
</object>
</interface>
diff --git a/data/ui/task-list-popover.ui b/data/ui/task-list-popover.ui
new file mode 100644
index 00000000..2a2f3f67
--- /dev/null
+++ b/data/ui/task-list-popover.ui
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+ <template class="GtdTaskListPopover" parent="GtkPopover">
+ <child>
+ <object class="GtkBox">
+ <property name="margin">18</property>
+ <property name="spacing">12</property>
+ <property name="orientation">vertical</property>
+
+ <!-- Search entry -->
+ <child>
+ <object class="GtkSearchEntry" id="search_entry">
+ <property name="visible">false</property>
+ </object>
+ </child>
+
+ <!-- Listbox -->
+ <child>
+ <object class="GtkScrolledWindow">
+ <property name="hscrollbar-policy">never</property>
+ <property name="max-content-height">480</property>
+ <property name="propagate-natural-height">true</property>
+ <child>
+ <object class="GtkListBox" id="listbox">
+ <property name="selection_mode">none</property>
+ <signal name="row-activated" handler="on_listbox_row_activated_cb" object="GtdTaskListPopover" swapped="no" />
+ <style>
+ <class name="background" />
+ </style>
+ </object>
+ </child>
+ </object>
+ </child>
+
+ </object>
+ </child>
+ </template>
+
+ <object class="GtkSizeGroup" id="sizegroup">
+ <property name="mode">horizontal</property>
+ </object>
+</interface>