I've created an indeterminated progressbar for Tizen 4.0 using native C language:
Evas_Object* progressbar = elm_progressbar_add(parent);
evas_object_size_hint_align_set(progressbar, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_size_hint_weight_set(progressbar, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
elm_object_style_set(progressbar, "process/small");
elm_progressbar_pulse_set(progressbar, EINA_TRUE);
elm_progressbar_pulse(progressbar, EINA_TRUE);
elm_object_part_content_set(parent, "elm.progress", progressbar);
evas_object_show(progressbar);
Here is "the" official documentation: https://docs.tizen.org/application/native/guides/ui/efl/wearable/component-progressbar.
If I run the code above on my emulator (x86, Tizen 4.0), I get the expected result:
However when running on the watch, it's simply does not start:
What's wrong with the code above? I guess nothing. But their documentation is lacking information again and again.
Update
The issue persists only if you want to do it from an event handler:
elm_layout_signal_callback_add(layout, "mouse,clicked,1", "elm.*", show_loader_cb, layout);
static void show_loader_cb(void* data, Evas_Object* object, const char* emission, const char* source) {
Evas_Object* parent = reinterpret_cast<Evas_Object*>(data);
//PUT HERE THE CODE ABOVE
}
There seems to be no problem with your code.
But the progress not working (2nd image) is general status with
elm_progressbar_pulse(obj, EINA_FALSE);
Check this point once more.
And I'm not exactly sure of your intentions in the event handler part.
Do you ever want to add progress and work when you click on a layout?
If so, try this one,
evas_object_event_callback_add(layout, EVAS_CALLBACK_MOUSE_DOWN, show_loader_cb, layout);
I haven't seen your full code, but I guess show_loader_cb wasn't called via callback.