From 6a812bdb7af70a8224db61c256ec61283ef91d38 Mon Sep 17 00:00:00 2001 From: "James E. Blair" Date: Fri, 13 Mar 2015 16:53:28 -0700 Subject: [PATCH] Handle change id in simple searches Accept the full change id in addition to the change number as a simple search query. Also be more lenient about leading or trailing whitespace (which is useful when copy/pasting change ids when searching). Change-Id: If8e6186e3487a468ef945408fe46bd8c57875a3b --- gertty/app.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gertty/app.py b/gertty/app.py index 04be6d4..37c127c 100644 --- a/gertty/app.py +++ b/gertty/app.py @@ -18,6 +18,7 @@ import dateutil import logging import os import Queue +import re import subprocess import sys import threading @@ -155,6 +156,8 @@ class BackgroundBrowser(webbrowser.GenericBrowser): return False class App(object): + simple_change_search= re.compile('^(\d+|I[a-fA-F0-9]{40})$') + def __init__(self, server=None, palette='default', keymap='default', debug=False, verbose=False, disable_sync=False, fetch_missing_refs=False, path=config.DEFAULT_CONFIG_PATH): @@ -401,11 +404,9 @@ class App(object): def _searchDialog(self, dialog): self.backScreen() - query = dialog.entry.edit_text - try: - query = 'change:%s' % int(query) - except ValueError: - pass + query = dialog.entry.edit_text.strip() + if self.simple_change_search.match(query): + query = 'change:%s' % query self.doSearch(query) def error(self, message):