From Fedora Project Wiki
 
(46 intermediate revisions by 4 users not shown)
Line 2: Line 2:


== Summary ==
== Summary ==
The goal is to integrate ibus into gnome-shell and a gnome-shell indicator provides both keyboard and input method menu.
Gnome 3.6 will provide support for input methods using IBus, in addition to keyboard layout configuration.
This feature involves GNOME3 desktop.
 
The integration includes a gnome-shell input indicator combining keyboard layouts and input methods selection, and also setup of input methods inside gnome-control-center.
 
For this to be a smooth transition for Fedora users, various changes behind the scenes and testing are required, and this is covered by this feature.


== Owner ==
== Owner ==
Line 11: Line 14:
== Current status ==
== Current status ==
* Targeted release: [[Releases/18 | Fedora 18 ]]  
* Targeted release: [[Releases/18 | Fedora 18 ]]  
* Last updated: 2012-07-17
* Last updated: 2012-10-04
* Percentage of completion: 40%
* Percentage of completion: 100%
 
The bulk of the integration patches have been merged upstream for GNOME 3.5.91, and is now in rawhide.


The bulk of the integration patches have been merged upstream for GNOME 3.5.4, and will appear in rawhide sometime this week.
See http://live.gnome.org/ThreePointFive/Features/IBus for more detailed upstream status.
See http://live.gnome.org/ThreePointFive/Features/IBus for more detailed status.


== Detailed Description ==
== Detailed Description ==
The ibus UI for gnome-shell has been provided as ibus-gnome3 package since Fedora 16 and now is the time to integrate the ibus UI into gnome-shell.
* gnome-settings-daemon will start ibus-daemon in gnome-shell, rather than imsettings
* users will be able to choose input methods in gnome-control-center along with keyboard layouts
* gnome-shell input indicator will show the current keyboard layout or input method in use if they have been added
* basic hotkey configuration for switch layouts and input methods will also be handled by gnome-control-center
* keyboard layout variations will partially be handled in gnome-control-center, and partially in gnome-tweak-tool
* default IMEs and XKBs will be configured in gnome-initial-setup
* IME switcher UI (likes Fedora 17 one) will be implemented in gnome-settings-daemon for gnome-shell
* IME list will be hard-coded in gnome-control-center
* The number of IME menu will be restricted to one or two.
 
The new indicator extends and replaces the optional experimental ibus-gnome3 gnome-shell extension that has been in Fedora from F16.


== Benefit to Fedora ==
== Benefit to Fedora ==
Currently ibus-gnome3 package is not enabled by default and users need to enable the ibus indicator by manual in Fedora 17. When the ibus integration is done in gnome-shell, the ibus indicator will be available without users' operation.
Users will have native gnome-shell support for ibus input methods seamlessly integrated with the current gnome support for keyboard layouts.
 
With the ibus integration in gnome-shell, ibus input methods will be listed in the control-center region panel and in the gnome-shell input indicator, without having to use the separate ibus-setup tool.


== Scope ==
== Scope ==
gnome-shell provides the ibus menu by default.
* gnome-shell input indicator will include input method support (done)
ibus does not run ibus panel on gnome-shell.
* in gnome-shell ibus will no longer runs an applet on the panel (done)
gnome-control-center provides ibus configuration.
* gnome-control-center will provide ibus configuration (done)
gnome-settings-daemon launches ibus-daemon and switches engines.
* gnome-settings-daemon launches ibus-daemon and switches engines (done)
 
* gnome-control-center will provide basic configuration for hotkeys for changing keyboard layout and input methods (done)
FIXMEs:
* ibus-setup will no longer be accessible from gnome-shell GUI (done)
* hotkey handling (locale based?)
* individual input method setup UI will be accessible from gnome-control-center (done)
* default IMEs
* imsettings will no longer run under gnome-shell (done)
* im-chooser will no longer run under gnome-shell (done)


== How To Test ==
== How To Test ==
Line 42: Line 59:
Test that using Anthy to enter Japanese text works in gedit, firefox, and in gnome-shell itself, e.g. in the search entry.
Test that using Anthy to enter Japanese text works in gedit, firefox, and in gnome-shell itself, e.g. in the search entry.


