Impacted versions:
master

Steps to reproduce:
On the video

Current behavior:
You have to write the name of the group only

Expected behavior:
Either Writing the code or the name of an Account Group fetch the record 

Video/Screenshot link (optional):
https://drive.google.com/file/d/0B1w9gokcJL9hVWpaMTdGQ3RlLTQ/view

addons/account/models/account.py
args = args or []
        domain = []
        if name:
            domain = ['|', ('code', '=ilike', name + '%'), ('name', operator, name)]
            if operator in expression.NEGATIVE_TERM_OPERATORS:
                domain = ['&', '!'] + domain[1:]
        accounts = self.search(domain + args, limit=limit)
        return accounts.name_get()
    @api.onchange('internal_type')
    def onchange_internal_type(self):
        if self.internal_type in ('receivable', 'payable'):
            self.reconcile = True
    @api.onchange('code')
    def onchange_code(self):
        AccountGroup = self.env['account.group']
        group = False
        code_prefix = self.code
        
        while code_prefix:
            matching_group = AccountGroup.search([('code_prefix', '=', code_prefix)], limit=1)
            if matching_group:
                group = matching_group
                break
            code_prefix = code_prefix[:-1]
        self.group_id = group
    @api.multi
    @api.depends('name', 'code')
    def name_get(self):