Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Nov 30, 2012
  1. Merge pull request #63 from weed/master

    added screenshot to readme
Commits on Aug 31, 2012
  1. @weed

    added screenshot to readme

    weed committed
Commits on Jun 22, 2012
  1. Make calendar accessible

Commits on Feb 2, 2011
  1. Fixed re-load view hierarchy bug.

    This closes issue #23 on GitHub. The issue was related to how we re-construct the view hierarchy after a low memory warning from the system. If the user had changed to a month different than the initial month when KalViewController was created, it would fail to find the appropriate KalTileView for the value that it had stored as the initially selected date. The solution is to re-cache the initially selected date when a low memory warning occurs.
    Original bug report by jgchristian:
    Steps to reproduce:
    1. Start your Holiday app
    2. Slide to the next month (i.e. not the current month)
    3. Select an event and view the holiday details
    4. When on the details screen, quit to the springboard by single clicking the home button (not double clicking to background). We need to force the device to want to reload the grid when we return - so you may need to do some memory intensive stuff - but not generally the case for me.
    5. Relaunch the Holiday app. This returns you to the details screen
    6. Now press back to return to the grid. Crash log below
    From the looks of the code this is happening because the 'logic' object is still on the next month (correct), but when loadView is triggered by the OS trying to re-instantiate the view it defaults to setting the current date on the grid - which was in the previous month so assertion fails as cell is nil.
    Thought about maintaining last user-selected date but started to get fiddly.
    2011-02-02 08:20:24.961 Holiday[3471:307] Received memory warning. Level=2
    2011-02-02 08:20:28.382 Holiday[3471:307] Assertion failure in -[KalMonthView tileForDate:], /Users/j.christian/dev/Kal/src/KalMonthView.m:84
    2011-02-02 08:20:28.510 Holiday[3471:307] Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Failed to find corresponding tile for date 2/2/2011'
Commits on Jan 22, 2011
  1. Made it easier to override KalViewController's title.

    Prior to this commit, KalViewController used to clobber its 'title'
    property inherited from UIViewController in its loadView method. I
    changed this so that now it only sets a default title if the title
    property is nil. I modified both of the example apps to set the
    KalViewController's title explicitly.
    This makes it easier for clients of KalViewController to customize its
    behavior without resorting to subclassing or the even more drastic
    measure of modifying KalViewController's implementation.
    This closes issue #17 on GitHub.
  2. Fixed KalViewController delegate/dataSource retain bug.

    A regression was introduced in SHA: 8fa33f4 where the
    KalViewController's delegate and dataSource properties were being
    retained by the setter implementation but were declared to be assigned
    properties. My intent was that these were weak references, and so this
    commit removes the retains. As a client of KalViewController, it is
    your responsibility to ensure that the lifetime of the
    KalViewController's delegate and dataSource properties has at least the
    same extent as the KalViewController object itself.
    This closes issue #18 on GitHub.
Commits on Sep 24, 2010
  1. Slide animation: fade previous month out while fading in the next mon…

    …th. (thanks Daniel Gindi)
Commits on Sep 9, 2010
Commits on Aug 3, 2010
  1. Fixed bug in calendar month header where month name was incorrectly d…

    …isplayed for languages such as Russian which have a separate stand-alone form of the month name.
Commits on Jul 23, 2010
  1. Follow-up to follow-up to f2f9ff8: Uggh. Ok, I think this is the fina…

    …l part to the bugfix. I wish I would have tested this sooner on the real device.
  2. CRITICAL BUG FIX: today's date and iOS 4.0 multitasking.

    Root cause: If an application using Kal is suspended in the background for an extended period of time (specifically, crossing the midnight threshold), when the app is resumed, Kal will still think that "today" has not changed. In my original implementation, I had naively assumed that the app would never be used for such an extended period of time, but iOS 4.0 multitasking makes my assumption invalid.
    Solution: Listen for the UIApplicationSignificantTimeChangeNotification from the OS and respond appropriately by recaching today's date and refreshing the UI.
Commits on Jul 12, 2010
  1. Updated EventKit example app to asynchronously fetch events from the …

    …EKEventStore using a GCD queue.
Commits on Jul 9, 2010
  1. Updated README. Please read.

  2. Added support for the KalDataSource to notify Kal that the UI needs t…

    …o be refreshed. Added EKEventStoreChangedNotification handling to NativeCal example app.
Commits on Jul 7, 2010
  1. Added EventKit example

Commits on Jul 6, 2010
  1. Significant changes to how Kal is built.

    - Refactored the project structure into 2 Xcode projects: one that builds the static library and one that builds an example app using Kal.
    - Switched over to the iOS 4.0 SDK (in preparation for EventKit demo and Retina Display support).
Commits on Jul 5, 2010
Commits on Mar 11, 2010
  1. Updated the README

  2. Renamed the '*IfVisible' methods and added an assertion that the date…

    …'s corresponding tile can actually be found (i.e. it is visible)
  3. New feature: show and select arbitrary dates

    1) When creating a KalViewController, you can now specify the initial selected date (before it always just displayed and selected today's date)
    2) You can now send a message to KalViewController to show and select an arbitrary date (before you could only tell it to show today's date).
Commits on Jan 12, 2010
  1. KalViewController's designated initializer is now 'init'. HolidaysDem…

    …o now shows how to push a details view controller when the user taps a holiday listed below the calendar.
  2. Fixed an animation bug.

    -[UIView setAnimationsEnabled:] is *not* scoped to the UIView animation transaction. So if you turn off animations, make sure you turn them back on immediately after the animation is triggered.
Commits on Jan 3, 2010
  1. More code cleanup

  2. Fixed 2 memory leaks

  3. KalViewController now exposes its UITableView as a property.

    This allows you to provide your own UITableViewDelegate or to override the configuration of the UITableView (row height, separator color, etc.)
Commits on Jan 2, 2010
Something went wrong with that request. Please try again.