Commit Graph

63 Commits

Author SHA1 Message Date
Elaine
f476f27a0c
Add digital clock story stickers 2023-08-30 13:32:38 -06:00
Harry
2cb6700419
Delete legacy registration 2023-08-10 09:22:17 -07:00
Sasha Weiss
a78e218283
Support processing an "uploaded" username link QR code 2023-08-01 10:55:13 -07:00
Harry
6d12a75951
Small spoiler tweaks and fixes 2023-07-31 14:41:24 -05:00
Harry
1ab541f3bb
Further spoiler optimization 2023-07-28 14:55:13 -07:00
Harry
e3bb4cf950
Bandaid for RTL text bounding box calculation 2023-07-27 09:51:35 -07:00
Harry
4713edf61c
Spoiler animations part 7: odds and ends 2023-07-17 09:17:27 -07:00
Sasha Weiss
9574234ed1
Username link layout tweaks 2023-07-13 12:21:54 -07:00
Harry
86aa9b5521
Spoiler animations part 4: remaining conversationview instances 2023-07-13 08:42:10 -07:00
Harry
a0052e7810
Spoiler animations, part 1 2023-07-12 15:52:00 -07:00
Elaine
151f41c387
Fix missing "share" button on long-press in whitespace 2023-07-07 11:40:26 -06:00
Igor Solomennikov
0e9d511d1d
SignalUI cleanup.
• convert ObjC code from UIView+SignalUI to Swift.
• separate code from UIView+SignalUI to smaller files by functionality.
2023-06-23 14:36:21 -07:00
Sasha Weiss
639008d985
Present largely inert username link QR code view 2023-06-15 14:28:41 -07:00
Igor Solomennikov
0686b39547 Add necessary imports to Swift files.
Those would be required for future PRs.
2023-06-13 14:46:12 -07:00
Harry
f728457039
Update build target to iOS 13.0 2023-06-08 16:21:20 -07:00
Igor Solomennikov
8333ad2193 Use NSTextAlignment.trailing instead of UIView.textAlignmentUnnatural. 2023-06-08 16:00:13 -07:00
Igor Solomennikov
c054f3de91
Remove unnecessary "@objc" in SignalUI. 2023-05-16 16:39:19 -07:00
Harry
8aaafc70c6
Display styles in story captions 2023-05-11 15:08:49 -07:00
Harry
e7f2c3b059
Show text formatting styles in media gallery 2023-05-05 09:06:03 -07:00
Igor Solomennikov
bb2b665f6f
Convert Theme to Swift. 2023-05-02 12:49:36 -07:00
Igor Solomennikov
31c60987d1
Convert two protocols and an enum from OWSBubbleView.h to Swift. 2023-05-02 11:39:01 -07:00
Igor Solomennikov
6dd3d9a6f2
Convert all convenience methods in UIFont+OWS to Swift. 2023-04-18 17:14:51 -07:00
Evan Hahn
58e276d0f0
Remove UIUtil.h 2023-04-12 14:59:59 -05:00
Igor Solomennikov
eed90ed89c
Fix some C warnings.
* A function declaration without a prototype is deprecated in all versions of C
* No previous prototype for function `xxx`.
2023-03-28 10:27:03 -07:00
Igor Solomennikov
7a717b9c35
Fix an error and some warnings in Xcode 14.3
* Fix name collision.

`UIView.autoPinEdgesToSuperviewEdges(withInsets:)` declared in SignalUI
was doing the same thing as `-[UIView autoPinEdgesToSuperviewEdgesWithInsets:]`
in PureLayout. Xcode 14.3 has started treating this ObjC name collision as an error.

* Fix warnings that would be errors in Swift 6.
2023-03-27 16:36:43 -07:00
Evan Hahn
782ef2d3d0
New registration: show (most of) remaining UI on PIN screen
All user-visible changes are on the "existing PIN" operation, but the
other two operations needed some refactors.
2023-03-27 12:07:28 -05:00
Igor Solomennikov
ce0d3ba940
Media viewer animation improvements
* Improve status bar style update animation when dismissing media viewer.
* Use gesture velocity in the media dismissal spring-based animation.
2023-02-28 16:42:47 -08:00
Igor Solomennikov
1dbea3f3ed
Properly animate corner radius when opening/dismissing media in chat.
Since it's not possible to set different radius for different corners of a CALayer I had to use a masking layer instead.
Assignment of CALayer.mask cannot be animated so I had to animate path of CSShapeLayer that serves as a mask layer. CAShapeLayer.path isn't implicitly animatable and workaround for that is copying bounds.size animation and attaching that to the masking layer.
2023-02-28 16:40:05 -08:00
Sasha Weiss
1126c98f19
"Select a username" UX 2023-01-26 11:38:21 -08:00
Igor Solomennikov
6ac2646306
Clean up and consolidate logic for setting textContainerInset in MentionTextView.
Also fix logic for calculation of top and bottom text container insets for
smaller fonts.
2022-12-16 15:48:28 -08:00
Igor Solomennikov
5a45bf31a9
Improved text size calculation logic in chat input toolbar.
Fixes an issue where text input field was one line taller than necessary.
2022-12-06 15:49:57 -08:00
Igor Solomennikov
8dfe095571
Animate input box height changes in the media flow. 2022-12-06 15:44:36 -08:00
Max Radermacher
3a2b5a37bf Fix SwiftLint violations 2022-11-29 14:47:23 -08:00
Evan Hahn
0e79b75029
Add icon to "donate with credit/debit card" button 2022-11-22 12:25:18 -06:00
Igor Solomennikov
d57e0d35b8
Update "Send" button icon to up arrow in all places. 2022-11-16 16:32:34 -08:00
Igor Solomennikov
11d1807e35
More updates to chat input bar.
* Updates to "sticker" button in chat input bar.

