Play startup sound after the first defaults rescan is done. This fixed #1902.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34189 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -104,6 +104,7 @@ enum {
|
|||||||
// Raw port based communication
|
// Raw port based communication
|
||||||
enum {
|
enum {
|
||||||
ADDONSERVER_RESCAN_MEDIAADDON_FLAVORS = 0x50,
|
ADDONSERVER_RESCAN_MEDIAADDON_FLAVORS = 0x50,
|
||||||
|
ADDONSERVER_RESCAN_FINISHED_NOTIFY,
|
||||||
|
|
||||||
SERVER_MESSAGE_START = 0x100,
|
SERVER_MESSAGE_START = 0x100,
|
||||||
SERVER_REGISTER_APP,
|
SERVER_REGISTER_APP,
|
||||||
@@ -715,6 +716,9 @@ struct addonserver_rescan_mediaaddon_flavors_command : command_data {
|
|||||||
media_addon_id addonid;
|
media_addon_id addonid;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct addonserver_rescan_finished_notify_command : command_data {
|
||||||
|
};
|
||||||
|
|
||||||
struct server_register_mediaaddon_request : request_data {
|
struct server_register_mediaaddon_request : request_data {
|
||||||
xfer_entry_ref ref;
|
xfer_entry_ref ref;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -332,6 +332,9 @@ DefaultManager::RescanThread()
|
|||||||
} else {
|
} else {
|
||||||
ERROR("DefaultManager: Did not try to connect mixer and soundcard\n");
|
ERROR("DefaultManager: Did not try to connect mixer and soundcard\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
addonserver_rescan_finished_notify_command cmd;
|
||||||
|
SendToAddonServer(ADDONSERVER_RESCAN_FINISHED_NOTIFY, &cmd, sizeof(cmd));
|
||||||
|
|
||||||
printf("DefaultManager::RescanThread() leave\n");
|
printf("DefaultManager::RescanThread() leave\n");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,6 +29,7 @@
|
|||||||
|
|
||||||
#include <Alert.h>
|
#include <Alert.h>
|
||||||
#include <Application.h>
|
#include <Application.h>
|
||||||
|
#include <Beep.h>
|
||||||
#include <Directory.h>
|
#include <Directory.h>
|
||||||
#include <Entry.h>
|
#include <Entry.h>
|
||||||
#include <FindDirectory.h>
|
#include <FindDirectory.h>
|
||||||
@@ -101,6 +102,7 @@ private:
|
|||||||
port_id fControlPort;
|
port_id fControlPort;
|
||||||
thread_id fControlThread;
|
thread_id fControlThread;
|
||||||
bool fStartup;
|
bool fStartup;
|
||||||
|
bool fStartupSound;
|
||||||
|
|
||||||
typedef BApplication inherited;
|
typedef BApplication inherited;
|
||||||
};
|
};
|
||||||
@@ -108,7 +110,8 @@ private:
|
|||||||
|
|
||||||
MediaAddonServer::MediaAddonServer(const char *sig)
|
MediaAddonServer::MediaAddonServer(const char *sig)
|
||||||
: BApplication(sig),
|
: BApplication(sig),
|
||||||
fStartup(true)
|
fStartup(true),
|
||||||
|
fStartupSound(true)
|
||||||
{
|
{
|
||||||
CALLED();
|
CALLED();
|
||||||
fMediaRoster = BMediaRoster::Roster();
|
fMediaRoster = BMediaRoster::Roster();
|
||||||
@@ -168,7 +171,14 @@ MediaAddonServer::HandleMessage(int32 code, const void *data, size_t size)
|
|||||||
_DormantNodeManager->PutAddon(command->addonid);
|
_DormantNodeManager->PutAddon(command->addonid);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case ADDONSERVER_RESCAN_FINISHED_NOTIFY:
|
||||||
|
if (fStartupSound) {
|
||||||
|
system_beep(MEDIA_SOUNDS_STARTUP);
|
||||||
|
fStartupSound = false;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
ERROR("media_addon_server: received unknown message code %#08lx\n",code);
|
ERROR("media_addon_server: received unknown message code %#08lx\n",code);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user