* we can set different text zoom now with ewk_view_text_zoom_set
* see http://svn.webkit.org/repository/webkit/trunk@97043 
268f45cc-cd09-0410-ab3c-d52691b4dbfc
  for details

Signed-off-by: Martin Jansa <[email protected]>
---
 eve/src/bin/chrome.c    |   25 ++++++++++++++++++-------
 eve/src/bin/eve_state.c |   18 +++++++++---------
 eve/src/bin/eve_state.h |    6 +++---
 3 files changed, 30 insertions(+), 19 deletions(-)

diff --git a/eve/src/bin/chrome.c b/eve/src/bin/chrome.c
index 85118cf..3d6d36f 100644
--- a/eve/src/bin/chrome.c
+++ b/eve/src/bin/chrome.c
@@ -261,13 +261,24 @@ static More_Menu_Item more_menu_config[] =
              .conf_get = config_frame_flattening_get,
              .conf_set = config_frame_flattening_set
            }}, NULL, ITEM_FLAG_NONE },
-         { ITEM_TYPE_CONFIG, "Text only zoom",
+         { ITEM_TYPE_CONFIG, "Text zoom",
            (More_Menu_Config[]) {{
-             .type = CONFIG_TYPE_CHECKBOX,
+             .type = CONFIG_TYPE_LIST_INT,
              .conf = EVE_CONFIG_TEXT_ONLY_ZOOM,
-             .conf_get = config_text_only_zoom_get,
-             .conf_set = config_text_only_zoom_set
-           }}, NULL, ITEM_FLAG_NONE },
+             .conf_get = config_text_zoom_get,
+             .conf_set = config_text_zoom_set,
+             .data = (More_Menu_Config_List_Int[]) {
+               { "10%", 10, EINA_FALSE },
+               { "25%", 25, EINA_FALSE },
+               { "50%", 50, EINA_FALSE },
+               { "75%", 75, EINA_FALSE },
+               { "100% (default)", 100, EINA_TRUE },
+               { "125%", 125, EINA_FALSE },
+               { "150%", 150, EINA_FALSE },
+               { "175%", 175, EINA_FALSE },
+               { "200%", 200, EINA_FALSE }
+             }
+           }}, NULL, ITEM_FLAG_ARROW | ITEM_FLAG_SELECTABLE },
          { ITEM_TYPE_CONFIG, "Minimum font size",
            (More_Menu_Config[]) {{
              .type = CONFIG_TYPE_LIST_INT,
@@ -1310,7 +1321,7 @@ chrome_config_apply(Evas_Object *chrome)
    ewk_view_setting_scripts_window_open_set(view, 
config_allow_popup_get(config));
    view_touch_interface_set(view, config_enable_touch_interface_get(config));
    window_mouse_enabled_set(win->win, config_enable_mouse_cursor_get(config));
-   ewk_view_zoom_text_only_set(view, config_text_only_zoom_get(config));
+   ewk_view_text_zoom_set(view, config_text_zoom_get(config));
    ewk_view_setting_enable_frame_flattening_set(view, 
config_frame_flattening_get(config));
    ewk_view_setting_font_minimum_size_set(view, 
config_minimum_font_size_get(config));
    ewk_cookies_policy_set(config_cookie_policy_get(config));
@@ -1371,7 +1382,7 @@ conf_updated(More_Menu_Config *mmc, void *new_value)
       }
     case EVE_CONFIG_TEXT_ONLY_ZOOM:
       {
-         SET_PREF_TO_ALL_VIEWS(ewk_view_zoom_text_only_set, 
*((int*)new_value));
+         SET_PREF_TO_ALL_VIEWS(ewk_view_text_zoom_set, *((int*)new_value));
          break;
       }
     case EVE_CONFIG_FRAME_FLATTENING:
diff --git a/eve/src/bin/eve_state.c b/eve/src/bin/eve_state.c
index 10b0778..801e720 100644
--- a/eve/src/bin/eve_state.c
+++ b/eve/src/bin/eve_state.c
@@ -23,7 +23,7 @@ struct _Config {
     unsigned char restore_state;
     const char * user_agent;
     unsigned char frame_flattening;
-    unsigned char text_only_zoom;
+    int text_zoom;
     int minimum_font_size;
     const char *__eet_filename;
     int cookie_policy;
@@ -111,7 +111,7 @@ _config_init(void)
     EET_DATA_DESCRIPTOR_ADD_BASIC(_config_descriptor, Config, "restore_state", 
restore_state, EET_T_UCHAR);
     EET_DATA_DESCRIPTOR_ADD_BASIC(_config_descriptor, Config, "user_agent", 
user_agent, EET_T_STRING);
     EET_DATA_DESCRIPTOR_ADD_BASIC(_config_descriptor, Config, 
"frame_flattening", frame_flattening, EET_T_UCHAR);
-    EET_DATA_DESCRIPTOR_ADD_BASIC(_config_descriptor, Config, 
"text_only_zoom", text_only_zoom, EET_T_UCHAR);
+    EET_DATA_DESCRIPTOR_ADD_BASIC(_config_descriptor, Config, "text_zoom", 
text_zoom, EET_T_INT);
     EET_DATA_DESCRIPTOR_ADD_BASIC(_config_descriptor, Config, 
"minimum_font_size", minimum_font_size, EET_T_INT);
     EET_DATA_DESCRIPTOR_ADD_BASIC(_config_descriptor, Config, "cookie_policy", 
cookie_policy, EET_T_INT);
     EET_DATA_DESCRIPTOR_ADD_BASIC(_config_descriptor, Config, "backing_store", 
backing_store, EET_T_INT);
@@ -126,7 +126,7 @@ _config_shutdown(void)
 }
 
 Config *
-config_new(unsigned char allow_popup, unsigned char enable_auto_load_images, 
unsigned char enable_auto_shrink_images, unsigned char enable_javascript, 
unsigned char enable_mouse_cursor, unsigned char enable_plugins, unsigned char 
enable_private_mode, unsigned char enable_touch_interface, const char * 
home_page, const char * proxy, unsigned char restore_state, const char * 
user_agent, unsigned char frame_flattening, unsigned char text_only_zoom, int 
minimum_font_size, int cookie_policy, int backing_store)
+config_new(unsigned char allow_popup, unsigned char enable_auto_load_images, 
unsigned char enable_auto_shrink_images, unsigned char enable_javascript, 
unsigned char enable_mouse_cursor, unsigned char enable_plugins, unsigned char 
enable_private_mode, unsigned char enable_touch_interface, const char * 
home_page, const char * proxy, unsigned char restore_state, const char * 
user_agent, unsigned char frame_flattening, int text_zoom, int 
minimum_font_size, int cookie_policy, int backing_store)
 {
     Config *config = calloc(1, sizeof(Config));
 
@@ -149,7 +149,7 @@ config_new(unsigned char allow_popup, unsigned char 
enable_auto_load_images, uns
     config->restore_state = restore_state;
     config->user_agent = eina_stringshare_add(user_agent ? user_agent : "eve");
     config->frame_flattening = frame_flattening;
-    config->text_only_zoom = text_only_zoom;
+    config->text_zoom = text_zoom;
     config->minimum_font_size = minimum_font_size;
     config->cookie_policy = cookie_policy;
     config->backing_store = backing_store;
@@ -335,17 +335,17 @@ config_frame_flattening_set(Config *config, unsigned char 
frame_flattening)
     config->frame_flattening = frame_flattening;
 }
   
-inline unsigned char
-config_text_only_zoom_get(const Config *config)
+inline int
+config_text_zoom_get(const Config *config)
 {
-    return config->text_only_zoom;
+    return config->text_zoom;
 }
 
 inline void
-config_text_only_zoom_set(Config *config, unsigned char text_only_zoom)
+config_text_zoom_set(Config *config, int text_zoom)
 {
     EINA_SAFETY_ON_NULL_RETURN(config);
-    config->text_only_zoom = text_only_zoom;
+    config->text_zoom = text_zoom;
 }
   
 inline int
diff --git a/eve/src/bin/eve_state.h b/eve/src/bin/eve_state.h
index ef14e6b..a6651c0 100644
--- a/eve/src/bin/eve_state.h
+++ b/eve/src/bin/eve_state.h
@@ -17,7 +17,7 @@ typedef struct _Session_Window Session_Window;
 typedef struct _Session Session;
 
 /* Config */
-Config *config_new(unsigned char allow_popup, unsigned char 
enable_auto_load_images, unsigned char enable_auto_shrink_images, unsigned char 
enable_javascript, unsigned char enable_mouse_cursor, unsigned char 
enable_plugins, unsigned char enable_private_mode, unsigned char 
enable_touch_interface, const char * home_page, const char * proxy, unsigned 
char restore_state, const char * user_agent, unsigned char frame_flattening, 
unsigned char text_only_zoom, int minimum_font_size, int cookie_policy, int 
backing_store);
+Config *config_new(unsigned char allow_popup, unsigned char 
enable_auto_load_images, unsigned char enable_auto_shrink_images, unsigned char 
enable_javascript, unsigned char enable_mouse_cursor, unsigned char 
enable_plugins, unsigned char enable_private_mode, unsigned char 
enable_touch_interface, const char * home_page, const char * proxy, unsigned 
char restore_state, const char * user_agent, unsigned char frame_flattening, 
int text_zoom, int minimum_font_size, int cookie_policy, int backing_store);
 void config_free(Config *config);
 
 void config_allow_popup_set(Config *config, unsigned char allow_popup);
@@ -46,8 +46,8 @@ void config_user_agent_set(Config *config, const char * 
user_agent);
 const char * config_user_agent_get(const Config *config);
 void config_frame_flattening_set(Config *config, unsigned char 
frame_flattening);
 unsigned char config_frame_flattening_get(const Config *config);
-void config_text_only_zoom_set(Config *config, unsigned char text_only_zoom);
-unsigned char config_text_only_zoom_get(const Config *config);
+void config_text_zoom_set(Config *config, int text_zoom);
+int config_text_zoom_get(const Config *config);
 void config_minimum_font_size_set(Config *config, int minimum_font_size);
 int config_minimum_font_size_get(const Config *config);
 void config_cookie_policy_set(Config *config, int cookie_policy);
-- 
1.7.7


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2d-oct
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to