Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:13.1:Update
mozc
fix-initial-input-mode.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File fix-initial-input-mode.patch of Package mozc
diff -ru unix.org/ibus/property_handler.cc unix/ibus/property_handler.cc --- unix.org/ibus/property_handler.cc 2013-10-29 02:17:24.898870371 +0900 +++ unix/ibus/property_handler.cc 2013-10-29 02:48:55.617344149 +0900 @@ -84,8 +84,27 @@ client_(client), translator_(translator), original_composition_mode_(kMozcEngineInitialCompositionMode), +#if IBUS_CHECK_VERSION(1, 5, 0) + is_activated_(false), +#else is_activated_(true), +#endif is_disabled_(false) { + commands::KeyEvent key; + if (is_activated_) { + key.set_special_key(mozc::commands::KeyEvent::ON); + } else { + key.set_special_key(mozc::commands::KeyEvent::OFF); + } + key.set_activated(is_activated_); + key.set_mode(original_composition_mode_); + commands::Output output; + if (client_->SendKey(key, &output)) { + original_composition_mode_ = output.status().mode(); + is_activated_ = output.status().activated(); + } else { + LOG(ERROR) << "SendKey failed"; + } AppendCompositionPropertyToPanel(); #ifndef OS_CHROMEOS @@ -133,6 +152,9 @@ IBusPropList *sub_prop_list = ibus_prop_list_new(); // Create items for the radio menu. + const commands::CompositionMode initial_mode = is_activated_ ? + original_composition_mode_ : + kMozcEnginePropertyIMEOffState->composition_mode; string icon_path_for_panel; const char *mode_symbol = NULL; for (size_t i = 0; i < kMozcEnginePropertiesSize; ++i) { @@ -140,7 +162,7 @@ IBusText *label = ibus_text_new_from_string( translator_->MaybeTranslate(entry.label).c_str()); IBusPropState state = PROP_STATE_UNCHECKED; - if (entry.composition_mode == kMozcEngineInitialCompositionMode) { + if (entry.composition_mode == initial_mode) { state = PROP_STATE_CHECKED; icon_path_for_panel = GetIconPath(entry.icon); mode_symbol = entry.label_for_panel; Only in unix/ibus: property_handler.cc.orig
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor