if (!efl_finalized_get(sd->obj)) return;
if (EINA_LIKELY(sd->type == ELM_WIN_FAKE))
return;
- CRI("Window has no frame object!");
+ if (!_elm_config->win_no_border)
+ CRI("Window has no frame object!");
return;
}
sd->csd.need_menu = EINA_FALSE;
sd->csd.need_indicator = EINA_FALSE;
}
+ else if (_elm_config->win_no_border)
+ sd->csd.need_borderless = EINA_TRUE;
else
{
sd->csd.need_shadow = sd->csd.need && (!sd->maximized);
case EFL_UI_WIN_NAVIFRAME_BASIC: element = "naviframe"; break;
default: break;
}
- _elm_win_frame_add(sd, element, style);
+
+ if (!_elm_config->win_no_border)
+ _elm_win_frame_add(sd, element, style);
if (sd->indimode != EFL_UI_WIN_INDICATOR_OFF)
_indicator_add(sd);
return EINA_FALSE;
if (elm_widget_is_legacy(sd->obj))
{
- if (!edje_object_part_swallow(sd->frame_obj, "elm.swallow.background", bg))
- return EINA_FALSE;
+ if (!_elm_config->win_no_border)
+ {
+ if (!edje_object_part_swallow(sd->frame_obj, "elm.swallow.background", bg))
+ return EINA_FALSE;
+ }
+ else
+ {
+ if (!edje_object_part_swallow(sd->legacy.edje, "elm.swallow.background", bg))
+ return EINA_FALSE;
+ }
}
else
{
- if (!edje_object_part_swallow(sd->frame_obj, "efl.background", bg))
- return EINA_FALSE;
+ if (!_elm_config->win_no_border)
+ {
+ if (!edje_object_part_swallow(sd->frame_obj, "efl.background", bg))
+ return EINA_FALSE;
+ }
+ else
+ {
+ if (!edje_object_part_swallow(sd->legacy.edje, "efl.background", bg))
+ return EINA_FALSE;
+ }
}
efl_gfx_entity_visible_set(bg, 1);
efl_gfx_size_hint_align_set(bg, -1, -1);
ELM_CONFIG_VAL(D, T, scroll_item_align_enable, T_UCHAR);
ELM_CONFIG_VAL(D, T, scroll_item_valign, T_STRING);
//
+ ELM_CONFIG_VAL(D, T, win_no_border, T_UCHAR);
#undef T
#undef D
#undef T_INT
_elm_config->scroll_item_align_enable = EINA_FALSE;
_elm_config->scroll_item_valign = eina_stringshare_add("center");
//
+ _elm_config->win_no_border = EINA_FALSE;
_env_get();
}
KEEP_VAL(entry_select_allow);
KEEP_VAL(drag_anim_duration);
+ KEEP_VAL(win_no_border);
+
_elm_config->priv = prev_config->priv;
_config_free(prev_config);
}
_elm_key_bindings_update(_elm_config, tcfg);
IFCFGEND
+ IFCFG(0x0010)
+ _elm_config->win_no_border = EINA_FALSE;
+ IFCFGEND
+
/**
* Fix user config for current ELM_CONFIG_EPOCH here.
**/
s = getenv("EFL_UI_DND_DRAG_ANIM_DURATION");
if (s) _elm_config->drag_anim_duration = _elm_atof(s);
+
+ s = getenv("ELM_WIN_NO_BORDER");
+ if (s) _elm_config->win_no_border = EINA_TRUE;
}
static void
* the users config doesn't need to be wiped - simply new values need
* to be put in
*/
-# define ELM_CONFIG_FILE_GENERATION 0x0012
-# define ELM_CONFIG_VERSION_EPOCH_OFFSET 16
+# define ELM_CONFIG_FILE_GENERATION 0x0013
+# define ELM_CONFIG_VERSION_EPOCH_OFFSET 17
# define ELM_CONFIG_VERSION ((ELM_CONFIG_EPOCH << ELM_CONFIG_VERSION_EPOCH_OFFSET) | \
ELM_CONFIG_FILE_GENERATION)
/* NB: profile configuration files (.src) must have their
Eina_Bool icon_theme : 1;
Eina_Bool entry_select_allow : 1; // unused
Eina_Bool drag_anim_duration : 1;
+ Eina_Bool win_no_border : 1;
};
struct _Elm_Config
Eina_Bool scroll_item_align_enable;
const char *scroll_item_valign;
//
+ unsigned char win_no_border;
/* Not part of the EET file */
Eina_Bool is_mirrored : 1;