@@ -135,7 +135,7 @@ class MoneyflowApp(App):
135135 Binding ("right" , "next_period" , "→ Next" , show = True ),
136136 # Editing
137137 Binding ("m" , "edit_merchant" , "Edit Merchant" , show = False ),
138- Binding ("c" , "recategorize " , "Recategorize " , show = False ),
138+ Binding ("c" , "edit_category " , "Edit Category " , show = False ),
139139 Binding ("d" , "delete_transaction" , "Delete" , show = False ),
140140 Binding ("h" , "toggle_hide_from_reports" , "Hide/Unhide" , show = False ),
141141 Binding ("i" , "show_transaction_details" , "Info" , show = False ),
@@ -1070,33 +1070,33 @@ async def _edit_merchant_detail(self) -> None:
10701070 if saved_cursor_row < table .row_count :
10711071 table .move_cursor (row = saved_cursor_row )
10721072
1073- def action_recategorize (self ) -> None :
1073+ def action_edit_category (self ) -> None :
10741074 """Change category for current selection (works in aggregate and detail views)."""
10751075
10761076 logger = get_logger (__name__ )
10771077
10781078 if self .data_manager is None :
10791079 return
10801080
1081- logger .debug (f"action_recategorize called, view_mode={ self .state .view_mode } " )
1081+ logger .debug (f"action_edit_category called, view_mode={ self .state .view_mode } " )
10821082
10831083 # Check if in aggregate view (MERCHANT, CATEGORY or GROUP) or detail view
10841084 if self .state .view_mode in [ViewMode .MERCHANT , ViewMode .CATEGORY , ViewMode .GROUP ]:
1085- logger .debug ("Calling _bulk_recategorize_from_aggregate ()" )
1086- # Aggregate view - recategorize all transactions for this merchant/category/group
1087- self .run_worker (self ._bulk_recategorize_from_aggregate (), exclusive = False )
1085+ logger .debug ("Calling _bulk_edit_category_from_aggregate ()" )
1086+ # Aggregate view - edit_category all transactions for this merchant/category/group
1087+ self .run_worker (self ._bulk_edit_category_from_aggregate (), exclusive = False )
10881088 else :
10891089 logger .debug (
1090- f"Calling _recategorize () - view_mode { self .state .view_mode } not in aggregate views"
1090+ f"Calling _edit_category () - view_mode { self .state .view_mode } not in aggregate views"
10911091 )
1092- # Detail view - recategorize selected transaction(s)
1093- self .run_worker (self ._recategorize (), exclusive = False )
1092+ # Detail view - edit_category selected transaction(s)
1093+ self .run_worker (self ._edit_category (), exclusive = False )
10941094
1095- async def _bulk_recategorize_from_aggregate (self ) -> None :
1096- """Recategorize all transactions in selected merchant/category/group."""
1095+ async def _bulk_edit_category_from_aggregate (self ) -> None :
1096+ """Edit Category all transactions in selected merchant/category/group."""
10971097 logger = get_logger (__name__ )
10981098
1099- logger .debug (f"_bulk_recategorize_from_aggregate called, view_mode={ self .state .view_mode } " )
1099+ logger .debug (f"_bulk_edit_category_from_aggregate called, view_mode={ self .state .view_mode } " )
11001100
11011101 if self .state .current_data is None :
11021102 logger .warning ("current_data is None, returning" )
@@ -1151,12 +1151,12 @@ async def _bulk_recategorize_from_aggregate(self) -> None:
11511151 # Show success notification
11521152 new_cat_name = self .data_manager .categories .get (new_category_id , {}).get ("name" , "Unknown" )
11531153 self .notify (
1154- f"Queued { count } transactions from { field_name } to recategorize to { new_cat_name } . Press w to commit." ,
1154+ f"Queued { count } transactions from { field_name } to edit_category to { new_cat_name } . Press w to commit." ,
11551155 timeout = 3 ,
11561156 )
11571157 self .refresh_view ()
11581158
1159- async def _recategorize (self ) -> None :
1159+ async def _edit_category (self ) -> None :
11601160 """Show category selection and apply (for detail view)."""
11611161 if self .state .current_data is None :
11621162 return
@@ -1171,7 +1171,7 @@ async def _recategorize(self) -> None:
11711171
11721172 # Check if multi-select is active
11731173 if len (self .state .selected_ids ) > 0 :
1174- # Multi-select recategorize
1174+ # Multi-select edit_category
11751175 num_selected = len (self .state .selected_ids )
11761176
11771177 # Show category selection (no transaction details for bulk)
@@ -1198,7 +1198,7 @@ async def _recategorize(self) -> None:
11981198 )
11991199 self .refresh_view ()
12001200 else :
1201- # Single transaction recategorize
1201+ # Single transaction edit_category
12021202 # Pass transaction details for context
12031203 txn_details = {
12041204 "date" : row_data .get ("date" ),
@@ -1230,7 +1230,7 @@ async def _recategorize(self) -> None:
12301230 if saved_cursor_row < table .row_count :
12311231 table .move_cursor (row = saved_cursor_row )
12321232 else :
1233- self .notify ("Recategorize only works in transaction detail view" , timeout = 2 )
1233+ self .notify ("Edit Category only works in transaction detail view" , timeout = 2 )
12341234
12351235 def action_toggle_hide_from_reports (self ) -> None :
12361236 """Toggle hide from reports flag for current transaction(s)."""
0 commit comments