Commit Graph

179 Commits

Author SHA1 Message Date
Ronald Wampler
9fece6576c Retrieve the sheet delegate if present in main window 2014-08-08 14:53:43 +02:00
Allan Odgaard
5808eecd74 Add crash report info about what plug-in we’re loading 2014-07-31 18:13:51 +02:00
Allan Odgaard
65f8a8e9bf Use our “standard” idiom for setting menu item keys to ⌘1-n 2014-07-31 15:36:19 +02:00
Allan Odgaard
cc7f149f52 Avoid using Application Support for temporary file
Since the user’s library folder might be on a network we should probably avoid writing to it unless strictly necessary.
2014-07-24 22:37:38 +02:00
Allan Odgaard
6e1d094fbf Detect abnormal exit when loading plug-ins
Currently we ask user about skipping it, but it might make sense to also add an uninstall option.
2014-07-24 22:37:38 +02:00
Allan Odgaard
c57dd931e1 Let the bundle item chooser inherit from OakChooser 2014-07-09 17:25:16 +02:00
Allan Odgaard
a76b6eae9c Respond to next/previous tab actions in file/favorites chooser
This makes it possible to use ⌘{ and ⌘} to move between the source lists, which is consistent with other windows with multiple sources (like the Preferences and About windows).

Closes #1236.
2014-06-28 18:22:02 +02:00
Allan Odgaard
8d941cacc8 Increase TextMate’s “is old” threshold to 90 days 2014-05-16 22:11:29 +07:00
Allan Odgaard
c832c6a131 Release dispatch sources
This is to avoid them showing up in leak reports.
2014-05-15 13:17:29 +07:00
Ronald Wampler
3ed4722a80 Remove duplication of find_tags enumeration 2014-04-30 12:09:46 +07:00
Allan Odgaard
397fdb52d4 Make REST_API a global define and make it a C string 2014-04-28 18:23:50 +07:00
Allan Odgaard
1f0e3db472 Remove trailing zeroes from numeric literals
I mainly dislike the trailing zeroes because CGFloat used to be a float but 1.0 is a double (1.0f would be a float). So better to under-specify and let the compiler figure out the proper type.
2014-04-14 14:26:52 +07:00
Allan Odgaard
d549bb7a84 Remove unused include (cf/callback.h) 2014-04-12 11:22:38 +07:00
Allan Odgaard
7d1ca99421 Disable plug-ins for HTML output WebView
Also switch about window’s web preferences to be set via identifier instead of manipulating the standard preferences.
2014-04-09 15:15:36 +07:00
Allan Odgaard
6cc0108961 Rename document_t:{open,save} → document_t:sync_{open,save}
This makes it easier to search for code that use these functions.
2014-04-07 17:28:41 +07:00
Allan Odgaard
c7a211b2fd Let View → Wrap Column remember the last 5 values used 2014-04-06 19:36:09 +07:00
Allan Odgaard
645c837262 Skeleton commit window server
This allows the commit command line tool to open a window as “native”.

