[gnote] Create find next/prev buttons on demand
- From: Aurimas Černius <aurimasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnote] Create find next/prev buttons on demand
- Date: Sat, 2 Jan 2021 14:35:17 +0000 (UTC)
commit ac695bebc23081b39ac672b48ce80a59d624ab61
Author: Aurimas Černius <aurisc4 gmail com>
Date: Sat Jan 2 12:43:19 2021 +0200
Create find next/prev buttons on demand
src/recentchanges.cpp | 28 ++++++++++++++++++++++------
src/recentchanges.hpp | 1 +
2 files changed, 23 insertions(+), 6 deletions(-)
---
diff --git a/src/recentchanges.cpp b/src/recentchanges.cpp
index d443005b..f8d456ca 100644
--- a/src/recentchanges.cpp
+++ b/src/recentchanges.cpp
@@ -245,6 +245,17 @@ namespace gnote {
grid->set_margin_right(5);
grid->set_hexpand(false);
grid->attach(m_search_entry, 0, 0, 1, 1);
+ grid->show();
+
+ m_search_box.add(*grid);
+ m_search_box.set_hexpand(true);
+ }
+
+ void NoteRecentChanges::make_find_next_prev()
+ {
+ if(m_find_next_prev_box) {
+ return;
+ }
m_find_next_prev_box = manage(new Gtk::Grid);
m_find_next_prev_box->set_margin_left(5);
@@ -273,11 +284,13 @@ namespace gnote {
find_prev_button->show();
m_find_next_prev_box->attach(*find_prev_button, 1, 0, 1, 1);
- grid->attach(*m_find_next_prev_box, 1, 0, 1, 1);
- grid->show();
-
- m_search_box.add(*grid);
- m_search_box.set_hexpand(true);
+ auto grid = dynamic_cast<Gtk::Grid*>(m_search_entry.get_parent());
+ if(grid) {
+ grid->attach(*m_find_next_prev_box, 1, 0, 1, 1);
+ }
+ else {
+ ERR_OUT(_("Parent of search entry is not Gtk::Grid, please report a bug!"));
+ }
}
void NoteRecentChanges::on_search_button_toggled()
@@ -334,10 +347,13 @@ namespace gnote {
if(searchable_item) {
m_search_button.show();
if(searchable_item->supports_goto_result()) {
+ make_find_next_prev();
m_find_next_prev_box->show();
}
else {
- m_find_next_prev_box->hide();
+ if(m_find_next_prev_box) {
+ m_find_next_prev_box->hide();
+ }
}
if(perform_search) {
searchable_item->perform_search(m_search_button.get_active() ? m_search_entry.get_text() : "");
diff --git a/src/recentchanges.hpp b/src/recentchanges.hpp
index c84eb7e5..93be1773 100644
--- a/src/recentchanges.hpp
+++ b/src/recentchanges.hpp
@@ -76,6 +76,7 @@ private:
EmbeddableWidget *currently_embedded();
void make_header_bar();
void make_search_box();
+ void make_find_next_prev();
bool on_entry_key_pressed(GdkEventKey *);
void on_entry_changed();
void on_entry_activated();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]