: WatchMirror(win), cb_(cb), cb_data_(cb_data) {}
void OnAdded(const ISharableWatch& watch) override {
ISharableWatch& w = const_cast<ISharableWatch&>(watch);
- cb_.watch_mirror_lifecycle_added_cb(reinterpret_cast<sharable_watch_h>(&w), cb_data_);
+ Watch* wa = dynamic_cast<Watch*>(&w);
+ cb_.watch_mirror_lifecycle_added_cb(reinterpret_cast<sharable_watch_h>(wa), cb_data_);
}
void OnUpdated(const ISharableWatch& watch) override {
ISharableWatch& w = const_cast<ISharableWatch&>(watch);
- cb_.watch_mirror_lifecycle_updated_cb(reinterpret_cast<sharable_watch_h>(&w), watch.GetCurrentImage(), cb_data_);
+ Watch* wa = dynamic_cast<Watch*>(&w);
+ cb_.watch_mirror_lifecycle_updated_cb(reinterpret_cast<sharable_watch_h>(wa), watch.GetCurrentImage(), cb_data_);
}
void OnRemoved(const ISharableWatch& watch) override {
ISharableWatch& w = const_cast<ISharableWatch&>(watch);
- cb_.watch_mirror_lifecycle_removed_cb(reinterpret_cast<sharable_watch_h>(&w), cb_data_);
+ Watch* wa = dynamic_cast<Watch*>(&w);
+ cb_.watch_mirror_lifecycle_removed_cb(reinterpret_cast<sharable_watch_h>(wa), cb_data_);
}
void OnChanged(const ISharableWatch& watch) override {
ISharableWatch& w = const_cast<ISharableWatch&>(watch);
- cb_.watch_mirror_lifecycle_changed_cb(reinterpret_cast<sharable_watch_h>(&w), cb_data_);
+ Watch* wa = dynamic_cast<Watch*>(&w);
+ cb_.watch_mirror_lifecycle_changed_cb(reinterpret_cast<sharable_watch_h>(wa), cb_data_);
}
void OnAmbientChanged(bool enter, tizen_base::Bundle& extra) override {