Splendid keyboard detector
This commit is contained in:
parent
dce96e338c
commit
bef7f65363
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,94 +1,65 @@
|
|||||||
# ninja log v5
|
# ninja log v5
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/flutter_linux.h df34b103123784f1
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_call.h df34b103123784f1
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/libflutter_linux_gtk.so df34b103123784f1
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h df34b103123784f1
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h df34b103123784f1
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h df34b103123784f1
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_value.h df34b103123784f1
|
4 320 1721230626649119048 plugins/super_native_extensions/_phony_ 74762aee97d0d662
|
||||||
7479 7597 1720190160043160828 plugins/irondash_engine_context/libirondash_engine_context_plugin.so a89d3772b0fb0935
|
|
||||||
3 327 1721215469796069705 plugins/super_native_extensions/libsuper_native_extensions.so 74762aee97d0d662
|
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h df34b103123784f1
|
|
||||||
6214 6367 0 CMakeFiles/install.util 558f353ee1373233
|
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h df34b103123784f1
|
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h df34b103123784f1
|
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_view.h df34b103123784f1
|
|
||||||
3 5620 0 flutter/_phony_ df34b103123784f1
|
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h df34b103123784f1
|
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_call.h df34b103123784f1
|
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h df34b103123784f1
|
|
||||||
5895 6038 1720171596542283915 plugins/desktop_window/libdesktop_window_plugin.so 26c8f2b838605d38
|
5895 6038 1720171596542283915 plugins/desktop_window/libdesktop_window_plugin.so 26c8f2b838605d38
|
||||||
3 327 1721215469796069705 plugins/super_native_extensions/_phony_ 74762aee97d0d662
|
3 5644 0 flutter/_phony_ df34b103123784f1
|
||||||
5622 5746 1721215475232069858 plugins/super_native_extensions/libsuper_native_extensions_plugin.so 87d9259f3dbf9022
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h df34b103123784f1
|
||||||
5621 6066 1721215475548069867 CMakeFiles/oc_front.dir/my_application.cc.o 3fd042b328f87769
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h df34b103123784f1
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h df34b103123784f1
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_engine.h df34b103123784f1
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h df34b103123784f1
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h df34b103123784f1
|
||||||
13608 16421 1720171474184250688 plugins/desktop_window/CMakeFiles/desktop_window_plugin.dir/desktop_window_plugin.cc.o 259dba9caad978aa
|
13608 16421 1720171474184250688 plugins/desktop_window/CMakeFiles/desktop_window_plugin.dir/desktop_window_plugin.cc.o 259dba9caad978aa
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_engine.h df34b103123784f1
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h df34b103123784f1
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h df34b103123784f1
|
6240 6392 0 CMakeFiles/install.util 558f353ee1373233
|
||||||
7221 7661 1720190160103160034 CMakeFiles/oc_front.dir/main.cc.o b1d36a8b3fb9d7f7
|
7221 7661 1720190160103160034 CMakeFiles/oc_front.dir/main.cc.o b1d36a8b3fb9d7f7
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h df34b103123784f1
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_response.h df34b103123784f1
|
||||||
6105 7479 1720190159919162468 plugins/irondash_engine_context/CMakeFiles/irondash_engine_context_plugin.dir/irondash_engine_context_plugin.cc.o 439d26d301366f5a
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/libflutter_linux_gtk.so df34b103123784f1
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h df34b103123784f1
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h df34b103123784f1
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h df34b103123784f1
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/flutter_linux.h df34b103123784f1
|
||||||
|
5644 6116 1721230632457031904 CMakeFiles/oc_front.dir/my_application.cc.o 3fd042b328f87769
|
||||||
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h df34b103123784f1
|
||||||
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h df34b103123784f1
|
||||||
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h df34b103123784f1
|
||||||
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_view.h df34b103123784f1
|
||||||
|
4 320 1721230626649119048 plugins/super_native_extensions/libsuper_native_extensions.so 74762aee97d0d662
|
||||||
|
6116 6240 1721230632585029984 intermediates_do_not_run/oc_front 4e630cc1de7b670a
|
||||||
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h df34b103123784f1
|
||||||
7223 7702 1720190160147159452 plugins/super_native_extensions/CMakeFiles/super_native_extensions_plugin.dir/super_native_extensions_plugin.cc.o e4e228e87b2f98cc
|
7223 7702 1720190160147159452 plugins/super_native_extensions/CMakeFiles/super_native_extensions_plugin.dir/super_native_extensions_plugin.cc.o e4e228e87b2f98cc
|
||||||
5622 6049 1721215475532069867 CMakeFiles/oc_front.dir/flutter/generated_plugin_registrant.cc.o 79b3e2ad61c9feb4
|
5645 6080 1721230632425032384 CMakeFiles/oc_front.dir/flutter/generated_plugin_registrant.cc.o 79b3e2ad61c9feb4
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h df34b103123784f1
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h df34b103123784f1
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_response.h df34b103123784f1
|
6105 7479 1720190159919162468 plugins/irondash_engine_context/CMakeFiles/irondash_engine_context_plugin.dir/irondash_engine_context_plugin.cc.o 439d26d301366f5a
|
||||||
3 5620 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h df34b103123784f1
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h df34b103123784f1
|
||||||
6066 6214 1721215475700069871 intermediates_do_not_run/oc_front 4e630cc1de7b670a
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h df34b103123784f1
|
||||||
3 320 1721215554232072088 plugins/super_native_extensions/libsuper_native_extensions.so 74762aee97d0d662
|
7479 7597 1720190160043160828 plugins/irondash_engine_context/libirondash_engine_context_plugin.so a89d3772b0fb0935
|
||||||
3 320 1721215554232072088 plugins/super_native_extensions/_phony_ 74762aee97d0d662
|
3 5644 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_value.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/libflutter_linux_gtk.so df34b103123784f1
|
5645 5781 1721230632125036886 plugins/super_native_extensions/libsuper_native_extensions_plugin.so 87d9259f3dbf9022
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h df34b103123784f1
|
3 326 1721231108669887541 plugins/super_native_extensions/libsuper_native_extensions.so 74762aee97d0d662
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h df34b103123784f1
|
3 326 1721231108669887541 plugins/super_native_extensions/_phony_ 74762aee97d0d662
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/libflutter_linux_gtk.so df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_engine.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_engine.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_call.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_response.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_call.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_response.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_value.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_view.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h df34b103123784f1
|
||||||
3 6113 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/flutter_linux.h df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h df34b103123784f1
|
||||||
3 6113 0 flutter/_phony_ df34b103123784f1
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_value.h df34b103123784f1
|
||||||
6114 6242 1721215560168072256 plugins/super_native_extensions/libsuper_native_extensions_plugin.so 87d9259f3dbf9022
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_view.h df34b103123784f1
|
||||||
6114 6536 1721215560460072264 CMakeFiles/oc_front.dir/flutter/generated_plugin_registrant.cc.o 79b3e2ad61c9feb4
|
3 5916 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/flutter_linux.h df34b103123784f1
|
||||||
6113 6565 1721215560488072265 CMakeFiles/oc_front.dir/my_application.cc.o 3fd042b328f87769
|
3 5916 0 flutter/_phony_ df34b103123784f1
|
||||||
6565 6722 1721215560648072269 intermediates_do_not_run/oc_front 4e630cc1de7b670a
|
5919 6044 1721231114401801556 plugins/super_native_extensions/libsuper_native_extensions_plugin.so 87d9259f3dbf9022
|
||||||
6722 6876 0 CMakeFiles/install.util 558f353ee1373233
|
5918 6335 1721231114689797236 CMakeFiles/oc_front.dir/flutter/generated_plugin_registrant.cc.o 79b3e2ad61c9feb4
|
||||||
5 338 1721215575260072682 plugins/super_native_extensions/libsuper_native_extensions.so 74762aee97d0d662
|
5917 6380 1721231114733796575 CMakeFiles/oc_front.dir/my_application.cc.o 3fd042b328f87769
|
||||||
5 338 1721215575260072682 plugins/super_native_extensions/_phony_ 74762aee97d0d662
|
6380 6517 1721231114873794475 intermediates_do_not_run/oc_front 4e630cc1de7b670a
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/libflutter_linux_gtk.so df34b103123784f1
|
6517 6648 0 CMakeFiles/install.util 558f353ee1373233
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_engine.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_call.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_method_response.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_value.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/fl_view.h df34b103123784f1
|
|
||||||
4 5478 0 /home/mr/Documents/OC/oc-front/linux/flutter/ephemeral/flutter_linux/flutter_linux.h df34b103123784f1
|
|
||||||
4 5478 0 flutter/_phony_ df34b103123784f1
|
|
||||||
5479 5633 1721215580572072832 plugins/super_native_extensions/libsuper_native_extensions_plugin.so 87d9259f3dbf9022
|
|
||||||
5479 5922 1721215580860072840 CMakeFiles/oc_front.dir/flutter/generated_plugin_registrant.cc.o 79b3e2ad61c9feb4
|
|
||||||
5479 5950 1721215580888072841 CMakeFiles/oc_front.dir/my_application.cc.o 3fd042b328f87769
|
|
||||||
5950 6100 1721215581036072845 intermediates_do_not_run/oc_front 4e630cc1de7b670a
|
|
||||||
6100 6243 0 CMakeFiles/install.util 558f353ee1373233
|
|
||||||
|
Binary file not shown.
@ -11,7 +11,7 @@ import 'package:oc_front/models/search.dart';
|
|||||||
import 'package:oc_front/pages/abstract_page.dart';
|
import 'package:oc_front/pages/abstract_page.dart';
|
||||||
import 'package:oc_front/widgets/dialog/new_box.dart';
|
import 'package:oc_front/widgets/dialog/new_box.dart';
|
||||||
import 'package:oc_front/widgets/items/item_row.dart';
|
import 'package:oc_front/widgets/items/item_row.dart';
|
||||||
|
Dashboard dash = Dashboard(name: "workflow_${DateTime.now().toString().replaceAll(" ", "_").substring(0, DateTime.now().toString().length - 7)}");
|
||||||
class WorkflowFactory implements AbstractFactory {
|
class WorkflowFactory implements AbstractFactory {
|
||||||
static GlobalKey<WorkflowPageWidgetState> key = GlobalKey<WorkflowPageWidgetState>();
|
static GlobalKey<WorkflowPageWidgetState> key = GlobalKey<WorkflowPageWidgetState>();
|
||||||
@override bool searchFill() { return false; }
|
@override bool searchFill() { return false; }
|
||||||
@ -54,10 +54,10 @@ final WorflowService _service = WorflowService();
|
|||||||
}
|
}
|
||||||
@override Widget build(BuildContext context) {
|
@override Widget build(BuildContext context) {
|
||||||
var quart = MediaQuery.of(context).size.width / 6;
|
var quart = MediaQuery.of(context).size.width / 6;
|
||||||
|
dash.defaultName = "workflow_${DateTime.now().toString().replaceAll(" ", "_").substring(0, DateTime.now().toString().length - 7)}";
|
||||||
return FlowChart<AbstractItem>(
|
return FlowChart<AbstractItem>(
|
||||||
onDashboardAlertOpened: onDashboardAlertOpened,
|
onDashboardAlertOpened: onDashboardAlertOpened,
|
||||||
dashboard: Dashboard(
|
dashboard: dash,
|
||||||
name: "workflow_${DateTime.now().toString().replaceAll(" ", "_").substring(0, DateTime.now().toString().length - 7)}"),
|
|
||||||
itemWidget: itemBuild,
|
itemWidget: itemBuild,
|
||||||
categories: const ["computing", "data", "datacenter", "storage"],
|
categories: const ["computing", "data", "datacenter", "storage"],
|
||||||
draggableItemBuilder: (cat) => WorkspaceLocal.byTopic(cat).toList(),
|
draggableItemBuilder: (cat) => WorkspaceLocal.byTopic(cat).toList(),
|
||||||
@ -78,6 +78,6 @@ final WorflowService _service = WorflowService();
|
|||||||
onHandlerPressed: (context, position, handler, element) { },
|
onHandlerPressed: (context, position, handler, element) { },
|
||||||
onHandlerLongPressed: (context, position, handler, element) { },
|
onHandlerLongPressed: (context, position, handler, element) { },
|
||||||
onPivotSecondaryPressed: (context, pivot) { },
|
onPivotSecondaryPressed: (context, pivot) { },
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -41,9 +41,11 @@ class NewBoxWidgetState<T extends SerializerDeserializer<dynamic>> extends State
|
|||||||
child: Text(widget._selected.toString()),
|
child: Text(widget._selected.toString()),
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
return SizedBox( width: 400, height: 50, child: DropdownButtonFormField(
|
return SizedBox( width: MediaQuery.of(context).size.width <= 540 ? MediaQuery.of(context).size.width - 140 : 400, height: 50,
|
||||||
|
child: DropdownButtonFormField(
|
||||||
value: widget._selected,
|
value: widget._selected,
|
||||||
hint: const Text("select workflow to load...", style: TextStyle(color: Colors.grey, fontSize: 15)),
|
isExpanded: true,
|
||||||
|
hint: const Text("load workflow...", style: TextStyle(color: Colors.grey, fontSize: 15)),
|
||||||
decoration: InputDecoration(
|
decoration: InputDecoration(
|
||||||
filled: true,
|
filled: true,
|
||||||
focusedBorder: const OutlineInputBorder( borderRadius: BorderRadius.zero,
|
focusedBorder: const OutlineInputBorder( borderRadius: BorderRadius.zero,
|
||||||
@ -105,9 +107,12 @@ class NewBoxWidgetState<T extends SerializerDeserializer<dynamic>> extends State
|
|||||||
children: [
|
children: [
|
||||||
Container(
|
Container(
|
||||||
margin: const EdgeInsets.only(top: 10),
|
margin: const EdgeInsets.only(top: 10),
|
||||||
width: 450,
|
width: MediaQuery.of(context).size.width <= 540 ? MediaQuery.of(context).size.width - 90 : 450,
|
||||||
height: 50,
|
height: 50,
|
||||||
child: TextFormField(
|
child: TextFormField(
|
||||||
|
expands: true,
|
||||||
|
maxLines: null,
|
||||||
|
minLines: null,
|
||||||
cursorColor: const Color.fromARGB(38, 166, 154, 1),
|
cursorColor: const Color.fromARGB(38, 166, 154, 1),
|
||||||
controller: widget._ctrl,
|
controller: widget._ctrl,
|
||||||
onChanged: (value) => setState(() { widget._ctrl.value = TextEditingValue(text: value); }),
|
onChanged: (value) => setState(() { widget._ctrl.value = TextEditingValue(text: value); }),
|
||||||
@ -116,7 +121,7 @@ class NewBoxWidgetState<T extends SerializerDeserializer<dynamic>> extends State
|
|||||||
hintText: "name a new workflow...",
|
hintText: "name a new workflow...",
|
||||||
fillColor: Colors.grey.shade300,
|
fillColor: Colors.grey.shade300,
|
||||||
filled: true,
|
filled: true,
|
||||||
contentPadding: const EdgeInsets.symmetric(horizontal: 30, vertical: 20),
|
contentPadding: const EdgeInsets.only(left: 30, right: 30, top: 15, bottom: 5),
|
||||||
hintStyle: const TextStyle(
|
hintStyle: const TextStyle(
|
||||||
color: Colors.black,
|
color: Colors.black,
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
|
import 'package:flutter_flow_chart/flutter_flow_chart.dart';
|
||||||
import 'package:flutter_flow_chart/src/dashboard.dart';
|
import 'package:flutter_flow_chart/src/dashboard.dart';
|
||||||
import 'package:flutter_flow_chart/src/elements/flow_element.dart';
|
import 'package:flutter_flow_chart/src/elements/flow_element.dart';
|
||||||
import 'package:flutter_flow_chart/src/flow_chart_menu.dart';
|
import 'package:flutter_flow_chart/src/flow_chart_menu.dart';
|
||||||
@ -160,7 +161,7 @@ class HoverMenuController {
|
|||||||
currentState?.hideSubMenu();
|
currentState?.hideSubMenu();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
bool isPopUp = false;
|
||||||
class HoverMenu extends StatefulWidget {
|
class HoverMenu extends StatefulWidget {
|
||||||
final Widget title;
|
final Widget title;
|
||||||
final double? width;
|
final double? width;
|
||||||
@ -275,6 +276,7 @@ class HoverMenuState extends State<HoverMenu> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var node = FocusNode();
|
||||||
class FlowChartState<T extends Object> extends State<FlowChart> {
|
class FlowChartState<T extends Object> extends State<FlowChart> {
|
||||||
List<Draggable<T>> getDraggable(List<T> items) {
|
List<Draggable<T>> getDraggable(List<T> items) {
|
||||||
List<Draggable<T>> res = [];
|
List<Draggable<T>> res = [];
|
||||||
@ -285,6 +287,7 @@ class FlowChartState<T extends Object> extends State<FlowChart> {
|
|||||||
// Data is the value this Draggable stores.
|
// Data is the value this Draggable stores.
|
||||||
data: e,
|
data: e,
|
||||||
onDragStarted: () => hoverKey.currentState?.hideSubMenu(),
|
onDragStarted: () => hoverKey.currentState?.hideSubMenu(),
|
||||||
|
onDragEnd: (d) => node.requestFocus(),
|
||||||
childWhenDragging: Opacity(opacity: .5,
|
childWhenDragging: Opacity(opacity: .5,
|
||||||
child: Padding( padding: const EdgeInsets.all(10),
|
child: Padding( padding: const EdgeInsets.all(10),
|
||||||
child: Container( height: realSize - 20, child: widget.itemWidget(e) ))),
|
child: Container( height: realSize - 20, child: widget.itemWidget(e) ))),
|
||||||
@ -300,7 +303,8 @@ class FlowChartState<T extends Object> extends State<FlowChart> {
|
|||||||
)
|
)
|
||||||
) )));
|
) )));
|
||||||
}
|
}
|
||||||
if (!widget.dashboard.isOpened && widget.onDashboardAlertOpened != null) {
|
if (!widget.dashboard.isOpened && widget.onDashboardAlertOpened != null && isPopUp == false) {
|
||||||
|
isPopUp = true;
|
||||||
widget.dashboard.isOpened = true;
|
widget.dashboard.isOpened = true;
|
||||||
Future.delayed(Duration(milliseconds: 1), () => showDialog(
|
Future.delayed(Duration(milliseconds: 1), () => showDialog(
|
||||||
barrierDismissible: false,
|
barrierDismissible: false,
|
||||||
@ -317,6 +321,12 @@ class FlowChartState<T extends Object> extends State<FlowChart> {
|
|||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void initState() {
|
||||||
|
node.requestFocus();
|
||||||
|
super.initState();
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
/// get dashboard position after first frame is drawn
|
/// get dashboard position after first frame is drawn
|
||||||
@ -370,7 +380,68 @@ class FlowChartState<T extends Object> extends State<FlowChart> {
|
|||||||
))
|
))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return ClipRect(
|
return KeyboardListener(
|
||||||
|
focusNode: node,
|
||||||
|
onKeyEvent: (event) {
|
||||||
|
if ((event is KeyDownEvent || event is KeyRepeatEvent) && event.logicalKey == LogicalKeyboardKey.arrowUp) {
|
||||||
|
for (var el in widget.dashboard.elements) {
|
||||||
|
if (el.isSelected) {
|
||||||
|
el.position = Offset(el.position.dx, el.position.dy - 10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ((event is KeyDownEvent || event is KeyRepeatEvent) && event.logicalKey == LogicalKeyboardKey.arrowDown) {
|
||||||
|
for (var el in widget.dashboard.elements) {
|
||||||
|
if (el.isSelected) {
|
||||||
|
el.position = Offset(el.position.dx, el.position.dy + 10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ((event is KeyDownEvent || event is KeyRepeatEvent) && event.logicalKey == LogicalKeyboardKey.arrowLeft) {
|
||||||
|
for (var el in widget.dashboard.elements) {
|
||||||
|
if (el.isSelected) {
|
||||||
|
el.position = Offset(el.position.dx - 10, el.position.dy);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ((event is KeyDownEvent || event is KeyRepeatEvent) && event.logicalKey == LogicalKeyboardKey.arrowRight) {
|
||||||
|
for (var el in widget.dashboard.elements) {
|
||||||
|
if (el.isSelected) {
|
||||||
|
el.position = Offset(el.position.dx + 10, el.position.dy);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (event is KeyDownEvent && event.logicalKey == LogicalKeyboardKey.add) {
|
||||||
|
for (var el in widget.dashboard.elementSelected) {
|
||||||
|
widget.dashboard.elements.add(FlowElement(
|
||||||
|
id: const Uuid().v4(),
|
||||||
|
position: el.position + const Offset(100, 100),
|
||||||
|
size: el.size,
|
||||||
|
text: el.text,
|
||||||
|
widget: el.widget,
|
||||||
|
kind: el.kind,
|
||||||
|
handlers: el.handlers,
|
||||||
|
handlerSize: el.handlerSize,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (event is KeyDownEvent && event.logicalKey == LogicalKeyboardKey.delete) {
|
||||||
|
widget.dashboard.elements.removeWhere( (el) => el.isSelected );
|
||||||
|
for (var arrow in widget.dashboard.arrowsSelected) {
|
||||||
|
for (var el in widget.dashboard.elements.where((element) => element.id == arrow.fromID.split("_")[0])) {
|
||||||
|
el.next.removeAt(int.parse(arrow.fromID.split("_")[1]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
widget.dashboard.arrows.removeWhere( (el) => el.isSelected );
|
||||||
|
}
|
||||||
|
DrawingArrow.instance.notifyListeners();
|
||||||
|
widget.dashboard.chartKey.currentState?.setState(() { });
|
||||||
|
Future.delayed(Duration(milliseconds: 10), () {
|
||||||
|
node.requestFocus();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
child: ClipRect(
|
||||||
child: Stack(
|
child: Stack(
|
||||||
clipBehavior: Clip.none,
|
clipBehavior: Clip.none,
|
||||||
children: [
|
children: [
|
||||||
@ -434,7 +505,7 @@ class FlowChartState<T extends Object> extends State<FlowChart> {
|
|||||||
child: SingleChildScrollView( child: Column( children: menuItems ) )
|
child: SingleChildScrollView( child: Column( children: menuItems ) )
|
||||||
)) : Container(),
|
)) : Container(),
|
||||||
])
|
])
|
||||||
);
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -637,6 +708,10 @@ class ChartWidgetState extends State<ChartWidget> {
|
|||||||
final gridKey = GlobalKey();
|
final gridKey = GlobalKey();
|
||||||
var tapDownPos = Offset.zero;
|
var tapDownPos = Offset.zero;
|
||||||
var secondaryTapDownPos = Offset.zero;
|
var secondaryTapDownPos = Offset.zero;
|
||||||
|
for (int i = 0; i < widget.dashboard.elements.length; i++)
|
||||||
|
widget.dashboard.elements[i].next.removeWhere((element) =>
|
||||||
|
widget.dashboard.findElementIndexById(element.destElementId) < 0
|
||||||
|
);
|
||||||
return Stack( children: [
|
return Stack( children: [
|
||||||
Positioned.fill(
|
Positioned.fill(
|
||||||
child: GestureDetector(
|
child: GestureDetector(
|
||||||
@ -650,10 +725,11 @@ class ChartWidgetState extends State<ChartWidget> {
|
|||||||
for (var sel in widget.dashboard.elements) {
|
for (var sel in widget.dashboard.elements) {
|
||||||
sel.isSelected = false;
|
sel.isSelected = false;
|
||||||
}
|
}
|
||||||
Future.delayed(Duration(seconds: 1), () {
|
Future.delayed(Duration(milliseconds: 100), () {
|
||||||
widget.dashboard.selectedMenuKey.currentState?.setState(() {});
|
widget.dashboard.selectedMenuKey.currentState?.setState(() {});
|
||||||
DrawingArrow.instance.notifyListeners();
|
DrawingArrow.instance.notifyListeners();
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!hoverImportant) {
|
if (!hoverImportant) {
|
||||||
@ -794,7 +870,9 @@ class ChartWidgetState extends State<ChartWidget> {
|
|||||||
),
|
),
|
||||||
// Draw arrows
|
// Draw arrows
|
||||||
for (int i = 0; i < widget.dashboard.elements.length; i++)
|
for (int i = 0; i < widget.dashboard.elements.length; i++)
|
||||||
|
|
||||||
for (int n = 0; n < widget.dashboard.elements[i].next.length; n++)
|
for (int n = 0; n < widget.dashboard.elements[i].next.length; n++)
|
||||||
|
|
||||||
DrawArrow(
|
DrawArrow(
|
||||||
flow: this,
|
flow: this,
|
||||||
key: UniqueKey(),
|
key: UniqueKey(),
|
||||||
@ -831,6 +909,6 @@ class ChartWidgetState extends State<ChartWidget> {
|
|||||||
dashboard: widget.dashboard, height: MediaQuery.of(context).size.height - 100)
|
dashboard: widget.dashboard, height: MediaQuery.of(context).size.height - 100)
|
||||||
) : Container()
|
) : Container()
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -17,6 +17,7 @@ class FlowChartMenu extends StatefulWidget {
|
|||||||
}
|
}
|
||||||
class FlowChartMenuState extends State<FlowChartMenu> {
|
class FlowChartMenuState extends State<FlowChartMenu> {
|
||||||
@override Widget build(BuildContext context) {
|
@override Widget build(BuildContext context) {
|
||||||
|
bool isLow = MediaQuery.of(context).size.width < 600;
|
||||||
GlobalKey<FormFieldState> zoomKey = GlobalKey<FormFieldState>();
|
GlobalKey<FormFieldState> zoomKey = GlobalKey<FormFieldState>();
|
||||||
return Container( // SHORTCUT
|
return Container( // SHORTCUT
|
||||||
width: widget.width,
|
width: widget.width,
|
||||||
@ -33,6 +34,7 @@ class FlowChartMenuState extends State<FlowChartMenu> {
|
|||||||
Padding( padding: EdgeInsets.only(right: 15),
|
Padding( padding: EdgeInsets.only(right: 15),
|
||||||
child: InkWell( mouseCursor: SystemMouseCursors.click,
|
child: InkWell( mouseCursor: SystemMouseCursors.click,
|
||||||
onTap: () {
|
onTap: () {
|
||||||
|
widget.dashboard.defaultName = "graph_${DateTime.now().toString().replaceAll(" ", "_").substring(0, DateTime.now().toString().length - 7)}";
|
||||||
showDialog(
|
showDialog(
|
||||||
barrierDismissible: false,
|
barrierDismissible: false,
|
||||||
context: context, builder: (context) {
|
context: context, builder: (context) {
|
||||||
@ -189,7 +191,7 @@ class FlowChartMenuState extends State<FlowChartMenu> {
|
|||||||
],
|
],
|
||||||
)
|
)
|
||||||
),)),
|
),)),
|
||||||
Container(
|
isLow ? Container() : Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
border: Border(right: BorderSide(color: Colors.white, width: 1))
|
border: Border(right: BorderSide(color: Colors.white, width: 1))
|
||||||
),
|
),
|
||||||
@ -232,9 +234,10 @@ class FlowChartMenuState extends State<FlowChartMenu> {
|
|||||||
color: !widget.dashboard.canForward() ? Colors.grey.shade300 : Colors.white))),
|
color: !widget.dashboard.canForward() ? Colors.grey.shade300 : Colors.white))),
|
||||||
|
|
||||||
])),
|
])),
|
||||||
Padding( child: Text("file opened : ${widget.dashboard.name}", overflow: TextOverflow.ellipsis,
|
Expanded(
|
||||||
style: TextStyle(color: Colors.white, fontSize: 14), textAlign: TextAlign.center),
|
child: Padding( child: Text("file opened : ${widget.dashboard.name}", overflow: TextOverflow.ellipsis,
|
||||||
padding: EdgeInsets.symmetric(horizontal: 20)),
|
style: TextStyle(color: Colors.white, fontSize: 14), textAlign: TextAlign.start),
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 20))),
|
||||||
])),
|
])),
|
||||||
])
|
])
|
||||||
);
|
);
|
||||||
|
Loading…
Reference in New Issue
Block a user