🗓️ Displays Persian (Iranian/Jalali) calendar in the top panel It offers: 1. Displays the Persian/Iranian/Jalali calendar 2. Holiday indicator 3. Day change notifications 4. Converts dates between the Persian, Gregorian, and Hijri (lunar) calendars 5. Event listings: 5.1. Official solar events 5.2. Official lunar events 5.3. Official international events 5.4. Traditional Persian events 5.5. Notable Persian figures This extension writes to clipboard by user interaction. Please “rate” 💓 the project here and give it a 🌟 on GitHub. If you encounter any issues or have suggestions, feel free to open an issue there on GitHub! Keywords: فارسی / جلالی / تقویم / ایران / ایرانی / گاهشمار / گاهشمار / گاهشماری / گاهشماری / شمسی / خورشیدی / قمری / میلادی / هجری / Iran / Iranian / Jalali / Persian / Calendar
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
EGO-A-005 manual_review
extensions should not access the clipboard directly
Direct clipboard access via `St.Clipboard.get_default()` requires reviewer scrutiny.
Calendar.js:436
St.Clipboard.get_default()
EGO-X-004 warning
extensions should avoid synchronous file IO in shell code
Shell code should avoid synchronous file IO APIs like `GLib.file_get_contents()` and `Gio.File.load_contents()`.
utils/gettext.js:43
localeJsonFile.load_contents(null)
EGO-P-006 warning
unnecessary build and translation artifacts should not be shipped
Compiled GSettings schemas should not be shipped for 45+ packages.
Don't include unnecessary files
schemas/gschemas.compiled
schemas/gschemas.compiled
EGO-L-002 warning
objects created by extension should be destroyed in disable()
Objects assigned in `enable()` are missing matching `.destroy()` calls in `disable()` or its helper methods.
extension.js:120
this._actionButtonsPart = new PopupMenu.PopupBaseMenuItem({
reactive: false,
can_focus: false,
})
extension.js:367
this.convertedDatesVbox = new St.BoxLayout({ vertical: true })
extension.js:345
this.converterDay = new St.Entry({
name: 'day',
hint_text: this._gettext.__('day'),
can_focus: true,
x_expand: true,
style_class: 'pcalendar-converter-entry',
})
extension.js:336
this.converterMonth = new St.Entry({
name: 'month',
hint_text: this._gettext.__('month'),
can_focus: true,
x_expand: true,
style_class: 'pcalendar-converter-entry',
})
extension.js:265
this.converterVbox = new St.BoxLayout({ style_class: 'pcalendar-font', vertical: true, x_expand: true })
extension.js:327
this.converterYear = new St.Entry({
name: 'year',
hint_text: this._gettext.__('year'),
can_focus: true,
x_expand: true,
style_class: 'pcalendar-converter-entry',
})
EGO-L-005 warning
owned object references should be released in disable()
Owned references that are cleaned up in `disable()` should also be released with `null` or `undefined`.
extension.js:120
this._actionButtonsPart = new PopupMenu.PopupBaseMenuItem({
reactive: false,
can_focus: false,
})
extension.js:367
this.convertedDatesVbox = new St.BoxLayout({ vertical: true })
extension.js:345
this.converterDay = new St.Entry({
name: 'day',
hint_text: this._gettext.__('day'),
can_focus: true,
x_expand: true,
style_class: 'pcalendar-converter-entry',
})
extension.js:336
this.converterMonth = new St.Entry({
name: 'month',
hint_text: this._gettext.__('month'),
can_focus: true,
x_expand: true,
style_class: 'pcalendar-converter-entry',
})
extension.js:265
this.converterVbox = new St.BoxLayout({ style_class: 'pcalendar-font', vertical: true, x_expand: true })
extension.js:327
this.converterYear = new St.Entry({
name: 'year',
hint_text: this._gettext.__('year'),
can_focus: true,
x_expand: true,
style_class: 'pcalendar-converter-entry',
})