Hello community, here is the log from the commit of package enlightenment for openSUSE:Factory checked in at 2016-12-02 16:43:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/enlightenment (Old) and /work/SRC/openSUSE:Factory/.enlightenment.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "enlightenment" Changes: -------- --- /work/SRC/openSUSE:Factory/enlightenment/enlightenment.changes 2016-10-20 23:08:13.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.enlightenment.new/enlightenment.changes 2016-12-02 16:43:43.000000000 +0100 @@ -1,0 +2,34 @@ +Wed Nov 30 21:56:25 UTC 2016 - sfl...@suse.de + +- Bump to 0.21.4 + * Most changes are related to wayland and bryce and won't affect + most users, thre are several other minor fixes as well. + * boo#983978 - Scaling set to 1.2 at start of the wizard + * Updated German and other translations + * https://phab.enlightenment.org/T2879 + * https://phab.enlightenment.org/T4358 + * https://phab.enlightenment.org/T4479 + * https://phab.enlightenment.org/T4512 + * https://phab.enlightenment.org/T4522 + * https://phab.enlightenment.org/T4687 + * https://phab.enlightenment.org/T4716 + * https://phab.enlightenment.org/T4732 + * https://phab.enlightenment.org/T4747 + * https://phab.enlightenment.org/T4784 + * https://phab.enlightenment.org/T4797 + * https://phab.enlightenment.org/T4798 + * https://phab.enlightenment.org/T4809 + * https://phab.enlightenment.org/T4810 + * https://phab.enlightenment.org/T4815 + * https://phab.enlightenment.org/T4819 + * https://phab.enlightenment.org/T4826i +- edit feature-wizard-auto-lang.patch added workaround for boo#1008982 + LC_CTYPE is not set +- add feature-wizard-keylayout-from-sys.patch boo#1003939 this is another + enhancement but due to a further upstream bug the keyboard layout + screen still needs to be displayed +- add feature-suse-disable-offline-menu.patch - as openSUSE uses + network manager not connman offline mode doesn't do whats expected + so the menu item has been removed + +------------------------------------------------------------------- Old: ---- enlightenment-0.21.3.tar.xz New: ---- enlightenment-0.21.4.tar.xz feature-suse-disable-offline-menu.patch feature-wizard-keylayout-from-sys.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ enlightenment.spec ++++++ --- /var/tmp/diff_new_pack.DzFAlR/_old 2016-12-02 16:43:45.000000000 +0100 +++ /var/tmp/diff_new_pack.DzFAlR/_new 2016-12-02 16:43:45.000000000 +0100 @@ -21,7 +21,7 @@ %define enable_wayland (0%{?suse_version} > 1320) %define generate_manpages 0 Name: enlightenment -Version: 0.21.3 +Version: 0.21.4 Release: 0 Summary: The window manager License: BSD-2-Clause @@ -38,8 +38,11 @@ Patch0: enlightenment-0.16.999.65256-dont_require_suidbit.patch # PATCH-FEATURE-OPENSUSE dont_offer_updates.patch -- don't offer updates, that's up to package manager -- sleep_wal...@opensuse.org Patch1: dont_offer_updates.patch +# PATCH-FEATURE-OPENSUSE as we use Network Manager rather then connman offline mode doesn't do anything so Hide the menu option +Patch2: feature-suse-disable-offline-menu.patch # boo#1003939 don't ask for language if we can use the current system one -Patch2: feature-wizard-auto-lang.patch +Patch3: feature-wizard-auto-lang.patch +Patch4: feature-wizard-keylayout-from-sys.patch BuildRequires: alsa-devel BuildRequires: autoconf BuildRequires: automake @@ -194,6 +197,8 @@ %patch0 %patch1 -p1 %patch2 -p1 +%patch3 -p1 +%patch4 -p1 # Copy In new Network Wizard rm src/modules/wizard/page_110.c ++++++ enlightenment-0.21.3.tar.xz -> enlightenment-0.21.4.tar.xz ++++++ /work/SRC/openSUSE:Factory/enlightenment/enlightenment-0.21.3.tar.xz /work/SRC/openSUSE:Factory/.enlightenment.new/enlightenment-0.21.4.tar.xz differ: char 27, line 1 ++++++ feature-suse-disable-offline-menu.patch ++++++ commit 8f1c92e6d55a0d3a26b8e738437f9fe1c8023c8e Author: Simon Lees (SUSE) <sfl...@suse.de> Date: Mon Oct 31 10:54:16 2016 +1030 openSUSE "feature" Disable offline mode it does nothing here diff --git a/src/modules/conf/e_mod_main.c b/src/modules/conf/e_mod_main.c index 88fad12..4fad637 100644 --- a/src/modules/conf/e_mod_main.c +++ b/src/modules/conf/e_mod_main.c @@ -421,12 +421,14 @@ _e_mod_submenu_modes_fill(void *data EINA_UNUSED, E_Menu *m) e_util_menu_item_theme_icon_set(mi, "preferences-modes-presentation"); e_menu_item_callback_set(mi, _e_mod_mode_presentation_toggle, NULL); +#if 0 mi = e_menu_item_new(m); e_menu_item_check_set(mi, 1); e_menu_item_toggle_set(mi, e_config->mode.offline); e_menu_item_label_set(mi, _("Offline")); e_util_menu_item_theme_icon_set(mi, "preferences-modes-offline"); e_menu_item_callback_set(mi, _e_mod_mode_offline_toggle, NULL); +#endif e_menu_pre_activate_callback_set(m, NULL, NULL); } ++++++ feature-wizard-auto-lang.patch ++++++ --- /var/tmp/diff_new_pack.DzFAlR/_old 2016-12-02 16:43:45.000000000 +0100 +++ /var/tmp/diff_new_pack.DzFAlR/_new 2016-12-02 16:43:45.000000000 +0100 @@ -1,41 +1,60 @@ +commit 92c5d6600449be6646ec746d3845fc1917141308 +Author: Simon Lees (SUSE) <sfl...@suse.de> +Date: Tue Nov 29 14:12:14 2016 +1030 + + feature-wizard-auto-lang + diff --git a/src/modules/wizard/page_010.c b/src/modules/wizard/page_010.c +index 120953b..a9549d6 100644 --- a/src/modules/wizard/page_010.c +++ b/src/modules/wizard/page_010.c -@@ -139,6 +139,7 @@ - blang_list = eina_list_sort(blang_list, eina_list_count(blang_list), _basic_lang_list_sort); - pclose(output); - } -+ - return 1; - } +@@ -1,6 +1,6 @@ + /* Language chooser */ + #include "e_wizard.h" +- ++#include <eina_log.h> + typedef struct _E_Intl_Pair E_Intl_Pair; -@@ -195,6 +196,28 @@ - E_API int - wizard_page_show(E_Wizard_Page *pg EINA_UNUSED) - { -+ /* If system language is available just set that rather then asking. */ -+ const char *lang_tmp = getenv("LC_CTYPE"); + static int _basic_lang_list_sort(const void *data1, const void *data2); +@@ -209,6 +209,41 @@ wizard_page_show(E_Wizard_Page *pg EINA_UNUSED) + }, + .version = ELM_GENLIST_ITEM_CLASS_VERSION + }; ++ FILE *locale_inf; ++ char line[32]; ++ char layout[128]; ++ int i = 0; + -+ if (lang_tmp) ++ locale_inf = popen("locale", "r"); ++ if (locale_inf) + { -+ int i = 0; -+ while (basic_language_predefined_pairs[i].locale_key) ++ while (fscanf(locale_inf, "%[^\n]\n", line) == 1) + { -+ if (!strncmp -+ (basic_language_predefined_pairs[i].locale_key, -+ lang_tmp, strlen(basic_language_predefined_pairs[i].locale_key))) -+ { -+ lang = basic_language_predefined_pairs[i].locale_key; -+ eina_stringshare_replace(&e_config->language, lang); -+ e_intl_language_set(e_config->language); -+ e_wizard_labels_update(); -+ return 0; -+ } -+ i++; -+ } ++ if (sscanf (line, "LC_CTYPE=%127s", layout)) ++ { ++ if (layout) ++ { ++ i = 0; ++ while (basic_language_predefined_pairs[i].locale_key) ++ { ++ if (!strncmp ++ (basic_language_predefined_pairs[i].locale_key, ++ layout, ++ strlen(basic_language_predefined_pairs[i].locale_key))) ++ { ++ lang = basic_language_predefined_pairs[i].locale_key; ++ eina_stringshare_replace(&e_config->language, lang); ++ e_intl_language_set(e_config->language); ++ e_wizard_labels_update(); ++ return 0; ++ } ++ i++; ++ } ++ } ++ } ++ } ++ pclose(locale_inf); + } -+ - Evas_Object *of, *ob; - Eina_List *l; - E_Intl_Pair *pair; - + + e_wizard_title_set(_("Language")); + of = elm_frame_add(e_comp->elm); ++++++ feature-wizard-keylayout-from-sys.patch ++++++ commit 2a7e877f1ab1f45dabeee951ca77ccb90851d73d Author: Simon Lees (SUSE) <sfl...@suse.de> Date: Tue Nov 29 14:51:08 2016 +1030 feature-wizard-keylayout-from-sys diff --git a/src/modules/wizard/page_011.c b/src/modules/wizard/page_011.c index 2acaf5d..56c1b97 100644 --- a/src/modules/wizard/page_011.c +++ b/src/modules/wizard/page_011.c @@ -1,5 +1,6 @@ /* Language chooser */ #include "e_wizard.h" +#include <eina_log.h> typedef struct _Layout Layout; @@ -10,8 +11,9 @@ struct _Layout }; static const char *rules_file = NULL; -static const char *layout = NULL; +static Eina_Stringshare *layout = NULL; static Eina_List *layouts = NULL; +static Eina_Bool set = EINA_FALSE; static void find_rules(void) @@ -111,7 +113,7 @@ implement_layout(void) if (!found) { nl = E_NEW(E_Config_XKB_Layout, 1); - nl->name = eina_stringshare_ref(layout); + nl->name = eina_stringshare_ref(eina_stringshare_add(layout)); nl->variant = eina_stringshare_add("basic"); nl->model = eina_stringshare_add("default"); e_config->xkb.used_layouts = eina_list_prepend(e_config->xkb.used_layouts, nl); @@ -168,6 +170,15 @@ _layout_select(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_U E_API int wizard_page_show(E_Wizard_Page *pg EINA_UNUSED) { + /* If we can get the current X11 input method set that rather then asking */ + FILE *output; + output = popen("localectl", "r"); + + Eina_Bool readLayout = EINA_FALSE; + char layout_tmp[32]; + char model_tmp[1024]; + char varient_tmp[1024]; + Evas_Object *of, *ob; Eina_List *l; Layout *lay; @@ -183,6 +194,49 @@ wizard_page_show(E_Wizard_Page *pg EINA_UNUSED) .version = ELM_GENLIST_ITEM_CLASS_VERSION }; + layout_tmp[0] = 0; + model_tmp[0] = 0; + varient_tmp[0] = 0; + + if (output) + { + char line[1024]; + + while (fscanf(output, "%[^\n]\n", line) == 1) + { + sscanf (line, "X11 Layout: %31s", layout_tmp); + /* These aren't used currently, I want it to work first */ + sscanf (line, "X11 Model: %31s", model_tmp); + sscanf (line, "X11 Variant: %31s", varient_tmp); + } + pclose(output); + } + + /* If we don't find a layout or the layout is not availble */ + if ((layout_tmp[0] != 0) && (strstr(layout_tmp, "n/a") == NULL)) + { + layout = eina_stringshare_add_length(layout_tmp, strlen(layout_tmp)); + + EINA_LIST_FOREACH(layouts, l, lay) + { + if (eina_streq(lay->name, layout_tmp)) + layout = lay->name; + } + /* T4934 - Commenting out the 3 lines below should set the keyboard + layout from the system without showing the screen, this fails + however its possible to pre select what is probably the right layout */ + /* implement_layout(); + set = EINA_TRUE; + return 0; */ + } + + /* Previous behavior always selected US */ + if ((layout_tmp[0] == 0) || (strstr(layout_tmp, "n/a") != NULL)) + { + layout_tmp[0] = 'u'; + layout_tmp[1] = 's'; + layout_tmp[2] = 0; + } e_wizard_title_set(_("Keyboard")); of = elm_frame_add(e_comp->elm); elm_object_text_set(of, _("Select one")); @@ -195,9 +249,9 @@ wizard_page_show(E_Wizard_Page *pg EINA_UNUSED) EINA_LIST_FOREACH(layouts, l, lay) { void *it; - + it = elm_genlist_item_append(ob, &itc, lay, NULL, 0, _layout_select, lay); - if (eina_streq(lay->name, "us")) + if (eina_streq(lay->name, layout_tmp)) sel_it = it; } @@ -218,7 +272,10 @@ E_API int wizard_page_hide(E_Wizard_Page *pg EINA_UNUSED) { /* special - key layout inits its stuff the moment it goes away */ - implement_layout(); + if (!set) + { + implement_layout(); + } return 1; } @@ -226,7 +283,10 @@ E_API int wizard_page_apply(E_Wizard_Page *pg EINA_UNUSED) { // do this again as we want it to apply to the new profile - implement_layout(); - return 1; + if (!set) + { + implement_layout(); + } + return 1; }