raster pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=e6861cae4414c9a3583ad524cc8e43138e5b946c

commit e6861cae4414c9a3583ad524cc8e43138e5b946c
Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
Date:   Sun Jan 10 16:50:03 2021 +0000

    shot - make toolset scrollable to allow smaller window
---
 src/bin/e_scale.c             |  5 +++++
 src/bin/e_xsettings.c         | 18 ++++++++++++++++++
 src/modules/shot/e_mod_edit.c | 22 ++++++++++++++++------
 3 files changed, 39 insertions(+), 6 deletions(-)

diff --git a/src/bin/e_scale.c b/src/bin/e_scale.c
index 158dccf31..88dc50615 100644
--- a/src/bin/e_scale.c
+++ b/src/bin/e_scale.c
@@ -98,6 +98,11 @@ e_scale_update(void)
         snprintf(buf, sizeof(buf), "%i",
                  (int)((double)e_config->scale.xapp_base_dpi * e_scale));
         ecore_x_resource_db_string_set("Xft.dpi", buf);
+        ecore_x_resource_db_string_set("Xft.hinting", "1");
+        ecore_x_resource_db_string_set("Xft.antialias", "1");
+        ecore_x_resource_db_string_set("Xft.autohint", "0");
+        ecore_x_resource_db_string_set("Xft.hintstyle", "hintfull");
+        ecore_x_resource_db_string_set("Xft.rgba", "none");
         ecore_x_resource_db_flush();
      }
 #endif
diff --git a/src/bin/e_xsettings.c b/src/bin/e_xsettings.c
index 345c5319f..87bfa1aa6 100644
--- a/src/bin/e_xsettings.c
+++ b/src/bin/e_xsettings.c
@@ -63,6 +63,11 @@ static const char _setting_icon_theme_name[] = 
"Net/IconThemeName";
 static const char _setting_theme_name[] = "Net/ThemeName";
 static const char _setting_font_name[] = "Gtk/FontName";
 static const char _setting_xft_dpi[] = "Xft/DPI";
+static const char _setting_xft_antialias[] = "Xft/Antialias";
+static const char _setting_xft_autohint[] = "Xft/Autohint";
+static const char _setting_xft_hinting[] = "Xft/Hinting";
+static const char _setting_xft_hintstyle[] = "Xft/HintStyle";
+static const char _setting_xft_rgba[] = "Xft/RGBA";
 static const char *_setting_theme = NULL;
 
 static void _e_xsettings_done_cb(void *data, Eio_File *handler, const 
Eina_Stat *stat);
@@ -593,6 +598,19 @@ _e_xsettings_dpi_set(void)
      _e_xsettings_int_set(_setting_xft_dpi,
                           (double)e_config->scale.xapp_base_dpi * e_scale * 
1024.0,
                           EINA_TRUE);
+   _e_xsettings_int_set(_setting_xft_antialias,
+                        1,
+                        EINA_TRUE);
+   _e_xsettings_int_set(_setting_xft_hinting,
+                        1,
+                        EINA_TRUE);
+   _e_xsettings_int_set(_setting_xft_autohint,
+                        0,
+                        EINA_TRUE);
+   _e_xsettings_string_set(_setting_xft_hintstyle,
+                           "hintfull");
+   _e_xsettings_string_set(_setting_xft_rgba,
+                           "none");
 }
 
 static void
diff --git a/src/modules/shot/e_mod_edit.c b/src/modules/shot/e_mod_edit.c
index 71ca29ab0..e6a8be405 100644
--- a/src/modules/shot/e_mod_edit.c
+++ b/src/modules/shot/e_mod_edit.c
@@ -1805,7 +1805,7 @@ ui_edit(Evas_Object *window, Evas_Object *o_bg, E_Zone 
*zone,
         Evas_Object **o_img_ret)
 {
    Evas *evas, *evas2;
-   Evas_Object *o, *tb, *tb2, *sc, *fr, *bx, *radg, *rad, *bx_ret;
+   Evas_Object *o, *tb, *tb2, *sc, *fr, *bx, *radg, *rad, *bx_ret, *sc2;
    int w, h;
 
    o = win = window;
@@ -1830,10 +1830,11 @@ ui_edit(Evas_Object *window, Evas_Object *o_bg, E_Zone 
*zone,
           }
      }
    w = (sw * zooms[zoom]) / 1000;
-   if ((zone) && (w > (zone->w / 4))) w = zone->w / 4;
-   if (w < ELM_SCALE_SIZE(400)) w = 400;
+   if ((zone) && (w > (zone->w / 8))) w = zone->w / 8;
+   if (w < ELM_SCALE_SIZE(360)) w = ELM_SCALE_SIZE(360);
    h = (w * sh) / sw;
-   if ((zone) && (h > (zone->h / 4))) h = zone->h / 4;
+   if ((zone) && (h > (zone->h / 8))) h = zone->h / 8;
+   if (h < ELM_SCALE_SIZE(280)) h = ELM_SCALE_SIZE(280);
 
    if (!ec)
      {
@@ -1905,7 +1906,7 @@ ui_edit(Evas_Object *window, Evas_Object *o_bg, E_Zone 
*zone,
    evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL);
    evas_object_size_hint_min_set(o, w, h);
    evas_object_pass_events_set(o, EINA_TRUE);
-   elm_table_pack(tb, o, 0, 0, 6, 5);
+   elm_table_pack(tb, o, 0, 0, 5, 5);
 
    sc = o = elm_scroller_add(win);
    elm_object_style_set(o, "noclip");
@@ -1922,10 +1923,19 @@ ui_edit(Evas_Object *window, Evas_Object *o_bg, E_Zone 
*zone,
    elm_table_pack(tb, o, 0, 0, 5, 5);
    evas_object_show(o);
 
+   sc2 = o = elm_scroller_add(win);
+   elm_object_style_set(o, "noclip");
+   elm_scroller_content_min_limit(o, EINA_TRUE, EINA_FALSE);
+   elm_scroller_gravity_set(o, 0.0, 0.0);
+   evas_object_size_hint_weight_set(o, 0.0, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   elm_table_pack(tb, o, 5, 0, 1, 5);
+   evas_object_show(o);
+
    bx_ret = bx = o = elm_box_add(win);
    evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL);
    evas_object_size_hint_weight_set(o, 0.0, EVAS_HINT_EXPAND);
-   elm_table_pack(tb, o, 5, 0, 1, 5);
+   elm_object_content_set(sc2, o);
    evas_object_show(o);
 
    fr = o = elm_frame_add(win);

-- 


Reply via email to