Started resolving TODOs in the GTK+ backend, marking some LONGTERM. In particular, uiDateTimePicker no longer will be localized, as there doesn't seem to be a way to get that info out.

This commit is contained in:
Pietro Gagliardi 2016-05-22 19:17:42 -04:00
parent a641a7eda8
commit f0011d6227
5 changed files with 18 additions and 10 deletions

View File

@ -81,6 +81,7 @@ notes to self
don't forget LONGTERMs as well
notes
- http://blogs.msdn.com/b/oldnewthing/archive/2004/03/29/101121.aspx on accelerators

View File

@ -1,7 +1,7 @@
// 13 may 2016
#import "uipriv_darwin.h"
// TODO don't halt on release builds
// LONGTERM don't halt on release builds
void realbug(const char *file, const char *line, const char *func, const char *prefix, const char *format, va_list ap)
{

View File

@ -1,9 +1,7 @@
// 4 september 2015
#include "uipriv_unix.h"
// TODO imitate gnome-calendar's day/month/year entries?
// TODO 24-hour time
// TODO don't assume all locales use :
// LONGTERM imitate gnome-calendar's day/month/year entries above the calendar
#define dateTimePickerWidgetType (dateTimePickerWidget_get_type())
#define dateTimePickerWidget(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), dateTimePickerWidgetType, dateTimePickerWidget))
@ -151,8 +149,19 @@ static gboolean startGrab(dateTimePickerWidget *d)
GdkDevice *keyboard, *mouse;
dev = gtk_get_current_event_device();
if (dev == NULL)
return FALSE; // TODO
if (dev == NULL) {
// this is what GtkComboBox does
// since no device was set, just use the first available "master device"
GdkDisplay *disp;
GdkDeviceManager *dm;
GList *list;
disp = gtk_widget_get_display(GTK_WIDGET(d));
dm = gdk_display_get_device_manager(disp);
list = gdk_device_manager_list_devices(dm, GDK_DEVICE_TYPE_MASTER);
dev = (GdkDevice *) (list->data);
g_list_free(list);
}
time = gtk_get_current_event_time();
keyboard = dev;
@ -441,7 +450,7 @@ static void dateTimePickerWidget_init(dateTimePickerWidget *d)
d->seconds = newSpinbox(d, 0, 59, NULL, zeroPadSpinbox, &(d->secondsBlock));
gtk_container_add(GTK_CONTAINER(d->timebox), d->seconds);
// TODO this should be the case, but that interferes with grabs
// LONGTERM this should be the case, but that interferes with grabs
// switch to it when we can drop GTK+ 3.10 and use popovers
#if 0
d->ampm = gtk_combo_box_text_new();

View File

@ -1,7 +1,7 @@
// 13 may 2016
#include "uipriv_unix.h"
// TODO don't halt on release builds
// LONGTERM don't halt on release builds
void realbug(const char *file, const char *line, const char *func, const char *prefix, const char *format, va_list ap)
{

View File

@ -1,8 +1,6 @@
// 6 december 2015
#include "uipriv_unix.h"
// TODO: ensure this can only be used to enter plain text
struct uiMultilineEntry {
uiUnixControl c;
GtkWidget *widget;