Commit Graph

451 Commits

Author SHA1 Message Date
Pieter de Bie ea30f2bfce JS: Remove stray log 2008-11-25 17:43:11 +01:00
Pieter de Bie 7e2707d979 DiffHilighter: Specific the div in which to hilight
Previously, the diff hilighter was a bit odd in that it would
just search for elements with a diff and highlight those. While
useful in theory, this wasn't used at all. We change it to
receive the diff to hilight, which makes the code somewhat simpler.
2008-11-25 17:43:11 +01:00
Stephen Bannasch f05d0188fc add commit file links and ctrl-arrow navigation
A list of files included in a commit are listed below the
commit message. The list are links which will take you to
that file in the diff display below.

The title of each fileHeader is now just the path to the file
instead of the full diff command.

While the focus is in the commit ctrl-down_arrow and up_arrow
will navigate to to next and previous file in that commit.
2008-11-25 17:43:11 +01:00
Pieter de Bie 4e915cc68f Remove "extern C" declaration when importing libgit2
libgit2 takes care of thiss now, so we don't have to.
2008-11-25 17:43:11 +01:00
Pieter de Bie bda90606f2 PBGitLane: remove functions with NSString arguments
We don't use these, so let's keep the class clean
2008-11-25 17:43:11 +01:00
Pieter de Bie b4c2a4f3fa GitGrapher: free pointers on dealloc
This frees the std vector and its contents on
dealloc. We also fresh up the header a bit
2008-11-25 17:43:10 +01:00
Pieter de Bie 18954b4a30 Site: Add download button photoshop file 2008-11-24 23:01:41 +01:00
Pieter de Bie e0dcdf62b3 PBGitGrapher: Use std::list rather than vector
This allows us to remove the currentlane if
necessary, fixing a drawing bug
2008-11-24 22:54:05 +01:00
Pieter de Bie eb472e0c86 PBGraphCellInfo: remove unneeded data member
And clean up the file while we're at it
2008-11-24 22:54:05 +01:00
Pieter de Bie 483cbc9de3 GitCommit: store the date as a timestamp
This should speed up commit loading, as we don't
need the date of all commits
2008-11-24 22:54:05 +01:00
Pieter de Bie 8372aee404 PBGitCommit: Use git_oids for parent shas
This uses a normal c array to store parent sha's. That means that we
save a lot of room, as they are only 20 bytes rather than 40 + the cost of
an NSArray and the NSStrings.
2008-11-24 22:54:04 +01:00
Pieter de Bie e570c3e50a Use structs for graph lines
We used to use NSObjects, which was really expensive, because for each commit
as many as 100 graphlines can be created. By preallocating them and not
using NSObjects in general, we gain a massive speedup
2008-11-24 22:54:04 +01:00
Pieter de Bie 6aa28941e1 GitGrapher: Remove unneedded loop
I'm not sure what this loop originally did, but it was buggy and doesn't
seem logical. Removing it speeds up the graphing a lot, so let's kill it.
We can always get it back later if necessary
2008-11-24 22:54:04 +01:00
Pieter de Bie d2eafc2d52 Include libgit2 as submodule and use it to store sha's
This reduces GitX's memory usage and makes some operations much faster,
like graphing, by having a cheaper comparison
2008-11-24 22:53:48 +01:00
Pieter de Bie 1a7ad9415f PBGitRevList: Rewrite as C++ code
This produces cleaner code and is also significantly faster
than the old obj-c code: linux-2.6 goes from ~8 seconds
to ~6 seconds.

Using the c++ code allows us to do easy optimizations
2008-11-24 22:32:51 +01:00
Pieter de Bie 3d64d83f98 Create a new SpeedTest target
This adds a new target 'SpeedTest', which just loads in a repository
and displays how long it takes to load the revision. This is handy for
testing the speed of the revwalking mechanism
2008-11-24 22:32:46 +01:00
Pieter de Bie cef35ac7ce GitGrapher: Rewrite looping code to C++
This makes the revwalking faster by not creating as many NSObjects as before.
2008-11-24 22:32:42 +01:00
Pieter de Bie bb5696c704 GitGrapher: Limit the maximum number of lanes
This limits the maximum number of lanes to 32, making the
graphing a lot faster. For example, linux-2.6.git takes only
30 seconds now, rather than >400
2008-11-24 21:55:38 +01:00
Kim Does 86ec95f6d6 HistoryView: Add a tooltip for 'Create Branch' button 2008-11-20 15:13:48 +01:00
Kim Does ac0327249d Add icons for the history view and commit view 2008-11-20 15:09:55 +01:00
Pieter de Bie 807eb57280 Increase font size of donate link
This was a bit small in Firefox, but OK in Safari
2008-11-20 02:04:14 +01:00
Pieter de Bie 7cf4a103a8 CommitView: Add an "Open Files" context menu action 2008-11-19 15:12:32 +01:00
Pieter de Bie e76d483180 CommitView: Allow drag and drop to external applications
This allows you to drag a changed file to for example XCode,
so you can edit it.
2008-11-19 15:06:13 +01:00
Pieter de Bie b0caa349ae Revert "Wait for a child to clear it out."
This reverts commit 3922b543ba.

