Commit Graph

99 Commits

Author SHA1 Message Date
Adam Sharp
585da625a1 Audit remaining strings for "audio call" -> "voice call"
In addition to updating the remaining English occurrences of "audio call", this
unifies all string constants, localisation comments and UI-level variable names
to use the new "voice call" terminology.

Anything that was obviously protocol-level or related to persistence is still
using the term "audio call", which appears to be a term of art at that layer.

Fixes: https://signalmessenger.atlassian.net/browse/IOS-4850
2024-05-14 13:36:27 -04:00
Jordan Rose
b0de59f2e2 Remove required from every init that is not dynamically dispatched
This included:
- Removing unavailable inits wholesale if no longer `required`
- Marking a few classes `final` so they could continue using
  `Self(...)` rather than `OWSWhatever(...)`
2024-04-01 15:27:20 -07:00
Ehren Kret
d4e17730f3 remove import SignalMessaging statements 2024-03-12 03:35:34 -05:00
Max Radermacher
b963005962
Hide “Add to Contacts” if there’s no phone number 2024-02-06 12:28:20 -06:00
Max Radermacher
0b2652c7ad
Add PhoneNumberStatus for vCard logic 2024-02-01 14:10:05 -06:00
Igor Solomennikov
444d7046cb
Update "Add to System Contacts" for contact shares.
Always present the flow modally + simplify code.
2024-01-07 17:18:33 -08:00
Igor Solomennikov
be1d8220d3
Convert OWSContact to Swift. 2023-11-07 16:21:00 -08:00
Igor Solomennikov
c7df94a5e6
Updated design for contact sharing. 2023-11-07 13:50:19 -08:00
Igor Solomennikov
52f0015dfe
New set of icons. 2023-06-22 17:38:01 -07:00
Harry
f728457039
Update build target to iOS 13.0 2023-06-08 16:21:20 -07:00
Igor Solomennikov
f22ae21b54
Convert SignalApp to Swift. 2023-05-16 16:48:06 -07:00
Igor Solomennikov
f8a79687a7
Remove unnecessary @objc from the main app target. 2023-05-16 16:33:45 -07:00
Igor Solomennikov
beac55425b
Convert ConversationViewAction enum to Swift.
This removes the last ObjC piece of ConversationViewController code.
2023-05-15 10:54:44 -07:00
Max Radermacher
da4d97e53b Replace “audio call” with “voice call” 2023-05-08 16:09:58 -07:00
Evan Hahn
14237a873f
NSLocalizedString -> OWSLocalizedString 2023-04-25 13:28:46 -05:00
Igor Solomennikov
6dd3d9a6f2
Convert all convenience methods in UIFont+OWS to Swift. 2023-04-18 17:14:51 -07:00
Max Radermacher
3cf48323a0
Fix hidden nav bar in ContactViewController 2023-01-12 15:35:44 -08:00
Evan Hahn
a941c82c14
Prefer isEmpty with strings
This change may improve performance slightly but should have no other
user impact.

`myString.isEmpty` is faster than `myString.count == 0` or equivalent,
because computing `count` may require iterating over the string.

I tried to fix all occurrences of this.

Tested this by sending a message in a group and doing a full
re-registration, just in case I broke something there.
2022-11-01 17:53:46 -05:00
Evan Hahn
370ff654e7
Change license to AGPL
Change license to AGPL

This commit:

- Updates the `LICENSE` file

- Start every file with something like:

      // Copyright YEAR_FIRST_PUBLISHED Signal Messenger, LLC
      // SPDX-License-Identifier: AGPL-3.0-only

---

First, I removed existing license headers with this Ruby 3.1.2 script:

    require 'set'

    EXTENSIONS_TO_CHECK = Set['.h', '.hpp', '.cpp', '.m', '.mm', '.pch', '.swift']

    same = 0
    different = 0

    all_files = `git ls-files`.lines.map { |line| line.strip }
    all_files.each do |relative_path|
      if relative_path == 'Pods'
        next
      end

      unless EXTENSIONS_TO_CHECK.include? File.extname(relative_path)
        next
      end

      path = File.expand_path(relative_path)

      contents = File.read(path)
      new_contents = contents.sub(/\/\/\n\/\/  Copyright .*\n\/\/\n\n/, '')

      if contents == new_contents
        same += 1
      else
        different += 1
      end

      File.write(path, new_contents)
    end

    puts "updated #{different} file(s), left #{same} untouched"

I'm sure this script could be improved, but it worked well enough.

Then, I created `Scripts/lint/lint-license-headers` and ran it to auto-
fix a lot of files. This changed the mode of some files, but I think
that's actually desirable. For example,
`SignalServiceKit/src/Util/AppContext.m` previously had a mode of
`0755/-rwxr-xr-x`, and it's now `0644/-rw-r--r--`.

