1
0
Fork 0
mirror of https://gitlab.gnome.org/GNOME/calls.git synced 2024-12-12 07:37:35 +00:00
Commit graph

230 commits

Author SHA1 Message Date
Julian Sparber
e911f391c6
Use correct parent class when chaining up overridden functions
How `g_type_class_peek ()` was used it didn't return the correct parent
class in most cases.
G_DEFINE_TYPE macro creates a pointer we can use to get the parent
class `n_p_parent_class`.
Because we didn't use the correct parent class the object initialisation
wasn't fully completed for some GtkWidgets.
See https://developer.gnome.org/gobject/stable/chapter-gobject.html#gobject-instantiation
for more information.

This commit makes use of the `n_p_parent_class pointer` created for this
specific use case where ever possible.

Fixes: https://source.puri.sm/Librem5/calls/issues/118
2020-02-19 12:49:58 +01:00
Julian Sparber
06481155fd
NewCallBox+CallDisplay: UI facelift
This adds a style.css file to allow the use of custom css

Fixes https://source.puri.sm/Librem5/calls/issues/115:
- Making the phone number larger
- Moving the delete button to the bottom
- Rounding all buttons, and making the grid buttons circular
- Making the call button a bit less wide
2020-01-28 17:58:01 +01:00
Bob Ham
bcaf92d8d2 Release Calls 0.1.2 2020-01-27 14:56:08 +00:00
Julian Sparber
497fe072fc
Replace HdyDialer with HdyKeypad and bump libhandy to 0.0.12
HdyDialer was deprecated and therefore is replaced with HdyKeypad.
HdyDialer used a `gchr *` to store the entered phone number. On every
button press the entire text of the display entry was replaced with the new
string, which messed up selection and cursor position.
HdyKeypad connects directly to a GtkEntry and inserts each
button press the same way as a keyboard stroke would do.

In the case of the `call display` entry every new digit is appended to the
end of the input and therefore it also moves the cursor to the end of the
entry. Instead of making the Entry not editable, only the events which
would remove text form the entry are blocked, via the `delete-text`
signal. And the signal `insert-text` is used to block unwanted chars
from beeing inserted.

Same as for the `call display` entry also the `new call box` entry is
made editable and the signal `insert-text` is used to block unwanted
chars. All other user action possible on a entry arn't blocked
e.g. repositioning the cursor.

The advantage of making the Entry editable is that we can show
the cursor position.
It also allows the user to select the position where new digits are
inserted in the `new call box`.
On a button press the focus is set to the Entry to give the correct
feedback to the user.

This centers the text on the entry, as required by the design.
This also makes the delete button remove only one char at the time, to
move closer to the desired UX.
Related: https://source.puri.sm/Librem5/calls/issues/58

Fixes: https://source.puri.sm/Librem5/calls/issues/82
2020-01-27 14:27:06 +01:00
Bob Ham
dc9b7102de mm-call: Sanitise disconnect messages
Clean up the disconnect messages so they make sense when presented to
the user.  Also add new state change reasons from ModemManager 1.10
and 1.12.

Fixes #90
2020-01-21 13:29:58 +00:00
Bob Ham
7d02dcbb66 call-display: Only mute the microphone with the Mute button
Don't mute the sink (the codec speaker feed), only mute the source
(the microphone feed).

Fixes #112
2020-01-20 12:08:19 +00:00
Mohammed Sadiq
0634f49fc7 mm-provider: Fix a check to remove device
We want to remove the modem if the currently removed interface is
Voice.  It was previously removing the device if the removed
interface wasn’t Voice.

Fixes https://source.puri.sm/Librem5/calls/issues/94
2020-01-20 10:41:45 +00:00
Guido Günther
9f4c0cf3d0 Add potfile
Generated via

   ninja  -C _build/ calls-pot