We use distributed objects for talking to TextMate and getting a response. For the response, we release the connection in the next iteration of the event loop and then gracefully exit the program. Though it’s not clear if this is enough time for distributed objects to reply the client (if not, an exception is thrown in the client about “connection disappeared while waiting for a reply”).
2014-04-03 15:49:58 +07:00
Allan Odgaard
e4c9008422 Don’t assume only one class implements performBundleItem: 2014-04-03 15:08:37 +07:00
Allan Odgaard
b1de8256a2 Disable WebView plug-ins and page cache for about window 2014-04-01 16:01:19 +07:00
Allan Odgaard
db13d4c1f9 Use std::string::back() instead of operator[] with size()-1 2014-03-31 08:27:18 +07:00
Allan Odgaard
5f69ef31c7 Don’t use NS prefix for custom functions 2014-03-28 19:31:14 +07:00
Allan Odgaard
19ecfbd274 Always center selection when using Go to Line dialog
Closes #987.
2014-03-25 20:32:46 +07:00
Allan Odgaard
ab4e711c27 Fix AF_INET6 → PF_INET6
Also remove extraneous whitespace.
2014-03-23 22:47:16 +07:00
Allan Odgaard
2c20ab23b0 Ask for maximum queue length for pending socket connections
This is mainly because the SOMAXCONN constant looks better (in the source) than some arbitrarily chosen number. The constant is presently defined as 128 so it doesn’t seem wasteful, and presumably the queue will only take up space if we are not actually responding to socket connections.
2014-03-23 22:47:16 +07:00
Allan Odgaard
d7660bd89e Detect first loop iteration using std::exchange “idiom” 2014-03-23 22:47:15 +07:00
Allan Odgaard
9a9614e264 Workaround for “format string is not a string literal” warning 2014-03-13 20:51:15 +07:00
Allan Odgaard
2b28f5a165 Use NSHumanReadableCopyright in about window
This avoids having the copyright (which includes the current year) in multiple places.
2014-03-04 08:57:28 +07:00
Allan Odgaard
c2397484b8 Use C++11 for loop
Majority of the edits done using the following ruby script:

    def update_loops(src)
      dst, cnt = '', 0

      block_indent, variable = nil, nil
      src.each_line do |line|
        if block_indent
          if line =~ /^#{block_indent}([{}\t])|^\t*$/
            block_indent = nil if $1 == '}'
            line = line.gsub(%r{ ([^a-z>]) \(\*#{variable}\) | \*#{variable}\b | \b#{variable}(->) }x) do
              $1.to_s + variable + ($2 == "->" ? "." : "")
            end
          else
            block_indent = nil
          end
        elsif line =~ /^(\t*)c?iterate\((\w+), (?!diacritics::make_range)(.*\))$/
          block_indent, variable = $1, $2
          line = "#$1for(auto const& #$2 : #$3\n"
          cnt += 1
        end
        dst << line
      end
      return dst, cnt
    end

    paths.each do |path|
      src = IO.read(path)

      cnt = 1
      while cnt != 0
        src, cnt = update_loops(src)
        STDERR << "#{path}: #{cnt}\n"
      end

      File.open(path, "w") { |io| io << src }
    end
2014-03-03 10:34:13 +07:00
Allan Odgaard
5d089803b8 Disable session saving if we terminate before having restored it
Previously if TextMate had expired, we would terminate, which would cause the current session state to be saved, and since it hadn’t yet been restored, we would write out empty session state (and overwrite the user’s previous session state).
2014-03-01 08:48:49 +07:00
Allan Odgaard
91096c12f3 Ask user to skip session restore if abnormal exit is detected 2014-03-01 08:38:01 +07:00
Allan Odgaard
162ba1649c Rename project-state.db → RecentProjects.db 2014-02-19 18:01:00 +07:00
Allan Odgaard
10f14a74f3 Support referencing documents via UUID
This support is to allow using ‘mate’ to change caret/selection for open untitled documents.
2014-02-11 16:38:58 +07:00
Allan Odgaard
7f65abfe5b Do not hardcode year interval for bundle changes
Previously we would not show any changes done after 2013. We now show changes for the current and last two years.
2014-02-10 20:26:08 +07:00
Allan Odgaard
5256a8e9ae Add file icon to favorites / recent projects 2014-02-10 20:10:39 +07:00
Allan Odgaard
9246e014b0 Minor refactor 2014-02-10 20:00:59 +07:00
Allan Odgaard
bef5e5d88c LRU sort recent projects and disambiguate display names 2014-02-10 16:57:10 +07:00
Allan Odgaard
d9f0cf6563 Skip non-existing recent projects
Long-term it would make sense to also delete them if they haven’t been used for e.g. a month.
2014-02-10 13:53:10 +07:00
Allan Odgaard
d912b4272e Allow using ‘quit’ to terminate an (r)mate session
This is useful when testing socket connections as it seems nicer than simply killing the connection.
2014-02-08 16:28:16 +07:00
Allan Odgaard
48e3796f87 Add delete action to Open Favorites
This only works for Recent Projects (not Favorites).

Also, the key equivalent for this is ⌘⌫. The Edit → Delete menu item will not work (as it’s being sent to the input field).
2014-02-07 19:53:28 +07:00
Allan Odgaard
6ab6c3f43b Add “Recent Projects” to “Open Favorites” dialog 2014-02-07 19:53:28 +07:00
Allan Odgaard
888ccbed16 Remove use of NSPointToCGPoint
This is not required when building in 64 bit mode or when defining NS_BUILD_32_LIKE_64.
2013-11-18 22:43:50 +07:00
Allan Odgaard
f515d92bb4 Rescan favorites folder when re-opening favorites chooser
Previously we only scanned the folder when creating the favorites chooser singleton which meant items added or removed after the chooser had been used, were not reflected before a relaunch.

Fixes #1182
2013-11-09 19:27:24 +07:00
Allan Odgaard
0976c048b3 Add learning to Open Favorite 2013-10-28 23:04:32 +01:00
Allan Odgaard
d70f4ad3c0 Update Open Favorite to use OakChooser 2013-10-28 23:03:24 +01:00
Allan Odgaard
c5558d0574 Remove a few std::shared_ptr typedefs 2013-10-04 16:51:26 +02:00
Allan Odgaard
76dc76b57a Fix typo in debug output 2013-09-22 12:55:42 +02:00
Allan Odgaard
3f055aa318 Clear all web view delegates during dealloc 2013-09-12 23:46:04 +02:00
Allan Odgaard
1c308c810d Use map::emplace instead of inserting std::pair (C++11) 2013-09-05 20:59:11 +02:00
Allan Odgaard
e4e80a946c Use std::make_shared 2013-09-03 12:27:20 +02:00
Allan Odgaard
bd2f7aa44e Decode plus characters in txmt URLs
This is done by using decode::url_part instead of stringByReplacingPercentEscapesUsingEncoding:
2013-08-29 13:27:26 +02:00