# TaskNotes 3.16.1

## New Features

### Task Management

- **Visual Filter State Indicators**: Added visual state indicators for active saved views in FilterBar to provide better feedback when a saved view is currently active

## Bug Fixes

### Link Generation and Consistency

- **Obsidian Link Format Compliance**: Fixed "Insert tasknote link" and "Convert task to TaskNote" commands to use Obsidian's native generateMarkdownLink method, respecting user's link format preferences in Files & Links settings [#312] - Thanks to @nightroman for reporting the inconsistency and requesting proper format support
- **Consistent Link Formatting**: Both commands now generate links in the same format and are compatible with external tools when markdown links are preferred

### Timezone and Date Handling

- **Recurring Task Completion Fix**: Resolved critical timezone bug where recurring task completion dates were stored incorrectly in non-UTC timezones [#314] - Thanks to @kmaustral for detailed reporting and testing across multiple views
- **UTC Date Consistency**: Updated all date utilities to use UTC methods consistently across calendar components, fixing off-by-one date issues in task completion tracking
- **Calendar Date Normalization**: Added createSafeUTCDate utility function and converted MiniCalendarView navigation to UTC methods for reliable date handling

### User Interface

- **Sort Arrow Visibility**: Enhanced sort direction arrow visibility and positioning in filter condition builder with increased font size, bold weight, and accent color [#307] - Thanks to @kmaustral for noting the arrow was difficult to see in dark mode
- **Duplicate Tooltip Prevention**: Removed duplicate tooltips on recurring task indicators by using Obsidian's native setTooltip function instead of HTML title attributes
- **Pointer Cursor Consistency**: Added pointer cursor styling to all buttons in Pomodoro view for better usability [#308] - Thanks to @anomatomato for the contribution

### Error Handling and Stability

- **Daily Note Creation Protection**: Added proper error handling for createDailyNote failures across TimeblockCreationModal, PomodoroService, and helper utilities, preventing "Cannot read properties of undefined" errors
- **Security Compliance**: Replaced unsafe innerHTML assignment with textContent in drag handle creation to resolve ESLint security violations

## Improvements

### User Interface

- **Calendar Styling Enhancements**: Improved advanced calendar view with better borders, header text readability, and removed custom scrollbar styling for system consistency
- **Enhanced Visual Definition**: Added border and border radius to calendar container, plus consistent borders on column headers and toolbar for cleaner appearance

### Development and Code Quality

- **Test Infrastructure**: Added missing setTooltip mock to resolve 39 failing TaskCard tests
- **Documentation Updates**: Improved documentation formatting and appearance

## Technical Improvements

- Enhanced date handling throughout the codebase with UTC method standardization
- Improved defensive programming practices for timezone-sensitive operations
- Better error messaging for daily note creation failures
- Code security improvements with ESLint compliance