• switch button to "keyboard" when sticker keyboard is active.
• add spring animations to sticker/keyboard buttons.
• clean up animation code: use one UIViewPropertyAnimator for all animations
  happening in chat bar at once.

* Ensure correct "pressed state" appearance for buttons in chat bar.
2022-11-14 13:33:37 -08:00
Igor Solomennikov
03e01b4c7f
Updated animation for + attachment button in chat input panel. 2022-11-10 23:09:26 -08:00
Max Radermacher
9439cc5191
Clean up recipient picker contact/group cells
- Move recipient picker code to the correct file.

- Add a helper to fetch typed reusable table view cells.

- Only set shouldUseAsyncSelection in the one place that uses it.

- Remove some code that was duplicated between sync/async selection.

- Fix some strong references in the async preparation flow.

- Allow network errors when preparing recipients -- these may do network
  fetches, and those can fail for non-interesting reasons.

- Move FindByPhoneNumberDelegate to Swift & make some code private.
2022-11-07 13:02:45 -08:00
Harry
520faa95df
Refactor OWSNavigationController
* make shouldCancelNavigationBack a var

* rename OWSNavigationView->OWSNavigationChildController

* forward delegate calls to OWSNavigationController

* apply theme and style to OWSNavigationBar consistently

fix themeing on gif picker controller

* Use topPinned navbar position. Size the blur effect view using the background view

* Use fade animation when hiding the navigation bar

* fix issues with reduced transparency setting

* pr feedback
2022-11-03 16:40:47 -07:00
Igor Solomennikov
9000a5cbb9
Add support for appropriate fonts for different scripts in Text Story composer / viewer. 2022-11-01 16:16:12 -07:00
Max Radermacher
3aa95a999a
Update SignalCoreKit 2022-10-24 23:28:33 -07: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
Nora Trapp
da9f52c67d Update conversation split view styling 2022-09-12 10:48:28 -07:00
Harry
b9dd5cb63c
Use final avatar for system author (onboarding story)
* Use final avatar for system author (onboarding story)

* remove onboarding story feature flag
2022-08-30 16:45:37 -07:00
Igor Solomennikov
6548e374e2
Improved crop tool in media editor.
Re-do all crop view controller with pure Auto Layout which allowed to animate layout changes and transitions between UI states.

Image rotation using two fingers was removed to match native Photos app: tilt control UI at the bottom allows much more precise rotation and two finger gesture is now purely for zooming and panning.
2022-07-26 14:11:03 -07:00
igor-signal
a02c18c972
Animate UI changes in the bottom toolbar in media review screen.
Animate UI changes in the bottom toolbar in media review screen.
2022-07-13 12:12:48 -07:00
Max Radermacher
369118b045 Add support for replying to gift messages 2022-07-07 10:49:20 -07:00
Igor Solomennikov
7f4a5f3f7b Merge branch igor/media-editor-updates. 2022-07-06 14:54:26 -07:00
Evan Hahn
29c0ddf60e Fix violations of SwiftLint's attributes rule
_I recommend reviewing this with whitespace changes disabled._

Most of these were `@objc` being on the same line, which I fixed with [a
silly script][1]—probably could've used `sed` if I were wiser. The rest
were manual fixes.

See [the SwiftLint documentation for this rule][0].

[0]: https://realm.github.io/SwiftLint/attributes.html
[1]: https://gist.github.com/EvanHahn-Signal/d353c93fa269c82b96baca0a1086521f
2022-05-14 09:07:42 -05:00
Igor Solomennikov
1aec65bc1d Fix incorrect layouts constraints in AL helper method.
UIView.autoPin(toEdgesOf:withInset:) was creating incorrect vertical
edge constraints.

Also rename the method to better match conventions: `withInsets` instead
of `withInset`.
2022-04-22 11:08:20 -07:00