2020-01-14 18:19:21 +01:00
Guido Günther
3db2a8aa5c po: Update pofiles.in
Closes: #76
2020-01-14 18:18:17 +01:00
Guido Günther
ad56f9aa85 gitlab-ci: Build package and run autopkgtest / lintian
Use prebuilt pipelines to build debs for arm64 and amd64. Test
the amd64 ones using (potential) autopkgtests and lintian.
2020-01-13 12:19:46 +01:00
Guido Günther
a85710869c gitlab-ci: Specify stages
We want proper ordering on the to be added stages
2020-01-13 12:19:46 +01:00
Guido Günther
f66e947554 debian: Add superficial autopkgtest
This makes sure we have all the dependencies to start the program.
2020-01-13 12:19:46 +01:00
Bob Ham
10d46d212f d/changelog: Fix distribution name 2019-12-10 15:04:26 +00:00
Bob Ham
b71e41bac1 Release Calls 0.1.1 2019-12-10 14:52:17 +00:00
Bob Ham
cc41df44d6 Add initial avatar support
We change the code for dealing with contacts quite significantly,
adding a new class, CallsBestMatch, in order to encapsulate a lot of
the functionality that was in CallsCallRecordRow.

At present avatars are not rounded and there are no auto-generated
avatars for contacts with no avatar.  This work is awaiting discussion
of Apps_Issues#164.
2019-12-10 14:46:31 +00:00
Bob Ham
40b8793710 call-display: Add ugly, ugly hacks to enable speakerphone/mute buttons
We call pactl synchronously in order to (1) change the sink/source
port for speakerphone and (2) mute the sink/source for mute.  The
sink/source names are hardcoded.  This is all ugly and needs to not
exist.  This functionality should be in Wys, accessed over D-Bus, or
in some other, as-yet undefined component.
2019-12-10 11:03:53 +00:00
Bob Ham
8f2cddddcf Add -Wno-error=deprecated-declarations to build arguments
This works around the deprecation warning for HdyDialer.
2019-12-10 10:03:40 +00:00
Bob Ham
9fe575053d Use libfolks phone number lookup in call record display
Closes #85
2019-10-29 14:54:45 +00:00
Bob Ham
6a7fbf0b59 Add phone number lookup using libfolks
The CallsBestMatchView and CallsPhoneNumberQuery classes are written
in Vala because they may be generally useful and to leave open the
possibility of adding them to libfolks itself, which is written in
Vala.
2019-10-29 13:21:45 +00:00
Lubomir Rintel
4b4cfa0426 appdata.xml: fix a validation error
appstream-util version 0.7.16 complains:

  $ appstream-util validate-relax --nonet ./data/sm.puri.Calls.appdata.xml
  ./data/sm.puri.Calls.appdata.xml: FAILED:
  • tag-missing           : <description> required
  Validation of files failed

What it actually means that the <description> is not well formed because
it should contain a paragraph.
2019-10-09 11:07:20 +02:00
Bob Ham
e7ba7d731c ringer: Use the GTK sound theme 2019-09-23 15:22:31 +01:00
Bob Ham
2d5396dd8a Merge branch 'release-v0.1.0' into 'master'
Release Calls 0.1.0

See merge request Librem5/calls!69
2019-09-18 15:20:36 +00:00
Bob Ham
a9e0803f8b Release Calls 0.1.0
Signed-off-by: Bob Ham <bob.ham@puri.sm>
2019-09-18 16:05:44 +01:00
Bob Ham
52490d55b8 Merge branch 'hide-contacts-pane' into 'master'
ui/main-window: Hide contacts pane

Closes #83

See merge request Librem5/calls!68
2019-09-18 12:45:51 +00:00
Bob Ham
6a4dbe6b18 ui/main-window: Hide contacts pane
While we have no integration with Contacts, the contacts pane
shouldn't be visible.

Closes #83
2019-09-18 13:38:48 +01:00
Bob Ham
9746500c43 Merge branch 'lockscreen-gtkapplication' into 'master'
Display call window over the phosh lockscreen

Closes #41

See merge request Librem5/calls!66
2019-09-06 14:05:13 +00:00
Bob Ham
3201c8e69b Display call window over the phosh lockscreen
Closes #41
2019-09-06 14:58:08 +01:00
Bob Ham
53d7ce0003 Merge branch 'build-deps' into 'master'
docs: add gom to build dependencies

See merge request Librem5/calls!61
2019-09-03 11:02:28 +00:00
Julian Sparber
c6d2800331 docs: update depedencies instructions 2019-09-02 12:03:47 +02:00
Bob Ham
03ede5b574 Merge branch 'session-rework' into 'master'
Use GtkApplication::register-session property to register

