mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Fix report page focus
Currently the setting of keyboard focus is to the scroll window but should be to the Webkit webview so correct this.
This commit is contained in:
parent
b51a70675f
commit
5c48244e8d
@ -253,7 +253,7 @@ gnc_plugin_page_report_focus_widget (GncPluginPage *report_plugin_page)
|
|||||||
|
|
||||||
if (window && !gnc_main_window_is_restoring_pages (GNC_MAIN_WINDOW(window)))
|
if (window && !gnc_main_window_is_restoring_pages (GNC_MAIN_WINDOW(window)))
|
||||||
{
|
{
|
||||||
GtkWidget * widget = gnc_html_get_widget (priv->html);
|
GtkWidget *widget = gnc_html_get_webview (priv->html);
|
||||||
|
|
||||||
gnc_plugin_page_report_load_uri (report_plugin_page);
|
gnc_plugin_page_report_load_uri (report_plugin_page);
|
||||||
|
|
||||||
@ -752,15 +752,12 @@ static void
|
|||||||
gnc_plugin_page_report_destroy_widget(GncPluginPage *plugin_page)
|
gnc_plugin_page_report_destroy_widget(GncPluginPage *plugin_page)
|
||||||
{
|
{
|
||||||
GncPluginPageReportPrivate *priv;
|
GncPluginPageReportPrivate *priv;
|
||||||
GtkWidget *widget;
|
|
||||||
|
|
||||||
// FIXME: cleanup other resources.
|
// FIXME: cleanup other resources.
|
||||||
|
|
||||||
PINFO("destroy widget");
|
PINFO("destroy widget");
|
||||||
priv = GNC_PLUGIN_PAGE_REPORT_GET_PRIVATE(plugin_page);
|
priv = GNC_PLUGIN_PAGE_REPORT_GET_PRIVATE(plugin_page);
|
||||||
|
|
||||||
widget = gnc_html_get_widget(priv->html);
|
|
||||||
|
|
||||||
// Remove the page_changed signal callback
|
// Remove the page_changed signal callback
|
||||||
gnc_plugin_page_disconnect_page_changed (GNC_PLUGIN_PAGE(plugin_page));
|
gnc_plugin_page_disconnect_page_changed (GNC_PLUGIN_PAGE(plugin_page));
|
||||||
|
|
||||||
|
@ -574,6 +574,39 @@ gnc_html_get_widget( GncHtml* self )
|
|||||||
return GNC_HTML_GET_PRIVATE(self)->container;
|
return GNC_HTML_GET_PRIVATE(self)->container;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
GtkWidget *
|
||||||
|
gnc_html_get_webview( GncHtml* self )
|
||||||
|
{
|
||||||
|
GncHtmlPrivate* priv;
|
||||||
|
GList *sw_list = NULL;
|
||||||
|
GtkWidget *webview = NULL;
|
||||||
|
|
||||||
|
g_return_val_if_fail (self != NULL, NULL);
|
||||||
|
g_return_val_if_fail (GNC_IS_HTML(self), NULL);
|
||||||
|
|
||||||
|
priv = GNC_HTML_GET_PRIVATE(self);
|
||||||
|
sw_list = gtk_container_get_children (GTK_CONTAINER(priv->container));
|
||||||
|
|
||||||
|
if (sw_list) // the scroll window has only one child
|
||||||
|
{
|
||||||
|
#ifdef WEBKIT1
|
||||||
|
webview = sw_list->data;
|
||||||
|
#else
|
||||||
|
GList *vp_list = gtk_container_get_children (GTK_CONTAINER(sw_list->data));
|
||||||
|
|
||||||
|
if (vp_list) // the viewport has only one child
|
||||||
|
{
|
||||||
|
webview = vp_list->data;
|
||||||
|
g_list_free (vp_list);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
g_list_free (sw_list);
|
||||||
|
return webview;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
gnc_html_set_parent( GncHtml* self, GtkWindow* parent )
|
gnc_html_set_parent( GncHtml* self, GtkWindow* parent )
|
||||||
{
|
{
|
||||||
|
@ -256,6 +256,15 @@ gnc_html_history* gnc_html_get_history( GncHtml* html );
|
|||||||
*/
|
*/
|
||||||
GtkWidget* gnc_html_get_widget( GncHtml* html );
|
GtkWidget* gnc_html_get_widget( GncHtml* html );
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the webview widget for this html engine
|
||||||
|
*
|
||||||
|
* @param html GncHtml object
|
||||||
|
* @return webview widget
|
||||||
|
*/
|
||||||
|
GtkWidget* gnc_html_get_webview( GncHtml* html );
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets the parent window for this html engine. The engine will be embedded in this parent.
|
* Sets the parent window for this html engine. The engine will be embedded in this parent.
|
||||||
*
|
*
|
||||||
|
Loading…
Reference in New Issue
Block a user