src/bin/services/e_service_scrsaver.h \
src/bin/e_policy.h \
src/bin/e_policy_visibility.h \
-src/bin/e_policy_keyboard.h \
src/bin/e_policy_private_data.h \
src/bin/e_policy_wl.h \
src/bin/e_policy_wl_display.h \
src/bin/services/e_service_scrsaver.c \
src/bin/e_policy.c \
src/bin/e_policy_conformant.c \
-src/bin/e_policy_keyboard.c \
src/bin/e_policy_softkey.c \
src/bin/e_policy_stack.c \
src/bin/e_policy_visibility.c \
#include "e.h"
-#include "e_policy_keyboard.h"
/* E_Desk is a child object of E_Zone. A desk is essentially a background
* and an associated set of client windows. Each zone can have an arbitrary
#include "e.h"
-#include "e_policy_keyboard.h"
#include "e_policy_conformant.h"
#include "e_policy_wl.h"
#include "e_policy_visibility.h"
return _e_policy_client_maximize_policy_apply(pc);
}
+EINTERN void
+e_policy_keyboard_layout_apply(E_Client *ec EINA_UNUSED)
+{
+/* FIXME: do not resize and move client.
+ * ec->e.state.rot.geom[].w/h is always 0,
+ * then the geometry calculated here is not valid. */
+#if 0
+ int angle;
+ int angle_id = 0;
+ int kbd_x, kbd_y, kbd_w, kbd_h;
+
+ if (!e_policy_client_is_keyboard(ec) &&
+ !e_policy_client_is_keyboard_sub(ec))
+ return;
+
+ angle = e_client_rotation_curr_angle_get(ec);
+
+ switch (angle)
+ {
+ case 0: angle_id = 0; break;
+ case 90: angle_id = 1; break;
+ case 180: angle_id = 2; break;
+ case 270: angle_id = 3; break;
+ default: angle_id = 0; break;
+ }
+
+ kbd_w = ec->e.state.rot.geom[angle_id].w;
+ kbd_h = ec->e.state.rot.geom[angle_id].h;
+
+ switch (angle)
+ {
+ case 0:
+ kbd_x = ec->zone->w - kbd_w;
+ kbd_y = ec->zone->h - kbd_h;
+ break;
+
+ case 90:
+ kbd_x = ec->zone->w - kbd_w;
+ kbd_y = ec->zone->h - kbd_h;
+ break;
+
+ case 180:
+ kbd_x = 0;
+ kbd_y = 0;
+ break;
+
+ case 270:
+ kbd_x = 0;
+ kbd_y = 0;
+ break;
+
+ default:
+ kbd_x = ec->zone->w - kbd_w;
+ kbd_y = ec->zone->h - kbd_h;
+ break;
+ }
+
+ if ((ec->frame) &&
+ ((ec->w != kbd_w) || (ec->h != kbd_h)))
+ e_client_util_resize_without_frame(ec, kbd_w, kbd_h);
+
+ if ((e_policy_client_is_keyboard(ec)) &&
+ (ec->frame) &&
+ ((ec->x != kbd_x) || (ec->y != kbd_y)))
+ e_client_util_move_without_frame(ec, kbd_x, kbd_y);
+#endif
+}
+
Eina_Bool
e_policy_client_is_lockscreen(E_Client *ec)
{
return EINA_FALSE;
}
+Eina_Bool
+e_policy_client_is_keyboard(E_Client *ec)
+{
+ E_OBJECT_CHECK_RETURN(ec, EINA_FALSE);
+ E_OBJECT_TYPE_CHECK_RETURN(ec, E_CLIENT_TYPE, EINA_FALSE);
+
+ if (ec->vkbd.vkbd) return EINA_TRUE;
+
+ return EINA_FALSE;
+}
+
+Eina_Bool
+e_policy_client_is_keyboard_sub(E_Client *ec)
+{
+ E_OBJECT_CHECK_RETURN(ec, EINA_FALSE);
+ E_OBJECT_TYPE_CHECK_RETURN(ec, E_CLIENT_TYPE, EINA_FALSE);
+
+ if (ec->vkbd.vkbd) return EINA_FALSE;
+
+ if ((ec->icccm.class) &&
+ (!strcmp(ec->icccm.class, "ISF")))
+ return EINA_TRUE;
+ if ((ec->icccm.title) &&
+ ((!strcmp(ec->icccm.title, "ISF Popup")) || (!strcmp(ec->icccm.title, "ISF Magnifier"))))
+ return EINA_TRUE;
+
+ return EINA_FALSE;
+}
+
void
e_policy_interceptors_clean(void)
{
E_API Eina_Bool e_policy_client_is_splited(E_Client *ec);
E_API Eina_Bool e_policy_client_is_toast_popup(E_Client *ec);
E_API Eina_Bool e_policy_client_is_dialog(E_Client *ec);
+E_API Eina_Bool e_policy_client_is_keyboard(E_Client *ec);
+E_API Eina_Bool e_policy_client_is_keyboard_sub(E_Client *ec);
EINTERN E_Policy_Softkey *e_policy_softkey_add(E_Zone *zone);
EINTERN void e_policy_softkey_del(E_Policy_Softkey *softkey);
EINTERN void e_policy_client_uniconify_by_visibility(E_Client *ec);
EINTERN Eina_Bool e_policy_client_maximize(E_Client *ec);
+EINTERN void e_policy_keyboard_layout_apply(E_Client *ec);
EINTERN void e_policy_client_window_opaque_set(E_Client *ec);
+++ /dev/null
-#include "e_policy_keyboard.h"
-
-E_API Eina_Bool
-e_policy_client_is_keyboard(E_Client *ec)
-{
- E_OBJECT_CHECK_RETURN(ec, EINA_FALSE);
- E_OBJECT_TYPE_CHECK_RETURN(ec, E_CLIENT_TYPE, EINA_FALSE);
-
- if (ec->vkbd.vkbd) return EINA_TRUE;
-
- return EINA_FALSE;
-}
-
-E_API Eina_Bool
-e_policy_client_is_keyboard_sub(E_Client *ec)
-{
- E_OBJECT_CHECK_RETURN(ec, EINA_FALSE);
- E_OBJECT_TYPE_CHECK_RETURN(ec, E_CLIENT_TYPE, EINA_FALSE);
-
- if (ec->vkbd.vkbd) return EINA_FALSE;
-
- if ((ec->icccm.class) &&
- (!strcmp(ec->icccm.class, "ISF")))
- return EINA_TRUE;
- if ((ec->icccm.title) &&
- (!strcmp(ec->icccm.title, "ISF Popup")))
- return EINA_TRUE;
-
- return EINA_FALSE;
-}
-
-EINTERN void
-e_policy_keyboard_layout_apply(E_Client *ec EINA_UNUSED)
-{
-/* FIXME: do not resize and move client.
- * ec->e.state.rot.geom[].w/h is always 0,
- * then the geometry calculated here is not valid. */
-#if 0
- int angle;
- int angle_id = 0;
- int kbd_x, kbd_y, kbd_w, kbd_h;
-
- if (!e_policy_client_is_keyboard(ec) &&
- !e_policy_client_is_keyboard_sub(ec))
- return;
-
- angle = e_client_rotation_curr_angle_get(ec);
-
- switch (angle)
- {
- case 0: angle_id = 0; break;
- case 90: angle_id = 1; break;
- case 180: angle_id = 2; break;
- case 270: angle_id = 3; break;
- default: angle_id = 0; break;
- }
-
- kbd_w = ec->e.state.rot.geom[angle_id].w;
- kbd_h = ec->e.state.rot.geom[angle_id].h;
-
- switch (angle)
- {
- case 0:
- kbd_x = ec->zone->w - kbd_w;
- kbd_y = ec->zone->h - kbd_h;
- break;
-
- case 90:
- kbd_x = ec->zone->w - kbd_w;
- kbd_y = ec->zone->h - kbd_h;
- break;
-
- case 180:
- kbd_x = 0;
- kbd_y = 0;
- break;
-
- case 270:
- kbd_x = 0;
- kbd_y = 0;
- break;
-
- default:
- kbd_x = ec->zone->w - kbd_w;
- kbd_y = ec->zone->h - kbd_h;
- break;
- }
-
- if ((ec->frame) &&
- ((ec->w != kbd_w) || (ec->h != kbd_h)))
- e_client_util_resize_without_frame(ec, kbd_w, kbd_h);
-
- if ((e_policy_client_is_keyboard(ec)) &&
- (ec->frame) &&
- ((ec->x != kbd_x) || (ec->y != kbd_y)))
- e_client_util_move_without_frame(ec, kbd_x, kbd_y);
-#endif
-}
+++ /dev/null
-#ifndef E_POLICY_KEYBOARD_H
-#define E_POLICY_KEYBOARD_H
-#include <e.h>
-
-E_API Eina_Bool e_policy_client_is_keyboard(E_Client *ec);
-E_API Eina_Bool e_policy_client_is_keyboard_sub(E_Client *ec);
-EINTERN void e_policy_keyboard_layout_apply(E_Client *ec);
-
-#endif
#include "e.h"
#include "e_comp_wl.h"
#include "e_policy_wl.h"
-#include "e_policy_keyboard.h"
#include "e_policy_visibility.h"
#include "e_policy_visibility_internal.h"
#include "services/e_service_gesture.h"
#include "services/e_service_region.h"
#include "e_policy_wl.h"
-#include "e_policy_keyboard.h"
#define SMART_NAME "quickpanel_object"
#define INTERNAL_ENTRY \