This caused weird drawing glitches when reloading the revision list
2008-11-19 14:54:30 +01:00
Pieter de Bie eb89811264 RevList: Run git in the correct directory
This was a bug introduced when switching to tasks rather than
file handles
2008-11-19 02:31:48 +01:00
Pieter de Bie 32e30ad351 HistoryView: Always show the correct current branch 2008-11-19 02:21:13 +01:00
Pieter de Bie edf4822e34 CLI: Show history view if necessary 2008-11-19 02:21:02 +01:00
Pieter de Bie b2c03bc97b HistoryView: Correctly update branches when changing them
I stupidly used "observe.." instead of register.. so KVC
didn't even work
2008-11-19 02:12:03 +01:00
Pieter de Bie 6038c20d7d HistoryView: Add a "Local Branches" option 2008-11-19 02:10:21 +01:00
Pieter de Bie a62e14ffe7 HistoryView: Remove the BranchController
This wasn't used anyway. A good idea would be to create a new
branchcontroller that takes care of all these revs, rather than
letting PBGitRepository take care of that
2008-11-19 01:54:14 +01:00
Pieter de Bie 92437c6663 WIP: Use a nicer branches menu 2008-11-19 01:41:27 +01:00
Pieter de Bie 66f3588b77 Merge branch 'master' of git://github.com/bkerley/gitx
* 'master' of git://github.com/bkerley/gitx:
  Use a task (that is properly disposed of) for reading the rev list
  make taskForCommand public so other classes can use it
  Wait for a child to clear it out.
  use outputForCommand instead of handleForCommand to save code, remove zombie-leaking bug
2008-11-19 00:14:10 +01:00
Arjen Laarhoven 17158e888d GitX.xcodeproj: Quote paths in html copy script
When the path to the project contains spaces, the html copy script
fails.  Fix it by properly quoting the `resource_path' variable.
2008-11-19 00:13:30 +01:00
Pieter de Bie 6fcc12d69d CommitView: Allow drag 'n drop of staged / unstaged files 2008-11-18 23:59:25 +01:00
Pieter de Bie 0975426f2f CommitView: move index functions to separate controller
This merges functionality that was previously stored in the
combination of PBGitCommitController / PBChangedFile to a
dedicated controller, PBGitIndexController.
2008-11-18 23:59:25 +01:00
Pieter de Bie 874737fcb5 CommitView: Allow multiple selection 2008-11-18 23:59:25 +01:00
Pieter de Bie aaca7d6e67 HistoryView: Don't make the tree contents field editable
This would cause some heavy errors because the PBGitTree
class in not KVC compatible for the contents.
2008-11-18 23:59:25 +01:00
Bryce Kerley 8f2cc570f5 Use a task (that is properly disposed of) for reading the rev list 2008-11-17 16:07:30 -05:00
Bryce Kerley 146db09ea4 make taskForCommand public so other classes can use it 2008-11-17 16:07:30 -05:00
Bryce Kerley 3922b543ba Wait for a child to clear it out. 2008-11-17 16:07:30 -05:00
Bryce Kerley d8b926c13d use outputForCommand instead of handleForCommand to save code, remove zombie-leaking bug 2008-11-17 16:07:30 -05:00
Pieter de Bie 2f0dc3bbd5 Site: correct gitx path 2008-11-17 20:19:10 +01:00
Pieter de Bie 6577ee424f Site: Update to 0.5 2008-11-17 15:38:26 +01:00
Pieter de Bie b9d6e41e65 Update Sparke feed (oops) 2008-11-17 15:31:56 +01:00
Pieter de Bie 92c1349217 Update the Sparkle feed to point to frim.nl
This is the new home of the sparkle feed. We keep the old one
for a while so older clients will still update.
2008-11-17 15:24:30 +01:00
Pieter de Bie cea5507d51 Site: update screencasts part
This uses a new fancy inline video display and also shows newly created
screencasts, specifically for GitX v0.5
2008-11-17 15:16:00 +01:00
Pieter de Bie 9f166e61f6 GitX version 0.5 v0.5 2008-11-17 14:08:25 +01:00
Pieter de Bie a950505972 PBRefController: reload items when checking out branch
This will update the view with the new current branch.
2008-11-17 14:03:06 +01:00
Pieter de Bie 82aa6a3232 Autosave divider position
This autosaves the position of the divider in the splitviews
of the commit view and the history view
2008-11-17 13:56:33 +01:00
Pieter de Bie 562ee7c6dd Update ignorefile 2008-11-17 13:54:37 +01:00