See merge request Librem5/calls!65
2019-09-02 09:02:10 +00:00
Bob Ham
38dd76c714 Use GtkApplication::register-session property to register
We can use GtkApplication to register with the GNOME session rather
than doing it ourselves, simplifying things in CallsApplication very
slightly and allowing us to remove session.{c,h}.
2019-09-02 09:52:12 +01:00
Bob Ham
950c207aff Merge branch 'dial-pad-number-property' into 'master'
calls-new-call-box: Allow entering of "+" symbol

Closes #12

See merge request Librem5/calls!64
2019-09-02 08:46:52 +00:00
Bob Ham
df74a80594 calls-new-call-box: Allow entering of "+" symbol
Use the "number" property of the dial pad for the dialed number which
takes care of cycling buttons. While we're at it, also make the clear
button external to the number entry box, enlarging it and turning it
into a backspace button.

Closes #12
2019-08-22 16:05:24 +01:00
Bob Ham
8f38e50f8c Merge branch 'gnome-session' into 'master'
Start up in a new daemon mode when GNOME starts

Closes #45

See merge request Librem5/calls!62
2019-08-13 10:58:37 +00:00
Bob Ham
646682b878 Start up in daemon mode when GNOME starts
Hat tip to Guido for the session.{c,h} files.

Closes #45
2019-08-13 11:53:54 +01:00
Bob Ham
fc16ec7a71 calls-application: Add --daemon option to not display main window 2019-08-08 13:51:17 +01:00
Bob Ham
587c3444b6 Merge branch 'tel-url-handler' into 'master'
Tel url handler

Closes #73

See merge request Librem5/calls!60
2019-08-07 08:42:55 +00:00
Bob Ham
232c3f3843 Merge branch 'call-records' into 'master'
Hook up Recent Calls list to database

Closes use-cases#115 and use-cases#113

See merge request Librem5/calls!59
2019-08-07 08:42:18 +00:00
Bob Ham
cb2831eca4 Support opening of tel: URIs
Closes #73
2019-08-06 11:29:05 +01:00
Bob Ham
096ab8c4b3 appdata: Fix application ID 2019-08-05 11:48:37 +01:00
Bob Ham
3c22bc9154 Hook up Recent Calls list to database
Closes use-cases#113
Closes use-cases#115
2019-08-01 14:39:55 +01:00
Bob Ham
8862b03a13 Merge branch 'call-records' into 'master'
Call records

Closes use-cases#114

See merge request Librem5/calls!58
2019-07-22 13:40:55 +00:00
Bob Ham
da298c0648 Record calls to an SQLite database via libgom
Closes use-cases#114
2019-07-22 14:37:41 +01:00
Bob Ham
ebf579af78 calls-dummy-origin: Fix ordering of state change and call removal callbacks 2019-07-22 14:37:27 +01:00
Bob Ham
f12b411813 calls-call: Add calls_call_get_inbound function 2019-07-22 11:52:42 +01:00
Bob Ham
b1a743b757 calls-mm-call: Map MM_CALL_STATE_UNKNOWN to CALLS_CALL_STATE_DIALING instead of 0
This actually makes sense in the mapping; the only time an MM call is
in MM_CALL_STATE_UNKNOWN is when it's an outgoing call that hasn't
been started.  It also helps avoid a lot of needless issues dealing
with the Calls call state.
2019-07-22 11:52:31 +01:00
Bob Ham
2f82dcaab6 Merge branch 'david.boddie/calls-suppress-input-methods-in-dialler' into 'master'
Override the input method for entry widgets

See merge request Librem5/calls!57
2019-07-12 14:15:29 +00:00
David Boddie
a27efedf7c Override the input method for entry widgets 2019-07-10 16:42:15 +02:00
Bob Ham
d8cf2be9c6 Merge branch 'symbolic-switcher-icons' into 'master'
Switcher: symbolic icons, label capitalization

See merge request Librem5/calls!51
2019-07-09 10:04:56 +00:00
Bob Ham
4fcc846095 Merge branch 'recents-empty-state-label' into 'master'
Minor: Change recent calls empty state label

See merge request Librem5/calls!47
2019-07-09 09:58:10 +00:00