}
}
-EAPI void
+E_API void
+e_client_util_move_without_frame(E_Client *ec, int x, int y)
+{
+ if (!ec) return;
+ e_comp_object_frame_xy_adjust(ec->frame, x, y, &x, &y);
+ evas_object_move(ec->frame, x, y);
+}
+
+E_API void
+e_client_util_resize_without_frame(E_Client *ec, int w, int h)
+{
+ if (!ec) return;
+ e_comp_object_frame_wh_adjust(ec->frame, w, h, &w, &h);
+ evas_object_resize(ec->frame, w, h);
+ e_client_stay_within_canvas_margin(ec);
+}
+
+E_API void
e_client_util_move_resize_without_frame(E_Client *ec, int x, int y, int w, int h)
{
if (!ec) return;
}
}
+E_API Eina_Bool
+e_client_util_ignored_get(const E_Client *ec)
+{
+ if (!ec) return EINA_TRUE;
+ return ec->override || ec->input_only || ec->ignored;
+}
+
+E_API Ecore_Window
+e_client_util_win_get(const E_Client *ec)
+{
+ if (!ec) return 0;
+ if (!ec->pixmap) return 0;
+ return e_pixmap_window_get(ec->pixmap);
+}
+
+E_API Eina_Bool
+e_client_util_moving_get(const E_Client *ec)
+{
+ if (!ec) return EINA_FALSE;
+ return ec->moving;
+}
+
+E_API Eina_Bool
+e_client_util_resizing_get(const E_Client *ec)
+{
+ if (!ec) return EINA_FALSE;
+ return (ec->resize_mode != E_POINTER_RESIZE_NONE);
+}
+
+E_API Eina_Bool
+e_client_util_borderless(const E_Client *ec)
+{
+ if (!ec) return EINA_FALSE;
+ return (ec->borderless || (!ec->border.name) || (!strcmp(ec->border.name, "borderless")));
+}
+
+E_API Eina_Bool
+e_client_util_shadow_state_get(const E_Client *ec)
+{
+ Eina_Bool on;
+ if (!ec) return EINA_FALSE;
+ if (ec->argb)
+ {
+ return (!ec->borderless) && (ec->bordername || (ec->border.name && strcmp(ec->border.name, "borderless")));
+ }
+ on = !ec->e.state.video;
+ if (on)
+ on = !ec->fullscreen;
+ return on;
+}
+
+E_API Eina_Stringshare *
+e_client_util_name_get(const E_Client *ec)
+{
+ if (!ec) return NULL;
+ if (ec->netwm.name)
+ return ec->netwm.name;
+ else if (ec->icccm.title)
+ return ec->icccm.title;
+ return NULL;
+}
+
+E_API Eina_Bool
+e_client_util_is_popup(const E_Client *ec)
+{
+ if (!ec) return EINA_FALSE;
+ switch (ec->netwm.type)
+ {
+ case E_WINDOW_TYPE_MENU:
+ case E_WINDOW_TYPE_SPLASH:
+ case E_WINDOW_TYPE_DROPDOWN_MENU:
+ case E_WINDOW_TYPE_POPUP_MENU:
+ case E_WINDOW_TYPE_TOOLTIP:
+ case E_WINDOW_TYPE_NOTIFICATION:
+ case E_WINDOW_TYPE_COMBO:
+ case E_WINDOW_TYPE_DND:
+ return EINA_TRUE;
+ default: break;
+ }
+ return EINA_FALSE;
+}
+
static void
_e_input_thread_client_layer_set(void *data)
{
*
* @see e_client_move()
*/
-static inline void
-e_client_util_move_without_frame(E_Client *ec, int x, int y)
-{
- if (!ec) return;
- e_comp_object_frame_xy_adjust(ec->frame, x, y, &x, &y);
- evas_object_move(ec->frame, x, y);
-}
+E_API void e_client_util_move_without_frame(E_Client *ec, int x, int y);
/**
* Resize window to values that do not account client decorations yet.
*
* @see e_client_resize()
*/
-static inline void
-e_client_util_resize_without_frame(E_Client *ec, int w, int h)
-{
- if (!ec) return;
- e_comp_object_frame_wh_adjust(ec->frame, w, h, &w, &h);
- evas_object_resize(ec->frame, w, h);
- e_client_stay_within_canvas_margin(ec);
-}
+E_API void e_client_util_resize_without_frame(E_Client *ec, int w, int h);
/**
* Move and resize window to values that do not account for client decorations yet.
*/
E_API void e_client_util_move_resize_without_frame(E_Client *ec, int x, int y, int w, int h);
-static inline Eina_Bool
-e_client_util_ignored_get(const E_Client *ec)
-{
- if (!ec) return EINA_TRUE;
- return ec->override || ec->input_only || ec->ignored;
-}
-
-static inline Ecore_Window
-e_client_util_win_get(const E_Client *ec)
-{
- if (!ec) return 0;
- if (!ec->pixmap) return 0;
- return e_pixmap_window_get(ec->pixmap);
-}
-
-static inline Eina_Bool
-e_client_util_moving_get(const E_Client *ec)
-{
- if (!ec) return EINA_FALSE;
- return ec->moving;
-}
-
-static inline Eina_Bool
-e_client_util_resizing_get(const E_Client *ec)
-{
- if (!ec) return EINA_FALSE;
- return (ec->resize_mode != E_POINTER_RESIZE_NONE);
-}
-
-static inline Eina_Bool
-e_client_util_borderless(const E_Client *ec)
-{
- if (!ec) return EINA_FALSE;
- return (ec->borderless || (!ec->border.name) || (!strcmp(ec->border.name, "borderless")));
-}
-
-static inline Eina_Bool
-e_client_util_shadow_state_get(const E_Client *ec)
-{
- Eina_Bool on;
- if (!ec) return EINA_FALSE;
- if (ec->argb)
- {
- return (!ec->borderless) && (ec->bordername || (ec->border.name && strcmp(ec->border.name, "borderless")));
- }
- on = !ec->e.state.video;
- if (on)
- on = !ec->fullscreen;
- return on;
-}
-
-static inline Eina_Stringshare *
-e_client_util_name_get(const E_Client *ec)
-{
- if (!ec) return NULL;
- if (ec->netwm.name)
- return ec->netwm.name;
- else if (ec->icccm.title)
- return ec->icccm.title;
- return NULL;
-}
-
-static inline Eina_Bool
-e_client_util_is_popup(const E_Client *ec)
-{
- if (!ec) return EINA_FALSE;
- switch (ec->netwm.type)
- {
- case E_WINDOW_TYPE_MENU:
- case E_WINDOW_TYPE_SPLASH:
- case E_WINDOW_TYPE_DROPDOWN_MENU:
- case E_WINDOW_TYPE_POPUP_MENU:
- case E_WINDOW_TYPE_TOOLTIP:
- case E_WINDOW_TYPE_NOTIFICATION:
- case E_WINDOW_TYPE_COMBO:
- case E_WINDOW_TYPE_DND:
- return EINA_TRUE;
- default: break;
- }
- return EINA_FALSE;
-}
+E_API Eina_Bool e_client_util_ignored_get(const E_Client *ec);
+E_API Ecore_Window e_client_util_win_get(const E_Client *ec);
+E_API Eina_Bool e_client_util_moving_get(const E_Client *ec);
+E_API Eina_Bool e_client_util_resizing_get(const E_Client *ec);
+E_API Eina_Bool e_client_util_borderless(const E_Client *ec);
+E_API Eina_Bool e_client_util_shadow_state_get(const E_Client *ec);
+E_API Eina_Stringshare *e_client_util_name_get(const E_Client *ec);
+E_API Eina_Bool e_client_util_is_popup(const E_Client *ec);
/////////////////////////////////////////////////////////
// This is for getting/setting internal value of E_Client