summaryrefslogtreecommitdiff
path: root/src/lib/edje
diff options
context:
space:
mode:
authorDaniel Hirt <hirt.danny@gmail.com>2017-09-19 19:17:26 +0300
committerDaniel Hirt <hirt.danny@gmail.com>2017-09-20 09:19:33 +0300
commit380b3eb09a785bab5d3bbd4921712c103b3cddd4 (patch)
tree7378de67280fc880728685c755a9c64f73d645a1 /src/lib/edje
parent9efac538ccce5f22fde05824ae7e25857c10a412 (diff)
Edje: move IMF-related part_text API to legacy
Diffstat (limited to 'src/lib/edje')
-rw-r--r--src/lib/edje/Edje_Legacy.h392
-rw-r--r--src/lib/edje/edje_object.eo292
-rw-r--r--src/lib/edje/edje_util.c216
3 files changed, 540 insertions, 360 deletions
diff --git a/src/lib/edje/Edje_Legacy.h b/src/lib/edje/Edje_Legacy.h
index 28c69b6d77..2e1efc8ed4 100644
--- a/src/lib/edje/Edje_Legacy.h
+++ b/src/lib/edje/Edje_Legacy.h
@@ -2157,6 +2157,398 @@ EAPI char *edje_object_part_text_unescaped_get(const Edje_Object *obj, const cha
2157EAPI void edje_object_part_text_insert(Edje_Object *obj, const char *part, const char *text); 2157EAPI void edje_object_part_text_insert(Edje_Object *obj, const char *part, const char *text);
2158 2158
2159/** 2159/**
2160 * @brief Sets the autocapitalization type on the immodule.
2161 *
2162 * @param[in] part The part name
2163 * @param[in] autocapital_type The type of autocapitalization
2164 *
2165 * @since 1.1.0
2166 *
2167 * @ingroup Edje_Object
2168 */
2169EAPI void edje_object_part_text_autocapital_type_set(Edje_Object *obj, const char *part, Edje_Text_Autocapital_Type autocapital_type);
2170
2171/**
2172 * @brief Retrieves the autocapitalization type
2173 *
2174 * @param[in] part The part name
2175 *
2176 * @return The type of autocapitalization
2177 *
2178 * @since 1.1.0
2179 *
2180 * @ingroup Edje_Object
2181 */
2182EAPI Edje_Text_Autocapital_Type edje_object_part_text_autocapital_type_get(const Edje_Object *obj, const char *part);
2183
2184/**
2185 * @brief Sets whether the prediction is allowed or not.
2186 *
2187 * @param[in] part The part name
2188 * @param[in] prediction If @c true, the prediction feature is allowed.
2189 *
2190 * @since 1.2.0
2191 *
2192 * @ingroup Edje_Object
2193 */
2194EAPI void edje_object_part_text_prediction_allow_set(Edje_Object *obj, const char *part, Eina_Bool prediction);
2195
2196/**
2197 * @brief Gets whether the prediction is allowed or not.
2198 *
2199 * @param[in] part The part name
2200 *
2201 * @return If @c true, the prediction feature is allowed.
2202 *
2203 * @since 1.2.0
2204 *
2205 * @ingroup Edje_Object
2206 */
2207EAPI Eina_Bool edje_object_part_text_prediction_allow_get(const Edje_Object *obj, const char *part);
2208
2209/**
2210 * @brief Gets the input method context in entry.
2211 *
2212 * If ecore_imf was not available when edje was compiled, this function returns
2213 * @c null otherwise, the returned pointer is an Ecore_IMF
2214 *
2215 * @param[in] part The part name
2216 *
2217 * @return The input method context (Ecore_IMF_Context *) in entry
2218 *
2219 * @since 1.2.0
2220 *
2221 * @ingroup Edje_Object
2222 */
2223EAPI void *edje_object_part_text_imf_context_get(const Edje_Object *obj, const char *part);
2224
2225/**
2226 * @brief Resets the input method context if needed.
2227 *
2228 * This can be necessary in the case where modifying the buffer would confuse
2229 * on-going input method behavior
2230 *
2231 * @param[in] part The part name
2232 *
2233 * @since 1.2.0
2234 *
2235 * @ingroup Edje_Object
2236 */
2237EAPI void edje_object_part_text_imf_context_reset(const Edje_Object *obj, const char *part);
2238
2239/**
2240 * @brief Sets the input hint which allows input methods to fine-tune their
2241 * behavior.
2242 *
2243 * @param[in] part The part name
2244 * @param[in] input_hints Input hints
2245 *
2246 * @since 1.12.0
2247 *
2248 * @ingroup Edje_Object
2249 */
2250EAPI void edje_object_part_text_input_hint_set(Edje_Object *obj, const char *part, Edje_Input_Hints input_hints);
2251
2252/**
2253 * @brief Gets the value of input hint
2254 *
2255 * @param[in] part The part name
2256 *
2257 * @return Input hints
2258 *
2259 * @since 1.12.0
2260 *
2261 * @ingroup Edje_Object
2262 */
2263EAPI Edje_Input_Hints edje_object_part_text_input_hint_get(const Edje_Object *obj, const char *part);
2264
2265/**
2266 * @brief Shows the input panel (virtual keyboard) based on the input panel
2267 * property such as layout, autocapital types, and so on.
2268 *
2269 * Note that input panel is shown or hidden automatically according to the
2270 * focus state. This API can be used in the case of manually controlling by
2271 * using edje_object_part_text_input_panel_enabled_set.
2272 *
2273 * @param[in] part The part name
2274 *
2275 * @since 1.2.0
2276 *
2277 * @ingroup Edje_Object
2278 */
2279EAPI void edje_object_part_text_input_panel_show(const Edje_Object *obj, const char *part);
2280
2281/**
2282 * @brief Hides the input panel (virtual keyboard). See also
2283 * @ref edje_object_part_text_input_panel_show
2284 *
2285 * Note that input panel is shown or hidden automatically according to the
2286 * focus state. This API can be used in the case of manually controlling by
2287 * using edje_object_part_text_input_panel_enabled_set.
2288 *
2289 * @param[in] part The part name
2290 *
2291 * @since 1.2.0
2292 *
2293 * @ingroup Edje_Object
2294 */
2295EAPI void edje_object_part_text_input_panel_hide(const Edje_Object *obj, const char *part);
2296
2297/**
2298 * @brief Sets the input panel-specific data to deliver to the input panel.
2299 *
2300 * This API is used by applications to deliver specific data to the input
2301 * panel. The data format MUST be negotiated by both application and the input
2302 * panel. The size and format of data are defined by the input panel.
2303 *
2304 * @param[in] part The part name
2305 * @param[in] data The specific data to be set to the input panel.
2306 * @param[in] len The length of data, in bytes, to send to the input panel
2307 *
2308 * @since 1.2.0
2309 *
2310 * @ingroup Edje_Object
2311 */
2312EAPI void edje_object_part_text_input_panel_imdata_set(Edje_Object *obj, const char *part, const void *data, int len);
2313
2314/**
2315 * @brief Gets the specific data of the current active input panel.
2316 *
2317 * @param[in] part The part name
2318 * @param[in] data The specific data to be set to the input panel.
2319 * @param[out] len The length of data, in bytes, to send to the input panel
2320 *
2321 * @return FIXME: void needed here?
2322 *
2323 * @since 1.2.0
2324 *
2325 * @ingroup Edje_Object
2326 */
2327EAPI void edje_object_part_text_input_panel_imdata_get(const Edje_Object *obj, const char *part, void *data, int *len);
2328
2329/**
2330 * @brief Sets the layout of the input panel.
2331 *
2332 * The layout of the input panel or virtual keyboard can make it easier or
2333 * harder to enter content. This allows you to hint what kind of input you are
2334 * expecting to enter and thus have the input panel automatically come up with
2335 * the right mode.
2336 *
2337 * @param[in] part The part name
2338 * @param[in] layout Layout type of the input panel
2339 *
2340 * @since 1.1
2341 *
2342 * @ingroup Edje_Object
2343 */
2344EAPI void edje_object_part_text_input_panel_layout_set(Edje_Object *obj, const char *part, Edje_Input_Panel_Layout layout);
2345
2346/**
2347 * @brief Gets the layout of the input panel.
2348 *
2349 * See also @ref edje_object_part_text_input_panel_layout_set
2350 *
2351 * @param[in] part The part name
2352 *
2353 * @return Layout type of the input panel
2354 *
2355 * @since 1.1
2356 *
2357 * @ingroup Edje_Object
2358 */
2359EAPI Edje_Input_Panel_Layout edje_object_part_text_input_panel_layout_get(const Edje_Object *obj, const char *part);
2360
2361/**
2362 * @brief Sets the language mode of the input panel.
2363 *
2364 * This API can be used if you want to show the Alphabet keyboard.
2365 *
2366 * @param[in] part The part name
2367 * @param[in] lang The language to be set to the input panel.
2368 *
2369 * @since 1.2.0
2370 *
2371 * @ingroup Edje_Object
2372 */
2373EAPI void edje_object_part_text_input_panel_language_set(Edje_Object *obj, const char *part, Edje_Input_Panel_Lang lang);
2374
2375/**
2376 * @brief Gets the language mode of the input panel.
2377 *
2378 * See also @ref edje_object_part_text_input_panel_language_set for more
2379 * details.
2380 *
2381 * @param[in] part The part name
2382 *
2383 * @return The language to be set to the input panel.
2384 *
2385 * @since 1.2.0
2386 *
2387 * @ingroup Edje_Object
2388 */
2389EAPI Edje_Input_Panel_Lang edje_object_part_text_input_panel_language_get(const Edje_Object *obj, const char *part);
2390
2391/**
2392 * @brief Sets the layout variation of the input panel.
2393 *
2394 * The layout variation of the input panel or virtual keyboard can make it
2395 * easier or harder to enter content. This allows you to hint what kind of
2396 * input you are expecting to enter and thus have the input panel automatically
2397 * come up with the right mode.
2398 *
2399 * @param[in] part The part name
2400 * @param[in] variation Layout variation type
2401 *
2402 * @since 1.8
2403 *
2404 * @ingroup Edje_Object
2405 */
2406EAPI void edje_object_part_text_input_panel_layout_variation_set(Edje_Object *obj, const char *part, int variation);
2407
2408/**
2409 * @brief Gets the layout variation of the input panel.
2410 *
2411 * See also @ref edje_object_part_text_input_panel_layout_variation_set
2412 *
2413 * @param[in] part The part name
2414 *
2415 * @return Layout variation type
2416 *
2417 * @since 1.8
2418 *
2419 * @ingroup Edje_Object
2420 */
2421EAPI int edje_object_part_text_input_panel_layout_variation_get(const Edje_Object *obj, const char *part);
2422
2423/**
2424 * @brief Sets the attribute to show the input panel automatically.
2425 *
2426 * @param[in] part The part name
2427 * @param[in] enabled If @c true, the input panel is appeared when entry is
2428 * clicked or has a focus
2429 *
2430 * @since 1.1.0
2431 *
2432 * @ingroup Edje_Object
2433 */
2434EAPI void edje_object_part_text_input_panel_enabled_set(Edje_Object *obj, const char *part, Eina_Bool enabled);
2435
2436/**
2437 * @brief Retrieves the attribute to show the input panel automatically. See
2438 * also @ref edje_object_part_text_input_panel_enabled_set
2439 *
2440 * @param[in] part The part name
2441 *
2442 * @return If @c true, the input panel is appeared when entry is clicked or has
2443 * a focus
2444 *
2445 * @since 1.1.0
2446 *
2447 * @ingroup Edje_Object
2448 */
2449EAPI Eina_Bool edje_object_part_text_input_panel_enabled_get(const Edje_Object *obj, const char *part);
2450
2451/**
2452 * @brief Sets the return key on the input panel to be disabled.
2453 *
2454 * @param[in] part The part name
2455 * @param[in] disabled The state
2456 *
2457 * @since 1.2.0
2458 *
2459 * @ingroup Edje_Object
2460 */
2461EAPI void edje_object_part_text_input_panel_return_key_disabled_set(Edje_Object *obj, const char *part, Eina_Bool disabled);
2462
2463/**
2464 * @brief Gets whether the return key on the input panel should be disabled or
2465 * not.
2466 *
2467 * @param[in] part The part name
2468 *
2469 * @return The state
2470 *
2471 * @since 1.2.0
2472 *
2473 * @ingroup Edje_Object
2474 */
2475EAPI Eina_Bool edje_object_part_text_input_panel_return_key_disabled_get(const Edje_Object *obj, const char *part);
2476
2477/**
2478 * @brief Sets the "return" key type. This type is used to set string or icon
2479 * on the "return" key of the input panel.
2480 *
2481 * An input panel displays the string or icon associated with this type
2482 *
2483 * @param[in] part The part name
2484 * @param[in] return_key_type The type of "return" key on the input panel
2485 *
2486 * @since 1.2.0
2487 *
2488 * @ingroup Edje_Object
2489 */
2490EAPI void edje_object_part_text_input_panel_return_key_type_set(Edje_Object *obj, const char *part, Edje_Input_Panel_Return_Key_Type return_key_type);
2491
2492/**
2493 * @brief Gets the "return" key type.
2494 *
2495 * See also @ref edje_object_part_text_input_panel_return_key_type_set() for
2496 * more details
2497 *
2498 * @param[in] part The part name
2499 *
2500 * @return The type of "return" key on the input panel
2501 *
2502 * @since 1.2.0
2503 *
2504 * @ingroup Edje_Object
2505 */
2506EAPI Edje_Input_Panel_Return_Key_Type edje_object_part_text_input_panel_return_key_type_get(const Edje_Object *obj, const char *part);
2507
2508/**
2509 * @brief Sets the attribute to show the input panel in case of only an user's
2510 * explicit Mouse Up event. It doesn't request to show the input panel even
2511 * though it has focus.
2512 *
2513 * @param[in] part The part name
2514 * @param[in] ondemand If @c true, the input panel will be shown in case of
2515 * only Mouse up event. (Focus event will be ignored.)
2516 *
2517 * @since 1.9.0
2518 *
2519 * @ingroup Edje_Object
2520 */
2521EAPI void edje_object_part_text_input_panel_show_on_demand_set(Edje_Object *obj, const char *part, Eina_Bool ondemand);
2522
2523/**
2524 * @brief Gets the attribute to show the input panel in case of only an user's
2525 * explicit Mouse Up event.
2526 *
2527 * @param[in] part The part name
2528 *
2529 * @return If @c true, the input panel will be shown in case of only Mouse up
2530 * event. (Focus event will be ignored.)
2531 *
2532 * @since 1.9.0
2533 *
2534 * @ingroup Edje_Object
2535 */
2536EAPI Eina_Bool edje_object_part_text_input_panel_show_on_demand_get(const Edje_Object *obj, const char *part);
2537
2538/**
2539 * @brief Sets the prediction hint to use an intelligent reply suggestion
2540 * service.
2541 *
2542 * @param[in] part The part name
2543 * @param[in] prediction_hint Prediction hint
2544 *
2545 * @since 1.20.0
2546 *
2547 * @ingroup Edje_Object
2548 */
2549EAPI void edje_object_part_text_prediction_hint_set(Edje_Object *obj, const char *part, const char *prediction_hint);
2550
2551/**
2160 * @brief Whether this object is playing or not. 2552 * @brief Whether this object is playing or not.
2161 * 2553 *
2162 * This property indicates whether the object is running or not. If stopped (or 2554 * This property indicates whether the object is running or not. If stopped (or
diff --git a/src/lib/edje/edje_object.eo b/src/lib/edje/edje_object.eo
index 13293c7d5d..2463b8408e 100644
--- a/src/lib/edje/edje_object.eo
+++ b/src/lib/edje/edje_object.eo
@@ -353,42 +353,6 @@ class Edje.Object (Efl.Canvas.Group, Efl.File, Efl.Container, Efl.Part,
353 data: void_ptr; [[The data associated to the callback function.]] 353 data: void_ptr; [[The data associated to the callback function.]]
354 } 354 }
355 } 355 }
356 @property part_text_autocapital_type {
357 set {
358 [[Sets the autocapitalization type on the immodule.
359
360 @since 1.1.0]]
361 }
362 get {
363 [[Retrieves the autocapitalization type
364
365 @since 1.1.0]]
366 }
367 keys {
368 part: string; [[The part name]]
369 }
370 values {
371 autocapital_type: Edje.Text.Autocapital_Type; [[The type of autocapitalization]]
372 }
373 }
374 @property part_text_prediction_allow {
375 set {
376 [[Sets whether the prediction is allowed or not.
377
378 @since 1.2.0]]
379 }
380 get {
381 [[Gets whether the prediction is allowed or not.
382
383 @since 1.2.0]]
384 }
385 keys {
386 part: string; [[The part name]]
387 }
388 values {
389 prediction: bool; [[If $true, the prediction feature is allowed.]]
390 }
391 }
392 @property item_provider { 356 @property item_provider {
393 set { 357 set {
394 [[Sets the function that provides item objects for named items in an edje entry text 358 [[Sets the function that provides item objects for named items in an edje entry text
@@ -465,262 +429,6 @@ class Edje.Object (Efl.Canvas.Group, Efl.File, Efl.Container, Efl.Part,
465 part: string; [[The part name]] 429 part: string; [[The part name]]
466 } 430 }
467 } 431 }
468 @property part_text_imf_context {
469 get {
470 [[Gets the input method context in entry.
471
472 If ecore_imf was not available when edje was compiled, this function returns $null
473 otherwise, the returned pointer is an Ecore_IMF
474
475 @since 1.2.0]]
476 return: void_ptr; [[The input method context (Ecore_IMF_Context *) in entry]]
477 }
478 keys {
479 part: string; [[The part name]]
480 }
481 }
482 part_text_imf_context_reset @const {
483 [[Resets the input method context if needed.
484
485 This can be necessary in the case where modifying the buffer would confuse on-going input method behavior
486
487 @since 1.2.0]]
488 params {
489 @in part: string; [[The part name]]
490 }
491 }
492 @property part_text_input_hint {
493 set {
494 [[Sets the input hint which allows input methods to fine-tune their behavior.
495
496 @since 1.12.0]]
497 }
498 get {
499 [[Gets the value of input hint
500
501 @since 1.12.0]]
502 }
503 keys {
504 part: string; [[The part name]]
505 }
506 values {
507 input_hints: Edje.Input_Hints; [[Input hints]]
508 }
509 }
510 part_text_input_panel_show @const {
511 [[Shows the input panel (virtual keyboard) based on the input panel property such as layout, autocapital types, and so on.
512
513 Note that input panel is shown or hidden automatically according to the focus state.
514 This API can be used in the case of manually controlling by using edje_object_part_text_input_panel_enabled_set.
515
516 @since 1.2.0]]
517 params {
518 @in part: string; [[The part name]]
519 }
520 }
521 part_text_input_panel_hide @const {
522 [[Hides the input panel (virtual keyboard).
523 See also @.part_text_input_panel_show
524
525 Note that input panel is shown or hidden automatically according to the focus state.
526 This API can be used in the case of manually controlling by using edje_object_part_text_input_panel_enabled_set.
527
528 @since 1.2.0]]
529 params {
530 @in part: string; [[The part name]]
531 }
532 }
533 @property part_text_input_panel_imdata {
534 set {
535 [[Sets the input panel-specific data to deliver to the input panel.
536
537 This API is used by applications to deliver specific data to the input panel.
538 The data format MUST be negotiated by both application and the input panel.
539 The size and format of data are defined by the input panel.
540
541 @since 1.2.0]]
542 keys {
543 part: string; [[The part name]]
544 data: const(void_ptr); [[The specific data to be set to the input panel.]]
545 }
546 }
547 get {
548 [[Gets the specific data of the current active input panel.
549
550 @since 1.2.0]]
551 return: void; [[FIXME: void needed here?]]
552 keys {
553 part: string; [[The part name]]
554 data: void_ptr; [[The specific data to be set to the input panel.]]
555 }
556 }
557 values {
558 len: int; [[The length of data, in bytes, to send to the input panel]]
559 }
560 }
561 @property part_text_input_panel_layout {
562 set {
563 [[Sets the layout of the input panel.
564
565 The layout of the input panel or virtual keyboard can make it easier or
566 harder to enter content. This allows you to hint what kind of input you
567 are expecting to enter and thus have the input panel automatically
568 come up with the right mode.
569
570 @since 1.1]]
571 }
572 get {
573 [[Gets the layout of the input panel.
574
575 See also @.part_text_input_panel_layout.set
576
577 @since 1.1]]
578 }
579 keys {
580 part: string; [[The part name]]
581 }
582 values {
583 layout: Edje.Input_Panel.Layout; [[Layout type of the input panel]]
584 }
585 }
586 @property part_text_input_panel_language {
587 set {
588 [[Sets the language mode of the input panel.
589
590 This API can be used if you want to show the Alphabet keyboard.
591
592 @since 1.2.0]]
593 }
594 get {
595 [[Gets the language mode of the input panel.
596
597 See also @.part_text_input_panel_language.set for more details.
598
599 @since 1.2.0]]
600 }
601 keys {
602 part: string; [[The part name]]
603 }
604 values {
605 lang: Edje.Input_Panel.Lang; [[The language to be set to the input panel.]]
606 }
607 }
608 @property part_text_input_panel_layout_variation {
609 set {
610 [[Sets the layout variation of the input panel.
611
612 The layout variation of the input panel or virtual keyboard can make it easier or
613 harder to enter content. This allows you to hint what kind of input you
614 are expecting to enter and thus have the input panel automatically
615 come up with the right mode.
616
617 @since 1.8]]
618 }
619 get {
620 [[Gets the layout variation of the input panel.
621
622 See also @.part_text_input_panel_layout_variation.set
623
624 @since 1.8]]
625 }
626 keys {
627 part: string; [[The part name]]
628 }
629 values {
630 variation: int; [[Layout variation type]]
631 }
632 }
633 @property part_text_input_panel_enabled {
634 set {
635 [[Sets the attribute to show the input panel automatically.
636
637 @since 1.1.0]]
638 }
639 get {
640 [[Retrieves the attribute to show the input panel automatically.
641 See also @.part_text_input_panel_enabled.set
642
643 @since 1.1.0]]
644 }
645 keys {
646 part: string; [[The part name]]
647 }
648 values {
649 enabled: bool; [[If $true, the input panel is appeared when entry is clicked or has a focus]]
650 }
651 }
652 @property part_text_input_panel_return_key_disabled {
653 set {
654 [[Sets the return key on the input panel to be disabled.
655
656 @since 1.2.0]]
657 }
658 get {
659 [[Gets whether the return key on the input panel should be disabled or not.
660
661 @since 1.2.0]]
662 }
663 keys {
664 part: string; [[The part name]]
665 }
666 values {
667 disabled: bool; [[The state]]
668 }
669 }
670 @property part_text_input_panel_return_key_type {
671 set {
672 [[Sets the "return" key type. This type is used to set string or icon on the "return" key of the input panel.
673
674 An input panel displays the string or icon associated with this type
675
676 @since 1.2.0]]
677 }
678 get {
679 [[Gets the "return" key type.
680
681 See also @.part_text_input_panel_return_key_type.set() for more details
682
683 @since 1.2.0]]
684 }
685 keys {
686 part: string; [[The part name]]
687 }
688 values {
689 return_key_type: Edje.Input_Panel.Return_Key_Type; [[The type of "return" key on the input panel]]
690 }
691 }
692 @property part_text_input_panel_show_on_demand {
693 set {
694 [[Sets the attribute to show the input panel in case of only an user's explicit Mouse Up event.
695 It doesn't request to show the input panel even though it has focus.
696
697 @since 1.9.0]]
698 }
699 get {
700 [[Gets the attribute to show the input panel in case of only an user's explicit Mouse Up event.
701
702 @since 1.9.0]]
703 }
704 keys {
705 part: string; [[The part name]]
706 }
707 values {
708 ondemand: bool; [[If $true, the input panel will be shown in case of only Mouse up event. (Focus event will be ignored.)]]
709 }
710 }
711 @property part_text_prediction_hint {
712 set {
713 [[Sets the prediction hint to use an intelligent reply suggestion service.
714
715 @since 1.20.0]]
716 }
717 keys {
718 part: string; [[The part name]]
719 }
720 values {
721 prediction_hint: string; [[Prediction hint]]
722 }
723 }
724 /* TEXT PART APIS END ------------------------------------------------ */ 432 /* TEXT PART APIS END ------------------------------------------------ */
725 433
726 @property seat { 434 @property seat {
diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
index 99acd13ea2..67c18c6535 100644
--- a/src/lib/edje/edje_util.c
+++ b/src/lib/edje/edje_util.c
@@ -2091,22 +2091,6 @@ _edje_object_part_text_select_extend(Eo *obj EINA_UNUSED, Edje *ed, const char *
2091 _edje_entry_select_extend(rp); 2091 _edje_entry_select_extend(rp);
2092} 2092}
2093 2093
2094EOLIAN void *
2095_edje_object_part_text_imf_context_get(Eo *obj EINA_UNUSED, Edje *ed, const char *part)
2096{
2097 Edje_Real_Part *rp;
2098
2099 if ((!ed) || (!part)) return NULL;
2100
2101 rp = _edje_real_part_recursive_get(&ed, (char *)part);
2102 if (!rp) return NULL;
2103
2104 if (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
2105 return _edje_entry_imf_context_get(rp);
2106
2107 return NULL;
2108}
2109
2110EOLIAN Eina_Bool 2094EOLIAN Eina_Bool
2111_edje_object_part_text_cursor_next(Eo *obj EINA_UNUSED, Edje *ed, const char *part, Edje_Cursor cur) 2095_edje_object_part_text_cursor_next(Eo *obj EINA_UNUSED, Edje *ed, const char *part, Edje_Cursor cur)
2112{ 2096{
@@ -2289,10 +2273,32 @@ _edje_object_part_text_cursor_pos_get(Eo *obj EINA_UNUSED, Edje *ed, const char
2289 return ret; 2273 return ret;
2290} 2274}
2291 2275
2292EOLIAN void 2276EAPI void *
2293_edje_object_part_text_imf_context_reset(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2277edje_object_part_text_imf_context_get(const Eo *obj, const char *part)
2278{
2279 Edje_Real_Part *rp;
2280 Edje *ed;
2281
2282 ed = _edje_fetch(obj);
2283
2284 if ((!ed) || (!part)) return NULL;
2285
2286 rp = _edje_real_part_recursive_get(&ed, (char *)part);
2287 if (!rp) return NULL;
2288
2289 if (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
2290 return _edje_entry_imf_context_get(rp);
2291
2292 return NULL;
2293}
2294
2295EAPI void
2296edje_object_part_text_imf_context_reset(const Eo *obj, const char *part)
2294{ 2297{
2295 Edje_Real_Part *rp; 2298 Edje_Real_Part *rp;
2299 Edje *ed;
2300
2301 ed = _edje_fetch(obj);
2296 2302
2297 if ((!ed) || (!part)) return; 2303 if ((!ed) || (!part)) return;
2298 rp = _edje_real_part_recursive_get(&ed, part); 2304 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2303,10 +2309,13 @@ _edje_object_part_text_imf_context_reset(Eo *obj EINA_UNUSED, Edje *ed, const ch
2303 } 2309 }
2304} 2310}
2305 2311
2306EOLIAN void 2312EAPI void
2307_edje_object_part_text_input_panel_layout_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, Edje_Input_Panel_Layout layout) 2313edje_object_part_text_input_panel_layout_set(Eo *obj, const char *part, Edje_Input_Panel_Layout layout)
2308{ 2314{
2309 Edje_Real_Part *rp; 2315 Edje_Real_Part *rp;
2316 Edje *ed;
2317
2318 ed = _edje_fetch(obj);
2310 2319
2311 if ((!ed) || (!part)) return; 2320 if ((!ed) || (!part)) return;
2312 rp = _edje_real_part_recursive_get(&ed, part); 2321 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2317,12 +2326,15 @@ _edje_object_part_text_input_panel_layout_set(Eo *obj EINA_UNUSED, Edje *ed, con
2317 } 2326 }
2318} 2327}
2319 2328
2320EOLIAN Edje_Input_Panel_Layout 2329EAPI Edje_Input_Panel_Layout
2321_edje_object_part_text_input_panel_layout_get(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2330edje_object_part_text_input_panel_layout_get(const Eo *obj, const char *part)
2322{ 2331{
2323 Edje_Input_Panel_Layout ret; 2332 Edje_Input_Panel_Layout ret;
2324 Edje_Real_Part *rp; 2333 Edje_Real_Part *rp;
2325 ret = EDJE_INPUT_PANEL_LAYOUT_INVALID; 2334 ret = EDJE_INPUT_PANEL_LAYOUT_INVALID;
2335 Edje *ed;
2336
2337 ed = _edje_fetch(obj);
2326 2338
2327 if ((!ed) || (!part)) return ret; 2339 if ((!ed) || (!part)) return ret;
2328 rp = _edje_real_part_recursive_get(&ed, part); 2340 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2335,10 +2347,13 @@ _edje_object_part_text_input_panel_layout_get(Eo *obj EINA_UNUSED, Edje *ed, con
2335 return ret; 2347 return ret;
2336} 2348}
2337 2349
2338EOLIAN void 2350EAPI void
2339_edje_object_part_text_input_panel_layout_variation_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, int variation) 2351edje_object_part_text_input_panel_layout_variation_set(Eo *obj, const char *part, int variation)
2340{ 2352{
2341 Edje_Real_Part *rp; 2353 Edje_Real_Part *rp;
2354 Edje *ed;
2355
2356 ed = _edje_fetch(obj);
2342 2357
2343 if ((!ed) || (!part)) return; 2358 if ((!ed) || (!part)) return;
2344 rp = _edje_real_part_recursive_get(&ed, part); 2359 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2349,12 +2364,15 @@ _edje_object_part_text_input_panel_layout_variation_set(Eo *obj EINA_UNUSED, Edj
2349 } 2364 }
2350} 2365}
2351 2366
2352EOLIAN int 2367EAPI int
2353_edje_object_part_text_input_panel_layout_variation_get(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2368edje_object_part_text_input_panel_layout_variation_get(const Eo *obj, const char *part)
2354{ 2369{
2355 int r; 2370 int r;
2356 2371
2357 Edje_Real_Part *rp; 2372 Edje_Real_Part *rp;
2373 Edje *ed;
2374
2375 ed = _edje_fetch(obj);
2358 2376
2359 r = 0; 2377 r = 0;
2360 if ((!ed) || (!part)) return r; 2378 if ((!ed) || (!part)) return r;
@@ -2367,11 +2385,13 @@ _edje_object_part_text_input_panel_layout_variation_get(Eo *obj EINA_UNUSED, Edj
2367 return r; 2385 return r;
2368} 2386}
2369 2387
2370EOLIAN void 2388EAPI void
2371_edje_object_part_text_autocapital_type_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, Edje_Text_Autocapital_Type autocapital_type) 2389edje_object_part_text_autocapital_type_set(Eo *obj, const char *part, Edje_Text_Autocapital_Type autocapital_type)
2372{ 2390{
2373 Edje_Real_Part *rp; 2391 Edje_Real_Part *rp;
2392 Edje *ed;
2374 2393
2394 ed = _edje_fetch(obj);
2375 if ((!ed) || (!part)) return; 2395 if ((!ed) || (!part)) return;
2376 rp = _edje_real_part_recursive_get(&ed, part); 2396 rp = _edje_real_part_recursive_get(&ed, part);
2377 if (!rp) return; 2397 if (!rp) return;
@@ -2381,12 +2401,15 @@ _edje_object_part_text_autocapital_type_set(Eo *obj EINA_UNUSED, Edje *ed, const
2381 } 2401 }
2382} 2402}
2383 2403
2384EOLIAN Edje_Text_Autocapital_Type 2404EAPI Edje_Text_Autocapital_Type
2385_edje_object_part_text_autocapital_type_get(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2405edje_object_part_text_autocapital_type_get(const Eo *obj, const char *part)
2386{ 2406{
2387 Edje_Text_Autocapital_Type ret; 2407 Edje_Text_Autocapital_Type ret;
2388 Edje_Real_Part *rp; 2408 Edje_Real_Part *rp;
2389 ret = EDJE_TEXT_AUTOCAPITAL_TYPE_NONE; 2409 ret = EDJE_TEXT_AUTOCAPITAL_TYPE_NONE;
2410 Edje *ed;
2411
2412 ed = _edje_fetch(obj);
2390 2413
2391 if ((!ed) || (!part)) return ret; 2414 if ((!ed) || (!part)) return ret;
2392 rp = _edje_real_part_recursive_get(&ed, part); 2415 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2399,10 +2422,13 @@ _edje_object_part_text_autocapital_type_get(Eo *obj EINA_UNUSED, Edje *ed, const
2399 return ret; 2422 return ret;
2400} 2423}
2401 2424
2402EOLIAN void 2425EAPI void
2403_edje_object_part_text_prediction_allow_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, Eina_Bool prediction) 2426edje_object_part_text_prediction_allow_set(Eo *obj, const char *part, Eina_Bool prediction)
2404{ 2427{
2405 Edje_Real_Part *rp; 2428 Edje_Real_Part *rp;
2429 Edje *ed;
2430
2431 ed = _edje_fetch(obj);
2406 2432
2407 if ((!ed) || (!part)) return; 2433 if ((!ed) || (!part)) return;
2408 rp = _edje_real_part_recursive_get(&ed, part); 2434 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2413,12 +2439,15 @@ _edje_object_part_text_prediction_allow_set(Eo *obj EINA_UNUSED, Edje *ed, const
2413 } 2439 }
2414} 2440}
2415 2441
2416EOLIAN Eina_Bool 2442EAPI Eina_Bool
2417_edje_object_part_text_prediction_allow_get(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2443edje_object_part_text_prediction_allow_get(const Eo *obj, const char *part)
2418{ 2444{
2419 Eina_Bool ret; 2445 Eina_Bool ret;
2420 Edje_Real_Part *rp; 2446 Edje_Real_Part *rp;
2421 ret = EINA_FALSE; 2447 ret = EINA_FALSE;
2448 Edje *ed;
2449
2450 ed = _edje_fetch(obj);
2422 2451
2423 if ((!ed) || (!part)) return ret; 2452 if ((!ed) || (!part)) return ret;
2424 rp = _edje_real_part_recursive_get(&ed, part); 2453 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2431,10 +2460,13 @@ _edje_object_part_text_prediction_allow_get(Eo *obj EINA_UNUSED, Edje *ed, const
2431 return ret; 2460 return ret;
2432} 2461}
2433 2462
2434EOLIAN void 2463EAPI void
2435_edje_object_part_text_input_hint_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, Edje_Input_Hints input_hints) 2464edje_object_part_text_input_hint_set(Eo *obj, const char *part, Edje_Input_Hints input_hints)
2436{ 2465{
2437 Edje_Real_Part *rp; 2466 Edje_Real_Part *rp;
2467 Edje *ed;
2468
2469 ed = _edje_fetch(obj);
2438 2470
2439 if ((!ed) || (!part)) return; 2471 if ((!ed) || (!part)) return;
2440 rp = _edje_real_part_recursive_get(&ed, part); 2472 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2445,10 +2477,13 @@ _edje_object_part_text_input_hint_set(Eo *obj EINA_UNUSED, Edje *ed, const char
2445 } 2477 }
2446} 2478}
2447 2479
2448EOLIAN Edje_Input_Hints 2480EAPI Edje_Input_Hints
2449_edje_object_part_text_input_hint_get(const Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2481edje_object_part_text_input_hint_get(const Eo *obj, const char *part)
2450{ 2482{
2451 Edje_Real_Part *rp; 2483 Edje_Real_Part *rp;
2484 Edje *ed;
2485
2486 ed = _edje_fetch(obj);
2452 2487
2453 if ((!ed) || (!part)) return EINA_FALSE; 2488 if ((!ed) || (!part)) return EINA_FALSE;
2454 rp = _edje_real_part_recursive_get(&ed, part); 2489 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2460,10 +2495,13 @@ _edje_object_part_text_input_hint_get(const Eo *obj EINA_UNUSED, Edje *ed, const
2460 return EINA_FALSE; 2495 return EINA_FALSE;
2461} 2496}
2462 2497
2463EOLIAN void 2498EAPI void
2464_edje_object_part_text_input_panel_enabled_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, Eina_Bool enabled) 2499edje_object_part_text_input_panel_enabled_set(Eo *obj, const char *part, Eina_Bool enabled)
2465{ 2500{
2466 Edje_Real_Part *rp; 2501 Edje_Real_Part *rp;
2502 Edje *ed;
2503
2504 ed = _edje_fetch(obj);
2467 2505
2468 if ((!ed) || (!part)) return; 2506 if ((!ed) || (!part)) return;
2469 rp = _edje_real_part_recursive_get(&ed, part); 2507 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2474,12 +2512,15 @@ _edje_object_part_text_input_panel_enabled_set(Eo *obj EINA_UNUSED, Edje *ed, co
2474 } 2512 }
2475} 2513}
2476 2514
2477EOLIAN Eina_Bool 2515EAPI Eina_Bool
2478_edje_object_part_text_input_panel_enabled_get(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2516edje_object_part_text_input_panel_enabled_get(const Eo *obj, const char *part)
2479{ 2517{
2480 Eina_Bool ret; 2518 Eina_Bool ret;
2481 Edje_Real_Part *rp; 2519 Edje_Real_Part *rp;
2482 ret = EINA_FALSE; 2520 ret = EINA_FALSE;
2521 Edje *ed;
2522
2523 ed = _edje_fetch(obj);
2483 2524
2484 if ((!ed) || (!part)) return ret; 2525 if ((!ed) || (!part)) return ret;
2485 rp = _edje_real_part_recursive_get(&ed, part); 2526 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2492,10 +2533,13 @@ _edje_object_part_text_input_panel_enabled_get(Eo *obj EINA_UNUSED, Edje *ed, co
2492 return ret; 2533 return ret;
2493} 2534}
2494 2535
2495EOLIAN void 2536EAPI void
2496_edje_object_part_text_input_panel_show(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2537edje_object_part_text_input_panel_show(const Eo *obj, const char *part)
2497{ 2538{
2498 Edje_Real_Part *rp; 2539 Edje_Real_Part *rp;
2540 Edje *ed;
2541
2542 ed = _edje_fetch(obj);
2499 2543
2500 if ((!ed) || (!part)) return; 2544 if ((!ed) || (!part)) return;
2501 rp = _edje_real_part_recursive_get(&ed, part); 2545 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2504,10 +2548,13 @@ _edje_object_part_text_input_panel_show(Eo *obj EINA_UNUSED, Edje *ed, const cha
2504 _edje_entry_input_panel_show(rp); 2548 _edje_entry_input_panel_show(rp);
2505} 2549}
2506 2550
2507EOLIAN void 2551EAPI void
2508_edje_object_part_text_input_panel_hide(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2552edje_object_part_text_input_panel_hide(const Eo *obj, const char *part)
2509{ 2553{
2510 Edje_Real_Part *rp; 2554 Edje_Real_Part *rp;
2555 Edje *ed;
2556
2557 ed = _edje_fetch(obj);
2511 2558
2512 if ((!ed) || (!part)) return; 2559 if ((!ed) || (!part)) return;
2513 rp = _edje_real_part_recursive_get(&ed, part); 2560 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2516,10 +2563,13 @@ _edje_object_part_text_input_panel_hide(Eo *obj EINA_UNUSED, Edje *ed, const cha
2516 _edje_entry_input_panel_hide(rp); 2563 _edje_entry_input_panel_hide(rp);
2517} 2564}
2518 2565
2519EOLIAN void 2566EAPI void
2520_edje_object_part_text_input_panel_language_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, Edje_Input_Panel_Lang lang) 2567edje_object_part_text_input_panel_language_set(Eo *obj, const char *part, Edje_Input_Panel_Lang lang)
2521{ 2568{
2522 Edje_Real_Part *rp; 2569 Edje_Real_Part *rp;
2570 Edje *ed;
2571
2572 ed = _edje_fetch(obj);
2523 2573
2524 if ((!ed) || (!part)) return; 2574 if ((!ed) || (!part)) return;
2525 rp = _edje_real_part_recursive_get(&ed, part); 2575 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2530,12 +2580,15 @@ _edje_object_part_text_input_panel_language_set(Eo *obj EINA_UNUSED, Edje *ed, c
2530 } 2580 }
2531} 2581}
2532 2582
2533EOLIAN Edje_Input_Panel_Lang 2583EAPI Edje_Input_Panel_Lang
2534_edje_object_part_text_input_panel_language_get(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2584edje_object_part_text_input_panel_language_get(const Eo *obj, const char *part)
2535{ 2585{
2536 Edje_Input_Panel_Lang ret; 2586 Edje_Input_Panel_Lang ret;
2537 Edje_Real_Part *rp; 2587 Edje_Real_Part *rp;
2538 ret = EDJE_INPUT_PANEL_LANG_AUTOMATIC; 2588 ret = EDJE_INPUT_PANEL_LANG_AUTOMATIC;
2589 Edje *ed;
2590
2591 ed = _edje_fetch(obj);
2539 2592
2540 if ((!ed) || (!part)) return ret; 2593 if ((!ed) || (!part)) return ret;
2541 rp = _edje_real_part_recursive_get(&ed, part); 2594 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2548,10 +2601,13 @@ _edje_object_part_text_input_panel_language_get(Eo *obj EINA_UNUSED, Edje *ed, c
2548 return ret; 2601 return ret;
2549} 2602}
2550 2603
2551EOLIAN void 2604EAPI void
2552_edje_object_part_text_input_panel_imdata_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, const void *data, int len) 2605edje_object_part_text_input_panel_imdata_set(Eo *obj, const char *part, const void *data, int len)
2553{ 2606{
2554 Edje_Real_Part *rp; 2607 Edje_Real_Part *rp;
2608 Edje *ed;
2609
2610 ed = _edje_fetch(obj);
2555 2611
2556 if ((!ed) || (!part)) return; 2612 if ((!ed) || (!part)) return;
2557 rp = _edje_real_part_recursive_get(&ed, part); 2613 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2562,10 +2618,13 @@ _edje_object_part_text_input_panel_imdata_set(Eo *obj EINA_UNUSED, Edje *ed, con
2562 } 2618 }
2563} 2619}
2564 2620
2565EOLIAN void 2621EAPI void
2566_edje_object_part_text_input_panel_imdata_get(Eo *obj EINA_UNUSED, Edje *ed, const char *part, void *data, int *len) 2622edje_object_part_text_input_panel_imdata_get(const Eo *obj, const char *part, void *data, int *len)
2567{ 2623{
2568 Edje_Real_Part *rp; 2624 Edje_Real_Part *rp;
2625 Edje *ed;
2626
2627 ed = _edje_fetch(obj);
2569 2628
2570 if ((!ed) || (!part)) return; 2629 if ((!ed) || (!part)) return;
2571 rp = _edje_real_part_recursive_get(&ed, part); 2630 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2576,10 +2635,13 @@ _edje_object_part_text_input_panel_imdata_get(Eo *obj EINA_UNUSED, Edje *ed, con
2576 } 2635 }
2577} 2636}
2578 2637
2579EOLIAN void 2638EAPI void
2580_edje_object_part_text_input_panel_return_key_type_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, Edje_Input_Panel_Return_Key_Type return_key_type) 2639edje_object_part_text_input_panel_return_key_type_set(Eo *obj, const char *part, Edje_Input_Panel_Return_Key_Type return_key_type)
2581{ 2640{
2582 Edje_Real_Part *rp; 2641 Edje_Real_Part *rp;
2642 Edje *ed;
2643
2644 ed = _edje_fetch(obj);
2583 2645
2584 if ((!ed) || (!part)) return; 2646 if ((!ed) || (!part)) return;
2585 rp = _edje_real_part_recursive_get(&ed, part); 2647 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2590,12 +2652,15 @@ _edje_object_part_text_input_panel_return_key_type_set(Eo *obj EINA_UNUSED, Edje
2590 } 2652 }
2591} 2653}
2592 2654
2593EOLIAN Edje_Input_Panel_Return_Key_Type 2655EAPI Edje_Input_Panel_Return_Key_Type
2594_edje_object_part_text_input_panel_return_key_type_get(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2656edje_object_part_text_input_panel_return_key_type_get(const Eo *obj, const char *part)
2595{ 2657{
2596 Edje_Input_Panel_Return_Key_Type ret; 2658 Edje_Input_Panel_Return_Key_Type ret;
2597 Edje_Real_Part *rp; 2659 Edje_Real_Part *rp;
2598 ret = EDJE_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; 2660 ret = EDJE_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT;
2661 Edje *ed;
2662
2663 ed = _edje_fetch(obj);
2599 2664
2600 if ((!ed) || (!part)) return ret; 2665 if ((!ed) || (!part)) return ret;
2601 rp = _edje_real_part_recursive_get(&ed, part); 2666 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2608,10 +2673,13 @@ _edje_object_part_text_input_panel_return_key_type_get(Eo *obj EINA_UNUSED, Edje
2608 return ret; 2673 return ret;
2609} 2674}
2610 2675
2611EOLIAN void 2676EAPI void
2612_edje_object_part_text_input_panel_return_key_disabled_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, Eina_Bool disabled) 2677edje_object_part_text_input_panel_return_key_disabled_set(Eo *obj, const char *part, Eina_Bool disabled)
2613{ 2678{
2614 Edje_Real_Part *rp; 2679 Edje_Real_Part *rp;
2680 Edje *ed;
2681
2682 ed = _edje_fetch(obj);
2615 2683
2616 if ((!ed) || (!part)) return; 2684 if ((!ed) || (!part)) return;
2617 rp = _edje_real_part_recursive_get(&ed, part); 2685 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2622,12 +2690,15 @@ _edje_object_part_text_input_panel_return_key_disabled_set(Eo *obj EINA_UNUSED,
2622 } 2690 }
2623} 2691}
2624 2692
2625EOLIAN Eina_Bool 2693EAPI Eina_Bool
2626_edje_object_part_text_input_panel_return_key_disabled_get(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2694edje_object_part_text_input_panel_return_key_disabled_get(const Eo *obj, const char *part)
2627{ 2695{
2628 Eina_Bool ret; 2696 Eina_Bool ret;
2629 Edje_Real_Part *rp; 2697 Edje_Real_Part *rp;
2698 Edje *ed;
2699
2630 ret = EINA_FALSE; 2700 ret = EINA_FALSE;
2701 ed = _edje_fetch(obj);
2631 2702
2632 if ((!ed) || (!part)) return ret; 2703 if ((!ed) || (!part)) return ret;
2633 rp = _edje_real_part_recursive_get(&ed, part); 2704 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2640,10 +2711,13 @@ _edje_object_part_text_input_panel_return_key_disabled_get(Eo *obj EINA_UNUSED,
2640 return ret; 2711 return ret;
2641} 2712}
2642 2713
2643EOLIAN void 2714EAPI void
2644_edje_object_part_text_input_panel_show_on_demand_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, Eina_Bool ondemand) 2715edje_object_part_text_input_panel_show_on_demand_set(Eo *obj, const char *part, Eina_Bool ondemand)
2645{ 2716{
2646 Edje_Real_Part *rp; 2717 Edje_Real_Part *rp;
2718 Edje *ed;
2719
2720 ed = _edje_fetch(obj);
2647 2721
2648 if ((!ed) || (!part)) return; 2722 if ((!ed) || (!part)) return;
2649 rp = _edje_real_part_recursive_get(&ed, part); 2723 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2654,12 +2728,15 @@ _edje_object_part_text_input_panel_show_on_demand_set(Eo *obj EINA_UNUSED, Edje
2654 } 2728 }
2655} 2729}
2656 2730
2657EOLIAN Eina_Bool 2731EAPI Eina_Bool
2658_edje_object_part_text_input_panel_show_on_demand_get(Eo *obj EINA_UNUSED, Edje *ed, const char *part) 2732edje_object_part_text_input_panel_show_on_demand_get(const Eo *obj, const char *part)
2659{ 2733{
2660 Eina_Bool ret; 2734 Eina_Bool ret;
2661 Edje_Real_Part *rp; 2735 Edje_Real_Part *rp;
2736 Edje *ed;
2737
2662 ret = EINA_FALSE; 2738 ret = EINA_FALSE;
2739 ed = _edje_fetch(obj);
2663 2740
2664 if ((!ed) || (!part)) return ret; 2741 if ((!ed) || (!part)) return ret;
2665 rp = _edje_real_part_recursive_get(&ed, part); 2742 rp = _edje_real_part_recursive_get(&ed, part);
@@ -2672,10 +2749,13 @@ _edje_object_part_text_input_panel_show_on_demand_get(Eo *obj EINA_UNUSED, Edje
2672 return ret; 2749 return ret;
2673} 2750}
2674 2751
2675EOLIAN void 2752EAPI void
2676_edje_object_part_text_prediction_hint_set(Eo *obj EINA_UNUSED, Edje *ed, const char *part, const char *prediction_hint) 2753edje_object_part_text_prediction_hint_set(Eo *obj, const char *part, const char *prediction_hint)
2677{ 2754{
2678 Edje_Real_Part *rp; 2755 Edje_Real_Part *rp;
2756 Edje *ed;
2757
2758 ed = _edje_fetch(obj);
2679 2759
2680 if ((!ed) || (!part)) return; 2760 if ((!ed) || (!part)) return;
2681 rp = _edje_real_part_recursive_get(&ed, part); 2761 rp = _edje_real_part_recursive_get(&ed, part);