Skip to content

Commit 044ba9f

Browse files
authored
Remove device_profile (#131)
* Remove device_profile * Remove flutter:: from key_event_channel.cc * Remove system_info dependency
1 parent 79020af commit 044ba9f

File tree

5 files changed

+36
-54
lines changed

5 files changed

+36
-54
lines changed

shell/platform/tizen/BUILD.gn

-1
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,6 @@ template("embedder_for_profile") {
111111
"base-utils-i18n",
112112
"capi-appfw-application",
113113
"capi-base-common",
114-
"capi-system-info",
115114
"capi-system-system-settings",
116115
"dlog",
117116
"ecore",

shell/platform/tizen/channels/key_event_channel.cc

+2-2
Original file line numberDiff line numberDiff line change
@@ -258,8 +258,8 @@ void KeyEventChannel::SendKeyEvent(Ecore_Event_Key* key,
258258
channel_->Send(event, [callback = std::move(callback)](const uint8_t* reply,
259259
size_t reply_size) {
260260
if (reply != nullptr) {
261-
auto decoded = flutter::JsonMessageCodec::GetInstance().DecodeMessage(
262-
reply, reply_size);
261+
auto decoded =
262+
JsonMessageCodec::GetInstance().DecodeMessage(reply, reply_size);
263263
bool handled = (*decoded)[kHandledKey].GetBool();
264264
callback(handled);
265265
}

shell/platform/tizen/channels/text_input_channel.cc

+12-10
Original file line numberDiff line numberDiff line change
@@ -424,13 +424,13 @@ bool TextInputChannel::FilterEvent(Ecore_Event_Key* event) {
424424
imf_event.dev_name = is_ime ? "ime" : "";
425425
imf_event.keycode = event->keycode;
426426

427+
#ifdef WEARABLE_PROFILE
428+
// FIXME: Only for wearable.
427429
if (is_ime && strcmp(event->key, "Select") == 0) {
428-
if (engine_->device_profile == DeviceProfile::kWearable) {
429-
// FIXME: for wearable
430-
in_select_mode_ = true;
431-
FT_LOGI("Set select mode[true]");
432-
}
430+
in_select_mode_ = true;
431+
FT_LOGI("Set select mode[true]");
433432
}
433+
#endif
434434

435435
if (is_ime) {
436436
if (!strcmp(event->key, "Left") || !strcmp(event->key, "Right") ||
@@ -457,24 +457,26 @@ bool TextInputChannel::FilterEvent(Ecore_Event_Key* event) {
457457
last_handled_ecore_event_keyname_ = event->keyname;
458458
}
459459

460-
if (!handled && !strcmp(event->key, "Return") && in_select_mode_ &&
461-
engine_->device_profile == DeviceProfile::kWearable) {
460+
#ifdef WEARABLE_PROFILE
461+
if (!handled && !strcmp(event->key, "Return") && in_select_mode_) {
462462
in_select_mode_ = false;
463463
handled = true;
464464
FT_LOGI("Set select mode[false]");
465465
}
466+
#endif
466467

467468
return handled;
468469
}
469470

470471
void TextInputChannel::NonIMFFallback(Ecore_Event_Key* event) {
471-
// For mobile, fix me!
472-
if (engine_->device_profile == DeviceProfile::kMobile &&
473-
edit_status_ == EditStatus::kPreeditEnd) {
472+
#ifdef MOBILE_PROFILE
473+
// FIXME: Only for mobile.
474+
if (edit_status_ == EditStatus::kPreeditEnd) {
474475
SetEditStatus(EditStatus::kNone);
475476
FT_LOGW("Ignore key-event[%s]!", event->keyname);
476477
return;
477478
}
479+
#endif
478480

479481
bool select = !strcmp(event->key, "Select");
480482
bool is_filtered = true;

shell/platform/tizen/flutter_tizen_engine.cc

+22-37
Original file line numberDiff line numberDiff line change
@@ -5,43 +5,35 @@
55

66
#include "flutter_tizen_engine.h"
77

8-
#include <system_info.h>
9-
108
#include <filesystem>
119
#include <string>
1210
#include <vector>
1311

1412
#include "flutter/shell/platform/tizen/tizen_log.h"
1513

14+
namespace flutter {
15+
16+
namespace {
17+
1618
// Unique number associated with platform tasks.
17-
static constexpr size_t kPlatformTaskRunnerIdentifier = 1;
19+
constexpr size_t kPlatformTaskRunnerIdentifier = 1;
1820
#ifdef TIZEN_RENDERER_EVAS_GL
19-
static constexpr size_t kRenderTaskRunnerIdentifier = 2;
21+
constexpr size_t kRenderTaskRunnerIdentifier = 2;
2022
#endif
2123

22-
namespace flutter {
24+
#if defined(MOBILE_PROFILE)
25+
constexpr double kProfileFactor = 0.7;
26+
#elif defined(WEARABLE_PROFILE)
27+
constexpr double kProfileFactor = 0.4;
28+
#elif defined(TV_PROFILE)
29+
constexpr double kProfileFactor = 2.0;
30+
#else
31+
constexpr double kProfileFactor = 1.0;
32+
#endif
2333

24-
static DeviceProfile GetDeviceProfile() {
25-
char* feature_profile;
26-
system_info_get_platform_string("http://tizen.org/feature/profile",
27-
&feature_profile);
28-
std::string profile(feature_profile);
29-
free(feature_profile);
30-
31-
if (profile == "mobile") {
32-
return DeviceProfile::kMobile;
33-
} else if (profile == "wearable") {
34-
return DeviceProfile::kWearable;
35-
} else if (profile == "tv") {
36-
return DeviceProfile::kTV;
37-
} else if (profile == "common") {
38-
return DeviceProfile::kCommon;
39-
}
40-
return DeviceProfile::kUnknown;
41-
}
34+
} // namespace
4235

43-
FlutterTizenEngine::FlutterTizenEngine(bool headed)
44-
: device_profile(GetDeviceProfile()) {
36+
FlutterTizenEngine::FlutterTizenEngine(bool headed) {
4537
embedder_api_.struct_size = sizeof(FlutterEngineProcTable);
4638
FlutterEngineGetProcAddresses(&embedder_api_);
4739

@@ -342,19 +334,12 @@ void FlutterTizenEngine::SendWindowMetrics(int32_t width,
342334
// The scale factor is computed based on the display DPI and the current
343335
// profile. A fixed DPI value (72) is used on TVs. See:
344336
// https://docs.tizen.org/application/native/guides/ui/efl/multiple-screens
337+
#ifdef TV_PROFILE
345338
double dpi = 72.0;
346-
if (renderer && device_profile != DeviceProfile::kTV) {
347-
dpi = static_cast<double>(renderer->GetDpi());
348-
}
349-
double profile_factor = 1.0;
350-
if (device_profile == DeviceProfile::kWearable) {
351-
profile_factor = 0.4;
352-
} else if (device_profile == DeviceProfile::kMobile) {
353-
profile_factor = 0.7;
354-
} else if (device_profile == DeviceProfile::kTV) {
355-
profile_factor = 2.0;
356-
}
357-
double scale_factor = dpi / 90.0 * profile_factor;
339+
#else
340+
double dpi = static_cast<double>(renderer->GetDpi());
341+
#endif
342+
double scale_factor = dpi / 90.0 * kProfileFactor;
358343
event.pixel_ratio = std::max(scale_factor, 1.0);
359344
} else {
360345
event.pixel_ratio = pixel_ratio;

shell/platform/tizen/flutter_tizen_engine.h

-4
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,6 @@ struct AOTDataDeleter {
5656

5757
using UniqueAotDataPtr = std::unique_ptr<_FlutterEngineAOTData, AOTDataDeleter>;
5858

59-
enum DeviceProfile { kUnknown, kMobile, kWearable, kTV, kCommon };
60-
6159
// Manages state associated with the underlying FlutterEngine.
6260
class FlutterTizenEngine : public TizenRenderer::Delegate {
6361
public:
@@ -140,8 +138,6 @@ class FlutterTizenEngine : public TizenRenderer::Delegate {
140138
std::unique_ptr<TextInputChannel> text_input_channel;
141139
std::unique_ptr<PlatformViewChannel> platform_view_channel;
142140

143-
const DeviceProfile device_profile;
144-
145141
private:
146142
bool IsHeaded() { return renderer != nullptr; }
147143
UniqueAotDataPtr LoadAotData(std::string aot_data_path);

0 commit comments

Comments
 (0)