Test that switching between keyboard layouts such as en_Us and input methods such as anthy works using both the shell menu and keyboard shortcuts.
Test that switching between keyboard layouts such as US layout and input methods such as Anthy works using both the shell menu and keyboard shortcuts.


Verify that the keyboard shortcuts can be changed in the control-center panel.
Verify that the keyboard shortcuts can be changed in the control-center panel.


== User Experience ==
== User Experience ==
gnome-shell shows ibus indicator is available by default.
gnome-shell input indicator supports input methods that have been configured.
gnome-control-center shows ibus configurations by default.
 
gnome-control-center list available ibus input methods which can be selected for use.
 
Users will be able to configure hotkeys if they wish to switch keyboard layout or input method.
 
In Fedora we would also like to:
* setup input method hotkey for CIJK users
* setup default IMEs for CIJK users


== Dependencies ==
== Dependencies ==
See https://live.gnome.org/ThreePointFive/Features/IBus
See https://live.gnome.org/ThreePointFive/Features/IBus for details on status of upstream patches.


* gnome-shell depends on ibus libraries
Some changes are also needed in ibus upstream to complete the integration.
* gnome-control-center depends on ibus libraries
* ibus-setup won't be accessible from GUI in gnome-shell, but input methods will be configurable from the control-center


Q: so can you clarify in our feature page, what features are approved/agreed to include in 3.6 and what features are proposed but not yet approved/agreed?<br />
(Q&A comments previously here were moved to the [[Talk:Features/GNOMEIBusIntegration|Talk page]].)
A: Currently approved patches are gnome-shell and switching engines by g-s-d. Running ibus-daemon and g-c-c is under the review.<br />


Q: which features of the above contains ibus-setup replacement say?<br />
== Contingency Plan ==
A: g-c-c.<br />
gnome-3.6 is planning to support ibus, but in the worst case ibus support could be disabled from gnome-settings-daemon, imsettings could be reenabled for gnome, and ibus reverted to using the ibus upstream applet in the gnome panel.


Q: When gnome-settings-daemon is implemented to run ibus-daemon
The item will be postponed to GNOME 3.8 (Fedora 19) below.  
* if imsettings disables to run ibus-daemon
* gnome-initial-setup provides the default IMEs and XKBs list.
* im-chooser can be run by users
* if any UIs provide the option to disable ibus-daemon
* if ibus-daemon runs on any locales
* if ibus-daemon runs without ibus engines
* if imsettings needs to be run to export QT_IM_MODULE and XMODIFIERS<br/>
A: As of 3.5.4, gnome-settings-daemon will only activate ibus-daemon when needed - ie when the list of active input sources contains input methods requiring IBus. If you don't want ibus-daemon to run, you can just not add any such input sources to the list. Or you can uninstall ibus-daemon. Users can run im-chooser if they want to, but it will probably interfere with the Input Sources UI in the control-center.


== Contingency Plan ==
Currently ibus-anthy shows the IME menus. Probably we'll evaluate the menus again in the next release.
ibus panel is back and enables ibus-daemon does not connect to gnome-settings-daemon.
* gnome-shell menu provides IME menus


== Documentation ==
== Documentation ==
Line 83: Line 98:
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
* IBus menu is now available on GNOME3 desktop if IBus is enabled.
* Input method support (based on IBus) has been integrated into GNOME3.


== Comments and Discussion ==
== Comments and Discussion ==
Line 89: Line 104:




[[Category:FeatureReadyForFesco]]
[[Category:FeatureAcceptedF18]]
<!-- When your feature page is completed and ready for review -->
<!-- When your feature page is completed and ready for review -->
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->

Latest revision as of 06:50, 4 October 2012

GNOME IBus Integration

Summary

Gnome 3.6 will provide support for input methods using IBus, in addition to keyboard layout configuration.

The integration includes a gnome-shell input indicator combining keyboard layouts and input methods selection, and also setup of input methods inside gnome-control-center.

For this to be a smooth transition for Fedora users, various changes behind the scenes and testing are required, and this is covered by this feature.

Owner

Current status

  • Targeted release: Fedora 18
  • Last updated: 2012-10-04
  • Percentage of completion: 100%

The bulk of the integration patches have been merged upstream for GNOME 3.5.91, and is now in rawhide.

See http://live.gnome.org/ThreePointFive/Features/IBus for more detailed upstream status.

Detailed Description

  • gnome-settings-daemon will start ibus-daemon in gnome-shell, rather than imsettings
  • users will be able to choose input methods in gnome-control-center along with keyboard layouts
  • gnome-shell input indicator will show the current keyboard layout or input method in use if they have been added
  • basic hotkey configuration for switch layouts and input methods will also be handled by gnome-control-center
  • keyboard layout variations will partially be handled in gnome-control-center, and partially in gnome-tweak-tool
  • default IMEs and XKBs will be configured in gnome-initial-setup
  • IME switcher UI (likes Fedora 17 one) will be implemented in gnome-settings-daemon for gnome-shell
  • IME list will be hard-coded in gnome-control-center
  • The number of IME menu will be restricted to one or two.

The new indicator extends and replaces the optional experimental ibus-gnome3 gnome-shell extension that has been in Fedora from F16.

Benefit to Fedora

Users will have native gnome-shell support for ibus input methods seamlessly integrated with the current gnome support for keyboard layouts.

With the ibus integration in gnome-shell, ibus input methods will be listed in the control-center region panel and in the gnome-shell input indicator, without having to use the separate ibus-setup tool.

Scope

  • gnome-shell input indicator will include input method support (done)
  • in gnome-shell ibus will no longer runs an applet on the panel (done)
  • gnome-control-center will provide ibus configuration (done)
  • gnome-settings-daemon launches ibus-daemon and switches engines (done)
  • gnome-control-center will provide basic configuration for hotkeys for changing keyboard layout and input methods (done)
  • ibus-setup will no longer be accessible from gnome-shell GUI (done)
  • individual input method setup UI will be accessible from gnome-control-center (done)
  • imsettings will no longer run under gnome-shell (done)
  • im-chooser will no longer run under gnome-shell (done)

How To Test

Install IBus and some engines, eg ibus-anthy.

Open gnome-control-center, region panel, input sources tab. Use the + button and add Anthy to the list of active input sources.

Verify that Anthy is now listed in the gnome-shell keyboard menu and can be activated from there.

Test that using Anthy to enter Japanese text works in gedit, firefox, and in gnome-shell itself, e.g. in the search entry.

Test that switching between keyboard layouts such as US layout and input methods such as Anthy works using both the shell menu and keyboard shortcuts.

Verify that the keyboard shortcuts can be changed in the control-center panel.

User Experience

gnome-shell input indicator supports input methods that have been configured.

gnome-control-center list available ibus input methods which can be selected for use.

Users will be able to configure hotkeys if they wish to switch keyboard layout or input method.

In Fedora we would also like to:

  • setup input method hotkey for CIJK users
  • setup default IMEs for CIJK users

Dependencies

See https://live.gnome.org/ThreePointFive/Features/IBus for details on status of upstream patches.

Some changes are also needed in ibus upstream to complete the integration.

(Q&A comments previously here were moved to the Talk page.)

Contingency Plan

gnome-3.6 is planning to support ibus, but in the worst case ibus support could be disabled from gnome-settings-daemon, imsettings could be reenabled for gnome, and ibus reverted to using the ibus upstream applet in the gnome panel.

The item will be postponed to GNOME 3.8 (Fedora 19) below.

  • gnome-initial-setup provides the default IMEs and XKBs list.

Currently ibus-anthy shows the IME menus. Probably we'll evaluate the menus again in the next release.

  • gnome-shell menu provides IME menus

Documentation

ibus-xkb is also integrated for non-GNOME desktop newly. ibus-xkb provides preloaded engines, all XKB layout, variant ibus engines, frequently used input method list on ibus-setup, customizable trigger key on ibus-setup.

Release Notes

  • Input method support (based on IBus) has been integrated into GNOME3.

Comments and Discussion