274 | 274 |
const char *categories_str;
|
275 | 275 |
|
276 | 276 |
entry_desktop->appinfo = g_desktop_app_info_new_from_filename (entry->path);
|
277 | |
if (!entry_desktop->appinfo ||
|
278 | |
!g_app_info_get_name (G_APP_INFO (entry_desktop->appinfo)) ||
|
279 | |
!g_app_info_get_executable (G_APP_INFO (entry_desktop->appinfo)))
|
|
277 |
if (!G_IS_DESKTOP_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo))
|
280 | 278 |
{
|
281 | 279 |
menu_verbose ("Failed to load \"%s\"\n", entry->path);
|
282 | 280 |
return DESKTOP_ENTRY_LOAD_FAIL_APPINFO;
|
|
572 | 570 |
desktop_entry_get_name (DesktopEntry *entry)
|
573 | 571 |
{
|
574 | 572 |
if (entry->type == DESKTOP_ENTRY_DESKTOP)
|
575 | |
return g_app_info_get_name (G_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo));
|
|
573 |
{
|
|
574 |
g_return_val_if_fail (G_IS_DESKTOP_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo), NULL);
|
|
575 |
return g_app_info_get_name (G_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo));
|
|
576 |
}
|
|
577 |
|
576 | 578 |
return ((DesktopEntryDirectory*)entry)->name;
|
577 | 579 |
}
|
578 | 580 |
|
|
580 | 582 |
desktop_entry_get_generic_name (DesktopEntry *entry)
|
581 | 583 |
{
|
582 | 584 |
if (entry->type == DESKTOP_ENTRY_DESKTOP)
|
583 | |
return g_desktop_app_info_get_generic_name (((DesktopEntryDesktop*)entry)->appinfo);
|
|
585 |
{
|
|
586 |
g_return_val_if_fail (G_IS_DESKTOP_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo), NULL);
|
|
587 |
return g_desktop_app_info_get_generic_name (((DesktopEntryDesktop*)entry)->appinfo);
|
|
588 |
}
|
|
589 |
|
584 | 590 |
return ((DesktopEntryDirectory*)entry)->generic_name;
|
585 | 591 |
}
|
586 | 592 |
|
|
588 | 594 |
desktop_entry_get_comment (DesktopEntry *entry)
|
589 | 595 |
{
|
590 | 596 |
if (entry->type == DESKTOP_ENTRY_DESKTOP)
|
591 | |
return g_app_info_get_description (G_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo));
|
|
597 |
{
|
|
598 |
g_return_val_if_fail (G_IS_DESKTOP_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo), NULL);
|
|
599 |
return g_app_info_get_description (G_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo));
|
|
600 |
}
|
|
601 |
|
592 | 602 |
return ((DesktopEntryDirectory*)entry)->comment;
|
593 | 603 |
}
|
594 | 604 |
|
|
596 | 606 |
desktop_entry_get_icon (DesktopEntry *entry)
|
597 | 607 |
{
|
598 | 608 |
if (entry->type == DESKTOP_ENTRY_DESKTOP)
|
599 | |
return g_app_info_get_icon (G_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo));
|
|
609 |
{
|
|
610 |
g_return_val_if_fail (G_IS_DESKTOP_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo), NULL);
|
|
611 |
return g_app_info_get_icon (G_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo));
|
|
612 |
}
|
|
613 |
|
600 | 614 |
return ((DesktopEntryDirectory*)entry)->icon;
|
601 | 615 |
}
|
602 | 616 |
|
|
604 | 618 |
desktop_entry_get_no_display (DesktopEntry *entry)
|
605 | 619 |
{
|
606 | 620 |
if (entry->type == DESKTOP_ENTRY_DESKTOP)
|
607 | |
return g_desktop_app_info_get_nodisplay (((DesktopEntryDesktop*)entry)->appinfo);
|
|
621 |
{
|
|
622 |
g_return_val_if_fail (G_IS_DESKTOP_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo), FALSE);
|
|
623 |
return g_desktop_app_info_get_nodisplay (((DesktopEntryDesktop*)entry)->appinfo);
|
|
624 |
}
|
|
625 |
|
608 | 626 |
return ((DesktopEntryDirectory*)entry)->nodisplay;
|
609 | 627 |
}
|
610 | 628 |
|
|
612 | 630 |
desktop_entry_get_hidden (DesktopEntry *entry)
|
613 | 631 |
{
|
614 | 632 |
if (entry->type == DESKTOP_ENTRY_DESKTOP)
|
615 | |
return g_desktop_app_info_get_is_hidden (((DesktopEntryDesktop*)entry)->appinfo);
|
|
633 |
{
|
|
634 |
g_return_val_if_fail (G_IS_DESKTOP_APP_INFO (((DesktopEntryDesktop*)entry)->appinfo), FALSE);
|
|
635 |
return g_desktop_app_info_get_is_hidden (((DesktopEntryDesktop*)entry)->appinfo);
|
|
636 |
}
|
|
637 |
|
616 | 638 |
return ((DesktopEntryDirectory*)entry)->hidden;
|
617 | 639 |
}
|
618 | 640 |
|