Time & Date time zone chooser doesn't offer a full set of cities
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
unity-control-center (Ubuntu) |
Confirmed
|
Medium
|
Unassigned |
Bug Description
If I start the Time & Date chooser in 15.04, the "Time & Date" pane does not let me to specify a city by typing its name into the "Location" box (I can type a name, but it's not obvious how to make it select that city), nor does it offer a drop-down list of cities in that box. If I drag the "you are here" blob to the West Coast of the US, it puts "Los Angeles" in the "Location" box, the fact that I'm currently in Palo Alto, about 400 miles from Los Angeles, nonwithstanding.
The fact that the identifier, in the IANA tz database, for the tzdb zone I'm in happens to have, in sequence, the characters 'A', "m', 'e', 'r', 'i', 'c', 'a', '/', 'L', 'o', 's', '_', 'A', 'n', 'g', 'e', 'l', 'e', and 's' is irrelevant; the set of strings used for tzdb zone identifiers is *not* to be used as a set of cities to offer an end user!
Please find a machine running OS X, fire up "System Preferences", select the "Date & Time" item, and select the "Time Zone" pane in that item, for an example of how a time zone selector *should* work. It's similar to what Ubuntu 15.04 offers, but:
1) it uses OS X's location services (Core Location, etc.) to try to find out where you're located, using, I think, Skyhook - you could perhaps use GeoClue for this;
2) instead of a "Location" box into which you can type stuff without an obvious effect, it offers a drop-down list of cities near the location where you've placed the "you are here" blob - the map display in OS X has "geonames.org" on it, so that might be where it gets the list of nearby cities;
3) you can type in that box, and if it finds a matching city, it'll move the "you are here" blob there (sadly, I tried typing "Weed" into it, but it failed to find Weed, CA, although it could find Tustin, Oxnard, Union City, and Redding).
OS X also lets you run in a mode where it uses the location services to continuously update the current tzdb zone for the system, but *that* required a fair bit of chainsaw work on localtime.c (I'm told by somebody who should know that the notify(3) mechanism in OS X was originally created to allow a running process to be informed that it needs to change the current time zone, so even a dumb program in a for loop doing "sleep(10)" followed by "now = time(NULL)" followed by "printf("%s", ctime(&now));" will see the change - in fact, it just *did*).
So please at least stop using the list of tzdb names as a list of cities to show to the user; tzdb identifiers are really *not* something that should be exposed to the vast majority of users (they should be exposed only to nerds). The tzdb maintainers will thank you, as this should significantly reduce the number of users who complain that the tzdb's choice of city to use in the identifier is inappropriate because it's not their city, or it's not the most important city, or whatever.
ProblemType: Bug
DistroRelease: Ubuntu 15.04
Package: unity-control-
ProcVersionSign
Uname: Linux 3.19.0-22-generic x86_64
ApportVersion: 2.17.2-0ubuntu1.1
Architecture: amd64
CurrentDesktop: Unity
Date: Wed Jul 22 17:42:47 2015
ExecutablePath: /usr/bin/
InstallationDate: Installed on 2015-06-03 (48 days ago)
InstallationMedia: Ubuntu 15.04 "Vivid Vervet" - Release amd64 (20150422)
ProcEnviron:
PATH=(custom, user)
SHELL=/bin/bash
LANG=en_US.UTF-8
LANGUAGE=en_US
XDG_RUNTIME_
SourcePackage: unity-control-
UpgradeStatus: No upgrade log present (probably fresh install)
usr_lib_
Changed in unity-control-center (Ubuntu): | |
importance: | Undecided → Medium |
Status changed to 'Confirmed' because the bug affects multiple users.