Opened 8 years ago

Closed 8 years ago

Last modified 5 years ago

#12276 closed enhancement (fixed)

Calendar: create light calendar suitable for mobile

Reported by: bill Owned by: bill
Priority: high Milestone: 1.7
Component: Dijit Version: 1.6.0b1
Keywords: 1.7-mobile Cc:
Blocked By: Blocking:

Description

Refactor Calendar, splitting out code needed by mobile into base class, to make smaller code footprint.

The light version of Calendar will be different from the current desktop version by:

  • no month drop down (in order to avoid loading popup code, and widgetsInTemplate support)
  • don't use _CssStateMixin but rather CSS pseudo-selectors :hover, :active, etc. (this would probably be in CSS files in dojox/mobile)
  • no keyboard support
  • etc.

Other changes:

  • don't use dojo.query() in either version of Calendar

Change History (13)

comment:1 Changed 8 years ago by bill

(In [23939]) Remove Calendar dependency on dojo.query().

The Calendar template has been modified to have ${!dayCellsHtml} and ${!dateRowsHtml} variables for the M-F (days of week) row, and the 1-31 days-of-the-month cells. Custom calendar templates should be updated to contain these variables rather than markup for those sections.

If custom versions of Calendar need to modify the structure of days-of-week or days-of-month cells, they can override the new Calendar attributes: dowTemplateString, dateTemplateString, and weekTemplateString.

Refs #12276 !strict.

comment:2 Changed 8 years ago by bill

Keywords: 1.7-mobile added

comment:3 Changed 8 years ago by bill

Type: taskenhancement

comment:4 Changed 8 years ago by bill

(In [24125]) remove _WidgetsInTemplate dependency, refs #12276 !strict

comment:5 Changed 8 years ago by Chris Mitchell

is this still feasible for 1.7?

comment:6 Changed 8 years ago by bill

Yes, still planning on it, although I also think it's usable as-is. (I've already done most of the work, remaining task is to remove the month drop down.)

comment:7 Changed 8 years ago by Chris Mitchell

Is someone helping u with CSS for the different devices?

comment:8 Changed 8 years ago by bill

No, someone needs to do that, I wasn't planning on providing any mobile themes for the Calendar, or any other dijit widgets.

comment:9 Changed 8 years ago by Chris Mitchell

Hi Bill, You may want to check out the dojox/mobile/test_Opener.html example i checked in...uses a restyled version of dijit.Calendar. I tried to update to use CalendarLite?, but get some keypress event handling errors.

comment:10 Changed 8 years ago by bill

(In [24622]) minimize test case dojo.require() calls in order to test that CalendarLite loads everything it needs, and nothing else, refs #12276

comment:11 Changed 8 years ago by bill

I changed test_Opener.html to use CalendarLite; it's working for me.

comment:12 Changed 8 years ago by bill

Resolution: fixed
Status: newclosed

(In [24583]) New CalendarLite widget based on Calendar that implements basic calendar functionality but excludes month drop down, keyboard support, and CSS class changes for mouse hover/press.

Calendar extends CalendarLite while keeping the same API as before.

Fixes #12276 !strict.


(In [24584]) CalendarLite related test updates, refs #12276

comment:13 Changed 5 years ago by Bill Keese <bill@…>

In ee57cb3cf176f651e03f06ef8fc037df05fbe728/dijit:

Error: Processor CommitTicketReference failed
Unsupported version control system "git": Can't find an appropriate component, maybe the corresponding plugin was not enabled? 
Note: See TracTickets for help on using tickets.