Changeset 4412


Ignore:
Timestamp:
Apr 25, 2017, 10:35:25 AM (2 years ago)
Author:
mabarracus
Message:

Updated translations
Changed banner
Improved save modes

Location:
syncer-plank/trunk/fuentes
Files:
3 added
15 edited

Legend:

Unmodified
Added
Removed
  • syncer-plank/trunk/fuentes/debian/changelog

    r4320 r4412  
     1syncer-plank (0.3.1) xenial; urgency=medium
     2
     3  * Updated translations
     4  * Changed banner
     5  * Improved save modes
     6
     7 -- M.Angel Juan <m.angel.juan@gmail.com>  Tue, 25 Apr 2017 10:33:58 +0200
     8
    19syncer-plank (0.3-1) xenial; urgency=medium
    210
  • syncer-plank/trunk/fuentes/syncer-plank.install/usr/bin/syncer-plank-gui

    r4320 r4412  
    272272            file_names = [filename for filename in glob.iglob(os.path.expanduser('~') + '/.config/plank/dock1/launchers/*.dockitem', recursive=True)]
    273273        except Exception as e:
    274             return None
     274            return list_apps
    275275        for filename in file_names:
    276             basename=filename.split('/')[-1].split('.')[0]
    277             if basename == 'desktop':
    278                 icon_file='preferences-desktop-wallpaper.png'
    279                 complete_filename = [filename for filename in glob.iglob('/usr/share/icons/' + theme + '/**/' + icon_file, recursive=True)][0]
    280                 name='Show desktop'
    281                 if complete_filename:
    282                     list_apps.append((complete_filename,basename,basename,filename,name))
    283             elif basename == 'matecc':
    284                 icon_file='preferences-desktop.png'
    285                 complete_filename = [filename for filename in glob.iglob('/usr/share/icons/' + theme + '/**/'+icon_file, recursive=True)][0]
    286                 name='Control center'
    287                 if complete_filename:
    288                     list_apps.append((complete_filename,basename,basename,filename,name))
    289             else:
    290                 complete_filename=[filename for filename in glob.iglob('/usr/share/applications/'+basename+'.desktop', recursive=True)][0]
    291                 result=self.scan_desktop_file(filename=complete_filename,files_cache=files_cache)
    292                 if result:
    293                     list_apps.append(result)
     276            try:
     277                basename=filename.split('/')[-1].split('.')[0]
     278                if basename == 'desktop':
     279                    icon_file='preferences-desktop-wallpaper.png'
     280                    complete_filename = [filename for filename in glob.iglob('/usr/share/icons/' + theme + '/**/' + icon_file, recursive=True)][0]
     281                    name='Show desktop'
     282                    if complete_filename:
     283                        list_apps.append((complete_filename,basename,basename,filename,name))
     284                elif basename == 'matecc':
     285                    icon_file='preferences-desktop.png'
     286                    complete_filename = [filename for filename in glob.iglob('/usr/share/icons/' + theme + '/**/'+icon_file, recursive=True)][0]
     287                    name='Control center'
     288                    if complete_filename:
     289                        list_apps.append((complete_filename,basename,basename,filename,name))
     290                else:
     291                    complete_filename=[filename for filename in glob.iglob('/usr/share/applications/'+basename+'.desktop', recursive=True)][0]
     292                    result=self.scan_desktop_file(filename=complete_filename,files_cache=files_cache)
     293                    if result:
     294                        list_apps.append(result)
     295            except Exception as e:
     296                dbg('{} processing local filename \'{}\''.format(str(e),filename))
     297                pass
    294298
    295299        return list_apps
     
    389393            file_names = [filename for filename in glob.iglob('/usr/share/applications/*.desktop', recursive=True)]
    390394        except:
    391             return None
     395            return []
    392396
    393397        outlist=[]
     
    12331237        FILTER_COL=1
    12341238        for type in ['system','local']:
     1239            l = []
    12351240            for i in self.cache_lists[type]:
    12361241                if not i[FILTER_COL] in l:
     
    13801385        # new_profile or the profile_name what is currently being modified
    13811386        self.user_is_editing=None
     1387        self.initial_liststore=None
     1388        self.initial_profile_name=''
    13821389        # Flags to remember what changed into window
    13831390        self.profile_name_changed = None
     
    14101417        self.profile_name_changed = False
    14111418        self.applist_changed = False
     1419        self.initial_liststore = None
     1420        self.initial_profile_name = ''
    14121421    #
    14131422    # Load glade file
     
    14401449        # Get current user Plank elements
    14411450        #
    1442         self.model.cache_info['msg']="Searching local apps..."
    1443         self.model.cache_lists['local']=self.helper.search_local_plank(files_cache=files_cache)
     1451        self.model.cache_info['msg']=_("Searching local apps...")
     1452        try:
     1453            self.model.cache_lists['local']=self.helper.search_local_plank(files_cache=files_cache)
     1454        except:
     1455            dbg('Error building local cache list')
     1456            self.model.cache_lists['local']=[]
    14441457        #
    14451458        # Get data from applications from /usr/share/application/*.desktop
    14461459        #
    1447         self.model.cache_info['msg'] = "Searching system apps..."
    1448         self.model.cache_lists['system']=self.helper.search_in_applications(cache_info=self.model.cache_info,files_cache=files_cache)
     1460        self.model.cache_info['msg'] = _("Searching system apps...")
     1461        try:
     1462            self.model.cache_lists['system']=self.helper.search_in_applications(cache_info=self.model.cache_info,files_cache=files_cache)
     1463        except:
     1464            dbg('Error building system cache list')
     1465            self.model.cache_lists['system'] = []
    14491466        #
    14501467        # Purge possible duplicated entries
     
    14521469        self.model.purge_duplicated_cache_items()
    14531470        #
    1454         self.window.set_txt_status_bars('','','Detected apps: Plank({}) System({})'.format(len(self.model.cache_lists['local']),len(self.model.cache_lists['system'])))
    1455         self.helper.clean_status_bar(2)
     1471
    14561472        #
    14571473        # End cache process
    14581474        #
    1459         self.model.cache_info['msg'] = _('Ready!')
    1460         self.model.cache_info['done']=True
     1475        if len(self.model.cache_lists['system']) > 0:
     1476            self.window.set_txt_status_bars('', '', '{} {}({}) {}({})'.format(_('Detected apps:'), _('Plank'),
     1477                                                                              len(self.model.cache_lists['local']),
     1478                                                                              _('System'),
     1479                                                                              len(self.model.cache_lists['system'])))
     1480            self.helper.clean_status_bar(2)
     1481            self.model.cache_info['msg'] = _('Ready!')
     1482            self.model.cache_info['done']=True
     1483        else:
     1484            self.model.cache_info['msg'] = _("Unable to build complete cache...")
    14611485        #
    14621486        # Hide level bar
     
    16841708                    self.window.set_entry({'entry_profile_name':kwargs['name']})
    16851709                    self.reset_memories()
     1710                    self.initial_profile_name=kwargs['name']
     1711                    self.initial_liststore=apps_selected
    16861712                    self.user_is_editing=kwargs['name']
    16871713                    self.window.change_stack('box_profiles')
     
    17581784        if to == 'new_profile':
    17591785            self.window.set_entry({'entry_profile_name':''})
     1786            self.initial_profile_name = ''
     1787            self.initial_liststore=None
    17601788            self.model.build_liststore(type='apps')
    17611789            self.user_is_editing='new_profile'
     
    17901818            # Check if need to save something
    17911819            #
     1820            changes_made = False
    17921821            if self.last_window == 'box_profiles':
    17931822                if self.user_is_editing == 'new_profile':
    17941823                    if self.profile_name_changed or self.applist_changed:
    17951824                        pname = self.window.get_entry('entry_profile_name')[0]
    1796                         if not self.model.check_profile_name(name=pname,type='available'):
    1797                             self.window.set_entry({'lbl_msg_warning': _('Profile name not valid')})
    1798                             self.window.change_stack('box_warning')
    1799                             return
    1800                         # Store new profile
    1801                         self.update_current_profile()
    1802                         return
     1825                        # If modified and no changes are done really skip warning msg
     1826                        if pname.strip() != self.initial_profile_name: # initial_profile_name always must be '' when is a new_profile
     1827                            if not self.model.check_profile_name(name=pname,type='available'):
     1828                                self.window.set_entry({'lbl_msg_warning': _('Profile name not valid')})
     1829                                self.window.change_stack('box_warning')
     1830                                changes_made=True
     1831                            else:
     1832                                # Store new profile (with valid name)
     1833                                # Not allowed empty applist
     1834                                applist = self.model.get_liststore_selections(type='apps')
     1835                                if len(applist) > 0:
     1836                                    self.update_current_profile()
     1837                                    changes_made = True
    18031838                elif self.user_is_editing != '':
    18041839                    # User is editing existent profile
    18051840                    if self.applist_changed and not self.profile_name_changed:
    18061841                        # Update current profile (self.user_is_editing)
    1807                         self.update_current_profile()
     1842                        applist=self.model.get_liststore_selections(type='apps')
     1843                        if len(applist) > 0:
     1844                            list_initial=self.initial_liststore
     1845                            #check if anything has changed
     1846                            applist_copy=list(applist)
     1847                            for app in applist_copy:
     1848                                if app in list_initial:
     1849                                    applist.remove(app)
     1850                                    list_initial.remove(app)
     1851                            # skip update if modified list is the same initially created
     1852                            if len(applist) > 0 or len(list_initial) > 0:
     1853                                self.update_current_profile()
     1854                                changes_made = True
     1855
    18081856                    if not self.applist_changed and self.profile_name_changed:
    18091857                        # Rename current profile (self.user_is_editing)
    18101858                        newname=self.window.get_entry('entry_profile_name')[0]
    1811                         if not self.model.check_profile_name(name=newname,type='available'):
    1812                             self.window.set_entry({'lbl_msg_warning': _('Profile name not valid')})
    1813                             self.window.change_stack('box_warning')
    1814                             return
    1815                         self.helper.n4d_rename_profile(user=self.model.user,pwd=self.model.pwd,old=self.user_is_editing,new=newname)
     1859                        # Skip if modified name is the same as initially created
     1860                        if newname.strip() != self.initial_profile_name:
     1861                            if not self.model.check_profile_name(name=newname,type='available'):
     1862                                self.window.set_entry({'lbl_msg_warning': _('Profile name not valid')})
     1863                                self.window.change_stack('box_warning')
     1864                                changes_made = True
     1865                            else:
     1866                                self.helper.n4d_rename_profile(user=self.model.user,pwd=self.model.pwd,old=self.user_is_editing,new=newname)
     1867                                changes_made = True
     1868
    18161869                    if self.applist_changed and self.profile_name_changed:
    18171870                        # create new profile & remove old profile (self.user_is_editing)
    1818                         self.update_current_profile()
    1819                         #
    1820                         # -Uncomment if it's desired to remove old profile when modifications of name and apps are done
    1821                         # -If commented, new profile it's created making a copy of the current profile with other name
    1822                         # and remove profile only it's possible from the remove menu, doing more explicitly the remove action
    1823                         #
    1824                         #self.helper.n4d_remove_profile(user=self.model.user,pwd=self.model.pwd,name=self.user_is_editing)
    1825                     if self.applist_changed or self.profile_name_changed:
    1826                         return
     1871                        applist = self.model.get_liststore_selections(type='apps')
     1872                        if len(applist) > 0:
     1873                            list_initial = self.initial_liststore
     1874                            # check if anything has changed
     1875                            applist_copy = list(applist)
     1876                            for app in applist_copy:
     1877                                if app in list_initial:
     1878                                    applist.remove(app)
     1879                                    list_initial.remove(app)
     1880                            # skip update if modified list is the same initially created
     1881                            if len(applist) > 0 or len(list_initial) > 0:
     1882                                newname = self.window.get_entry('entry_profile_name')[0]
     1883                                if newname.strip() != self.initial_profile_name:
     1884                                    if not self.model.check_profile_name(name=newname, type='available'):
     1885                                        self.window.set_entry({'lbl_msg_warning': _('Profile name not valid')})
     1886                                        self.window.change_stack('box_warning')
     1887                                    else:
     1888                                        self.helper.n4d_rename_profile(user=self.model.user, pwd=self.model.pwd,
     1889                                                                       old=self.user_is_editing, new=newname)
     1890                                        changes_made = True
     1891                                else:
     1892                                    #
     1893                                    # -Uncomment if it's desired to remove old profile when modifications of name and apps are done
     1894                                    # -If commented, new profile it's created making a copy of the current profile with other name
     1895                                    # and remove profile only it's possible from the remove menu, doing more explicitly the remove action
     1896                                    #
     1897                                    # self.helper.n4d_remove_profile(user=self.model.user,pwd=self.model.pwd,name=self.user_is_editing)
     1898                                    self.update_current_profile()
     1899                                    changes_made = True
     1900
     1901                if changes_made:
     1902                   return
    18271903
    18281904            # if nothing is saved do normal go back
     
    18391915    def update_current_profile(self,*args,**kwargs):
    18401916        profile_name = self.window.get_entry('entry_profile_name')[0]
    1841         if self.user_is_editing == 'new_profile' and not self.model.check_profile_name(name=profile_name,type='available'):
    1842             self.window.set_entry({'lbl_msg_warning':_('Profile name not valid')})
    1843             self.window.change_stack('box_warning')
    1844             self.reset_memories()
    1845             return
     1917        #if self.user_is_editing == 'new_profile' and not self.model.check_profile_name(name=profile_name,type='available'):
     1918        #    self.window.set_entry({'lbl_msg_warning':_('Profile name not valid')})
     1919        #    self.window.change_stack('box_warning')
     1920        #    self.reset_memories()
     1921        #    return
    18461922        applist = self.model.get_liststore_selections(type='apps')
    18471923        grp = self.model.get_group_from_profile(nameprofile=profile_name)
  • syncer-plank/trunk/fuentes/syncer-plank.install/usr/lib/syncer-plank/gui_v2b.glade

    r4306 r4412  
    696696        <col id="1" translatable="yes">local</col>
    697697        <col id="2">0</col>
    698         <col id="3">noicon.png</col>
     698        <col id="3">firefox.png</col>
    699699        <col id="4">Firefox</col>
    700700        <col id="5">Firefox</col>
  • syncer-plank/trunk/fuentes/syncer-plank.install/usr/share/applications/syncer-plank-gui.desktop

    r4303 r4412  
    88Icon=syncer-plank-gui
    99Terminal=false
    10 Categories=GTK;
     10Categories=X-GNOME-Settings-Panel;X-GNOME-SystemSettings;X-Unity-Settings-Panel;LliureX-Administration;
    1111StartupNotify=true
  • syncer-plank/trunk/fuentes/syncer-plank.install/usr/share/syncer-plank/syncer_plank_gui.pot

    r4303 r4412  
    99"Project-Id-Version: PACKAGE VERSION\n"
    1010"Report-Msgid-Bugs-To: \n"
    11 "POT-Creation-Date: 2017-04-19 12:15+0200\n"
     11"POT-Creation-Date: 2017-04-21 14:54+0200\n"
    1212"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
    1313"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
     
    1818"Content-Transfer-Encoding: 8bit\n"
    1919
    20 #: syncer-gui-v2.py:397
     20#: syncer-gui-v2.py:401
    2121msgid "Scanning system apps..."
    2222msgstr ""
    2323
    24 #: syncer-gui-v2.py:1437
     24#: syncer-gui-v2.py:1446
    2525msgid "Building file cache..."
    2626msgstr ""
    2727
    28 #: syncer-gui-v2.py:1459
     28#: syncer-gui-v2.py:1451
     29msgid "Searching local apps..."
     30msgstr ""
     31
     32#: syncer-gui-v2.py:1460
     33msgid "Searching system apps..."
     34msgstr ""
     35
     36#: syncer-gui-v2.py:1476
     37msgid "Detected apps:"
     38msgstr ""
     39
     40#: syncer-gui-v2.py:1476
     41msgid "Plank"
     42msgstr ""
     43
     44#: syncer-gui-v2.py:1478
     45msgid "System"
     46msgstr ""
     47
     48#: syncer-gui-v2.py:1481
    2949msgid "Ready!"
    3050msgstr ""
    3151
    32 #: syncer-gui-v2.py:1556 syncer-gui-v2.py:1569 syncer-gui-v2.py:1683
     52#: syncer-gui-v2.py:1484
     53msgid "Unable to build complete cache..."
     54msgstr ""
     55
     56#: syncer-gui-v2.py:1580 syncer-gui-v2.py:1593 syncer-gui-v2.py:1707
    3357msgid "apps selected"
    3458msgstr ""
    3559
    36 #: syncer-gui-v2.py:1630 syncer-gui-v2.py:1639 syncer-gui-v2.py:1643
     60#: syncer-gui-v2.py:1654 syncer-gui-v2.py:1663 syncer-gui-v2.py:1667
    3761msgid " updated!"
    3862msgstr ""
    3963
    40 #: syncer-gui-v2.py:1667
     64#: syncer-gui-v2.py:1691
    4165msgid "Updated profile from "
    4266msgstr ""
    4367
    44 #: syncer-gui-v2.py:1667
     68#: syncer-gui-v2.py:1691
    4569msgid " to "
    4670msgstr ""
    4771
    48 #: syncer-gui-v2.py:1775
     72#: syncer-gui-v2.py:1803
    4973msgid "Are you sure to remove the profile"
    5074msgstr ""
    5175
    52 #: syncer-gui-v2.py:1797 syncer-gui-v2.py:1812 syncer-gui-v2.py:1842
     76#: syncer-gui-v2.py:1828 syncer-gui-v2.py:1862 syncer-gui-v2.py:1885
    5377msgid "Profile name not valid"
    5478msgstr ""
Note: See TracChangeset for help on using the changeset viewer.