When Amarok is started for the first time, it prompts to enter the country. Most countries aren't in the list, but there is a "none of the above (store won't work)" choice, so you can get past the prompt. However, Amarok doesn't deal with that choice correctly. Apparently, it expects that a country was or can be selected, even though that's only possible for a minority. When you didn't, a popup complains at each Amarok launch "Please select a valid country in the settings to make the store work".
I see 3 issues in the situation as a whole:
The expectation of being in a supported country is wrong, as suggested in #294613
Showing this dialog by default wastes time for a vast majority of users who probably have no idea what the Amazon MP3 Store is, or wouldn't want to (presumably) pay for a non-free service anyway.
If the computer moves, the country setting is duplicated and has to be changed twice.
I suggest to just use KDE workspace's country setting. If that's not possible, or undefined, only prompt when the user actually tries to use the store. Apparently, a user would access the store though Internet -> MP3 Music Store. The first access would be the time to ask.
At least, make it so that Amarok disables the plugin when none of the above is selected, or remove the expectation of a supported country.
For reference, I went to #amarok to verify that this problem affected others. We think it's likely that the message was meant to be a warning that the store is not available. If so, please at least amend the text. But such a warning should not be shown each launch anyway. It should be shown only when the user tries to access the store.
[2012-04-04 01:51:27] <chealer> hi. do others get this behavior on a fresh Amarok (2.5.0)? Having selected "none of the above (store won't work)" as country for Amazon MP3 music store, a message pops up when launching asking "Please select a valid country in the settings to make the store work"
[2012-04-04 03:33:04] <sven423> chealer: that's intended
[2012-04-04 11:38:54] <chealer> sven423: it's intended to ask the to select a country he's not actually in? or what
[2012-04-04 11:41:16] <Mamarok> chealer: it is intended to tell people they need to select a country if they want the shop to work
[2012-04-04 11:42:14] <chealer> Mamarok: I guess. the thing is it doesn't mention that if
[2012-04-04 11:42:34] <chealer> anyway, I think I have an answer. thanks
[2012-04-04 11:42:47] <Mamarok> yaw :)
*** Bug 294613 has been marked as a duplicate of this bug. ***
Git commit e4e0f1c1a5d77eb596886b1844dc3f3a18adef71 by Sven Krohlas.
Committed on 16/04/2012 at 13:11.
Pushed by krohlas into branch 'master'.
Do not show the missing Amazon location warning on startup if the service is hidden
This is annoying for users who do not want or cannot use the store.
M +1 -1 src/services/amazon/AmazonStore.cpp
diff --git a/src/services/amazon/AmazonStore.cpp b/src/services/amazon/AmazonStore.cpp
index 7846d1a..085b852 100644
@@ -284,7 +284,7 @@ AmazonStore::newSearchRequest( const QString request )
if( !(KCM.exec() == QDialog::Accepted) )
- else if( AmazonConfig::instance()->country() == QLatin1String( "none" ) )
+ else if( AmazonConfig::instance()->country() == QLatin1String( "none" ) && m_itemView->isVisible() ) // do not show the message on startup, if the service is not visible
// user explicitly said we are in a not supported country
Amarok::Components::logger()->longMessage( i18n( "<b>MP3 Music Store</b><br/><br/>Please select a valid country in the settings to make the store work." ) );
Setting status correctly.