summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>2019-09-19 20:02:41 +0100
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2019-09-20 10:47:18 +0100
commit822680869ff70a0f69dd383e3a810f3f18462dbc (patch)
tree8caf1d5beea8cedea6cfbb0f7162bcc129086c61
parentf89cb9382971a38a912e29185e59d2c1398462b7 (diff)
e comp - remove the disable/fast effects
for fast we probably should look at something like having a multiplier on edj transitions and set it to 0 to make it instant. this would be much better and able to apply to ALL effects... so let's remove this way for now. as for no shaodws and other stuff - moving to wl cant control CSD and even then it's a theme look ant feel - a "flat theme withotu any shadows" would just not have them. probably not a checkbox to have here.
-rw-r--r--src/bin/e_comp_canvas.c19
-rw-r--r--src/bin/e_comp_cfdata.c10
-rw-r--r--src/bin/e_comp_cfdata.h12
-rw-r--r--src/bin/e_comp_object.c90
-rw-r--r--src/bin/e_int_config_comp.c140
-rw-r--r--src/modules/wizard/page_150.c20
6 files changed, 24 insertions, 267 deletions
diff --git a/src/bin/e_comp_canvas.c b/src/bin/e_comp_canvas.c
index c68b18b..6295720 100644
--- a/src/bin/e_comp_canvas.c
+++ b/src/bin/e_comp_canvas.c
@@ -545,26 +545,15 @@ E_API void
545e_comp_canvas_zone_update(E_Zone *zone) 545e_comp_canvas_zone_update(E_Zone *zone)
546{ 546{
547 Evas_Object *o; 547 Evas_Object *o;
548 const char *const over_styles[] =
549 {
550 "e/comp/screen/overlay/default",
551 "e/comp/screen/overlay/noeffects"
552 };
553 const char *const under_styles[] =
554 {
555 "e/comp/screen/base/default",
556 "e/comp/screen/base/noeffects"
557 };
558 E_Comp_Config *conf = e_comp_config_get();
559 548
560 if (zone->over && zone->base) 549 if (zone->over && zone->base)
561 { 550 {
562 e_theme_edje_object_set(zone->base, "base/theme/comp", 551 e_theme_edje_object_set(zone->base, "base/theme/comp",
563 under_styles[conf->disable_screen_effects]); 552 "e/comp/screen/base/default");
564 edje_object_part_swallow(zone->base, "e.swallow.background", 553 edje_object_part_swallow(zone->base, "e.swallow.background",
565 zone->transition_object ?: zone->bg_object); 554 zone->transition_object ?: zone->bg_object);
566 e_theme_edje_object_set(zone->over, "base/theme/comp", 555 e_theme_edje_object_set(zone->over, "base/theme/comp",
567 over_styles[conf->disable_screen_effects]); 556 "e/comp/screen/overlay/default");
568 return; 557 return;
569 } 558 }
570 E_FREE_FUNC(zone->base, evas_object_del); 559 E_FREE_FUNC(zone->base, evas_object_del);
@@ -572,7 +561,7 @@ e_comp_canvas_zone_update(E_Zone *zone)
572 zone->base = o = edje_object_add(e_comp->evas); 561 zone->base = o = edje_object_add(e_comp->evas);
573 evas_object_repeat_events_set(o, 1); 562 evas_object_repeat_events_set(o, 1);
574 evas_object_name_set(zone->base, "zone->base"); 563 evas_object_name_set(zone->base, "zone->base");
575 e_theme_edje_object_set(o, "base/theme/comp", under_styles[conf->disable_screen_effects]); 564 e_theme_edje_object_set(o, "base/theme/comp", "e/comp/screen/base/default");
576 edje_object_part_swallow(zone->base, "e.swallow.background", zone->transition_object ?: zone->bg_object); 565 edje_object_part_swallow(zone->base, "e.swallow.background", zone->transition_object ?: zone->bg_object);
577 evas_object_move(o, zone->x, zone->y); 566 evas_object_move(o, zone->x, zone->y);
578 evas_object_resize(o, zone->w, zone->h); 567 evas_object_resize(o, zone->w, zone->h);
@@ -585,7 +574,7 @@ e_comp_canvas_zone_update(E_Zone *zone)
585 evas_object_raise(o); 574 evas_object_raise(o);
586 evas_object_name_set(zone->over, "zone->over"); 575 evas_object_name_set(zone->over, "zone->over");
587 evas_object_pass_events_set(o, 1); 576 evas_object_pass_events_set(o, 1);
588 e_theme_edje_object_set(o, "base/theme/comp", over_styles[conf->disable_screen_effects]); 577 e_theme_edje_object_set(o, "base/theme/comp", "e/comp/screen/overlay/default");
589 evas_object_move(o, zone->x, zone->y); 578 evas_object_move(o, zone->x, zone->y);
590 evas_object_resize(o, zone->w, zone->h); 579 evas_object_resize(o, zone->w, zone->h);
591 evas_object_raise(o); 580 evas_object_raise(o);
diff --git a/src/bin/e_comp_cfdata.c b/src/bin/e_comp_cfdata.c
index 6deff58..7f23e28 100644
--- a/src/bin/e_comp_cfdata.c
+++ b/src/bin/e_comp_cfdata.c
@@ -53,17 +53,7 @@ e_comp_cfdata_edd_init(E_Config_DD **conf_edd, E_Config_DD **match_edd)
53 E_CONFIG_VAL(D, T, nofade, UCHAR); 53 E_CONFIG_VAL(D, T, nofade, UCHAR);
54 E_CONFIG_VAL(D, T, smooth_windows, UCHAR); 54 E_CONFIG_VAL(D, T, smooth_windows, UCHAR);
55 E_CONFIG_VAL(D, T, first_draw_delay, DOUBLE); 55 E_CONFIG_VAL(D, T, first_draw_delay, DOUBLE);
56 E_CONFIG_VAL(D, T, disable_screen_effects, UCHAR);
57 E_CONFIG_VAL(D, T, enable_advanced_features, UCHAR); 56 E_CONFIG_VAL(D, T, enable_advanced_features, UCHAR);
58 E_CONFIG_VAL(D, T, fast_popups, UCHAR);
59 E_CONFIG_VAL(D, T, fast_borders, UCHAR);
60 E_CONFIG_VAL(D, T, fast_menus, UCHAR);
61 E_CONFIG_VAL(D, T, fast_overrides, UCHAR);
62 E_CONFIG_VAL(D, T, match.disable_popups, UCHAR);
63 E_CONFIG_VAL(D, T, match.disable_borders, UCHAR);
64 E_CONFIG_VAL(D, T, match.disable_overrides, UCHAR);
65 E_CONFIG_VAL(D, T, match.disable_menus, UCHAR);
66 E_CONFIG_VAL(D, T, match.disable_objects, UCHAR);
67 E_CONFIG_LIST(D, T, match.popups, *match_edd); 57 E_CONFIG_LIST(D, T, match.popups, *match_edd);
68 E_CONFIG_LIST(D, T, match.borders, *match_edd); 58 E_CONFIG_LIST(D, T, match.borders, *match_edd);
69 E_CONFIG_LIST(D, T, match.overrides, *match_edd); 59 E_CONFIG_LIST(D, T, match.overrides, *match_edd);
diff --git a/src/bin/e_comp_cfdata.h b/src/bin/e_comp_cfdata.h
index 00adef6..c1b0b1f 100644
--- a/src/bin/e_comp_cfdata.h
+++ b/src/bin/e_comp_cfdata.h
@@ -30,26 +30,14 @@ struct _E_Comp_Config
30 unsigned char smooth_windows; 30 unsigned char smooth_windows;
31 unsigned char nofade; 31 unsigned char nofade;
32 double first_draw_delay; 32 double first_draw_delay;
33 Eina_Bool disable_screen_effects;
34 Eina_Bool enable_advanced_features; 33 Eina_Bool enable_advanced_features;
35 // the following options add the "/fast" suffix to the normal groups
36 Eina_Bool fast_popups;
37 Eina_Bool fast_borders;
38 Eina_Bool fast_menus;
39 Eina_Bool fast_overrides;
40 Eina_Bool fast_objects;
41 34
42 struct 35 struct
43 { 36 {
44 Eina_Bool disable_popups;
45 Eina_List *popups; // used for e popups 37 Eina_List *popups; // used for e popups
46 Eina_Bool disable_borders;
47 Eina_List *borders; // used for borders 38 Eina_List *borders; // used for borders
48 Eina_Bool disable_overrides;
49 Eina_List *overrides; // used for client menus, tooltips etc. 39 Eina_List *overrides; // used for client menus, tooltips etc.
50 Eina_Bool disable_menus;
51 Eina_List *menus; // used for e menus 40 Eina_List *menus; // used for e menus
52 Eina_Bool disable_objects;
53 Eina_List *objects; // used for e objects which are not popups or menus 41 Eina_List *objects; // used for e objects which are not popups or menus
54 } match; 42 } match;
55}; 43};
diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index 2c9423c..c4d403b 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -591,7 +591,7 @@ _e_comp_object_shadow_setup(E_Comp_Object *cw)
591 E_Comp_Match *m; 591 E_Comp_Match *m;
592 Eina_Stringshare *reshadow_group = NULL; 592 Eina_Stringshare *reshadow_group = NULL;
593 Eina_Bool focus = EINA_FALSE, urgent = EINA_FALSE, skip = EINA_FALSE, 593 Eina_Bool focus = EINA_FALSE, urgent = EINA_FALSE, skip = EINA_FALSE,
594 fast = EINA_FALSE, reshadow = EINA_FALSE, no_shadow = EINA_FALSE, override; 594 reshadow = EINA_FALSE, no_shadow = EINA_FALSE, override;
595 Eina_Stringshare *name, *title; 595 Eina_Stringshare *name, *title;
596 E_Comp_Config *conf = e_comp_config_get(); 596 E_Comp_Config *conf = e_comp_config_get();
597 597
@@ -601,8 +601,7 @@ _e_comp_object_shadow_setup(E_Comp_Object *cw)
601 list = override ? conf->match.overrides : conf->match.borders; 601 list = override ? conf->match.overrides : conf->match.borders;
602 name = cw->ec->icccm.name; 602 name = cw->ec->icccm.name;
603 title = cw->ec->icccm.title; 603 title = cw->ec->icccm.title;
604 skip = (override ? conf->match.disable_overrides : conf->match.disable_borders) || (title && (!strncmp(title, "noshadow", 8))); 604 skip = (title && (!strncmp(title, "noshadow", 8)));
605 fast = override ? conf->fast_overrides : conf->fast_borders;
606 605
607 /* skipping here is mostly a hack for systray because I hate it */ 606 /* skipping here is mostly a hack for systray because I hate it */
608 if (!skip) 607 if (!skip)
@@ -619,15 +618,6 @@ _e_comp_object_shadow_setup(E_Comp_Object *cw)
619 no_shadow = m->no_shadow; 618 no_shadow = m->no_shadow;
620 if (m->shadow_style) 619 if (m->shadow_style)
621 { 620 {
622 /* fast effects are just themes with "/fast" appended and shorter effect times */
623 if (fast)
624 {
625 snprintf(buf, sizeof(buf), "e/comp/frame/%s/fast", m->shadow_style);
626 reshadow = ok = !e_util_strcmp(reshadow_group, buf);
627 if (!ok)
628 ok = e_theme_edje_object_set(cw->shobj, "base/theme/comp", buf);
629 }
630 /* default to non-fast style if fast not available */
631 if (!ok) 621 if (!ok)
632 { 622 {
633 snprintf(buf, sizeof(buf), "e/comp/frame/%s", m->shadow_style); 623 snprintf(buf, sizeof(buf), "e/comp/frame/%s", m->shadow_style);
@@ -652,13 +642,6 @@ _e_comp_object_shadow_setup(E_Comp_Object *cw)
652 if (ok) break; 642 if (ok) break;
653 if (conf->shadow_style) 643 if (conf->shadow_style)
654 { 644 {
655 if (fast)
656 {
657 snprintf(buf, sizeof(buf), "e/comp/frame/%s/fast", conf->shadow_style);
658 reshadow = ok = !e_util_strcmp(reshadow_group, buf);
659 if (!ok)
660 ok = e_theme_edje_object_set(cw->shobj, "base/theme/comp", buf);
661 }
662 if (!ok) 645 if (!ok)
663 { 646 {
664 snprintf(buf, sizeof(buf), "e/comp/frame/%s", conf->shadow_style); 647 snprintf(buf, sizeof(buf), "e/comp/frame/%s", conf->shadow_style);
@@ -669,18 +652,9 @@ _e_comp_object_shadow_setup(E_Comp_Object *cw)
669 } 652 }
670 if (!ok) 653 if (!ok)
671 { 654 {
672 if (fast) 655 reshadow = ok = !e_util_strcmp(reshadow_group, "e/comp/frame/default");
673 {
674 reshadow = ok = !e_util_strcmp(reshadow_group, "e/comp/frame/default/fast");
675 if (!ok)
676 ok = e_theme_edje_object_set(cw->shobj, "base/theme/comp", "e/comp/frame/default/fast");
677 }
678 if (!ok) 656 if (!ok)
679 { 657 ok = e_theme_edje_object_set(cw->shobj, "base/theme/comp", "e/comp/frame/default");
680 reshadow = ok = !e_util_strcmp(reshadow_group, "e/comp/frame/default");
681 if (!ok)
682 ok = e_theme_edje_object_set(cw->shobj, "base/theme/comp", "e/comp/frame/default");
683 }
684 } 658 }
685 break; 659 break;
686 } 660 }
@@ -2869,7 +2843,7 @@ e_comp_object_util_type_set(Evas_Object *obj, E_Comp_Object_Type type)
2869 const char *name = NULL; 2843 const char *name = NULL;
2870 Eina_List *l, *list = NULL; 2844 Eina_List *l, *list = NULL;
2871 E_Comp_Config *conf = e_comp_config_get(); 2845 E_Comp_Config *conf = e_comp_config_get();
2872 Eina_Bool skip = EINA_FALSE, fast = EINA_FALSE, shadow = EINA_FALSE; 2846 Eina_Bool skip = EINA_FALSE, shadow = EINA_FALSE;
2873 E_Comp_Match *m; 2847 E_Comp_Match *m;
2874 const char *grp; 2848 const char *grp;
2875 char buf[1024]; 2849 char buf[1024];
@@ -2882,19 +2856,13 @@ e_comp_object_util_type_set(Evas_Object *obj, E_Comp_Object_Type type)
2882 { 2856 {
2883 case E_COMP_OBJECT_TYPE_MENU: 2857 case E_COMP_OBJECT_TYPE_MENU:
2884 list = conf->match.menus; 2858 list = conf->match.menus;
2885 skip = conf->match.disable_menus;
2886 fast = conf->fast_menus;
2887 shadow = EINA_TRUE; 2859 shadow = EINA_TRUE;
2888 break; 2860 break;
2889 case E_COMP_OBJECT_TYPE_POPUP: 2861 case E_COMP_OBJECT_TYPE_POPUP:
2890 list = conf->match.popups; 2862 list = conf->match.popups;
2891 skip = conf->match.disable_popups;
2892 fast = conf->fast_popups;
2893 break; 2863 break;
2894 default: 2864 default:
2895 list = conf->match.objects; 2865 list = conf->match.objects;
2896 skip = conf->match.disable_objects;
2897 fast = conf->fast_objects;
2898 } 2866 }
2899 content = edje_object_part_swallow_get(obj, "e.swallow.content"); 2867 content = edje_object_part_swallow_get(obj, "e.swallow.content");
2900 if (content) 2868 if (content)
@@ -2918,18 +2886,9 @@ e_comp_object_util_type_set(Evas_Object *obj, E_Comp_Object_Type type)
2918 ((name) && (m->name) && (!e_util_glob_match(name, m->name)))) 2886 ((name) && (m->name) && (!e_util_glob_match(name, m->name))))
2919 continue; 2887 continue;
2920 if (!m->shadow_style) continue; 2888 if (!m->shadow_style) continue;
2921 if (fast) 2889 snprintf(buf, sizeof(buf), "e/comp/frame/%s", m->shadow_style);
2922 { 2890 if (eina_streq(buf, grp)) return;
2923 snprintf(buf, sizeof(buf), "e/comp/frame/%s/fast", m->shadow_style); 2891 ok = e_theme_edje_object_set(obj, "base/theme/comp", buf);
2924 if (eina_streq(buf, grp)) return;
2925 ok = e_theme_edje_object_set(obj, "base/theme/comp", buf);
2926 }
2927 if (!ok)
2928 {
2929 snprintf(buf, sizeof(buf), "e/comp/frame/%s", m->shadow_style);
2930 if (eina_streq(buf, grp)) return;
2931 ok = e_theme_edje_object_set(obj, "base/theme/comp", buf);
2932 }
2933 if (ok) 2892 if (ok)
2934 { 2893 {
2935 shadow = !m->no_shadow; 2894 shadow = !m->no_shadow;
@@ -2949,30 +2908,13 @@ e_comp_object_util_type_set(Evas_Object *obj, E_Comp_Object_Type type)
2949 if (ok) break; 2908 if (ok) break;
2950 if (conf->shadow_style) 2909 if (conf->shadow_style)
2951 { 2910 {
2952 if (fast) 2911 snprintf(buf, sizeof(buf), "e/comp/frame/%s", conf->shadow_style);
2953 { 2912 if (eina_streq(buf, grp)) return;
2954 snprintf(buf, sizeof(buf), "e/comp/frame/%s/fast", conf->shadow_style); 2913 ok = e_theme_edje_object_set(obj, "base/theme/comp", buf);
2955 if (eina_streq(buf, grp)) return;
2956 ok = e_theme_edje_object_set(obj, "base/theme/comp", buf);
2957 }
2958 if (!ok)
2959 {
2960 snprintf(buf, sizeof(buf), "e/comp/frame/%s", conf->shadow_style);
2961 if (eina_streq(buf, grp)) return;
2962 ok = e_theme_edje_object_set(obj, "base/theme/comp", buf);
2963 }
2964 if (ok) break; 2914 if (ok) break;
2965 } 2915 }
2966 if (fast) 2916 if (eina_streq("e/comp/frame/default", grp)) return;
2967 { 2917 ok = e_theme_edje_object_set(obj, "base/theme/comp", "e/comp/frame/default");
2968 if (eina_streq("e/comp/frame/default/fast", grp)) return;
2969 ok = e_theme_edje_object_set(obj, "base/theme/comp", "e/comp/frame/default/fast");
2970 }
2971 if (!ok)
2972 {
2973 if (eina_streq("e/comp/frame/default", grp)) return;
2974 ok = e_theme_edje_object_set(obj, "base/theme/comp", "e/comp/frame/default");
2975 }
2976 break; 2918 break;
2977 } 2919 }
2978 if (shadow && (e_util_strcmp(evas_object_type_get(obj), "edje") || (!edje_object_data_get(obj, "noshadow")))) 2920 if (shadow && (e_util_strcmp(evas_object_type_get(obj), "edje") || (!edje_object_data_get(obj, "noshadow"))))
@@ -3727,9 +3669,6 @@ e_comp_object_signal_emit(Evas_Object *obj, const char *sig, const char *src)
3727 if (cw->frame_object) edje_object_signal_emit(cw->frame_object, sig, src); 3669 if (cw->frame_object) edje_object_signal_emit(cw->frame_object, sig, src);
3728 if (cw->frame_icon && e_icon_edje_get(cw->frame_icon)) 3670 if (cw->frame_icon && e_icon_edje_get(cw->frame_icon))
3729 edje_object_signal_emit(e_icon_edje_get(cw->frame_icon), sig, src); 3671 edje_object_signal_emit(e_icon_edje_get(cw->frame_icon), sig, src);
3730 if ((cw->ec->override && e_comp_config_get()->match.disable_overrides) ||
3731 ((!cw->ec->override) && e_comp_config_get()->match.disable_borders))
3732 return;
3733 /* start with highest priority callback first */ 3672 /* start with highest priority callback first */
3734 EINA_INLIST_REVERSE_FOREACH(_e_comp_object_movers, prov) 3673 EINA_INLIST_REVERSE_FOREACH(_e_comp_object_movers, prov)
3735 { 3674 {
@@ -4417,8 +4356,7 @@ e_comp_object_effect_allowed_get(Evas_Object *obj)
4417 API_ENTRY EINA_FALSE; 4356 API_ENTRY EINA_FALSE;
4418 4357
4419 if (!cw->shobj) return EINA_FALSE; 4358 if (!cw->shobj) return EINA_FALSE;
4420 if (cw->ec->override) return !e_comp_config_get()->match.disable_overrides; 4359 return EINA_TRUE;
4421 return !e_comp_config_get()->match.disable_borders;
4422} 4360}
4423 4361
4424/* setup an api effect for a client */ 4362/* setup an api effect for a client */
diff --git a/src/bin/e_int_config_comp.c b/src/bin/e_int_config_comp.c
index 68317d4..cea8c5d 100644
--- a/src/bin/e_int_config_comp.c
+++ b/src/bin/e_int_config_comp.c
@@ -39,17 +39,7 @@ struct _E_Config_Dialog_Data
39 int fps_corner; 39 int fps_corner;
40 int fps_average_range; 40 int fps_average_range;
41 double first_draw_delay; 41 double first_draw_delay;
42 int disable_screen_effects;
43 int enable_advanced_features; 42 int enable_advanced_features;
44 // the following options add the "/fast" suffix to the normal groups
45 int fast_popups;
46 int fast_borders;
47 int fast_menus;
48 int fast_overrides;
49 int fast_objects;
50 int fast;
51 Evas_Object *fast_ob;
52 int fast_changed E_BITFIELD;
53}; 43};
54 44
55/* Protos */ 45/* Protos */
@@ -101,17 +91,6 @@ _create_data(E_Config_Dialog *cfd EINA_UNUSED)
101 (cfdata->engine != E_COMP_ENGINE_GL)) 91 (cfdata->engine != E_COMP_ENGINE_GL))
102 cfdata->engine = E_COMP_ENGINE_SW; 92 cfdata->engine = E_COMP_ENGINE_SW;
103 93
104 cfdata->fast_popups = conf->fast_popups;
105 cfdata->fast_borders = conf->fast_borders;
106 cfdata->fast_overrides = conf->fast_overrides;
107 cfdata->fast_menus = conf->fast_menus;
108 cfdata->fast_objects = conf->fast_objects;
109 cfdata->match.disable_popups = conf->match.disable_popups;
110 cfdata->match.disable_borders = conf->match.disable_borders;
111 cfdata->match.disable_overrides = conf->match.disable_overrides;
112 cfdata->match.disable_menus = conf->match.disable_menus;
113 cfdata->match.disable_objects = conf->match.disable_objects;
114 cfdata->disable_screen_effects = conf->disable_screen_effects;
115 cfdata->enable_advanced_features = conf->enable_advanced_features; 94 cfdata->enable_advanced_features = conf->enable_advanced_features;
116 95
117 cfdata->indirect = conf->indirect; 96 cfdata->indirect = conf->indirect;
@@ -164,12 +143,6 @@ _free_data(E_Config_Dialog *cfd EINA_UNUSED,
164} 143}
165 144
166static void 145static void
167_advanced_comp_style_toggle(void *oi, Evas_Object *o)
168{
169 e_widget_disabled_set(oi, e_widget_check_checked_get(o));
170}
171
172static void
173_advanced_matches_edit(void *data, void *d EINA_UNUSED) 146_advanced_matches_edit(void *data, void *d EINA_UNUSED)
174{ 147{
175 E_Config_Dialog *cfd = data; 148 E_Config_Dialog *cfd = data;
@@ -203,53 +176,6 @@ _advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data
203 176
204 e_widget_toolbook_page_append(otb, NULL, _("Styles"), ol, 1, 1, 1, 1, 0.5, 0.0); 177 e_widget_toolbook_page_append(otb, NULL, _("Styles"), ol, 1, 1, 1, 1, 0.5, 0.0);
205 178
206 //////////////////////////////////////////////
207
208 ol = e_widget_list_add(evas, 0, 0);
209 {
210 Evas_Object *w, *m, *p, *o1, *o2;
211
212 of = e_widget_framelist_add(evas, _("Fast Effects"), 0);
213 w = ob = e_widget_check_add(evas, _("Enable fast composite effects for windows"), &(cfdata->fast_borders));
214 e_widget_disabled_set(ob, cfdata->match.disable_borders);
215 e_widget_framelist_object_append(of, ob);
216 m = ob = e_widget_check_add(evas, _("Enable fast composite effects for menus"), &(cfdata->fast_menus));
217 e_widget_disabled_set(ob, cfdata->match.disable_menus);
218 e_widget_framelist_object_append(of, ob);
219 p = ob = e_widget_check_add(evas, _("Enable fast composite effects for popups"), &(cfdata->fast_popups));
220 e_widget_disabled_set(ob, cfdata->match.disable_popups);
221 e_widget_framelist_object_append(of, ob);
222 o1 = ob = e_widget_check_add(evas, _("Enable fast composite effects for objects"), &(cfdata->fast_objects));
223 e_widget_disabled_set(ob, cfdata->match.disable_objects);
224 e_widget_framelist_object_append(of, ob);
225 o2 = ob = e_widget_check_add(evas, _("Enable fast composite effects for overrides"), &(cfdata->fast_overrides));
226 e_widget_disabled_set(ob, cfdata->match.disable_overrides);
227 e_widget_framelist_object_append(of, ob);
228 e_widget_list_object_append(ol, of, 1, 0, 0.5);
229
230 of = e_widget_framelist_add(evas, _("Disable Effects"), 0);
231 ob = e_widget_check_add(evas, _("Disable composite effects for windows"), &(cfdata->match.disable_borders));
232 e_widget_on_change_hook_set(ob, _advanced_comp_style_toggle, w);
233 e_widget_framelist_object_append(of, ob);
234 ob = e_widget_check_add(evas, _("Disable composite effects for menus"), &(cfdata->match.disable_menus));
235 e_widget_on_change_hook_set(ob, _advanced_comp_style_toggle, m);
236 e_widget_framelist_object_append(of, ob);
237 ob = e_widget_check_add(evas, _("Disable composite effects for popups"), &(cfdata->match.disable_popups));
238 e_widget_on_change_hook_set(ob, _advanced_comp_style_toggle, p);
239 e_widget_framelist_object_append(of, ob);
240 ob = e_widget_check_add(evas, _("Disable composite effects for objects"), &(cfdata->match.disable_objects));
241 e_widget_on_change_hook_set(ob, _advanced_comp_style_toggle, o1);
242 e_widget_framelist_object_append(of, ob);
243 ob = e_widget_check_add(evas, _("Disable composite effects for overrides"), &(cfdata->match.disable_overrides));
244 e_widget_on_change_hook_set(ob, _advanced_comp_style_toggle, o2);
245 e_widget_framelist_object_append(of, ob);
246 ob = e_widget_check_add(evas, _("Disable composite effects for screen"), &(cfdata->disable_screen_effects));
247 e_widget_framelist_object_append(of, ob);
248 e_widget_list_object_append(ol, of, 1, 0, 0.5);
249 }
250
251 e_widget_toolbook_page_append(otb, NULL, _("Effects"), ol, 1, 1, 1, 1, 0.5, 0.0);
252
253 /////////////////////////////////////////// 179 ///////////////////////////////////////////
254 ol = e_widget_list_add(evas, 0, 0); 180 ol = e_widget_list_add(evas, 0, 0);
255 of = e_widget_framelist_add(evas, _("Behavior"), 0); 181 of = e_widget_framelist_add(evas, _("Behavior"), 0);
@@ -427,31 +353,9 @@ _advanced_apply_data(E_Config_Dialog *cfd EINA_UNUSED,
427 (cfdata->fps_corner != conf->fps_corner) || 353 (cfdata->fps_corner != conf->fps_corner) ||
428 (cfdata->fps_average_range != conf->fps_average_range) || 354 (cfdata->fps_average_range != conf->fps_average_range) ||
429 (!EINA_DBL_EQ(cfdata->first_draw_delay, conf->first_draw_delay)) || 355 (!EINA_DBL_EQ(cfdata->first_draw_delay, conf->first_draw_delay)) ||
430 (conf->match.disable_popups != cfdata->match.disable_popups) || 356 (conf->enable_advanced_features != cfdata->enable_advanced_features)
431 (conf->match.disable_borders != cfdata->match.disable_borders) ||
432 (conf->match.disable_overrides != cfdata->match.disable_overrides) ||
433 (conf->match.disable_menus != cfdata->match.disable_menus) ||
434 (conf->match.disable_objects != cfdata->match.disable_objects) ||
435 (conf->disable_screen_effects != cfdata->disable_screen_effects) ||
436 (conf->enable_advanced_features != cfdata->enable_advanced_features) ||
437 (conf->fast_popups != cfdata->fast_popups) ||
438 (conf->fast_borders != cfdata->fast_borders) ||
439 (conf->fast_overrides != cfdata->fast_overrides) ||
440 (conf->fast_menus != cfdata->fast_menus) ||
441 (conf->fast_objects != cfdata->fast_objects)
442 ) 357 )
443 { 358 {
444 conf->fast_popups = cfdata->fast_popups;
445 conf->fast_borders = cfdata->fast_borders;
446 conf->fast_overrides = cfdata->fast_overrides;
447 conf->fast_menus = cfdata->fast_menus;
448 conf->fast_objects = cfdata->fast_objects;
449 conf->match.disable_popups = cfdata->match.disable_popups;
450 conf->match.disable_borders = cfdata->match.disable_borders;
451 conf->match.disable_overrides = cfdata->match.disable_overrides;
452 conf->match.disable_menus = cfdata->match.disable_menus;
453 conf->match.disable_objects = cfdata->match.disable_objects;
454 conf->disable_screen_effects = cfdata->disable_screen_effects;
455 if (conf->enable_advanced_features != cfdata->enable_advanced_features) 359 if (conf->enable_advanced_features != cfdata->enable_advanced_features)
456 _advanced_features_changed(conf); 360 _advanced_features_changed(conf);
457 conf->lock_fps = cfdata->lock_fps; 361 conf->lock_fps = cfdata->lock_fps;
@@ -496,19 +400,11 @@ _advanced_apply_data(E_Config_Dialog *cfd EINA_UNUSED,
496} 400}
497 401
498static void 402static void
499_basic_comp_style_fast_toggle(void *data, Evas_Object *o EINA_UNUSED)
500{
501 E_Config_Dialog_Data *cfdata = data;
502 cfdata->fast_changed = 1;
503}
504
505static void
506_basic_comp_style_toggle(void *data, Evas_Object *o) 403_basic_comp_style_toggle(void *data, Evas_Object *o)
507{ 404{
508 E_Config_Dialog_Data *cfdata = data; 405 E_Config_Dialog_Data *cfdata = data;
509 406
510 e_widget_disabled_set(cfdata->styles_il, e_widget_check_checked_get(o)); 407 e_widget_disabled_set(cfdata->styles_il, e_widget_check_checked_get(o));
511 e_widget_disabled_set(cfdata->fast_ob, e_widget_check_checked_get(o));
512 cfdata->match.toggle_changed = 1; 408 cfdata->match.toggle_changed = 1;
513} 409}
514 410
@@ -534,21 +430,6 @@ _basic_create_widgets(E_Config_Dialog *cfd,
534 ob = e_widget_check_add(evas, _("Don't fade backlight"), &(cfdata->nofade)); 430 ob = e_widget_check_add(evas, _("Don't fade backlight"), &(cfdata->nofade));
535 e_widget_list_object_append(ol, ob, 1, 0, 0.5); 431 e_widget_list_object_append(ol, ob, 1, 0, 0.5);
536 432
537 cfdata->fast =
538 (cfdata->fast_menus && cfdata->fast_overrides && cfdata->fast_borders && cfdata->fast_popups && cfdata->fast_objects);
539 cfdata->fast_ob = ob = e_widget_check_add(evas, _("Enable \"fast\" composite effects"), &(cfdata->fast));
540 evas_object_data_set(ob, "cfdata", cfdata);
541 e_widget_list_object_append(ol, ob, 1, 0, 0.5);
542 e_widget_on_change_hook_set(ob, _basic_comp_style_fast_toggle, cfdata);
543
544 cfdata->match.disable_all =
545 (cfdata->match.disable_menus && cfdata->match.disable_overrides && cfdata->match.disable_borders &&
546 cfdata->match.disable_popups && cfdata->match.disable_objects && cfdata->disable_screen_effects);
547 e_widget_disabled_set(ob, cfdata->match.disable_all);
548 ob = e_widget_check_add(evas, _("Disable composite effects"), &(cfdata->match.disable_all));
549 evas_object_data_set(ob, "cfdata", cfdata);
550 e_widget_list_object_append(ol, ob, 1, 0, 0.5);
551
552 of = e_widget_frametable_add(evas, _("Select default style"), 0); 433 of = e_widget_frametable_add(evas, _("Select default style"), 0);
553 e_widget_frametable_content_align_set(of, 0.5, 0.5); 434 e_widget_frametable_content_align_set(of, 0.5, 0.5);
554 cfdata->styles_il = oi = e_comp_style_selector_create(evas, &(cfdata->shadow_style)); 435 cfdata->styles_il = oi = e_comp_style_selector_create(evas, &(cfdata->shadow_style));
@@ -602,7 +483,7 @@ _basic_apply_data(E_Config_Dialog *cfd EINA_UNUSED,
602{ 483{
603 E_Comp_Config *conf = e_comp_config_get(); 484 E_Comp_Config *conf = e_comp_config_get();
604 485
605 if (cfdata->match.toggle_changed || cfdata->fast_changed || 486 if (cfdata->match.toggle_changed ||
606 (cfdata->lock_fps != conf->lock_fps) || 487 (cfdata->lock_fps != conf->lock_fps) ||
607 (cfdata->smooth_windows != conf->smooth_windows) || 488 (cfdata->smooth_windows != conf->smooth_windows) ||
608 (cfdata->grab != conf->grab) || 489 (cfdata->grab != conf->grab) ||
@@ -621,23 +502,6 @@ _basic_apply_data(E_Config_Dialog *cfd EINA_UNUSED,
621 (!EINA_DBL_EQ(cfdata->first_draw_delay, conf->first_draw_delay)) 502 (!EINA_DBL_EQ(cfdata->first_draw_delay, conf->first_draw_delay))
622 ) 503 )
623 { 504 {
624 if (cfdata->match.toggle_changed)
625 {
626 conf->match.disable_popups = cfdata->match.disable_popups = cfdata->match.disable_all;
627 conf->match.disable_borders = cfdata->match.disable_borders = cfdata->match.disable_all;
628 conf->match.disable_overrides = cfdata->match.disable_overrides = cfdata->match.disable_all;
629 conf->match.disable_menus = cfdata->match.disable_menus = cfdata->match.disable_all;
630 conf->match.disable_objects = cfdata->match.disable_objects = cfdata->match.disable_all;
631 conf->disable_screen_effects = cfdata->disable_screen_effects = cfdata->match.disable_all;
632 }
633 if (cfdata->fast_changed)
634 {
635 conf->fast_borders = cfdata->fast_borders = cfdata->fast;
636 conf->fast_popups = cfdata->fast_popups = cfdata->fast;
637 conf->fast_menus = cfdata->fast_menus = cfdata->fast;
638 conf->fast_objects = cfdata->fast_objects = cfdata->fast;
639 conf->fast_overrides = cfdata->fast_overrides = cfdata->fast;
640 }
641 conf->lock_fps = cfdata->lock_fps; 505 conf->lock_fps = cfdata->lock_fps;
642 conf->smooth_windows = cfdata->smooth_windows; 506 conf->smooth_windows = cfdata->smooth_windows;
643 conf->grab = cfdata->grab; 507 conf->grab = cfdata->grab;
diff --git a/src/modules/wizard/page_150.c b/src/modules/wizard/page_150.c
index 8a6aa49..1a2a0f4 100644
--- a/src/modules/wizard/page_150.c
+++ b/src/modules/wizard/page_150.c
@@ -5,8 +5,6 @@
5 5
6static Eina_Bool do_gl = 0; 6static Eina_Bool do_gl = 0;
7static Eina_Bool do_vsync = 0; 7static Eina_Bool do_vsync = 0;
8static Eina_Bool disable_effects = 0;
9
10 8
11static void 9static void
12check_add(Evas_Object *box, const char *txt, Eina_Bool *val) 10check_add(Evas_Object *box, const char *txt, Eina_Bool *val)
@@ -14,17 +12,17 @@ check_add(Evas_Object *box, const char *txt, Eina_Bool *val)
14 Evas_Object *ck; 12 Evas_Object *ck;
15 13
16 ck = elm_check_add(box); 14 ck = elm_check_add(box);
17 evas_object_show(ck);
18 E_ALIGN(ck, 0, 0.5); 15 E_ALIGN(ck, 0, 0.5);
19 elm_object_text_set(ck, txt); 16 elm_object_text_set(ck, txt);
20 elm_check_state_pointer_set(ck, val); 17 elm_check_state_pointer_set(ck, val);
21 elm_box_pack_end(box, ck); 18 elm_box_pack_end(box, ck);
19 evas_object_show(ck);
22} 20}
23 21
24E_API int 22E_API int
25wizard_page_show(E_Wizard_Page *pg EINA_UNUSED) 23wizard_page_show(E_Wizard_Page *pg EINA_UNUSED)
26{ 24{
27 Evas_Object *o, *of; 25 Evas_Object *o, *of, *ob;
28 26
29 api->wizard_title_set(_("Compositing")); 27 api->wizard_title_set(_("Compositing"));
30 28
@@ -48,10 +46,9 @@ wizard_page_show(E_Wizard_Page *pg EINA_UNUSED)
48 do_gl = do_vsync = 1; 46 do_gl = do_vsync = 1;
49 evas_gl_free(gl); 47 evas_gl_free(gl);
50 } 48 }
51 check_add(o, _("Hardware Accelerated (OpenGL)"), &do_gl);
52 check_add(o, _("Tear-free Rendering (OpenGL only)"), &do_vsync);
53 } 49 }
54 check_add(o, _("Disable composite effects"), &disable_effects); 50 check_add(o, _("Hardware Accelerated (OpenGL)"), &do_gl);
51 check_add(o, _("Tear-free Rendering (OpenGL only)"), &do_vsync);
55 52
56 evas_object_show(of); 53 evas_object_show(of);
57 api->wizard_page_show(of); 54 api->wizard_page_show(of);
@@ -77,15 +74,6 @@ wizard_page_hide(E_Wizard_Page *pg EINA_UNUSED)
77 conf->smooth_windows = 0; 74 conf->smooth_windows = 0;
78 conf->vsync = 0; 75 conf->vsync = 0;
79 } 76 }
80 if (disable_effects)
81 {
82 conf->disable_screen_effects =
83 conf->match.disable_borders =
84 conf->match.disable_popups =
85 conf->match.disable_menus =
86 conf->match.disable_objects =
87 conf->match.disable_overrides = 1;
88 }
89 77
90 e_comp_internal_save(); 78 e_comp_internal_save();
91 79