mirror of
				https://codeberg.org/tom79/Fedilab.git
				synced 2025-10-20 11:20:16 +03:00 
			
		
		
		
	#1112 - Fix xmpp links not opening xmpp client
This commit is contained in:
		
							parent
							
								
									98adcc1abd
								
							
						
					
					
						commit
						acff2ae390
					
				
					 1 changed files with 15 additions and 3 deletions
				
			
		|  | @ -703,20 +703,32 @@ public class Helper { | |||
|             try { | ||||
|                 customTabsIntent.launchUrl(context, Uri.parse(url).normalizeScheme()); | ||||
|             } catch (Exception e) { | ||||
|                 Toasty.error(context, context.getString(R.string.toast_error), Toast.LENGTH_LONG).show(); | ||||
|                 if(url.toLowerCase().startsWith("xmpp:")) { | ||||
|                     Intent intent = new Intent(Intent.ACTION_VIEW); | ||||
|                     intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); | ||||
|                     intent.setData(Uri.parse("https://xmpp.link/#" + url.toLowerCase().replace("xmpp:","")).normalizeScheme()); | ||||
|                     context.startActivity(intent); | ||||
|                 } else { | ||||
|                     Toasty.error(context, context.getString(R.string.toast_error), Toast.LENGTH_LONG).show(); | ||||
|                 } | ||||
|             } | ||||
| 
 | ||||
|         } else { | ||||
|             Intent intent = new Intent(Intent.ACTION_VIEW); | ||||
|             intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); | ||||
|             if (!url.toLowerCase().startsWith("http://") && !url.toLowerCase().startsWith("https://") && !url.toLowerCase().startsWith("gemini://")) { | ||||
|             if (!url.toLowerCase().startsWith("http://") && !url.toLowerCase().startsWith("https://") && !url.toLowerCase().startsWith("gemini://") && !url.toLowerCase().startsWith("xmpp:")) { | ||||
|                 url = "http://" + url; | ||||
|             } | ||||
|             intent.setData(Uri.parse(url).normalizeScheme()); | ||||
|             try { | ||||
|                 context.startActivity(intent); | ||||
|             } catch (Exception e) { | ||||
|                 Toasty.error(context, context.getString(R.string.toast_error), Toast.LENGTH_LONG).show(); | ||||
|                 if(url.toLowerCase().startsWith("xmpp:")) { | ||||
|                     intent.setData(Uri.parse("https://xmpp.link/#" + url.toLowerCase().replace("xmpp:","")).normalizeScheme()); | ||||
|                     context.startActivity(intent); | ||||
|                 } else { | ||||
|                     Toasty.error(context, context.getString(R.string.toast_error), Toast.LENGTH_LONG).show(); | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue