Merge lp:~turan-mahmudov-l/ubuntu-keyboard/trunk into lp:ubuntu-keyboard

Proposed by Turan Mahmudov
Status: Merged
Merged at revision: 248
Proposed branch: lp:~turan-mahmudov-l/ubuntu-keyboard/trunk
Merge into: lp:ubuntu-keyboard
Diff against target: 738 lines (+542/-17)
16 files modified
debian/control (+8/-0)
debian/ubuntu-keyboard-azerbaijani.install (+1/-0)
plugins/az/az.pro (+9/-0)
plugins/az/qml/Keyboard_az.qml (+98/-0)
plugins/az/qml/Keyboard_az_email.qml (+99/-0)
plugins/az/qml/Keyboard_az_url.qml (+98/-0)
plugins/az/qml/Keyboard_az_url_search.qml (+100/-0)
plugins/az/qml/qml.pro (+20/-0)
plugins/az/src/azerbaijaniplugin.h (+27/-0)
plugins/az/src/azerbaijaniplugin.json (+7/-0)
plugins/az/src/src.pro (+47/-0)
plugins/plugins.pro (+1/-0)
po/ubuntu-keyboard.pot (+21/-17)
qml/KeyboardContainer.qml (+3/-0)
qml/keys/LanguageMenu.qml (+1/-0)
src/lib/logic/wordengine.cpp (+2/-0)
To merge this branch: bzr merge lp:~turan-mahmudov-l/ubuntu-keyboard/trunk
Reviewer Review Type Date Requested Status
Michael Sheldon (community) Approve
PS Jenkins bot continuous-integration Approve
Łukasz Zemczak packaging Pending
Review via email: mp+236139@code.launchpad.net

Commit message

Add an Azerbaijani keyboard layout

Description of the change

Azerbaijani keyboard

Are there any related MPs required for this MP to build/function as expected? Please list.

 * No

Is your branch in sync with latest trunk (e.g. bzr pull lp:trunk -> no changes)

 * Yes

Did you perform an exploratory manual test run of your code change and any related functionality on device or emulator?

 * Yes

Did you successfully run all tests found in your component's Test Plan (https://wiki.ubuntu.com/Process/Merges/TestPlan/<package-name>) on device or emulator?

* Yes (minus the tests that depend on functionality that hasn't landed)

If you changed the UI, was the change specified/approved by design?

* No change

If you changed UI labels, did you update the pot file?

* Yes

If you changed the packaging (debian), did you add a core-dev as a reviewer to this MP?

* Yes

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

FAILED: Continuous integration, rev:229
No commit message was specified in the merge proposal. Click on the following link and set the commit message (if you want a jenkins rebuild you need to trigger it yourself):
https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139/+edit-commit-message

http://jenkins.qa.ubuntu.com/job/ubuntu-keyboard-ci/482/
Executed test runs:
    FAILURE: http://jenkins.qa.ubuntu.com/job/ubuntu-keyboard-utopic-amd64-ci/108/console
    FAILURE: http://jenkins.qa.ubuntu.com/job/ubuntu-keyboard-utopic-armhf-ci/107/console
    FAILURE: http://jenkins.qa.ubuntu.com/job/ubuntu-keyboard-utopic-i386-ci/107/console

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/ubuntu-keyboard-ci/482/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :

What is the final result?

On Thu, Oct 16, 2014 at 4:59 PM, Michael Sheldon <
<email address hidden>> wrote:

> The proposal to merge lp:~turan-mahmudov-l/ubuntu-keyboard/trunk into
> lp:ubuntu-keyboard has been updated.
>
> Commit Message changed to:
>
> Add an Azerbaijani keyboard layout
>
> For more details, see:
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> --
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> You are the owner of lp:~turan-mahmudov-l/ubuntu-keyboard/trunk.
>

--
Hörmətlə,
Turan Mahmudov
E-mail: <email address hidden>
www.turanmahmudov.net

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :

Is anything wrong?

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

Hi Turan,

 Sorry for the delay on re-reviewing this, we've been frantically sprinting all week :). It looks like there are a couple of small problems with the packaging. You'll need to add an entry in the debian/control file to tell it about your new plugin, something like:

Package: ubuntu-keyboard-azerbaijani
Architecture: any
Depends: ubuntu-keyboard (= ${binary:Version}),
         ${misc:Depends},
         ${shlibs:Depends},
Description: Ubuntu on-screen keyboard data files - Azerbaijani
 Data files for the Ubuntu virtual keyboard - Azerbaijani

This should be added after the entry for the ubuntu-keyboard-arabic package (we list the language plugins alphabetically).

You'll also need to include an install file for the new Debian package (this tells the package build process which files to include), this can simply be a file in the debian/ directory called ubuntu-keyboard-azerbaijani.install with the line:

usr/share/maliit/plugins/com/ubuntu/lib/az/

(Note that there isn't a slash at the beginning of the line).

If this causes any issues just let me know and I'll happily walk you through the process :)

Thanks!
 Mike.

review: Needs Fixing
230. By Turan Mahmudov

bugs fixed

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :

Hi Michael, I updated and pushed to
https://launchpad.net/ubuntu-azerbaijani-keyboard
I can't merge this to ubuntu-keyboard

On Fri, Oct 24, 2014 at 7:51 PM, Michael Sheldon <
<email address hidden>> wrote:

> Review: Needs Fixing
>
> Hi Turan,
>
> Sorry for the delay on re-reviewing this, we've been frantically
> sprinting all week :). It looks like there are a couple of small problems
> with the packaging. You'll need to add an entry in the debian/control file
> to tell it about your new plugin, something like:
>
> Package: ubuntu-keyboard-azerbaijani
> Architecture: any
> Depends: ubuntu-keyboard (= ${binary:Version}),
> ${misc:Depends},
> ${shlibs:Depends},
> Description: Ubuntu on-screen keyboard data files - Azerbaijani
> Data files for the Ubuntu virtual keyboard - Azerbaijani
>
> This should be added after the entry for the ubuntu-keyboard-arabic
> package (we list the language plugins alphabetically).
>
> You'll also need to include an install file for the new Debian package
> (this tells the package build process which files to include), this can
> simply be a file in the debian/ directory called
> ubuntu-keyboard-azerbaijani.install with the line:
>
> usr/share/maliit/plugins/com/ubuntu/lib/az/
>
> (Note that there isn't a slash at the beginning of the line).
>
> If this causes any issues just let me know and I'll happily walk you
> through the process :)
>
> Thanks!
> Mike.
>
> --
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> You are the owner of lp:~turan-mahmudov-l/ubuntu-keyboard/trunk.
>

--
Hörmətlə,
Turan Mahmudov
E-mail: <email address hidden>
www.turanmahmudov.net

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

Hi Turan,

 I'm afraid we can't merge a separate project like that, you need to push your changes to this branch (or create a new branch as you did previously).

Thanks,
 Mike.

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

You can push to this branch by running "bzr push lp:~turan-mahmudov-l/ubuntu-keyboard/trunk"

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :

Hi Michael. I pushed to "~turan-mahmudov-l/ubuntu-
keyboard/trunk"

On Tue, Oct 28, 2014 at 2:55 PM, Michael Sheldon <
<email address hidden>> wrote:

> You can push to this branch by running "bzr push
> lp:~turan-mahmudov-l/ubuntu-keyboard/trunk"
> --
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> You are the owner of lp:~turan-mahmudov-l/ubuntu-keyboard/trunk.
>

--
Hörmətlə,
Turan Mahmudov
E-mail: <email address hidden>
www.turanmahmudov.net

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

Thanks! I'll try to review that later today.

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :

thanks :)

On Tue, Oct 28, 2014 at 3:19 PM, Michael Sheldon <
<email address hidden>> wrote:

> Thanks! I'll try to review that later today.
> --
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> You are the owner of lp:~turan-mahmudov-l/ubuntu-keyboard/trunk.
>

--
Hörmətlə,
Turan Mahmudov
E-mail: <email address hidden>
www.turanmahmudov.net

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

Hi, just a couple more changes needed:

To let the rest of the keyboard system know about your plugin there are a couple of files you'll need to make some small changes to. You'll need to add an entry for Azerbaijani in the languageIdToName function in qml/keys/LanguageMenu.qml and in the freeTextLanguageKeyboard and languageIsSupported functions in qml/KeyboardContainer.qml and WordEngine::onLanguageChanged in src/lib/logic/wordengine.cpp (these should really be redesigned to avoid the need for that, but that's currently fairly low on the priority list I'm afraid).

Also, I see that you've added the Arabic dictionary (hunspell-ar) as a dependency, was that intentional (if so we'll need to make some further changes to make it usable by the plugin) or just accidentally copied from the Arabic plugin entry?

Finally, it'd be handy if you could update your branch from trunk to make sure everything merges smoothly when we land this. To do that simply run 'bzr merge lp:ubuntu-trunk', if there are any merge conflicts let me know and I'll help you correct them, otherwise just run 'bzr commit -m "Merge from trunk"' and 'bzr push'.

Thanks!
 Mike.

review: Needs Fixing
231. By Turan Mahmudov

bugs fixed

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :

Hi.

I made changes. But I didn't understand this: "Also, I see that you've
added the Arabic dictionary (hunspell-ar) as a dependency, was that
intentional (if so we'll need to make some further changes to make it
usable by the plugin) or just accidentally copied from the Arabic plugin
entry?" - what I should do?

"bzr merge lp:ubuntu-trunk" says "bzr: ERROR: Not a branch: "bzr+ssh://
bazaar.launchpad.net/+branch/ubuntu-trunk/".

I pushed files to "~turan-mahmudov-l/ubuntu-azerbaijani-keyboard/trunk/".

On Thu, Oct 30, 2014 at 3:43 PM, Michael Sheldon <
<email address hidden>> wrote:

> Review: Needs Fixing
>
> Hi, just a couple more changes needed:
>
> To let the rest of the keyboard system know about your plugin there are a
> couple of files you'll need to make some small changes to. You'll need to
> add an entry for Azerbaijani in the languageIdToName function in
> qml/keys/LanguageMenu.qml and in the freeTextLanguageKeyboard and
> languageIsSupported functions in qml/KeyboardContainer.qml and
> WordEngine::onLanguageChanged in src/lib/logic/wordengine.cpp (these should
> really be redesigned to avoid the need for that, but that's currently
> fairly low on the priority list I'm afraid).
>
> Also, I see that you've added the Arabic dictionary (hunspell-ar) as a
> dependency, was that intentional (if so we'll need to make some further
> changes to make it usable by the plugin) or just accidentally copied from
> the Arabic plugin entry?
>
> Finally, it'd be handy if you could update your branch from trunk to make
> sure everything merges smoothly when we land this. To do that simply run
> 'bzr merge lp:ubuntu-trunk', if there are any merge conflicts let me know
> and I'll help you correct them, otherwise just run 'bzr commit -m "Merge
> from trunk"' and 'bzr push'.
>
> Thanks!
> Mike.
> --
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> You are the owner of lp:~turan-mahmudov-l/ubuntu-keyboard/trunk.
>

--
Hörmətlə,
Turan Mahmudov
E-mail: <email address hidden>
www.turanmahmudov.net

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

Sorry, my fault, that should have been "bzr merge lp:ubuntu-keyboard".

For the Arabic dictionary simply remove the hunspell-ar line from the dependencies in debian/control. I've marked the relevant line with an in-line comment on the diff.

You'll need to push changes to "lp:~turan-mahmudov-l/ubuntu-keyboard/trunk/" (this branch), otherwise we won't be able to merge them with ubuntu-keyboard (ubuntu-azerbaijani-keyboard is considered to be a separate project by launchpad).

232. By Turan Mahmudov

fixed

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :
Download full text (30.7 KiB)

I pushed and merged.

On Thu, Oct 30, 2014 at 4:19 PM, Michael Sheldon <
<email address hidden>> wrote:

> Sorry, my fault, that should have been "bzr merge lp:ubuntu-keyboard".
>
> For the Arabic dictionary simply remove the hunspell-ar line from the
> dependencies in debian/control. I've marked the relevant line with an
> in-line comment on the diff.
>
> You'll need to push changes to
> "lp:~turan-mahmudov-l/ubuntu-keyboard/trunk/" (this branch), otherwise we
> won't be able to merge them with ubuntu-keyboard
> (ubuntu-azerbaijani-keyboard is considered to be a separate project by
> launchpad).
>
> Diff comments:
>
> > === modified file 'debian/control'
> > --- debian/control 2014-08-13 22:17:53 +0000
> > +++ debian/control 2014-10-28 11:00:47 +0000
> > @@ -92,6 +92,15 @@
> > Description: Ubuntu on-screen keyboard data files - Arabic
> > Data files for the Ubuntu virtual keyboard - Arabic
> >
> > +Package: ubuntu-keyboard-azerbaijani
> > +Architecture: any
> > +Depends: ubuntu-keyboard (= ${binary:Version}),
> > + hunspell-ar,
>
> ^ This line
>
> > + ${misc:Depends},
> > + ${shlibs:Depends},
> > +Description: Ubuntu on-screen keyboard data files - Azerbaijani
> > + Data files for the Ubuntu virtual keyboard - Azerbaijani
> > +
> > Package: ubuntu-keyboard-chinese-pinyin
> > Architecture: any
> > Depends: ubuntu-keyboard (= ${binary:Version}),
> >
> > === added file 'debian/ubuntu-keyboard-azerbaijani.install'
> > --- debian/ubuntu-keyboard-azerbaijani.install 1970-01-01
> 00:00:00 +0000
> > +++ debian/ubuntu-keyboard-azerbaijani.install 2014-10-28
> 11:00:47 +0000
> > @@ -0,0 +1,1 @@
> > +usr/share/maliit/plugins/com/ubuntu/lib/az/
> >
> > === added directory 'plugins/az'
> > === added file 'plugins/az/az.pro'
> > --- plugins/az/az.pro 1970-01-01 00:00:00 +0000
> > +++ plugins/az/az.pro 2014-10-28 11:00:47 +0000
> > @@ -0,0 +1,9 @@
> > +CONFIG += ordered
> > +TEMPLATE = subdirs
> > +SUBDIRS = \
> > + src \
> > + qml
> > +
> > +QMAKE_EXTRA_TARGETS += check
> > +check.target = check
> > +check.CONFIG = recursive
> >
> > === added directory 'plugins/az/qml'
> > === added file 'plugins/az/qml/Keyboard_az.qml'
> > --- plugins/az/qml/Keyboard_az.qml 1970-01-01 00:00:00 +0000
> > +++ plugins/az/qml/Keyboard_az.qml 2014-10-28 11:00:47 +0000
> > @@ -0,0 +1,98 @@
> > +/*
> > + * Copyright 2013 Canonical Ltd.
> > + *
> > + * This program is free software; you can redistribute it and/or modify
> > + * it under the terms of the GNU Lesser General Public License as
> published by
> > + * the Free Software Foundation; version 3.
> > + *
> > + * This program is distributed in the hope that it will be useful,
> > + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> > + * GNU Lesser General Public License for more details.
> > + *
> > + * You should have received a copy of the GNU Lesser General Public
> License
> > + * along with this program. If not, see <http://www.gnu.org/licenses/
> >.
> > + */
> > +
> > +import QtQuick 2.0
> > +import "../../keys"
> > +import "../../keys/key_constants.js" as UI
> > ...

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

Tiny thing but your latest changes have some tabs in the indentation instead of spaces. We try to keep a consistent indentation style throughout the codebase, so if you could change those to spaces it'd be a big help. I've marked the relevant lines in the diff.

Thanks!

233. By Turan Mahmudov

tabs to spaces

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :
Download full text (32.4 KiB)

I fixed, pushed and merged.

On Thu, Oct 30, 2014 at 4:51 PM, Michael Sheldon <
<email address hidden>> wrote:

> Tiny thing but your latest changes have some tabs in the indentation
> instead of spaces. We try to keep a consistent indentation style throughout
> the codebase, so if you could change those to spaces it'd be a big help.
> I've marked the relevant lines in the diff.
>
> Thanks!
>
> Diff comments:
>
> > === modified file 'debian/control'
> > --- debian/control 2014-08-13 22:17:53 +0000
> > +++ debian/control 2014-10-30 12:23:43 +0000
> > @@ -92,6 +92,14 @@
> > Description: Ubuntu on-screen keyboard data files - Arabic
> > Data files for the Ubuntu virtual keyboard - Arabic
> >
> > +Package: ubuntu-keyboard-azerbaijani
> > +Architecture: any
> > +Depends: ubuntu-keyboard (= ${binary:Version}),
> > + ${misc:Depends},
> > + ${shlibs:Depends},
> > +Description: Ubuntu on-screen keyboard data files - Azerbaijani
> > + Data files for the Ubuntu virtual keyboard - Azerbaijani
> > +
> > Package: ubuntu-keyboard-chinese-pinyin
> > Architecture: any
> > Depends: ubuntu-keyboard (= ${binary:Version}),
> >
> > === added file 'debian/ubuntu-keyboard-azerbaijani.install'
> > --- debian/ubuntu-keyboard-azerbaijani.install 1970-01-01
> 00:00:00 +0000
> > +++ debian/ubuntu-keyboard-azerbaijani.install 2014-10-30
> 12:23:43 +0000
> > @@ -0,0 +1,1 @@
> > +usr/share/maliit/plugins/com/ubuntu/lib/az/
> >
> > === added directory 'plugins/az'
> > === added file 'plugins/az/az.pro'
> > --- plugins/az/az.pro 1970-01-01 00:00:00 +0000
> > +++ plugins/az/az.pro 2014-10-30 12:23:43 +0000
> > @@ -0,0 +1,9 @@
> > +CONFIG += ordered
> > +TEMPLATE = subdirs
> > +SUBDIRS = \
> > + src \
> > + qml
> > +
> > +QMAKE_EXTRA_TARGETS += check
> > +check.target = check
> > +check.CONFIG = recursive
> >
> > === added directory 'plugins/az/qml'
> > === added file 'plugins/az/qml/Keyboard_az.qml'
> > --- plugins/az/qml/Keyboard_az.qml 1970-01-01 00:00:00 +0000
> > +++ plugins/az/qml/Keyboard_az.qml 2014-10-30 12:23:43 +0000
> > @@ -0,0 +1,98 @@
> > +/*
> > + * Copyright 2013 Canonical Ltd.
> > + *
> > + * This program is free software; you can redistribute it and/or modify
> > + * it under the terms of the GNU Lesser General Public License as
> published by
> > + * the Free Software Foundation; version 3.
> > + *
> > + * This program is distributed in the hope that it will be useful,
> > + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> > + * GNU Lesser General Public License for more details.
> > + *
> > + * You should have received a copy of the GNU Lesser General Public
> License
> > + * along with this program. If not, see <http://www.gnu.org/licenses/
> >.
> > + */
> > +
> > +import QtQuick 2.0
> > +import "../../keys"
> > +import "../../keys/key_constants.js" as UI
> > +
> > +KeyPad {
> > + anchors.fill: parent
> > +
> > + content: c1
> > + symbols: "languages/Keyboard_symbols.qml"
> > +
> > + Column {
> > + id: c1
> > + anchors.fill: parent
> > + spacing: 0
> > +
> > + Row {
> > ...

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

It looks like your entry in KeyboardContainer.qml is looking for Keyboard_az.qml in lib/cs/ instead of lib/az/ so isn't finding it. I've commented in the diff to show exactly where.

234. By Turan Mahmudov

bugs fixed

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :
Download full text (32.2 KiB)

merged

On Thu, Oct 30, 2014 at 6:40 PM, Michael Sheldon <
<email address hidden>> wrote:

> It looks like your entry in KeyboardContainer.qml is looking for
> Keyboard_az.qml in lib/cs/ instead of lib/az/ so isn't finding it. I've
> commented in the diff to show exactly where.
>
> Diff comments:
>
> > === modified file 'debian/control'
> > --- debian/control 2014-08-13 22:17:53 +0000
> > +++ debian/control 2014-10-30 13:54:56 +0000
> > @@ -92,6 +92,14 @@
> > Description: Ubuntu on-screen keyboard data files - Arabic
> > Data files for the Ubuntu virtual keyboard - Arabic
> >
> > +Package: ubuntu-keyboard-azerbaijani
> > +Architecture: any
> > +Depends: ubuntu-keyboard (= ${binary:Version}),
> > + ${misc:Depends},
> > + ${shlibs:Depends},
> > +Description: Ubuntu on-screen keyboard data files - Azerbaijani
> > + Data files for the Ubuntu virtual keyboard - Azerbaijani
> > +
> > Package: ubuntu-keyboard-chinese-pinyin
> > Architecture: any
> > Depends: ubuntu-keyboard (= ${binary:Version}),
> >
> > === added file 'debian/ubuntu-keyboard-azerbaijani.install'
> > --- debian/ubuntu-keyboard-azerbaijani.install 1970-01-01
> 00:00:00 +0000
> > +++ debian/ubuntu-keyboard-azerbaijani.install 2014-10-30
> 13:54:56 +0000
> > @@ -0,0 +1,1 @@
> > +usr/share/maliit/plugins/com/ubuntu/lib/az/
> >
> > === added directory 'plugins/az'
> > === added file 'plugins/az/az.pro'
> > --- plugins/az/az.pro 1970-01-01 00:00:00 +0000
> > +++ plugins/az/az.pro 2014-10-30 13:54:56 +0000
> > @@ -0,0 +1,9 @@
> > +CONFIG += ordered
> > +TEMPLATE = subdirs
> > +SUBDIRS = \
> > + src \
> > + qml
> > +
> > +QMAKE_EXTRA_TARGETS += check
> > +check.target = check
> > +check.CONFIG = recursive
> >
> > === added directory 'plugins/az/qml'
> > === added file 'plugins/az/qml/Keyboard_az.qml'
> > --- plugins/az/qml/Keyboard_az.qml 1970-01-01 00:00:00 +0000
> > +++ plugins/az/qml/Keyboard_az.qml 2014-10-30 13:54:56 +0000
> > @@ -0,0 +1,98 @@
> > +/*
> > + * Copyright 2013 Canonical Ltd.
> > + *
> > + * This program is free software; you can redistribute it and/or modify
> > + * it under the terms of the GNU Lesser General Public License as
> published by
> > + * the Free Software Foundation; version 3.
> > + *
> > + * This program is distributed in the hope that it will be useful,
> > + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> > + * GNU Lesser General Public License for more details.
> > + *
> > + * You should have received a copy of the GNU Lesser General Public
> License
> > + * along with this program. If not, see <http://www.gnu.org/licenses/
> >.
> > + */
> > +
> > +import QtQuick 2.0
> > +import "../../keys"
> > +import "../../keys/key_constants.js" as UI
> > +
> > +KeyPad {
> > + anchors.fill: parent
> > +
> > + content: c1
> > + symbols: "languages/Keyboard_symbols.qml"
> > +
> > + Column {
> > + id: c1
> > + anchors.fill: parent
> > + spacing: 0
> > +
> > + Row {
> > + anchors.horizontalCenter: parent.horizontalCenter;
> > + spacing: 0
> > +
> > + ...

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :

Hi, Michael. Thanks a lot ;)

On Fri, Oct 31, 2014 at 5:42 PM, Michael Sheldon <
<email address hidden>> wrote:

> The proposal to merge lp:~turan-mahmudov-l/ubuntu-keyboard/trunk into
> lp:ubuntu-keyboard has been updated.
>
> Description changed to:
>
> Azerbaijani keyboard
>
> Are there any related MPs required for this MP to build/function as
> expected? Please list.
>
> * No
>
> Is your branch in sync with latest trunk (e.g. bzr pull lp:trunk -> no
> changes)
>
> * Yes
>
> Did you perform an exploratory manual test run of your code change and any
> related functionality on device or emulator?
>
> * Yes
>
> Did you successfully run all tests found in your component's Test Plan (
> https://wiki.ubuntu.com/Process/Merges/TestPlan/<package-name>) on device
> or emulator?
>
> * Yes (minus the tests that depend on functionality that hasn't landed)
>
> If you changed the UI, was the change specified/approved by design?
>
> * No change
>
> If you changed UI labels, did you update the pot file?
>
> * Yes
>
> If you changed the packaging (debian), did you add a core-dev as a
> reviewer to this MP?
>
> * Yes
>
> For more details, see:
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> --
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> You are the owner of lp:~turan-mahmudov-l/ubuntu-keyboard/trunk.
>

--
Hörmətlə,
Turan Mahmudov
E-mail: <email address hidden>
www.turanmahmudov.net

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

Did you perform an exploratory manual test run of the code change and any related functionality on device or emulator?

 * Yes

Did CI run pass? If not, please explain why.

 * Yes

Have you checked that submitter has accurately filled out the submitter checklist and has taken no shortcut?

 * Yes (completed on submitter's behalf)

review: Approve
Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :

Hi. In which ubuntu touch version azerbaijani keyboard layout will be
integrated?
On Oct 31, 2014 6:29 PM, "Michael Sheldon" <email address hidden>
wrote:

> Review: Approve
>
> Did you perform an exploratory manual test run of the code change and any
> related functionality on device or emulator?
>
> * Yes
>
> Did CI run pass? If not, please explain why.
>
> * Yes
>
> Have you checked that submitter has accurately filled out the submitter
> checklist and has taken no shortcut?
>
> * Yes (completed on submitter's behalf)
> --
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> You are the owner of lp:~turan-mahmudov-l/ubuntu-keyboard/trunk.
>

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

Hi Turan,

 It should be going in to Vivid fairly soon; we've just been sorting out some last minute bug fixes for the RTM branch, once that's all sorted we'll be turning our attention to landing lots of new stuff in Vivid.

Cheers,
Mike.

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

Hi Turan!

 Sorry, there's one last final step before we can merge this. We need you to sign the contributor license agreement: http://www.ubuntu.com/legal/contributors

 This allows you to retain copyright ownership of your contributions but grants us a license to make use of them within the project.

Thanks!
Mike.

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :

Hi. I signed, and noted launchpad that "ubuntu-azerbaijani-keyboard". Is it
right?

On Tue, Nov 11, 2014 at 7:45 PM, Michael Sheldon <
<email address hidden>> wrote:

> Hi Turan!
>
> Sorry, there's one last final step before we can merge this. We need you
> to sign the contributor license agreement:
> http://www.ubuntu.com/legal/contributors
>
> This allows you to retain copyright ownership of your contributions but
> grants us a license to make use of them within the project.
>
> Thanks!
> Mike.
> --
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> You are the owner of lp:~turan-mahmudov-l/ubuntu-keyboard/trunk.
>

--
Hörmətlə,
Turan Mahmudov
E-mail: <email address hidden>
www.turanmahmudov.net

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

Thanks, however the launchpad ID needs to be the ID of your account, i.e. turan-mahmudov-l not of the project (and in this case the project is actually ubuntu-keyboard). That should probably be made a little clearer on the form, sorry about that.

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :

Okay, I signed again.

On Wed, Nov 12, 2014 at 12:44 AM, Michael Sheldon <
<email address hidden>> wrote:

> Thanks, however the launchpad ID needs to be the ID of your account, i.e.
> turan-mahmudov-l not of the project (and in this case the project is
> actually ubuntu-keyboard). That should probably be made a little clearer on
> the form, sorry about that.
> --
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> You are the owner of lp:~turan-mahmudov-l/ubuntu-keyboard/trunk.
>

--
Hörmətlə,
Turan Mahmudov
E-mail: <email address hidden>
www.turanmahmudov.net

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

Great, thanks very much. As soon as that's been processed on our side we can see about getting this landed in vivid :)

Revision history for this message
Turan Mahmudov (turan-mahmudov-l) wrote :

Thanks a lot. I want to make a keyboard layout for Turkish also. may I?

On Wed, Nov 12, 2014 at 12:56 AM, Michael Sheldon <
<email address hidden>> wrote:

> Great, thanks very much. As soon as that's been processed on our side we
> can see about getting this landed in vivid :)
> --
>
> https://code.launchpad.net/~turan-mahmudov-l/ubuntu-keyboard/trunk/+merge/236139
> You are the owner of lp:~turan-mahmudov-l/ubuntu-keyboard/trunk.
>

--
Hörmətlə,
Turan Mahmudov
E-mail: <email address hidden>
www.turanmahmudov.net

Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

That'd be great, the more layouts we can support the better :)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/control'
2--- debian/control 2014-08-13 22:17:53 +0000
3+++ debian/control 2014-10-30 15:05:36 +0000
4@@ -92,6 +92,14 @@
5 Description: Ubuntu on-screen keyboard data files - Arabic
6 Data files for the Ubuntu virtual keyboard - Arabic
7
8+Package: ubuntu-keyboard-azerbaijani
9+Architecture: any
10+Depends: ubuntu-keyboard (= ${binary:Version}),
11+ ${misc:Depends},
12+ ${shlibs:Depends},
13+Description: Ubuntu on-screen keyboard data files - Azerbaijani
14+ Data files for the Ubuntu virtual keyboard - Azerbaijani
15+
16 Package: ubuntu-keyboard-chinese-pinyin
17 Architecture: any
18 Depends: ubuntu-keyboard (= ${binary:Version}),
19
20=== added file 'debian/ubuntu-keyboard-azerbaijani.install'
21--- debian/ubuntu-keyboard-azerbaijani.install 1970-01-01 00:00:00 +0000
22+++ debian/ubuntu-keyboard-azerbaijani.install 2014-10-30 15:05:36 +0000
23@@ -0,0 +1,1 @@
24+usr/share/maliit/plugins/com/ubuntu/lib/az/
25
26=== added directory 'plugins/az'
27=== added file 'plugins/az/az.pro'
28--- plugins/az/az.pro 1970-01-01 00:00:00 +0000
29+++ plugins/az/az.pro 2014-10-30 15:05:36 +0000
30@@ -0,0 +1,9 @@
31+CONFIG += ordered
32+TEMPLATE = subdirs
33+SUBDIRS = \
34+ src \
35+ qml
36+
37+QMAKE_EXTRA_TARGETS += check
38+check.target = check
39+check.CONFIG = recursive
40
41=== added directory 'plugins/az/qml'
42=== added file 'plugins/az/qml/Keyboard_az.qml'
43--- plugins/az/qml/Keyboard_az.qml 1970-01-01 00:00:00 +0000
44+++ plugins/az/qml/Keyboard_az.qml 2014-10-30 15:05:36 +0000
45@@ -0,0 +1,98 @@
46+/*
47+ * Copyright 2013 Canonical Ltd.
48+ *
49+ * This program is free software; you can redistribute it and/or modify
50+ * it under the terms of the GNU Lesser General Public License as published by
51+ * the Free Software Foundation; version 3.
52+ *
53+ * This program is distributed in the hope that it will be useful,
54+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
55+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
56+ * GNU Lesser General Public License for more details.
57+ *
58+ * You should have received a copy of the GNU Lesser General Public License
59+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
60+ */
61+
62+import QtQuick 2.0
63+import "../../keys"
64+import "../../keys/key_constants.js" as UI
65+
66+KeyPad {
67+ anchors.fill: parent
68+
69+ content: c1
70+ symbols: "languages/Keyboard_symbols.qml"
71+
72+ Column {
73+ id: c1
74+ anchors.fill: parent
75+ spacing: 0
76+
77+ Row {
78+ anchors.horizontalCenter: parent.horizontalCenter;
79+ spacing: 0
80+
81+ CharKey { label: "q"; shifted: "Q"; extended: ["1"]; extendedShifted: ["1"] }
82+ CharKey { label: "ü"; shifted: "Ü"; extended: ["2", "w"]; extendedShifted: ["2", "W"] }
83+ CharKey { label: "e"; shifted: "E"; extended: ["3", "è", "é", "ê", "ë", "€"]; extendedShifted: ["3", "È","É", "Ê", "Ë", "€"] }
84+ CharKey { label: "r"; shifted: "R"; extended: ["4"]; extendedShifted: ["4"] }
85+ CharKey { label: "t"; shifted: "T"; extended: ["5", "þ"]; extendedShifted: ["5", "Þ"] }
86+ CharKey { label: "y"; shifted: "Y"; extended: ["6", "ý", "¥"]; extendedShifted: ["6", "Ý", "¥"] }
87+ CharKey { label: "u"; shifted: "U"; extended: ["7", "û","ù","ú"]; extendedShifted: ["7", "Û","Ù","Ú"] }
88+ CharKey { label: "i"; shifted: "İ"; extended: ["8", "î","ï","ì","í"]; extendedShifted: ["8", "Î","Ï","Ì","Í"] }
89+ CharKey { label: "o"; shifted: "O"; extended: ["9", "ô","ò","ó"]; extendedShifted: ["9", "Ô","Ò","Ó"] }
90+ CharKey { label: "p"; shifted: "P"; extended: ["0"]; extendedShifted: ["0"] }
91+ CharKey { label: "ö"; shifted: "Ö"; }
92+ CharKey { label: "ğ"; shifted: "Ğ"; }
93+ }
94+
95+ Row {
96+ anchors.horizontalCenter: parent.horizontalCenter;
97+ spacing: 0
98+
99+ CharKey { label: "a"; shifted: "A"; extended: ["ä","à","â","ª","á","å", "æ"]; extendedShifted: ["Ä","À","Â","ª","Á","Å","Æ"] }
100+ CharKey { label: "s"; shifted: "S"; extended: ["ß","$"]; extendedShifted: ["$"] }
101+ CharKey { label: "d"; shifted: "D"; extended: ["ð"]; extendedShifted: ["Ð"] }
102+ CharKey { label: "f"; shifted: "F"; }
103+ CharKey { label: "g"; shifted: "G"; }
104+ CharKey { label: "h"; shifted: "H"; }
105+ CharKey { label: "j"; shifted: "J"; }
106+ CharKey { label: "k"; shifted: "K"; }
107+ CharKey { label: "l"; shifted: "L"; }
108+ CharKey { label: "ı"; shifted: "I"; }
109+ CharKey { label: "ə"; shifted: "Ə"; }
110+ }
111+
112+ Row {
113+ anchors.horizontalCenter: parent.horizontalCenter;
114+ spacing: 0
115+
116+ ShiftKey {}
117+ CharKey { label: "z"; shifted: "Z"; }
118+ CharKey { label: "x"; shifted: "X"; }
119+ CharKey { label: "c"; shifted: "C"; }
120+ CharKey { label: "v"; shifted: "V"; }
121+ CharKey { label: "b"; shifted: "B"; }
122+ CharKey { label: "n"; shifted: "N"; extended: ["ñ"]; extendedShifted: ["Ñ"] }
123+ CharKey { label: "m"; shifted: "M"; }
124+ CharKey { label: "ç"; shifted: "Ç"; }
125+ CharKey { label: "ş"; shifted: "Ş"; }
126+ BackspaceKey {}
127+ }
128+
129+ Item {
130+ anchors.left: parent.left
131+ anchors.right: parent.right
132+
133+ height: panel.keyHeight + units.gu(UI.bottom_margin*2);
134+
135+ SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
136+ LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
137+ CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
138+ SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
139+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
140+ ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
141+ }
142+ } // column
143+}
144
145=== added file 'plugins/az/qml/Keyboard_az_email.qml'
146--- plugins/az/qml/Keyboard_az_email.qml 1970-01-01 00:00:00 +0000
147+++ plugins/az/qml/Keyboard_az_email.qml 2014-10-30 15:05:36 +0000
148@@ -0,0 +1,99 @@
149+/*
150+ * Copyright 2013 Canonical Ltd.
151+ *
152+ * This program is free software; you can redistribute it and/or modify
153+ * it under the terms of the GNU Lesser General Public License as published by
154+ * the Free Software Foundation; version 3.
155+ *
156+ * This program is distributed in the hope that it will be useful,
157+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
158+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
159+ * GNU Lesser General Public License for more details.
160+ *
161+ * You should have received a copy of the GNU Lesser General Public License
162+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
163+ */
164+
165+import QtQuick 2.0
166+import "../../keys"
167+import "../../keys/key_constants.js" as UI
168+
169+KeyPad {
170+ anchors.fill: parent
171+
172+ content: c1
173+ symbols: "languages/Keyboard_symbols.qml"
174+
175+ Column {
176+ id: c1
177+ anchors.fill: parent
178+ spacing: 0
179+
180+ Row {
181+ anchors.horizontalCenter: parent.horizontalCenter;
182+ spacing: 0
183+
184+ CharKey { label: "q"; shifted: "Q"; extended: ["1"]; extendedShifted: ["1"] }
185+ CharKey { label: "ü"; shifted: "Ü"; extended: ["2", "w"]; extendedShifted: ["2", "W"] }
186+ CharKey { label: "e"; shifted: "E"; extended: ["3", "è", "é", "ê", "ë", "€"]; extendedShifted: ["3", "È","É", "Ê", "Ë", "€"] }
187+ CharKey { label: "r"; shifted: "R"; extended: ["4"]; extendedShifted: ["4"] }
188+ CharKey { label: "t"; shifted: "T"; extended: ["5", "þ"]; extendedShifted: ["5", "Þ"] }
189+ CharKey { label: "y"; shifted: "Y"; extended: ["6", "ý", "¥"]; extendedShifted: ["6", "Ý", "¥"] }
190+ CharKey { label: "u"; shifted: "U"; extended: ["7", "û","ù","ú"]; extendedShifted: ["7", "Û","Ù","Ú"] }
191+ CharKey { label: "i"; shifted: "İ"; extended: ["8", "î","ï","ì","í"]; extendedShifted: ["8", "Î","Ï","Ì","Í"] }
192+ CharKey { label: "o"; shifted: "O"; extended: ["9", "ô","ò","ó"]; extendedShifted: ["9", "Ô","Ò","Ó"] }
193+ CharKey { label: "p"; shifted: "P"; extended: ["0"]; extendedShifted: ["0"] }
194+ CharKey { label: "ö"; shifted: "Ö"; }
195+ CharKey { label: "ğ"; shifted: "Ğ"; }
196+ }
197+
198+ Row {
199+ anchors.horizontalCenter: parent.horizontalCenter;
200+ spacing: 0
201+
202+ CharKey { label: "a"; shifted: "A"; extended: ["ä","à","â","á","ã","å"]; extendedShifted: ["Ä","À","Â","Á","Ã","Å"] }
203+ CharKey { label: "s"; shifted: "S"; extended: ["ß","$"]; extendedShifted: ["$"] }
204+ CharKey { label: "d"; shifted: "D"; extended: ["ð"]; extendedShifted: ["Ð"] }
205+ CharKey { label: "f"; shifted: "F"; }
206+ CharKey { label: "g"; shifted: "G"; }
207+ CharKey { label: "h"; shifted: "H"; }
208+ CharKey { label: "j"; shifted: "J"; }
209+ CharKey { label: "k"; shifted: "K"; }
210+ CharKey { label: "l"; shifted: "L"; }
211+ CharKey { label: "ı"; shifted: "I"; }
212+ CharKey { label: "ə"; shifted: "Ə"; }
213+ }
214+
215+ Row {
216+ anchors.horizontalCenter: parent.horizontalCenter;
217+ spacing: 0
218+
219+ ShiftKey {}
220+ CharKey { label: "z"; shifted: "Z"; }
221+ CharKey { label: "x"; shifted: "X"; }
222+ CharKey { label: "c"; shifted: "C"; }
223+ CharKey { label: "v"; shifted: "V"; }
224+ CharKey { label: "b"; shifted: "B"; }
225+ CharKey { label: "n"; shifted: "N"; extended: ["ñ"]; extendedShifted: ["Ñ"] }
226+ CharKey { label: "m"; shifted: "M"; }
227+ CharKey { label: "ç"; shifted: "Ç"; }
228+ CharKey { label: "ş"; shifted: "Ş"; }
229+ BackspaceKey {}
230+ }
231+
232+ Item {
233+ anchors.left: parent.left
234+ anchors.right: parent.right
235+
236+ height: panel.keyHeight + units.gu(UI.bottom_margin*2);
237+
238+ SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
239+ LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
240+ CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
241+ SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
242+ UrlKey { id: urlKey; label: ".com"; extended: [".az", ".co.uk", ".net", ".org", ".edu", ".gov", ".ac.uk"]; anchors.right: dotKey.left; height: parent.height; }
243+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
244+ ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
245+ }
246+ } // column
247+}
248
249=== added file 'plugins/az/qml/Keyboard_az_url.qml'
250--- plugins/az/qml/Keyboard_az_url.qml 1970-01-01 00:00:00 +0000
251+++ plugins/az/qml/Keyboard_az_url.qml 2014-10-30 15:05:36 +0000
252@@ -0,0 +1,98 @@
253+/*
254+ * Copyright 2013 Canonical Ltd.
255+ *
256+ * This program is free software; you can redistribute it and/or modify
257+ * it under the terms of the GNU Lesser General Public License as published by
258+ * the Free Software Foundation; version 3.
259+ *
260+ * This program is distributed in the hope that it will be useful,
261+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
262+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
263+ * GNU Lesser General Public License for more details.
264+ *
265+ * You should have received a copy of the GNU Lesser General Public License
266+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
267+ */
268+
269+import QtQuick 2.0
270+import "../../keys"
271+import "../../keys/key_constants.js" as UI
272+
273+KeyPad {
274+ anchors.fill: parent
275+
276+ content: c1
277+ symbols: "languages/Keyboard_symbols.qml"
278+
279+ Column {
280+ id: c1
281+ anchors.fill: parent
282+ spacing: 0
283+
284+ Row {
285+ anchors.horizontalCenter: parent.horizontalCenter;
286+ spacing: 0
287+
288+ CharKey { label: "q"; shifted: "Q"; extended: ["1"]; extendedShifted: ["1"] }
289+ CharKey { label: "ü"; shifted: "Ü"; extended: ["2", "w"]; extendedShifted: ["2", "W"] }
290+ CharKey { label: "e"; shifted: "E"; extended: ["3", "è", "é", "ê", "ë", "€"]; extendedShifted: ["3", "È","É", "Ê", "Ë", "€"] }
291+ CharKey { label: "r"; shifted: "R"; extended: ["4"]; extendedShifted: ["4"] }
292+ CharKey { label: "t"; shifted: "T"; extended: ["5", "þ"]; extendedShifted: ["5", "Þ"] }
293+ CharKey { label: "y"; shifted: "Y"; extended: ["6", "ý", "¥"]; extendedShifted: ["6", "Ý", "¥"] }
294+ CharKey { label: "u"; shifted: "U"; extended: ["7", "û","ù","ú"]; extendedShifted: ["7", "Û","Ù","Ú"] }
295+ CharKey { label: "i"; shifted: "İ"; extended: ["8", "î","ï","ì","í"]; extendedShifted: ["8", "Î","Ï","Ì","Í"] }
296+ CharKey { label: "o"; shifted: "O"; extended: ["9", "ô","ò","ó"]; extendedShifted: ["9", "Ô","Ò","Ó"] }
297+ CharKey { label: "p"; shifted: "P"; extended: ["0"]; extendedShifted: ["0"] }
298+ CharKey { label: "ö"; shifted: "Ö"; }
299+ CharKey { label: "ğ"; shifted: "Ğ"; }
300+ }
301+
302+ Row {
303+ anchors.horizontalCenter: parent.horizontalCenter;
304+ spacing: 0
305+
306+ CharKey { label: "a"; shifted: "A"; extended: ["ä","à","â","á","ã","å"]; extendedShifted: ["Ä","À","Â","Á","Ã","Å"] }
307+ CharKey { label: "s"; shifted: "S"; extended: ["ß","$"]; extendedShifted: ["$"] }
308+ CharKey { label: "d"; shifted: "D"; extended: ["ð"]; extendedShifted: ["Ð"] }
309+ CharKey { label: "f"; shifted: "F"; }
310+ CharKey { label: "g"; shifted: "G"; }
311+ CharKey { label: "h"; shifted: "H"; }
312+ CharKey { label: "j"; shifted: "J"; }
313+ CharKey { label: "k"; shifted: "K"; }
314+ CharKey { label: "l"; shifted: "L"; }
315+ CharKey { label: "ı"; shifted: "I"; }
316+ CharKey { label: "ə"; shifted: "Ə"; }
317+ }
318+
319+ Row {
320+ anchors.horizontalCenter: parent.horizontalCenter;
321+ spacing: 0
322+
323+ ShiftKey {}
324+ CharKey { label: "z"; shifted: "Z"; }
325+ CharKey { label: "x"; shifted: "X"; }
326+ CharKey { label: "c"; shifted: "C"; }
327+ CharKey { label: "v"; shifted: "V"; }
328+ CharKey { label: "b"; shifted: "B"; }
329+ CharKey { label: "n"; shifted: "N"; extended: ["ñ"]; extendedShifted: ["Ñ"] }
330+ CharKey { label: "m"; shifted: "M"; }
331+ CharKey { label: "ç"; shifted: "Ç"; }
332+ CharKey { label: "ş"; shifted: "Ş"; }
333+ BackspaceKey {}
334+ }
335+
336+ Item {
337+ anchors.left: parent.left
338+ anchors.right: parent.right
339+
340+ height: panel.keyHeight + units.gu(UI.bottom_margin*2);
341+
342+ SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
343+ LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
344+ CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
345+ UrlKey { id: urlKey; label: ".com"; extended: [".az", ".co.uk", ".net", ".org", ".edu", ".gov", ".ac.uk"]; anchors.right: dotKey.left; height: parent.height; }
346+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
347+ ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
348+ }
349+ } // column
350+}
351
352=== added file 'plugins/az/qml/Keyboard_az_url_search.qml'
353--- plugins/az/qml/Keyboard_az_url_search.qml 1970-01-01 00:00:00 +0000
354+++ plugins/az/qml/Keyboard_az_url_search.qml 2014-10-30 15:05:36 +0000
355@@ -0,0 +1,100 @@
356+/*
357+ * Copyright 2013 Canonical Ltd.
358+ *
359+ * This program is free software; you can redistribute it and/or modify
360+ * it under the terms of the GNU Lesser General Public License as published by
361+ * the Free Software Foundation; version 3.
362+ *
363+ * This program is distributed in the hope that it will be useful,
364+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
365+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
366+ * GNU Lesser General Public License for more details.
367+ *
368+ * You should have received a copy of the GNU Lesser General Public License
369+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
370+ */
371+
372+import QtQuick 2.0
373+import "../../keys"
374+import "../../keys/key_constants.js" as UI
375+
376+KeyPad {
377+ anchors.fill: parent
378+
379+ content: c1
380+ symbols: "languages/Keyboard_symbols.qml"
381+
382+ Column {
383+ id: c1
384+ anchors.fill: parent
385+
386+ spacing: 0
387+
388+ Row {
389+ anchors.horizontalCenter: parent.horizontalCenter;
390+ spacing: 0
391+
392+ CharKey { label: "q"; shifted: "Q"; extended: ["1"]; extendedShifted: ["1"] }
393+ CharKey { label: "ü"; shifted: "Ü"; extended: ["2", "w"]; extendedShifted: ["2", "W"] }
394+ CharKey { label: "e"; shifted: "E"; extended: ["3", "è", "é", "ê", "ë", "€"]; extendedShifted: ["3", "È","É", "Ê", "Ë", "€"] }
395+ CharKey { label: "r"; shifted: "R"; extended: ["4"]; extendedShifted: ["4"] }
396+ CharKey { label: "t"; shifted: "T"; extended: ["5", "þ"]; extendedShifted: ["5", "Þ"] }
397+ CharKey { label: "y"; shifted: "Y"; extended: ["6", "ý", "¥"]; extendedShifted: ["6", "Ý", "¥"] }
398+ CharKey { label: "u"; shifted: "U"; extended: ["7", "û","ù","ú"]; extendedShifted: ["7", "Û","Ù","Ú"] }
399+ CharKey { label: "i"; shifted: "İ"; extended: ["8", "î","ï","ì","í"]; extendedShifted: ["8", "Î","Ï","Ì","Í"] }
400+ CharKey { label: "o"; shifted: "O"; extended: ["9", "ô","ò","ó"]; extendedShifted: ["9", "Ô","Ò","Ó"] }
401+ CharKey { label: "p"; shifted: "P"; extended: ["0"]; extendedShifted: ["0"] }
402+ CharKey { label: "ö"; shifted: "Ö"; }
403+ CharKey { label: "ğ"; shifted: "Ğ"; }
404+ }
405+
406+ Row {
407+ anchors.horizontalCenter: parent.horizontalCenter;
408+ spacing: 0
409+
410+ CharKey { label: "a"; shifted: "A"; extended: ["ä","à","â","á","ã","å"]; extendedShifted: ["Ä","À","Â","Á","Ã","Å"] }
411+ CharKey { label: "s"; shifted: "S"; extended: ["ß","$"]; extendedShifted: ["$"] }
412+ CharKey { label: "d"; shifted: "D"; extended: ["ð"]; extendedShifted: ["Ð"] }
413+ CharKey { label: "f"; shifted: "F"; }
414+ CharKey { label: "g"; shifted: "G"; }
415+ CharKey { label: "h"; shifted: "H"; }
416+ CharKey { label: "j"; shifted: "J"; }
417+ CharKey { label: "k"; shifted: "K"; }
418+ CharKey { label: "l"; shifted: "L"; }
419+ CharKey { label: "ı"; shifted: "I"; }
420+ CharKey { label: "ə"; shifted: "Ə"; }
421+ }
422+
423+ Row {
424+ anchors.horizontalCenter: parent.horizontalCenter;
425+ spacing: 0
426+
427+ ShiftKey {}
428+ CharKey { label: "z"; shifted: "Z"; }
429+ CharKey { label: "x"; shifted: "X"; }
430+ CharKey { label: "c"; shifted: "C"; }
431+ CharKey { label: "v"; shifted: "V"; }
432+ CharKey { label: "b"; shifted: "B"; }
433+ CharKey { label: "n"; shifted: "N"; extended: ["ñ"]; extendedShifted: ["Ñ"] }
434+ CharKey { label: "m"; shifted: "M"; }
435+ CharKey { label: "ç"; shifted: "Ç"; }
436+ CharKey { label: "ş"; shifted: "Ş"; }
437+ BackspaceKey {}
438+ }
439+
440+ Item {
441+ anchors.left: parent.left
442+ anchors.right: parent.right
443+
444+ height: panel.keyHeight + units.gu(UI.bottom_margin*2);
445+
446+ SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
447+ LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
448+ CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
449+ SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
450+ UrlKey { id: urlKey; label: ".com"; extended: [".az", ".co.uk", ".net", ".org", ".edu", ".gov", ".ac.uk"]; anchors.right: dotKey.left; height: parent.height; }
451+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
452+ ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
453+ }
454+ } // column
455+}
456
457=== added file 'plugins/az/qml/qml.pro'
458--- plugins/az/qml/qml.pro 1970-01-01 00:00:00 +0000
459+++ plugins/az/qml/qml.pro 2014-10-30 15:05:36 +0000
460@@ -0,0 +1,20 @@
461+TOP_BUILDDIR = $$OUT_PWD/../../..
462+TOP_SRCDIR = $$PWD/../../..
463+
464+include($${TOP_SRCDIR}/config.pri)
465+
466+TARGET = dummy
467+TEMPLATE = lib
468+
469+lang_az.path = "$$UBUNTU_KEYBOARD_LIB_DIR/az/"
470+lang_az.files = *.qml *.js
471+
472+INSTALLS += lang_az
473+
474+# for QtCreator
475+OTHER_FILES += \
476+ Keyboard_az.qml \
477+ Keyboard_az_email.qml \
478+ Keyboard_az_url.qml \
479+ Keyboard_az_url_search.qml
480+
481
482=== added directory 'plugins/az/src'
483=== added file 'plugins/az/src/azerbaijaniplugin.h'
484--- plugins/az/src/azerbaijaniplugin.h 1970-01-01 00:00:00 +0000
485+++ plugins/az/src/azerbaijaniplugin.h 2014-10-30 15:05:36 +0000
486@@ -0,0 +1,27 @@
487+#ifndef AZERBAIJANIPLUGIN_H
488+#define AZERBAIJANIPLUGIN_H
489+
490+#include <QObject>
491+#include "languageplugininterface.h"
492+#include "westernlanguagesplugin.h"
493+
494+//#include <presage.h>
495+
496+class AzerbaijaniPlugin : public WesternLanguagesPlugin
497+{
498+ Q_OBJECT
499+ Q_INTERFACES(LanguagePluginInterface)
500+ Q_PLUGIN_METADATA(IID "org.qt-project.Qt.Examples.AzerbaijaniPlugin" FILE "azerbaijaniplugin.json")
501+
502+public:
503+ explicit AzerbaijaniPlugin(QObject* parent = 0)
504+ : WesternLanguagesPlugin(parent)
505+ {
506+ }
507+
508+ virtual ~AzerbaijaniPlugin()
509+ {
510+ }
511+};
512+
513+#endif // AZERBAIJANIPLUGIN_H
514
515=== added file 'plugins/az/src/azerbaijaniplugin.json'
516--- plugins/az/src/azerbaijaniplugin.json 1970-01-01 00:00:00 +0000
517+++ plugins/az/src/azerbaijaniplugin.json 2014-10-30 15:05:36 +0000
518@@ -0,0 +1,7 @@
519+{
520+ "IID": "org.qt-project.Qt.Examples.AzerbaijaniPlugin",
521+ "MetaData": {
522+ },
523+ "className": "AzerbaijaniPlugin",
524+ "debug": true
525+}
526
527=== added file 'plugins/az/src/database_az.db'
528Binary files plugins/az/src/database_az.db 1970-01-01 00:00:00 +0000 and plugins/az/src/database_az.db 2014-10-30 15:05:36 +0000 differ
529=== added file 'plugins/az/src/src.pro'
530--- plugins/az/src/src.pro 1970-01-01 00:00:00 +0000
531+++ plugins/az/src/src.pro 2014-10-30 15:05:36 +0000
532@@ -0,0 +1,47 @@
533+TOP_BUILDDIR = $$OUT_PWD/../../..
534+TOP_SRCDIR = $$PWD/../../..
535+
536+include($${TOP_SRCDIR}/config.pri)
537+
538+TEMPLATE = lib
539+CONFIG += plugin
540+QT += widgets
541+INCLUDEPATH += \
542+ $${TOP_SRCDIR}/src/ \
543+ $${TOP_SRCDIR}/src/lib/ \
544+ $${TOP_SRCDIR}/src/lib/logic/
545+ $${TOP_SRCDIR}/plugins/westernsupport
546+
547+HEADERS = \
548+ azerbaijaniplugin.h
549+
550+TARGET = $$qtLibraryTarget(azerbaijaniplugin)
551+
552+EXAMPLE_FILES = azerbaijaniplugin.json
553+
554+# generate database for presage:
555+PLUGIN_INSTALL_PATH = $${UBUNTU_KEYBOARD_LIB_DIR}/az/
556+
557+lang_db_az.commands += \
558+ rm -f $$PWD/database_az.db && \
559+ text2ngram -n 1 -l -f sqlite -o $$PWD/database_az.db $$PWD/the_picture_of_dorian_gray.txt && \
560+ text2ngram -n 2 -l -f sqlite -o $$PWD/database_az.db $$PWD/the_picture_of_dorian_gray.txt && \
561+ text2ngram -n 3 -l -f sqlite -o $$PWD/database_az.db $$PWD/the_picture_of_dorian_gray.txt
562+lang_db_az.files += $$PWD/database_az.db
563+
564+lang_db_az_install.files += $$PWD/database_az.db
565+lang_db_az_install.path = $$PLUGIN_INSTALL_PATH
566+
567+QMAKE_EXTRA_TARGETS += lang_db_az lang_db_az_install
568+
569+target.path = $$PLUGIN_INSTALL_PATH
570+INSTALLS += target lang_db_az_install
571+
572+OTHER_FILES += \
573+ the_picture_of_dorian_gray.txt \
574+ azerbaijaniplugin.json
575+
576+LIBS += $${TOP_BUILDDIR}/plugins/plugins/libwesternsupport.a -lpresage -lhunspell
577+
578+INCLUDEPATH += $$PWD/../../westernsupport
579+DEPENDPATH += $$PWD/../../westernsupport
580
581=== added file 'plugins/az/src/the_picture_of_dorian_gray.txt'
582=== added directory 'plugins/az/tests'
583=== modified file 'plugins/plugins.pro'
584--- plugins/plugins.pro 2014-07-28 18:19:04 +0000
585+++ plugins/plugins.pro 2014-10-30 15:05:36 +0000
586@@ -3,6 +3,7 @@
587 SUBDIRS = \
588 westernsupport \
589 ar \
590+ az \
591 cs \
592 da \
593 de \
594
595=== modified file 'po/ubuntu-keyboard.pot'
596--- po/ubuntu-keyboard.pot 2014-08-28 16:27:04 +0000
597+++ po/ubuntu-keyboard.pot 2014-10-30 15:05:36 +0000
598@@ -26,73 +26,77 @@
599 msgstr ""
600
601 #: ../qml/keys/LanguageMenu.qml:71
602+msgid "Azerbaijani"
603+msgstr ""
604+
605+#: ../qml/keys/LanguageMenu.qml:72
606 msgid "Czech"
607 msgstr ""
608
609-#: ../qml/keys/LanguageMenu.qml:72
610+#: ../qml/keys/LanguageMenu.qml:73
611 msgid "Danish"
612 msgstr ""
613
614-#: ../qml/keys/LanguageMenu.qml:73
615+#: ../qml/keys/LanguageMenu.qml:74
616 msgid "German"
617 msgstr ""
618
619-#: ../qml/keys/LanguageMenu.qml:74
620+#: ../qml/keys/LanguageMenu.qml:75
621 msgid "English"
622 msgstr ""
623
624-#: ../qml/keys/LanguageMenu.qml:75
625+#: ../qml/keys/LanguageMenu.qml:76
626 msgid "Spanish"
627 msgstr ""
628
629-#: ../qml/keys/LanguageMenu.qml:76
630+#: ../qml/keys/LanguageMenu.qml:77
631 msgid "Finnish"
632 msgstr ""
633
634-#: ../qml/keys/LanguageMenu.qml:77
635+#: ../qml/keys/LanguageMenu.qml:78
636 msgid "French"
637 msgstr ""
638
639-#: ../qml/keys/LanguageMenu.qml:78
640+#: ../qml/keys/LanguageMenu.qml:79
641 msgid "Hebrew"
642 msgstr ""
643
644-#: ../qml/keys/LanguageMenu.qml:79
645+#: ../qml/keys/LanguageMenu.qml:80
646 msgid "Hungarian"
647 msgstr ""
648
649-#: ../qml/keys/LanguageMenu.qml:80
650+#: ../qml/keys/LanguageMenu.qml:81
651 msgid "Italian"
652 msgstr ""
653
654-#: ../qml/keys/LanguageMenu.qml:81
655+#: ../qml/keys/LanguageMenu.qml:82
656 msgid "Dutch"
657 msgstr ""
658
659-#: ../qml/keys/LanguageMenu.qml:82
660+#: ../qml/keys/LanguageMenu.qml:83
661 msgid "Polish"
662 msgstr ""
663
664-#: ../qml/keys/LanguageMenu.qml:83
665+#: ../qml/keys/LanguageMenu.qml:84
666 msgid "Portuguese"
667 msgstr ""
668
669-#: ../qml/keys/LanguageMenu.qml:84
670+#: ../qml/keys/LanguageMenu.qml:85
671 msgid "Russian"
672 msgstr ""
673
674-#: ../qml/keys/LanguageMenu.qml:85
675+#: ../qml/keys/LanguageMenu.qml:86
676 msgid "Serbian"
677 msgstr ""
678
679-#: ../qml/keys/LanguageMenu.qml:86
680+#: ../qml/keys/LanguageMenu.qml:87
681 msgid "Swedish"
682 msgstr ""
683
684-#: ../qml/keys/LanguageMenu.qml:87
685+#: ../qml/keys/LanguageMenu.qml:88
686 msgid "Chinese - Pinyin"
687 msgstr ""
688
689-#: ../qml/keys/LanguageMenu.qml:90
690+#: ../qml/keys/LanguageMenu.qml:91
691 msgid "Language: "
692 msgstr ""
693
694=== modified file 'qml/KeyboardContainer.qml'
695--- qml/KeyboardContainer.qml 2014-09-09 11:26:52 +0000
696+++ qml/KeyboardContainer.qml 2014-10-30 15:05:36 +0000
697@@ -119,6 +119,7 @@
698 {
699 var supportedLocales = [
700 "ar",
701+ "az",
702 "cs",
703 "da",
704 "de",
705@@ -152,6 +153,8 @@
706
707 if (language === "ar")
708 return "lib/ar/Keyboard_ar.qml";
709+ if (language === "az")
710+ return "lib/az/Keyboard_az.qml";
711 if (language === "cs")
712 return "lib/cs/Keyboard_cs.qml";
713 if (language === "da")
714
715=== modified file 'qml/keys/LanguageMenu.qml'
716--- qml/keys/LanguageMenu.qml 2014-09-15 09:39:19 +0000
717+++ qml/keys/LanguageMenu.qml 2014-10-30 15:05:36 +0000
718@@ -72,6 +72,7 @@
719 function languageIdToName(languageId)
720 {
721 if (languageId == "ar") return i18n.tr("Arabic");
722+ if (languageId == "az") return i18n.tr("Azerbaijani");
723 if (languageId == "cs") return i18n.tr("Czech");
724 if (languageId == "da") return i18n.tr("Danish");
725 if (languageId == "de") return i18n.tr("German");
726
727=== modified file 'src/lib/logic/wordengine.cpp'
728--- src/lib/logic/wordengine.cpp 2014-08-07 17:04:01 +0000
729+++ src/lib/logic/wordengine.cpp 2014-10-30 15:05:36 +0000
730@@ -357,6 +357,8 @@
731
732 if (languageId == "ar")
733 d->loadPlugin("libarabicplugin.so", "ar");
734+ else if (languageId == "az")
735+ d->loadPlugin("libazerbaijaniplugin.so", "az");
736 else if (languageId == "cs")
737 d->loadPlugin("libczechplugin.so", "cs");
738 else if (languageId == "da")

Subscribers

People subscribed via source and target branches