Generate persistent unique IDs and names for custom actions.
This adds an optional <unique-id> element to the <action> element in uca.xml. When loading the UCA model from uca.xml, we check for this element in the parser. If it is not given, we generate a new ID with the following signature: <current_time.tv_sec>.<current_time.tv_usec>-<static counter value> After parsing we check if we have generated new IDs and, if so, immediately save the model back to the uca.xml file. This part is a bit of a hack but it will be a no-brainer once we've switched to xfconf, I think. The ThunarUcaEditor is extended so that it generates a unique ID for new items with the same signature as above. It does not overwrite IDs of existing custom actions. Together this allows for a persistent association of custom actions with keyboard shortcuts.
Showing with 159 additions and 24 deletions