gwtbootstrap3 / gwtbootstrap3-extras

Extra (third party) wrappers for GwtBootstrap3
Apache License 2.0
43 stars 89 forks source link

DateTimePicker returns wrong time when in 24-hour mode #240

Closed FrankW76 closed 8 years ago

FrankW76 commented 8 years ago

When using a 24-hour DateTimePicker, the onChangeDate event always returns an hour in the morning. If you for example select 23:00, you will get a Date object with 11:00.

This reproducable in the demo-website. If you go to https://gwtbootstrap3.github.io/gwtbootstrap3-demo/#dateTimePicker and you select an hour in the afternoon in the first demo, you will see the textbox updating to the same hour in the morning.

FrankW76 commented 8 years ago

I think I have solved this issue but I cannot run my project with the updated bootstrap-extras jar.

When running I get errors in gwt bootstrap :

 [java]             [ERROR] Errors in 'org/gwtbootstrap3/extras/datepicker/client/ui/base/DatePickerBase.java'
 [java]                [ERROR] Line 119: The method setupBlurValidation() of type DatePickerBase.DatePickerValidatorMixin must override or implement a supertype method
 [java]                [ERROR] Line 120: The method getInputWidget() is undefined for the type DatePickerBase.DatePickerValidatorMixin
 [java]                [ERROR] Line 123: The method getInputWidget() is undefined for the type new BlurHandler(){}
 [java]          [ERROR] Hint: Check the inheritance chain from your module; it may not be inheriting a required module or a module may not be adding its source path entries properly
 [java]          Tracing compile failure path for type 'org.gwtbootstrap3.extras.datetimepicker.client.ui.base.DateTimePickerBase'
 [java]             [ERROR] Errors in 'org/gwtbootstrap3/extras/datetimepicker/client/ui/base/DateTimePickerBase.java'
 [java]                [ERROR] Line 122: The method setupBlurValidation() of type DateTimePickerBase.DatePickerValidatorMixin must override or implement a supertype method
 [java]                [ERROR] Line 126: The method getInputWidget() is undefined for the type new BlurHandler(){}
 [java]                [ERROR] Line 123: The method getInputWidget() is undefined for the type DateTimePickerBase.DatePickerValidatorMixin
 [java]          [ERROR] Hint: Check the inheritance chain from your module; it may not be inheriting a required module or a module may not be adding its source path entries properly

Any idea what these are ? I did not change anything in DatePickerBase. And in DateTimePickerBase I didn't change anything concerning that blur handler stuff.

Should I also update the bootrap-gwt jar ?

FrankW76 commented 8 years ago

I did a pull request to fix this issue : https://github.com/gwtbootstrap3/gwtbootstrap3-extras/pull/241

The problem was that the default showMeridian is false, and the default format was using 12 hour format. Not really a bug, but at least confusing.