Then I fixed some stragglers and updated the precommit script.

See [a similar change in the Desktop app][0].

[0]: 8bfaf598af
2022-10-13 08:25:37 -05:00
Evan Hahn
4d55d95869 Autofix SwiftLint whitespace issues
I recommend reviewing this with whitespace changes disabled.
2022-09-15 16:37:44 +00:00
Jordan Rose
4f06a6d8a5 Fix incorrect uses of NotificationCenter block-based API
The block-based API returns a token that needs to be explicitly
unregistered, *and* the block should not capture 'self' strongly.
The fixes in this PR come in three flavors:

1. Switch to the selector-based API, sometimes taking advantage of
   the fact that extra arguments to an Objective-C method can be
   safely discarded (because they are passed at +0).

2. Save the observer token and unregister in deinit.

3. Comment why it's safe to leave the observer registered forever
   in this particular case.
2022-08-02 17:43:52 -07:00
Evan Hahn
24ca5abf9c Remove unneeded breaks
This fixes our violations of [the SwiftLint `unneeded_break_in_switch`
rule][0].

[0]: https://realm.github.io/SwiftLint/unneeded_break_in_switch.html
2022-06-03 17:52:28 +00:00
Matthew Chen
c494fb2a44 Don't cache contacts on contacts manager. 2021-10-22 19:09:44 -03:00
Matthew Chen
d0cbf8cfd0 Rework dependency access. 2021-03-25 09:24:27 -03:00
Matthew Chen
111338b59d Rewrite conversation view. 2020-12-10 12:44:13 -03:00
Matthew Chen
66510bc18f DRY singleton accessors. 2020-09-17 21:13:14 -03:00
Matthew Chen
40af807238 Update "group update" info messages to reflect group links. 2020-09-01 18:09:38 -03:00
Michelle Linington
d20011aeb8 IOS-791: Megaphone for updated link previews
This change:
- Disables link previews on upgrade
- Introduces a new megaphone to prompt users to re-enable link previews
- Updates sync message proto to add a v2 link previews flag
2020-08-26 16:44:51 -07:00
Nora Trapp
7e66682837 Remove calling feature flag 2020-08-14 20:44:04 -07:00
Matthew Chen
817780f201 Revise dark theme. 2020-04-16 11:25:32 -03:00
Matthew Chen
b42f1968cc Fix build warnings around initializers. 2020-04-08 16:05:54 -03:00
Matthew Chen
2bec0d3ed7 Fix build warnings. 2020-04-08 16:05:54 -03:00
Matthew Chen
b5c069ed95 Clean up VC initializers. 2020-04-08 09:26:25 -03:00
Nora Trapp
4ad7479ff9 Use new accent blue color everywhere except launch screen related views 2020-03-04 10:00:55 -08:00
Matthew Chen
bcc2a4593c Add support for v2 groups to storage service. 2020-02-27 10:01:34 -03:00
Nora Trapp
b6a8e5685f Restrict all paths to calling on linked devices. 2019-10-28 14:49:10 -07:00
Nora Trapp
65d54e7282 UIAlertController -> ActionSheetController 2019-10-28 14:43:59 -07:00
Nora Trapp
473b88b497 Don't require ConversationViewController to maintain first responder status. 2019-10-17 11:41:58 -07:00
Michael Kirk
54812451f4 Update and apply palette. Consolidate dupes. 2019-09-24 15:12:51 -07:00
Matthew Chen
cd88f4f012 Address sticky keyboards on iOS 12. 2019-08-27 14:50:29 -03:00
Nora Trapp
ef4a612fcf No more transitional_signalServiceAddress 2019-07-11 10:53:33 -07:00
Nora Trapp
a1f85fca30 Migrate profiles to support UUIDs 2019-07-02 11:19:50 -07:00
Matthew Chen
1454773d99 Respond to CR. 2019-04-25 09:54:49 -04:00
Michael Kirk
64a0c4bfaa auto-migrate to Swift5 2019-04-04 13:44:42 -06:00
Matthew Chen
882dd16d7c Apply presentAlert() throughout codebase. 2019-03-21 10:55:04 -04:00
Matthew Chen
cc117b385c Modify environment accessors to use our 'shared' convention. 2018-09-07 16:20:59 -04:00
Matthew Chen
3a12446be8 Modify environment accessors to use our 'shared' convention. 2018-09-07 16:20:41 -04:00
Matthew Chen
5b50e81b4f Rename fail macros in Swift. 2018-08-27 10:27:48 -04:00
Matthew Chen
7be8f30877 Apply -> Never. 2018-08-27 10:21:03 -04:00
Matthew Chen
cf6f3841a8 Apply new Swift logging. 2018-08-27 10:02:28 -04:00