To reproduce the error, open Gnucash (for example with --nofile argument), open a Find Transactions dialog (Edit->Find), open a Find Customer dialog (Business->Customer->Find Customer), open a Gnucash Preferences dialog (Edit->Preferences) and change some preference (for example, under the Register tab, select Use system theme colors). Each time a preference is changed the Find dialogs get wider as a new results sub window is created and added to the dialog. This happens because any time gnc_gui_refresh_all is called, which is the case when a preference is changed, and on other occasions as well, the refresh_handler in dialog-search.c is called for any open search dialog which calls gnc_search_dialog_display_results which, in turn, erroneously creates and adds the sub window. If the search dialog was initially created with a result_cb, as is the case for Find Transactions, the results sub window should never be created. If it was not, as is the case with Find Customer and all other calls, only one sub window should be created per dialog and it should only be refreshed if it already exists.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@22387 57a11ea4-9604-0410-9ed3-97b8803252fd
Re-apply changes reverted in r20251. The only difference between this commit and r20207 is that, contrary to the recommendation given in gnc-tree-view.h, "Use GNC_TREE_VIEW_COLUMN_DATA_NONE if you plan on using a non-model data source for this column", it cobtinues to use "GNC_TREE_MODEL_ACCOUNT_COL_TAX_INFO". Using "GNC_TREE_VIEW_COLUMN_DATA_NONE" generates problems later in the "gnc_tree_view_add_text_column" routine when it tries to set up sorting for the column ("CRIT <Gtk> gtk_tree_sortable_set_sort_func: assertion `sort_column_id >= 0' failed").
Define a new column, GNC_TREE_MODEL_ACCOUNT_COL_TAX_INFO_SUB_ACCT, in gnc-tree-model-account.c filled with gnc_ui_account_get_tax_info_sub_acct_string.
Modify gnc-tree-view-account.c to define a tax_info_data_func that displays only the the data in the GNC_TREE_MODEL_ACCOUNT_COL_TAX_INFO model column if the row is expanded; otherwise it combines it with the data in the GNC_TREE_MODEL_ACCOUNT_COL_TAX_INFO_SUB_ACCT model column. Modily the view creation function to use the new tax_info_data_func for the text after having first set it to GNC_TREE_MODEL_ACCOUNT_COL_TAX_INFO to prevent the problem mentioned above, thereby overriding it.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20359 57a11ea4-9604-0410-9ed3-97b8803252fd
Revert changes made in gnc-ui-util.c in rev 20039 and instead put those changes in new function: gnc_ui_account_get_tax_info_sub_acct_string.
Define a new column, GNC_TREE_MODEL_ACCOUNT_COL_TAX_INFO_SUB_ACCT, in gnc-tree-model-account.c filled with gnc_ui_account_get_tax_info_sub_acct_string.
Modify gnc-tree-view-account.c to define a tax_info_data_func that displays only the the data in the GNC_TREE_MODEL_ACCOUNT_COL_TAX_INFO model column if the row is expanded; otherwise it combines it with the data in the GNC_TREE_MODEL_ACCOUNT_COL_TAX_INFO_SUB_ACCT model column. Modily the view creation function to use the new tax_info_data_func.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20207 57a11ea4-9604-0410-9ed3-97b8803252fd