From 90c7ae3446478f174534d80df301d2e3477213cd Mon Sep 17 00:00:00 2001 From: "Nadya.Zabrodina" Date: Tue, 23 Oct 2012 11:18:08 +0400 Subject: [PATCH 1/3] IDEA-93193 Mercurial: Repository View: Moved file is shown as deleted, added and moved --- .../src/org/zmlx/hg4idea/command/HgRevisionsCommand.java | 6 +++++- .../hg4idea/provider/HgCachingCommitedChangesProvider.java | 4 ++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/plugins/hg4idea/src/org/zmlx/hg4idea/command/HgRevisionsCommand.java b/plugins/hg4idea/src/org/zmlx/hg4idea/command/HgRevisionsCommand.java index 640076735b6c..7820bc98ff35 100644 --- a/plugins/hg4idea/src/org/zmlx/hg4idea/command/HgRevisionsCommand.java +++ b/plugins/hg4idea/src/org/zmlx/hg4idea/command/HgRevisionsCommand.java @@ -162,7 +162,11 @@ abstract class HgRevisionsCommand { Iterator keys = copies.keySet().iterator(); while (keys.hasNext()) { String s = keys.next(); - if (!filesDeleted.contains(s)) { + if (filesAdded.contains(copies.get(s)) && filesDeleted.contains(s)) { + filesAdded.remove(copies.get(s)); + filesDeleted.remove(s); + } + else if (!filesDeleted.contains(s)) { keys.remove(); } } diff --git a/plugins/hg4idea/src/org/zmlx/hg4idea/provider/HgCachingCommitedChangesProvider.java b/plugins/hg4idea/src/org/zmlx/hg4idea/provider/HgCachingCommitedChangesProvider.java index 8a4ea7aab17d..3662b788ac17 100644 --- a/plugins/hg4idea/src/org/zmlx/hg4idea/provider/HgCachingCommitedChangesProvider.java +++ b/plugins/hg4idea/src/org/zmlx/hg4idea/provider/HgCachingCommitedChangesProvider.java @@ -190,7 +190,7 @@ public class HgCachingCommitedChangesProvider implements CachingCommittedChanges HgLogCommand hgLogCommand = new HgLogCommand(project); hgLogCommand.setLogFile(false); List localRevisions = - hgLogCommand.execute(hgFile, maxCount == 0 ? -1 : maxCount, true, Collections.singletonList("--debug")); //can be empty + hgLogCommand.execute(hgFile, maxCount == 0 ? -1 : maxCount, true); //can be empty Collections.reverse(localRevisions); @@ -285,7 +285,7 @@ public class HgCachingCommitedChangesProvider implements CachingCommittedChanges HgLogCommand hgLogCommand = new HgLogCommand(project); hgLogCommand.setLogFile(false); List args = new ArrayList(); - args.add("--debug"); + args.add("--follow"); args.add("--rev"); args.add(revision); HgFileRevision localRevision = hgLogCommand.execute(hgFile, 1, true, args).get(0); From 8a625473bd813f1e31fedd1a7d4de8ac12590452 Mon Sep 17 00:00:00 2001 From: Evgeny Pasynkov Date: Tue, 23 Oct 2012 10:49:09 +0200 Subject: [PATCH 2/3] Do not initialize DirectoryIndex in CoreProjectLoader --- .../src/com/intellij/core/CoreProjectLoader.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/platform/projectModel-impl/src/com/intellij/core/CoreProjectLoader.java b/platform/projectModel-impl/src/com/intellij/core/CoreProjectLoader.java index 1986fa1a0e34..6887f2c52f49 100644 --- a/platform/projectModel-impl/src/com/intellij/core/CoreProjectLoader.java +++ b/platform/projectModel-impl/src/com/intellij/core/CoreProjectLoader.java @@ -23,8 +23,6 @@ import com.intellij.openapi.components.impl.stores.StorageData; import com.intellij.openapi.module.ModuleManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.roots.ProjectRootManager; -import com.intellij.openapi.roots.impl.DirectoryIndex; -import com.intellij.openapi.roots.impl.DirectoryIndexImpl; import com.intellij.openapi.roots.impl.ProjectRootManagerImpl; import com.intellij.openapi.roots.impl.libraries.LibraryTableBase; import com.intellij.openapi.roots.impl.libraries.ProjectLibraryTable; @@ -85,7 +83,6 @@ public class CoreProjectLoader { moduleManager.loadModules(); project.projectOpened(); - ((DirectoryIndexImpl) DirectoryIndex.getInstance(project)).initialize(); } public static StorageData loadStorageFile(ComponentManager componentManager, VirtualFile modulesXml) throws JDOMException, IOException { From 81f9fef4b780ea7de28a34588f423237473a4803 Mon Sep 17 00:00:00 2001 From: Vassiliy Kudryashov Date: Tue, 23 Oct 2012 13:19:37 +0400 Subject: [PATCH 3/3] IDEA-90515 Editor tab dragged by dragging Configuration Menu pop-out items --- .../src/com/intellij/ui/MouseDragHelper.java | 9 ++++++--- .../src/com/intellij/ui/tabs/impl/DragHelper.java | 9 +++++---- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/platform/platform-api/src/com/intellij/ui/MouseDragHelper.java b/platform/platform-api/src/com/intellij/ui/MouseDragHelper.java index de67b2b116b8..52f0d57f5d4c 100644 --- a/platform/platform-api/src/com/intellij/ui/MouseDragHelper.java +++ b/platform/platform-api/src/com/intellij/ui/MouseDragHelper.java @@ -186,13 +186,16 @@ public abstract class MouseDragHelper implements MouseListener, MouseMotionListe } } + boolean needConsume = true; if (myDetachingMode) { processDragOut(e, draggedTo, (Point)myPressPointScreen.clone(), dragOutStarted); } else { - processDrag(e, draggedTo, (Point)myPressPointScreen.clone()); + needConsume = processDrag(e, draggedTo, (Point)myPressPointScreen.clone()); } - e.consume(); + if (needConsume) { + e.consume(); + } } } @@ -229,7 +232,7 @@ public abstract class MouseDragHelper implements MouseListener, MouseMotionListe return myDragJustStarted; } - protected abstract void processDrag(MouseEvent event, Point dragToScreenPoint, Point startScreenPoint); + protected abstract boolean processDrag(MouseEvent event, Point dragToScreenPoint, Point startScreenPoint); protected boolean isDragOut(MouseEvent event, Point dragToScreenPoint, Point startScreenPoint) { return false; diff --git a/platform/platform-api/src/com/intellij/ui/tabs/impl/DragHelper.java b/platform/platform-api/src/com/intellij/ui/tabs/impl/DragHelper.java index 7bc367c7e958..d052c9f999e0 100644 --- a/platform/platform-api/src/com/intellij/ui/tabs/impl/DragHelper.java +++ b/platform/platform-api/src/com/intellij/ui/tabs/impl/DragHelper.java @@ -92,13 +92,13 @@ class DragHelper extends MouseDragHelper { myPressedTabLabel = findLabel(new RelativePoint(event).getPoint(myTabs)); } - protected void processDrag(MouseEvent event, Point targetScreenPoint, Point startPointScreen) { - if (!myTabs.isTabDraggingEnabled() || !isDragSource(event)) return; + protected boolean processDrag(MouseEvent event, Point targetScreenPoint, Point startPointScreen) { + if (!myTabs.isTabDraggingEnabled() || !isDragSource(event)) return false; SwingUtilities.convertPointFromScreen(startPointScreen, myTabs); if (isDragJustStarted()) { - if (myPressedTabLabel == null) return; + if (myPressedTabLabel == null) return false; final Rectangle labelBounds = myPressedTabLabel.getBounds(); @@ -111,7 +111,7 @@ class DragHelper extends MouseDragHelper { myDragOriginalRec.y -= myHoldDelta.height; } else { - if (myDragRec == null) return; + if (myDragRec == null) return false; final Point toPoint = SwingUtilities.convertPoint(event.getComponent(), event.getPoint(), myTabs); @@ -163,6 +163,7 @@ class DragHelper extends MouseDragHelper { headerRec.height += border * 2; myTabs.repaint(headerRec); } + return true; } private boolean isDragSource(MouseEvent event) {