gs-extras-page: Ensure page state always changes after loading results (gnome-41)

Previously, if there was exactly one result for a codec search, that result would be shown (in a details page), but the state of the extras page would not be updated and hence would remain as GS_EXTRAS_PAGE_STATE_LOADING.

This meant that if the user pressed the back button in the shell history, they would be taken back from the codec details page to an extras page which was forever loading.

Fix that by always changing the extras page state, and then potentially showing the details for a single search result.

Signed-off-by: Philip Withnall

Fixes: #1473 (closed)

Closes #1473 (closed)

Non-trivial backport of !1044 (merged) to gnome-41, due to GTK4 changes of some variable names in the diff. The structure of the changes is the same though.

Merge request reports