Kaydet (Commit) 65846730 authored tarafından Miklos Vajna's avatar Miklos Vajna

gtktiledviewer: let findbar have the focus when it's visible

1) Give its GtkEntry focus after pressing the button to show the
findbar, so one can immediately can begin typing.

2) Only forward keypresses to LOK if the findbar is not visible, so it's
not necessary to stop editing to be able to search.

Change-Id: I5c9487739a550e34c66f39b12469392028bb7e3d
üst ac113013
...@@ -124,7 +124,17 @@ void toggleFindbar(GtkWidget* /*pButton*/, gpointer /*pItem*/) ...@@ -124,7 +124,17 @@ void toggleFindbar(GtkWidget* /*pButton*/, gpointer /*pItem*/)
gtk_widget_hide(pFindbar); gtk_widget_hide(pFindbar);
} }
else else
{
gtk_widget_show_all(pFindbar); gtk_widget_show_all(pFindbar);
gtk_widget_grab_focus(pFindbarEntry);
}
}
/// Handles the key-press-event of the window.
static void signalKey(GtkWidget* pWidget, GdkEventKey* pEvent, gpointer pData)
{
if (!gtk_widget_get_visible(pFindbar))
lok_docview_post_key(pWidget, pEvent, pData);
} }
/// Searches for the next or previous text of pFindbarEntry. /// Searches for the next or previous text of pFindbarEntry.
...@@ -415,8 +425,8 @@ int main( int argc, char* argv[] ) ...@@ -415,8 +425,8 @@ int main( int argc, char* argv[] )
g_signal_connect(pDocView, "command-changed", G_CALLBACK(signalCommand), NULL); g_signal_connect(pDocView, "command-changed", G_CALLBACK(signalCommand), NULL);
// Input handling. // Input handling.
g_signal_connect(pWindow, "key-press-event", G_CALLBACK(lok_docview_post_key), pDocView); g_signal_connect(pWindow, "key-press-event", G_CALLBACK(signalKey), pDocView);
g_signal_connect(pWindow, "key-release-event", G_CALLBACK(lok_docview_post_key), pDocView); g_signal_connect(pWindow, "key-release-event", G_CALLBACK(signalKey), pDocView);
gtk_container_add( GTK_CONTAINER(pVBox), pDocView ); gtk_container_add( GTK_CONTAINER(pVBox), pDocView );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment