2591 appshell \ |
2591 appshell \ |
2592 chrome \ |
2592 chrome \ |
2593 content \ |
2593 content \ |
2594 docshell \ |
2594 docshell \ |
2595 dom \ |
2595 dom \ |
2596 @@ -132,17 +134,17 @@ CMMSRCS = nsNativeAppSupportCocoa.mm |
2596 @@ -133,17 +135,17 @@ CMMSRCS = nsNativeAppSupportCocoa.mm |
2597 else |
2597 else |
2598 ifeq ($(MOZ_WIDGET_TOOLKIT),os2) |
2598 ifeq ($(MOZ_WIDGET_TOOLKIT),os2) |
2599 CPPSRCS += nsNativeAppSupportOS2.cpp |
2599 CPPSRCS += nsNativeAppSupportOS2.cpp |
2600 else |
2600 else |
2601 ifeq ($(MOZ_WIDGET_TOOLKIT),beos) |
2601 ifeq ($(MOZ_WIDGET_TOOLKIT),beos) |
3458 *_retval = PR_TRUE; |
3458 *_retval = PR_TRUE; |
3459 |
3459 |
3460 if (*_retval) |
3460 if (*_retval) |
3461 return NS_OK; |
3461 return NS_OK; |
3462 |
3462 |
3463 @@ -101,31 +104,50 @@ nsMIMEInfoUnix::GetHasDefaultHandler(PRB |
3463 @@ -107,25 +110,42 @@ nsMIMEInfoUnix::LaunchDefaultWithFile(ns |
3464 return nsMIMEInfoImpl::GetHasDefaultHandler(_retval); |
|
3465 } |
|
3466 |
|
3467 nsresult |
|
3468 nsMIMEInfoUnix::LaunchDefaultWithFile(nsIFile *aFile) |
|
3469 { |
|
3470 nsCAutoString nativePath; |
3464 nsCAutoString nativePath; |
3471 aFile->GetNativePath(nativePath); |
3465 aFile->GetNativePath(nativePath); |
3472 + |
3466 |
3473 + if( nsKDEUtils::kdeSupport()) |
3467 #if (MOZ_PLATFORM_MAEMO == 5) && defined (MOZ_ENABLE_GNOMEVFS) |
3474 + { |
|
3475 + PRBool supports; |
|
3476 + if( NS_SUCCEEDED( GetHasDefaultHandler( &supports )) && supports ) |
|
3477 + { |
|
3478 + nsCStringArray command; |
|
3479 + command.AppendCString( NS_LITERAL_CSTRING( "OPEN" )); |
|
3480 + command.AppendCString( nativePath ); |
|
3481 + command.AppendCString( NS_LITERAL_CSTRING( "MIMETYPE" )); |
|
3482 + command.AppendCString( mType ); |
|
3483 + if( nsKDEUtils::command( command )) |
|
3484 + return NS_OK; |
|
3485 + } |
|
3486 + if (!mDefaultApplication) |
|
3487 + return NS_ERROR_FILE_NOT_FOUND; |
|
3488 + |
|
3489 + return LaunchWithIProcess(mDefaultApplication, nativePath); |
|
3490 + } |
|
3491 |
|
3492 #ifdef MOZ_PLATFORM_HILDON |
|
3493 if(NS_SUCCEEDED(LaunchDefaultWithDBus(PromiseFlatCString(nativePath).get()))) |
3468 if(NS_SUCCEEDED(LaunchDefaultWithDBus(PromiseFlatCString(nativePath).get()))) |
3494 return NS_OK; |
3469 return NS_OK; |
3495 #endif |
3470 #endif |
3496 |
3471 |
|
3472 + if( nsKDEUtils::kdeSupport()) { |
|
3473 + PRBool supports; |
|
3474 + if( NS_SUCCEEDED( GetHasDefaultHandler( &supports )) && supports ) { |
|
3475 + nsCStringArray command; |
|
3476 + command.AppendCString( NS_LITERAL_CSTRING( "OPEN" )); |
|
3477 + command.AppendCString( nativePath ); |
|
3478 + command.AppendCString( NS_LITERAL_CSTRING( "MIMETYPE" )); |
|
3479 + command.AppendCString( mType ); |
|
3480 + if( nsKDEUtils::command( command )) |
|
3481 + return NS_OK; |
|
3482 + } |
|
3483 + if (!mDefaultApplication) |
|
3484 + return NS_ERROR_FILE_NOT_FOUND; |
|
3485 + |
|
3486 + return LaunchWithIProcess(mDefaultApplication, nativePath); |
|
3487 + } |
|
3488 + |
3497 nsCOMPtr<nsIGnomeVFSService> vfs = do_GetService(NS_GNOMEVFSSERVICE_CONTRACTID); |
3489 nsCOMPtr<nsIGnomeVFSService> vfs = do_GetService(NS_GNOMEVFSSERVICE_CONTRACTID); |
3498 if (vfs) { |
3490 if (vfs) { |
3499 nsCOMPtr<nsIGnomeVFSMimeApp> app; |
3491 nsCOMPtr<nsIGnomeVFSMimeApp> app; |
3500 if (NS_SUCCEEDED(vfs->GetAppForMimeType(mType, getter_AddRefs(app))) && app) |
3492 if (NS_SUCCEEDED(vfs->GetAppForMimeType(mType, getter_AddRefs(app))) && app) |
3501 return app->Launch(nativePath); |
3493 return app->Launch(nativePath); |
3605 |
3597 |
3606 // Now look up our extensions |
3598 // Now look up our extensions |
3607 diff --git a/widget/src/gtk2/Makefile.in b/widget/src/gtk2/Makefile.in |
3599 diff --git a/widget/src/gtk2/Makefile.in b/widget/src/gtk2/Makefile.in |
3608 --- a/widget/src/gtk2/Makefile.in |
3600 --- a/widget/src/gtk2/Makefile.in |
3609 +++ b/widget/src/gtk2/Makefile.in |
3601 +++ b/widget/src/gtk2/Makefile.in |
3610 @@ -184,8 +184,11 @@ EXTRA_DSO_LDOPTS += -lgfxpsshar |
3602 @@ -185,8 +185,11 @@ EXTRA_DSO_LDOPTS += -lgfxpsshar |
3611 endif |
3603 endif |
3612 |
3604 |
3613 |
3605 |
3614 DEFINES += |
3606 DEFINES += |
3615 INCLUDES += \ |
3607 INCLUDES += \ |