e-wm: set menu autoscroll options to better defaults for touchscreens
authorJustin Patrin <papercrane@gmail.com>
Sun, 6 Aug 2006 03:22:06 +0000 (03:22 +0000)
committerJustin Patrin <papercrane@gmail.com>
Sun, 6 Aug 2006 03:22:06 +0000 (03:22 +0000)
packages/e17/e-wm/add-menu-autoscroll-options.patch [deleted file]
packages/e17/e-wm/set-autoscroll-defaults.patch [new file with mode: 0644]
packages/e17/e-wm_0.16.999.032.bb

diff --git a/packages/e17/e-wm/add-menu-autoscroll-options.patch b/packages/e17/e-wm/add-menu-autoscroll-options.patch
deleted file mode 100644 (file)
index 79bcad8..0000000
+++ /dev/null
@@ -1,207 +0,0 @@
-diff -Nur e~/src/bin/e_config.c e/src/bin/e_config.c
---- e~/src/bin/e_config.c      2005-08-05 21:12:17.000000000 -0700
-+++ e/src/bin/e_config.c       2005-08-16 13:55:06.000000000 -0700
-@@ -298,6 +298,8 @@
-    E_CONFIG_VAL(D, T, resize_info_follows, INT); /**/
-    E_CONFIG_VAL(D, T, focus_last_focused_per_desktop, INT); /**/
-    E_CONFIG_VAL(D, T, focus_revert_on_hide_or_close, INT); /**/
-+   E_CONFIG_VAL(D, T, menu_autoscroll_margin, INT); /**/
-+   E_CONFIG_VAL(D, T, menu_autoscroll_cursor_margin, INT); /**/
-    
-    e_config = e_config_domain_load("e", _e_config_edd);
-    if (e_config)
-@@ -403,6 +405,8 @@
-       e_config->resize_info_follows = 1;
-       e_config->focus_last_focused_per_desktop = 1;
-       e_config->focus_revert_on_hide_or_close = 1;
-+      e_config->menu_autoscroll_margin = 10;
-+      e_config->menu_autoscroll_cursor_margin = 15;
-       
-         {
-            E_Config_Module *em;
-@@ -959,6 +963,8 @@
-    E_CONFIG_LIMIT(e_config->resize_info_follows, 0, 1);
-    E_CONFIG_LIMIT(e_config->focus_last_focused_per_desktop, 0, 1);
-    E_CONFIG_LIMIT(e_config->focus_revert_on_hide_or_close, 0, 1);
-+   E_CONFIG_LIMIT(e_config->menu_autoscroll_margin, 0, 50);
-+   E_CONFIG_LIMIT(e_config->menu_autoscroll_cursor_margin, 0, 50);
-    /* apply lang config - exception because config is loaded after intl setup */
-    
-diff -Nur e~/src/bin/e_config.h e/src/bin/e_config.h
---- e~/src/bin/e_config.h      2005-08-05 21:12:18.000000000 -0700
-+++ e/src/bin/e_config.h       2005-08-16 13:55:06.000000000 -0700
-@@ -142,6 +142,8 @@
-    int         resize_info_follows;
-    int         focus_last_focused_per_desktop;
-    int         focus_revert_on_hide_or_close;
-+   int         menu_autoscroll_margin;
-+   int         menu_autoscroll_cursor_margin;
- };
- struct _E_Config_Module
-diff -Nur e~/src/bin/e_ipc_handlers.h e/src/bin/e_ipc_handlers.h
---- e~/src/bin/e_ipc_handlers.h        2005-08-09 21:52:07.000000000 -0700
-+++ e/src/bin/e_ipc_handlers.h 2005-08-16 14:01:38.000000000 -0700
-@@ -4592,3 +4592,84 @@
- #if 0
- }
- #endif
-+
-+/****************************************************************************/
-+#define HDL E_IPC_OP_MENU_AUTOSCROLL_MARGIN_SET
-+#if (TYPE == E_REMOTE_OPTIONS)
-+   OP("-menu-autoscroll-margin-set", 1, "Set the distance from the edge of the screen the menu will autoscroll to", 0, HDL)
-+#elif (TYPE == E_REMOTE_OUT)
-+   REQ_INT(atoi(params[0]), HDL);
-+#elif (TYPE == E_WM_IN)
-+   START_INT(value, HDL);
-+   e_config->menu_autoscroll_margin = value;
-+   E_CONFIG_LIMIT(e_config->menu_autoscroll_margin, 0, 50);
-+   SAVE;
-+   END_INT;
-+#elif (TYPE == E_REMOTE_IN)
-+#endif
-+#undef HDL
-+
-+/****************************************************************************/
-+#define HDL E_IPC_OP_MENU_AUTOSCROLL_MARGIN_GET
-+#if (TYPE == E_REMOTE_OPTIONS)
-+   OP("-menu-autoscroll-margin-get", 0, "Get the distance from the edge of the screen the menu will autoscroll to", 1, HDL)
-+#elif (TYPE == E_REMOTE_OUT)
-+   REQ_NULL(HDL)
-+#elif (TYPE == E_WM_IN)
-+   SEND_INT(e_config->menu_autoscroll_margin, E_IPC_OP_MENU_AUTOSCROLL_MARGIN_GET_REPLY, HDL);
-+#elif (TYPE == E_REMOTE_IN)
-+#endif
-+#undef HDL
-+
-+/****************************************************************************/
-+#define HDL E_IPC_OP_MENU_AUTOSCROLL_MARGIN_GET_REPLY
-+#if (TYPE == E_REMOTE_OPTIONS)
-+#elif (TYPE == E_REMOTE_OUT)
-+#elif (TYPE == E_WM_IN)
-+#elif (TYPE == E_REMOTE_IN)
-+   START_INT(val, HDL)
-+               printf("REPLY: %i\n", val);
-+               END_INT;
-+#endif
-+#undef HDL
-+
-+/****************************************************************************/
-+#define HDL E_IPC_OP_MENU_AUTOSCROLL_CURSOR_MARGIN_SET
-+#if (TYPE == E_REMOTE_OPTIONS)
-+   OP("-menu-autoscroll-cursor-margin-set", 1, "Set the distance from the edge of the screen the cursor needs to be to start menu autoscrolling", 0, HDL)
-+#elif (TYPE == E_REMOTE_OUT)
-+   REQ_INT(atoi(params[0]), HDL);
-+#elif (TYPE == E_WM_IN)
-+   START_INT(value, HDL);
-+   e_config->menu_autoscroll_cursor_margin = value;
-+   E_CONFIG_LIMIT(e_config->menu_autoscroll_cursor_margin, 0, 50);
-+       //   e_zone_update_flip_all();
-+   SAVE;
-+   END_INT;
-+#elif (TYPE == E_REMOTE_IN)
-+#endif
-+#undef HDL
-+
-+/****************************************************************************/
-+#define HDL E_IPC_OP_MENU_AUTOSCROLL_CURSOR_MARGIN_GET
-+#if (TYPE == E_REMOTE_OPTIONS)
-+   OP("-menu-autoscroll-cursor-margin-get", 0, "Get the distance from the edge of the screen the cursor needs to be to start menu autoscrolling", 1, HDL)
-+#elif (TYPE == E_REMOTE_OUT)
-+   REQ_NULL(HDL)
-+#elif (TYPE == E_WM_IN)
-+   SEND_INT(e_config->menu_autoscroll_cursor_margin, E_IPC_OP_MENU_AUTOSCROLL_CURSOR_MARGIN_GET_REPLY, HDL);
-+#elif (TYPE == E_REMOTE_IN)
-+#endif
-+#undef HDL
-+
-+/****************************************************************************/
-+#define HDL E_IPC_OP_MENU_AUTOSCROLL_CURSOR_MARGIN_GET_REPLY
-+#if (TYPE == E_REMOTE_OPTIONS)
-+#elif (TYPE == E_REMOTE_OUT)
-+#elif (TYPE == E_WM_IN)
-+#elif (TYPE == E_REMOTE_IN)
-+   START_INT(val, HDL)
-+               printf("REPLY: %i\n", val);
-+               END_INT;
-+#endif
-+#undef HDL
-diff -Nur e~/src/bin/e_ipc_handlers_list.h e/src/bin/e_ipc_handlers_list.h
---- e~/src/bin/e_ipc_handlers_list.h   2005-08-05 21:00:03.000000000 -0700
-+++ e/src/bin/e_ipc_handlers_list.h    2005-08-16 13:55:06.000000000 -0700
-@@ -222,3 +222,9 @@
- #define E_IPC_OP_DESKTOP_NAME_DEL 222
- #define E_IPC_OP_DESKTOP_NAME_LIST 223
- #define E_IPC_OP_DESKTOP_NAME_LIST_REPLY 224
-+#define E_IPC_OP_MENU_AUTOSCROLL_MARGIN_SET 225
-+#define E_IPC_OP_MENU_AUTOSCROLL_MARGIN_GET 226
-+#define E_IPC_OP_MENU_AUTOSCROLL_MARGIN_GET_REPLY 227
-+#define E_IPC_OP_MENU_AUTOSCROLL_CURSOR_MARGIN_SET 228
-+#define E_IPC_OP_MENU_AUTOSCROLL_CURSOR_MARGIN_GET 229
-+#define E_IPC_OP_MENU_AUTOSCROLL_CURSOR_MARGIN_GET_REPLY 230
-diff -Nur e~/src/bin/e_menu.c e/src/bin/e_menu.c
---- e~/src/bin/e_menu.c        2005-07-25 02:55:44.000000000 -0700
-+++ e/src/bin/e_menu.c 2005-08-16 13:55:06.000000000 -0700
-@@ -1968,24 +1968,24 @@
-       E_Menu *m;
-       m = l->data;
--      if (m->cur.x < m->zone->x)
-+      if (m->cur.x < m->zone->x + e_config->menu_autoscroll_margin)
-         {
--           i = m->zone->x - m->cur.x;
-+           i = m->zone->x - m->cur.x + e_config->menu_autoscroll_margin;
-            if (i > outl) outl = i;
-         }
--      if (m->cur.y < m->zone->y)
-+      if (m->cur.y < m->zone->y + e_config->menu_autoscroll_margin)
-         {
--           i = m->zone->y - m->cur.y;
-+           i = m->zone->y - m->cur.y + e_config->menu_autoscroll_margin;
-            if (i > outt) outt = i;
-         }
--      if ((m->cur.x + m->cur.w) > (m->zone->w))
-+      if ((m->cur.x + m->cur.w) > (m->zone->w - e_config->menu_autoscroll_margin))
-         {
--           i = m->cur.x + m->cur.w - (m->zone->x + m->zone->w);
-+           i = m->cur.x + m->cur.w - (m->zone->x + m->zone->w - e_config->menu_autoscroll_margin);
-            if (i > outr) outr = i;
-         }
--      if ((m->cur.y + m->cur.h) > (m->zone->h))
-+      if ((m->cur.y + m->cur.h) > (m->zone->h - e_config->menu_autoscroll_margin))
-         {
--           i = m->cur.y + m->cur.h - (m->zone->y + m->zone->h);
-+           i = m->cur.y + m->cur.h - (m->zone->y + m->zone->h - e_config->menu_autoscroll_margin);
-            if (i > outb) outb = i;
-         }
-      }
-@@ -2029,11 +2029,11 @@
-    int autoscroll_x = 0;
-    int autoscroll_y = 0;
-    
--   if (_e_menu_x == 0)
-+   if (_e_menu_x - e_config->menu_autoscroll_cursor_margin <= 0)
-      {
-       if (_e_menu_outside_bounds_get(-1, 0)) autoscroll_x = -1;
-      }
--   if (_e_menu_y == 0)
-+   if (_e_menu_y - e_config->menu_autoscroll_cursor_margin <= 0)
-      {
-       if (_e_menu_outside_bounds_get(0, -1)) autoscroll_y = -1;
-      }
-@@ -2044,11 +2044,11 @@
-            E_Menu *m;
-            
-            m = _e_active_menus->data;
--           if (_e_menu_x == (m->zone->w - 1))
-+           if (_e_menu_x + e_config->menu_autoscroll_cursor_margin >= (m->zone->w - 1))
-              {
-                 if (_e_menu_outside_bounds_get(1, 0)) autoscroll_x = 1;
-              }
--           if (_e_menu_y == (m->zone->h - 1))
-+           if (_e_menu_y + e_config->menu_autoscroll_cursor_margin >= (m->zone->h - 1))
-              {
-                 if (_e_menu_outside_bounds_get(0, 1)) autoscroll_y = 1;
-              }
diff --git a/packages/e17/e-wm/set-autoscroll-defaults.patch b/packages/e17/e-wm/set-autoscroll-defaults.patch
new file mode 100644 (file)
index 0000000..2d24ea6
--- /dev/null
@@ -0,0 +1,13 @@
+--- enlightenment-0.16.999.032/src/bin/e_config.c~     2006-08-05 10:46:53.000000000 -0700
++++ enlightenment-0.16.999.032/src/bin/e_config.c      2006-08-05 10:43:14.000000000 -0700
+@@ -595,8 +595,8 @@
+    e_config->focus_revert_on_hide_or_close = 1;
+    e_config->use_e_cursor = 1;
+    e_config->cursor_size = 32;
+-   e_config->menu_autoscroll_margin = 0;
+-   e_config->menu_autoscroll_cursor_margin = 1;
++   e_config->menu_autoscroll_margin = 10;
++   e_config->menu_autoscroll_cursor_margin = 10;
+    e_config->transient.move = 1;
+    e_config->transient.resize = 0;
+    e_config->transient.raise = 1;
index fd8814a..78c1c1a 100644 (file)
@@ -1,12 +1,13 @@
 DESCRIPTION = "E17 - the Enlightenment Window Mananger"
 DEPENDS = "evas-x11 ecore-x11 edje eet embryo"
 LICENSE = "MIT"
-PR = "r3"
+PR = "r4"
 
 inherit e update-alternatives
 
 SRC_URI = "${E_URI}/enlightenment-${PV}.tar.gz \
            file://fix-configure.patch;patch=1 \
+           file://set-autoscroll-defaults.patch;patch=1 \
            file://Xsession.d/98enlightenment"
 
 S = "${WORKDIR}/enlightenment-${PV}"