diff --git a/Core/Handling/DragHandlerBrowser.cs b/Core/Handling/DragHandlerBrowser.cs
index 9ba0e553..ba982df6 100644
--- a/Core/Handling/DragHandlerBrowser.cs
+++ b/Core/Handling/DragHandlerBrowser.cs
@@ -4,10 +4,18 @@
 
 namespace TweetDuck.Core.Handling{
     sealed class DragHandlerBrowser : IDragHandler{
+        private readonly RequestHandlerBrowser requestHandler;
+
+        public DragHandlerBrowser(RequestHandlerBrowser requestHandler){
+            this.requestHandler = requestHandler;
+        }
+        
         public bool OnDragEnter(IWebBrowser browserControl, IBrowser browser, IDragData dragData, DragOperationsMask mask){
             void TriggerDragStart(string type, string data = null){
                 browserControl.ExecuteScriptAsync("window.TDGF_onGlobalDragStart", type, data);
             }
+            
+            requestHandler.BlockNextUserNavUrl = dragData.LinkUrl; // empty if not a link
 
             if (dragData.IsLink){
                 TriggerDragStart("link", dragData.LinkUrl);
diff --git a/Core/Handling/RequestHandlerBrowser.cs b/Core/Handling/RequestHandlerBrowser.cs
index db72fd73..3765af74 100644
--- a/Core/Handling/RequestHandlerBrowser.cs
+++ b/Core/Handling/RequestHandlerBrowser.cs
@@ -3,6 +3,8 @@
 
 namespace TweetDuck.Core.Handling{
     sealed class RequestHandlerBrowser : RequestHandlerBase{
+        public string BlockNextUserNavUrl { get; set; }
+
         public RequestHandlerBrowser() : base(true){}
 
         public override CefReturnValue OnBeforeResourceLoad(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, IRequestCallback callback){
@@ -14,6 +16,16 @@ public override CefReturnValue OnBeforeResourceLoad(IWebBrowser browserControl,
             return base.OnBeforeResourceLoad(browserControl, browser, frame, request, callback);
         }
 
+        public override bool OnBeforeBrowse(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, bool userGesture, bool isRedirect){
+            if (userGesture && request.TransitionType == TransitionType.LinkClicked){
+                bool block = request.Url == BlockNextUserNavUrl;
+                BlockNextUserNavUrl = string.Empty;
+                return block;
+            }
+
+            return base.OnBeforeBrowse(browserControl, browser, frame, request, userGesture, isRedirect);
+        }
+
         public override bool OnResourceResponse(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request, IResponse response){
             if (request.ResourceType == ResourceType.Image && request.Url.Contains("backgrounds/spinner_blue")){
                 request.Url = TwitterUtils.LoadingSpinner.Url;
diff --git a/Core/TweetDeckBrowser.cs b/Core/TweetDeckBrowser.cs
index e45951bd..50f56ef4 100644
--- a/Core/TweetDeckBrowser.cs
+++ b/Core/TweetDeckBrowser.cs
@@ -40,14 +40,16 @@ public bool IsTweetDeckWebsite{
         private string prevSoundNotificationPath = null;
 
         public TweetDeckBrowser(FormBrowser owner, TweetDeckBridge bridge){
+            RequestHandlerBrowser requestHandler = new RequestHandlerBrowser();
+
             this.browser = new ChromiumWebBrowser(TwitterUtils.TweetDeckURL){
                 DialogHandler = new FileDialogHandler(),
-                DragHandler = new DragHandlerBrowser(),
+                DragHandler = new DragHandlerBrowser(requestHandler),
                 MenuHandler = new ContextMenuBrowser(owner),
                 JsDialogHandler = new JavaScriptDialogHandler(),
                 KeyboardHandler = new KeyboardHandlerBrowser(owner),
                 LifeSpanHandler = new LifeSpanHandler(),
-                RequestHandler = new RequestHandlerBrowser()
+                RequestHandler = requestHandler
             };
 
             this.browser.LoadingStateChanged += browser_LoadingStateChanged;