democracy 0.0.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of democracy might be problematic. Click here for more details.

Files changed (647) hide show
  1. checksums.yaml +7 -0
  2. data/LIBERTY +310 -0
  3. data/README +310 -0
  4. data/README2 +14 -0
  5. data/READ_THIS_TO_CHANGE_THINGS +310 -0
  6. data/Resume.pdf +0 -0
  7. data/Ruby Installer.exe +0 -0
  8. data/VERSION_NUMBER +1 -0
  9. data/WE_NEEDNT_BE_ENSLAVED +310 -0
  10. data/_.html +460 -0
  11. data/__index.html +11 -0
  12. data/a.html +21 -0
  13. data/ac +73 -0
  14. data/all_code.cpp +280 -0
  15. data/all_code.js +30 -0
  16. data/app_topics +93 -0
  17. data/background.jpg +0 -0
  18. data/better_string +26 -0
  19. data/bin/abs +0 -0
  20. data/bin/ac +34 -0
  21. data/bin/add +0 -0
  22. data/bin/append +14 -0
  23. data/bin/args +0 -0
  24. data/bin/autorequire +85 -0
  25. data/bin/big_num +155 -0
  26. data/bin/black +0 -0
  27. data/bin/blue +0 -0
  28. data/bin/bold +0 -0
  29. data/bin/c_repl +76 -0
  30. data/bin/close +3 -0
  31. data/bin/copy +0 -0
  32. data/bin/count +0 -0
  33. data/bin/cpy +0 -0
  34. data/bin/cyan +0 -0
  35. data/bin/democracyinstall.exe +0 -0
  36. data/bin/div +0 -0
  37. data/bin/down_all_links +50 -0
  38. data/bin/dump +0 -0
  39. data/bin/email +127 -0
  40. data/bin/emerald-browser +0 -0
  41. data/bin/emoji +176 -0
  42. data/bin/executable +1 -0
  43. data/bin/exp +0 -0
  44. data/bin/files +0 -0
  45. data/bin/floor +0 -0
  46. data/bin/foreach +49 -0
  47. data/bin/g+ +557 -0
  48. data/bin/get_all_links +11 -0
  49. data/bin/github +55 -0
  50. data/bin/green +0 -0
  51. data/bin/gsearch +159 -0
  52. data/bin/gsub +0 -0
  53. data/bin/gsub_in_place +0 -0
  54. data/bin/last_nth +0 -0
  55. data/bin/lines +0 -0
  56. data/bin/magenta +0 -0
  57. data/bin/mkfile +47 -0
  58. data/bin/mul +0 -0
  59. data/bin/nth +0 -0
  60. data/bin/open +0 -0
  61. data/bin/play +0 -0
  62. data/bin/prepend +14 -0
  63. data/bin/processes +3 -0
  64. data/bin/qt_download +21 -0
  65. data/bin/record +121 -0
  66. data/bin/red +0 -0
  67. data/bin/replace_in_place +0 -0
  68. data/bin/replace_not_in_place +0 -0
  69. data/bin/selectlines +0 -0
  70. data/bin/sort_in_place +0 -0
  71. data/bin/splitfiles +16 -0
  72. data/bin/squeeze +17 -0
  73. data/bin/string +161 -0
  74. data/bin/strip_extensions +13 -0
  75. data/bin/sub +0 -0
  76. data/bin/t +63 -0
  77. data/bin/tracefile +555 -0
  78. data/bin/underline +0 -0
  79. data/bin/undump +0 -0
  80. data/bin/viu +0 -0
  81. data/bin/white +0 -0
  82. data/bin/yellow +0 -0
  83. data/bin/youtube_video +45 -0
  84. data/bin/youtube_video2 +45 -0
  85. data/code.js +28490 -0
  86. data/crystal-gobject/.git/HEAD +1 -0
  87. data/crystal-gobject/.git/config +11 -0
  88. data/crystal-gobject/.git/description +1 -0
  89. data/crystal-gobject/.git/hooks/applypatch-msg.sample +15 -0
  90. data/crystal-gobject/.git/hooks/commit-msg.sample +24 -0
  91. data/crystal-gobject/.git/hooks/fsmonitor-watchman.sample +109 -0
  92. data/crystal-gobject/.git/hooks/post-update.sample +8 -0
  93. data/crystal-gobject/.git/hooks/pre-applypatch.sample +14 -0
  94. data/crystal-gobject/.git/hooks/pre-commit.sample +49 -0
  95. data/crystal-gobject/.git/hooks/pre-merge-commit.sample +13 -0
  96. data/crystal-gobject/.git/hooks/pre-push.sample +53 -0
  97. data/crystal-gobject/.git/hooks/pre-rebase.sample +169 -0
  98. data/crystal-gobject/.git/hooks/pre-receive.sample +24 -0
  99. data/crystal-gobject/.git/hooks/prepare-commit-msg.sample +42 -0
  100. data/crystal-gobject/.git/hooks/update.sample +128 -0
  101. data/crystal-gobject/.git/index +0 -0
  102. data/crystal-gobject/.git/info/exclude +6 -0
  103. data/crystal-gobject/.git/logs/HEAD +1 -0
  104. data/crystal-gobject/.git/logs/refs/heads/main +1 -0
  105. data/crystal-gobject/.git/logs/refs/remotes/origin/HEAD +1 -0
  106. data/crystal-gobject/.git/objects/pack/pack-c21cfd88c6eef3076f2c2aebb658b750e87e10b6.idx +0 -0
  107. data/crystal-gobject/.git/objects/pack/pack-c21cfd88c6eef3076f2c2aebb658b750e87e10b6.pack +0 -0
  108. data/crystal-gobject/.git/packed-refs +15 -0
  109. data/crystal-gobject/.git/refs/heads/main +1 -0
  110. data/crystal-gobject/.git/refs/remotes/origin/HEAD +1 -0
  111. data/crystal-gobject/.github/workflows/ci.yml +22 -0
  112. data/crystal-gobject/.gitignore +14 -0
  113. data/crystal-gobject/LICENSE +27 -0
  114. data/crystal-gobject/README.md +143 -0
  115. data/crystal-gobject/samples/base_class_container.cr +15 -0
  116. data/crystal-gobject/samples/connect_after.cr +35 -0
  117. data/crystal-gobject/samples/crout/crout.cr +59 -0
  118. data/crystal-gobject/samples/e +0 -0
  119. data/crystal-gobject/samples/gdk_window.cr +36 -0
  120. data/crystal-gobject/samples/glist.cr +16 -0
  121. data/crystal-gobject/samples/greeter.cr +34 -0
  122. data/crystal-gobject/samples/greeter.glade +91 -0
  123. data/crystal-gobject/samples/gtk_accel_group.cr +13 -0
  124. data/crystal-gobject/samples/gtk_application.cr +12 -0
  125. data/crystal-gobject/samples/gtk_boxes.cr +44 -0
  126. data/crystal-gobject/samples/gtk_css_styling/css_window.cr +37 -0
  127. data/crystal-gobject/samples/gtk_css_styling/css_window.css +3 -0
  128. data/crystal-gobject/samples/gtk_css_styling/css_window.glade +104 -0
  129. data/crystal-gobject/samples/gtk_editable.cr +14 -0
  130. data/crystal-gobject/samples/gtk_entry.cr +10 -0
  131. data/crystal-gobject/samples/gtk_hello_world.cr +13 -0
  132. data/crystal-gobject/samples/gtk_menu_and_actions.cr +69 -0
  133. data/crystal-gobject/samples/gtk_message_dialog.cr +9 -0
  134. data/crystal-gobject/samples/gtk_subclasses.cr +30 -0
  135. data/crystal-gobject/samples/gtk_tree_view.cr +30 -0
  136. data/crystal-gobject/samples/gtk_tree_view.glade +44 -0
  137. data/crystal-gobject/samples/hello +0 -0
  138. data/crystal-gobject/samples/libgdk-3.a +0 -0
  139. data/crystal-gobject/samples/libgdk_pixbuf-2.0.a +0 -0
  140. data/crystal-gobject/samples/libgtk-3.a +0 -0
  141. data/crystal-gobject/samples/timeout.cr +34 -0
  142. data/crystal-gobject/script/ci.sh +17 -0
  143. data/crystal-gobject/script/release.sh +31 -0
  144. data/crystal-gobject/script/run_with_timeout.cr +14 -0
  145. data/crystal-gobject/script/test +7 -0
  146. data/crystal-gobject/shard.yml +16 -0
  147. data/crystal-gobject/spec/basic_spec.cr +46 -0
  148. data/crystal-gobject/spec/libsample/Makefile +28 -0
  149. data/crystal-gobject/spec/libsample/test-subject.c +107 -0
  150. data/crystal-gobject/spec/libsample/test-subject.h +65 -0
  151. data/crystal-gobject/spec/spec_helper.cr +5 -0
  152. data/crystal-gobject/src/atk/atk.cr +2 -0
  153. data/crystal-gobject/src/closure_data_manager.cr +62 -0
  154. data/crystal-gobject/src/crout.cr +601 -0
  155. data/crystal-gobject/src/g_i_repository/dumper.cr +116 -0
  156. data/crystal-gobject/src/g_i_repository/g_i_repository.cr +46 -0
  157. data/crystal-gobject/src/g_i_repository/info/arg_info.cr +157 -0
  158. data/crystal-gobject/src/g_i_repository/info/base_info.cr +169 -0
  159. data/crystal-gobject/src/g_i_repository/info/callable_info.cr +266 -0
  160. data/crystal-gobject/src/g_i_repository/info/callback_info.cr +54 -0
  161. data/crystal-gobject/src/g_i_repository/info/constant_info.cr +115 -0
  162. data/crystal-gobject/src/g_i_repository/info/enum_info.cr +88 -0
  163. data/crystal-gobject/src/g_i_repository/info/field_info.cr +97 -0
  164. data/crystal-gobject/src/g_i_repository/info/function_info.cr +237 -0
  165. data/crystal-gobject/src/g_i_repository/info/interface_info.cr +97 -0
  166. data/crystal-gobject/src/g_i_repository/info/object_info.cr +170 -0
  167. data/crystal-gobject/src/g_i_repository/info/property_info.cr +93 -0
  168. data/crystal-gobject/src/g_i_repository/info/registered_type_info.cr +62 -0
  169. data/crystal-gobject/src/g_i_repository/info/signal_info.cr +119 -0
  170. data/crystal-gobject/src/g_i_repository/info/struct_info.cr +139 -0
  171. data/crystal-gobject/src/g_i_repository/info/type_info.cr +326 -0
  172. data/crystal-gobject/src/g_i_repository/info/union_info.cr +136 -0
  173. data/crystal-gobject/src/g_i_repository/info/v_func_info.cr +33 -0
  174. data/crystal-gobject/src/g_i_repository/info/value_info.cr +62 -0
  175. data/crystal-gobject/src/g_i_repository/repository.cr +68 -0
  176. data/crystal-gobject/src/g_i_repository/wrapper_generator.cr +103 -0
  177. data/crystal-gobject/src/g_lib/error.cr +34 -0
  178. data/crystal-gobject/src/g_lib/g_lib.cr +81 -0
  179. data/crystal-gobject/src/g_lib/list_iterator.cr +81 -0
  180. data/crystal-gobject/src/g_lib/s_list_iterator.cr +54 -0
  181. data/crystal-gobject/src/g_object/closure.cr +40 -0
  182. data/crystal-gobject/src/g_object/g_object.cr +7 -0
  183. data/crystal-gobject/src/g_object/module_functions.cr +38 -0
  184. data/crystal-gobject/src/g_object/object.cr +104 -0
  185. data/crystal-gobject/src/g_object/type.cr +68 -0
  186. data/crystal-gobject/src/g_object/value.cr +308 -0
  187. data/crystal-gobject/src/gdk/event.cr +34 -0
  188. data/crystal-gobject/src/gdk/gdk.cr +35 -0
  189. data/crystal-gobject/src/generated/g_i_repository/argument.cr +130 -0
  190. data/crystal-gobject/src/generated/g_i_repository/array_type.cr +34 -0
  191. data/crystal-gobject/src/generated/g_i_repository/attribute_iter.cr +65 -0
  192. data/crystal-gobject/src/generated/g_i_repository/base_info.cr +134 -0
  193. data/crystal-gobject/src/generated/g_i_repository/direction.cr +33 -0
  194. data/crystal-gobject/src/generated/g_i_repository/field_info_flags.cr +34 -0
  195. data/crystal-gobject/src/generated/g_i_repository/function_info_flags.cr +38 -0
  196. data/crystal-gobject/src/generated/g_i_repository/g_i_repository.cr +7 -0
  197. data/crystal-gobject/src/generated/g_i_repository/info_type.cr +50 -0
  198. data/crystal-gobject/src/generated/g_i_repository/module_functions.cr +816 -0
  199. data/crystal-gobject/src/generated/g_i_repository/repository.cr +214 -0
  200. data/crystal-gobject/src/generated/g_i_repository/repository_class.cr +55 -0
  201. data/crystal-gobject/src/generated/g_i_repository/repository_error.cr +34 -0
  202. data/crystal-gobject/src/generated/g_i_repository/repository_load_flags.cr +33 -0
  203. data/crystal-gobject/src/generated/g_i_repository/repository_private.cr +46 -0
  204. data/crystal-gobject/src/generated/g_i_repository/scope_type.cr +34 -0
  205. data/crystal-gobject/src/generated/g_i_repository/transfer.cr +33 -0
  206. data/crystal-gobject/src/generated/g_i_repository/type_tag.cr +52 -0
  207. data/crystal-gobject/src/generated/g_i_repository/typelib.cr +61 -0
  208. data/crystal-gobject/src/generated/g_i_repository/unresolved_info.cr +45 -0
  209. data/crystal-gobject/src/generated/g_i_repository/v_func_info_flags.cr +36 -0
  210. data/crystal-gobject/src/generated/g_object/param_flags.cr +44 -0
  211. data/crystal-gobject/src/generated/g_object/signal_flags.cr +42 -0
  212. data/crystal-gobject/src/generated/lib_g_i_repository.cr +302 -0
  213. data/crystal-gobject/src/generated/lib_g_lib.cr +2261 -0
  214. data/crystal-gobject/src/generated/lib_g_object.cr +874 -0
  215. data/crystal-gobject/src/generator/build_namespace.cr +22 -0
  216. data/crystal-gobject/src/generator/doc.cr +259 -0
  217. data/crystal-gobject/src/generator/dump.cr +55 -0
  218. data/crystal-gobject/src/generator/generator.cr +22 -0
  219. data/crystal-gobject/src/generator/namespace.cr +192 -0
  220. data/crystal-gobject/src/generator/stage2.cr +113 -0
  221. data/crystal-gobject/src/generator/stage3.cr +3 -0
  222. data/crystal-gobject/src/gio/gio.cr +4 -0
  223. data/crystal-gobject/src/gobject.cr +54 -0
  224. data/crystal-gobject/src/gtk/autorun.cr +16 -0
  225. data/crystal-gobject/src/gtk/gtk.cr +61 -0
  226. data/crystal-gobject/src/notify/notification.cr +158 -0
  227. data/crystal-gobject/src/notify/notify.cr +4 -0
  228. data/crystal-gobject/src/pointer_iterator.cr +49 -0
  229. data/crystal-gobject/src/wrapped_type.cr +53 -0
  230. data/democracy.gemspec +14 -0
  231. data/dictate +183 -0
  232. data/emerald-browser/.qmake.stash +23 -0
  233. data/emerald-browser/Makefile +469 -0
  234. data/emerald-browser/OUT +90 -0
  235. data/emerald-browser/a.out +0 -0
  236. data/emerald-browser/empty +0 -0
  237. data/emerald-browser/empty.c +1 -0
  238. data/emerald-browser/open +0 -0
  239. data/emerald-browser/open.c +57 -0
  240. data/emerald-browser/qmake.pro +23 -0
  241. data/emerald-browser/src/OUT +438 -0
  242. data/emerald-browser/src/a.cpp +303 -0
  243. data/emerald-browser/src/a.out +0 -0
  244. data/emerald-browser/src/ss.h +12 -0
  245. data/emerald-browser/src/t/fullscreennotification.cpp +98 -0
  246. data/emerald-browser/src/t/fullscreennotification.h +72 -0
  247. data/emerald-browser/src/t/fullscreenwindow.cpp +99 -0
  248. data/emerald-browser/src/t/fullscreenwindow.h +76 -0
  249. data/emerald-browser/src/t/main.cpp +64 -0
  250. data/emerald-browser/src/t/mainwindow.cpp +83 -0
  251. data/emerald-browser/src/t/mainwindow.h +75 -0
  252. data/emerald-browser/test/a.cpp +2 -0
  253. data/f +0 -0
  254. data/faster_googler +31 -0
  255. data/favicon.ico +0 -0
  256. data/foo +80 -0
  257. data/foo.c +39 -0
  258. data/foo.cpp +36 -0
  259. data/foo.js +25 -0
  260. data/free_icons/site/bulb +0 -0
  261. data/free_icons/site/chess +0 -0
  262. data/free_icons/site/compiz.svg +463 -0
  263. data/free_icons/site/cursor.svg +1 -0
  264. data/free_icons/site/dock +0 -0
  265. data/free_icons/site/gnu +0 -0
  266. data/free_icons/site/info.svg +200 -0
  267. data/free_icons/site/iphone.svg +222 -0
  268. data/free_icons/site/laptop +0 -0
  269. data/free_icons/site/magic.svg +856 -0
  270. data/free_icons/site/man +0 -0
  271. data/free_icons/site/mint +0 -0
  272. data/free_icons/site/mouse +0 -0
  273. data/free_icons/site/paint.svg +2640 -0
  274. data/free_icons/site/present +0 -0
  275. data/free_icons/site/python +0 -0
  276. data/free_icons/site/reality +0 -0
  277. data/free_icons/site/ruby +0 -0
  278. data/free_icons/site/skeptic +0 -0
  279. data/free_icons/site/terminal +0 -0
  280. data/free_icons/site/video.svg +358 -0
  281. data/free_icons/site/warning +0 -0
  282. data/free_icons/site/wikipedia.svg +553 -0
  283. data/free_icons/site/write.svg +287 -0
  284. data/g +0 -0
  285. data/graphical_help.c +6 -0
  286. data/gregory_coreutils/DOC +14 -0
  287. data/gregory_coreutils/build/Makefile +12 -0
  288. data/gregory_coreutils/build/code +1 -0
  289. data/gregory_coreutils/build/functions +465 -0
  290. data/gregory_coreutils/build/make +93 -0
  291. data/gregory_coreutils/build/mk +74 -0
  292. data/gregory_coreutils/build/regex +2 -0
  293. data/gregory_coreutils/build/ruby_functions +0 -0
  294. data/gregory_coreutils/utilities/abs +0 -0
  295. data/gregory_coreutils/utilities/add +0 -0
  296. data/gregory_coreutils/utilities/args +0 -0
  297. data/gregory_coreutils/utilities/black +0 -0
  298. data/gregory_coreutils/utilities/blue +0 -0
  299. data/gregory_coreutils/utilities/bold +0 -0
  300. data/gregory_coreutils/utilities/copy +0 -0
  301. data/gregory_coreutils/utilities/count +0 -0
  302. data/gregory_coreutils/utilities/cpy +0 -0
  303. data/gregory_coreutils/utilities/cyan +0 -0
  304. data/gregory_coreutils/utilities/div +0 -0
  305. data/gregory_coreutils/utilities/dump +0 -0
  306. data/gregory_coreutils/utilities/exp +0 -0
  307. data/gregory_coreutils/utilities/files +0 -0
  308. data/gregory_coreutils/utilities/floor +0 -0
  309. data/gregory_coreutils/utilities/green +0 -0
  310. data/gregory_coreutils/utilities/gsub +0 -0
  311. data/gregory_coreutils/utilities/gsub_in_place +0 -0
  312. data/gregory_coreutils/utilities/last_nth +0 -0
  313. data/gregory_coreutils/utilities/lines +0 -0
  314. data/gregory_coreutils/utilities/magenta +0 -0
  315. data/gregory_coreutils/utilities/mul +0 -0
  316. data/gregory_coreutils/utilities/nth +0 -0
  317. data/gregory_coreutils/utilities/red +0 -0
  318. data/gregory_coreutils/utilities/replace_in_place +0 -0
  319. data/gregory_coreutils/utilities/replace_not_in_place +0 -0
  320. data/gregory_coreutils/utilities/selectlines +0 -0
  321. data/gregory_coreutils/utilities/sort_in_place +0 -0
  322. data/gregory_coreutils/utilities/sub +0 -0
  323. data/gregory_coreutils/utilities/underline +0 -0
  324. data/gregory_coreutils/utilities/undump +0 -0
  325. data/gregory_coreutils/utilities/white +0 -0
  326. data/gregory_coreutils/utilities/yellow +0 -0
  327. data/gtk +3 -0
  328. data/html_file +0 -0
  329. data/html_file.html +92 -0
  330. data/i +181 -0
  331. data/index.html +38 -0
  332. data/index2.html +344 -0
  333. data/inspect.rb +209 -0
  334. data/lib/README +310 -0
  335. data/lib/__index.html +11 -0
  336. data/lib/because.rb +41 -0
  337. data/lib/code.js +28490 -0
  338. data/lib/compile +5 -0
  339. data/lib/conjunction.rb +49 -0
  340. data/lib/evidence.rb +45 -0
  341. data/lib/graphical_help +90 -0
  342. data/lib/however.rb +42 -0
  343. data/lib/index.html +49 -0
  344. data/lib/index2.html +344 -0
  345. data/lib/inputreceiver.rb +135 -0
  346. data/lib/item.rb +77 -0
  347. data/lib/itemlist.rb +50 -0
  348. data/lib/negative.rb +43 -0
  349. data/lib/neutral.rb +43 -0
  350. data/lib/outputter.rb +60 -0
  351. data/lib/p.rb +71 -0
  352. data/lib/positive.rb +41 -0
  353. data/lib/script.js +423 -0
  354. data/lib/string__.rb +110 -0
  355. data/lib/sub/file +5 -0
  356. data/man/foo.rb +6 -0
  357. data/man/gtk.html +1 -0
  358. data/man/out +7288 -0
  359. data/more/ac.desktop +12 -0
  360. data/more/res +1 -0
  361. data/more/web-speech-api/.git/HEAD +1 -0
  362. data/more/web-speech-api/.git/config +11 -0
  363. data/more/web-speech-api/.git/description +1 -0
  364. data/more/web-speech-api/.git/hooks/applypatch-msg.sample +15 -0
  365. data/more/web-speech-api/.git/hooks/commit-msg.sample +24 -0
  366. data/more/web-speech-api/.git/hooks/fsmonitor-watchman.sample +109 -0
  367. data/more/web-speech-api/.git/hooks/post-update.sample +8 -0
  368. data/more/web-speech-api/.git/hooks/pre-applypatch.sample +14 -0
  369. data/more/web-speech-api/.git/hooks/pre-commit.sample +49 -0
  370. data/more/web-speech-api/.git/hooks/pre-merge-commit.sample +13 -0
  371. data/more/web-speech-api/.git/hooks/pre-push.sample +53 -0
  372. data/more/web-speech-api/.git/hooks/pre-rebase.sample +169 -0
  373. data/more/web-speech-api/.git/hooks/pre-receive.sample +24 -0
  374. data/more/web-speech-api/.git/hooks/prepare-commit-msg.sample +42 -0
  375. data/more/web-speech-api/.git/hooks/update.sample +128 -0
  376. data/more/web-speech-api/.git/index +0 -0
  377. data/more/web-speech-api/.git/info/exclude +6 -0
  378. data/more/web-speech-api/.git/logs/HEAD +1 -0
  379. data/more/web-speech-api/.git/logs/refs/heads/master +1 -0
  380. data/more/web-speech-api/.git/logs/refs/remotes/origin/HEAD +1 -0
  381. data/more/web-speech-api/.git/objects/pack/pack-4d2adae000c513b287d53e24937e9e836954f901.idx +0 -0
  382. data/more/web-speech-api/.git/objects/pack/pack-4d2adae000c513b287d53e24937e9e836954f901.pack +0 -0
  383. data/more/web-speech-api/.git/packed-refs +2 -0
  384. data/more/web-speech-api/.git/refs/heads/master +1 -0
  385. data/more/web-speech-api/.git/refs/remotes/origin/HEAD +1 -0
  386. data/more/web-speech-api/CODE_OF_CONDUCT.md +15 -0
  387. data/more/web-speech-api/LICENSE +116 -0
  388. data/more/web-speech-api/README.md +23 -0
  389. data/more/web-speech-api/index.html +25 -0
  390. data/more/web-speech-api/phrase-matcher/index.html +30 -0
  391. data/more/web-speech-api/phrase-matcher/script.js +124 -0
  392. data/more/web-speech-api/phrase-matcher/style.css +54 -0
  393. data/more/web-speech-api/speak-easy-synthesis/img/ws128.png +0 -0
  394. data/more/web-speech-api/speak-easy-synthesis/img/ws512.png +0 -0
  395. data/more/web-speech-api/speak-easy-synthesis/index.html +43 -0
  396. data/more/web-speech-api/speak-easy-synthesis/manifest.webapp +14 -0
  397. data/more/web-speech-api/speak-easy-synthesis/script.js +87 -0
  398. data/more/web-speech-api/speak-easy-synthesis/style.css +74 -0
  399. data/more/web-speech-api/speech-color-changer/img/ws128.png +0 -0
  400. data/more/web-speech-api/speech-color-changer/img/ws512.png +0 -0
  401. data/more/web-speech-api/speech-color-changer/index.html +26 -0
  402. data/more/web-speech-api/speech-color-changer/manifest.webapp +23 -0
  403. data/more/web-speech-api/speech-color-changer/script.js +58 -0
  404. data/more/web-speech-api/speech-color-changer/style.css +38 -0
  405. data/opensrc +68 -0
  406. data/out +39 -0
  407. data/playsrc +14 -0
  408. data/program.c +11 -0
  409. data/program.prog +568 -0
  410. data/proj/a +0 -0
  411. data/proj/a.c +1 -0
  412. data/proj/a.o +0 -0
  413. data/proj/a.rs +18 -0
  414. data/proj/b.rs +22 -0
  415. data/proj/linker.sh +8 -0
  416. data/proj/save_last +4 -0
  417. data/push +16 -0
  418. data/q.cpp +175 -0
  419. data/qt/.qmake.stash +23 -0
  420. data/qt/Qt5Core.dll +0 -0
  421. data/qt/Qt5Gui.dll +0 -0
  422. data/qt/Qt5Multimedia.dll +0 -0
  423. data/qt/Qt5MultimediaWidgets.dll +0 -0
  424. data/qt/Qt5Network.dll +0 -0
  425. data/qt/Qt5PrintSupport.dll +0 -0
  426. data/qt/Qt5Qml.dll +0 -0
  427. data/qt/Qt5QmlModels.dll +0 -0
  428. data/qt/Qt5Quick.dll +0 -0
  429. data/qt/Qt5Sensors.dll +0 -0
  430. data/qt/Qt5WebChannel.dll +0 -0
  431. data/qt/Qt5WebKit.dll +0 -0
  432. data/qt/Qt5WebKitWidgets.dll +0 -0
  433. data/qt/Qt5Widgets.dll +0 -0
  434. data/qt/a.cpp +39 -0
  435. data/qt/a.out +0 -0
  436. data/qt/a.sh +7 -0
  437. data/qt/icudt66.dll +0 -0
  438. data/qt/icuin66.dll +0 -0
  439. data/qt/icuuc66.dll +0 -0
  440. data/qt/libbz2.dll +0 -0
  441. data/qt/libcrypto-1_1-x64.dll +0 -0
  442. data/qt/libfreetype-6.dll +0 -0
  443. data/qt/libgcc_s_seh-1.dll +0 -0
  444. data/qt/libglib-2.0-0.dll +0 -0
  445. data/qt/libharfbuzz-0.dll +0 -0
  446. data/qt/libiconv-2.dll +0 -0
  447. data/qt/libintl-8.dll +0 -0
  448. data/qt/libjpeg-9.dll +0 -0
  449. data/qt/liblzma-5.dll +0 -0
  450. data/qt/libpcre-1.dll +0 -0
  451. data/qt/libpcre2-16-0.dll +0 -0
  452. data/qt/libpng16-16.dll +0 -0
  453. data/qt/libsqlite3-0.dll +0 -0
  454. data/qt/libssl-1_1-x64.dll +0 -0
  455. data/qt/libstdc++-6.dll +0 -0
  456. data/qt/libwebp-7.dll +0 -0
  457. data/qt/libwinpthread-1.dll +0 -0
  458. data/qt/libxml2-2.dll +0 -0
  459. data/qt/libxslt-1.dll +0 -0
  460. data/qt/libzstd.dll +0 -0
  461. data/qt/prog +1 -0
  462. data/qt/qwindows.dll +0 -0
  463. data/qt/zlib1.dll +0 -0
  464. data/quickjs/.git/HEAD +1 -0
  465. data/quickjs/.git/config +11 -0
  466. data/quickjs/.git/description +1 -0
  467. data/quickjs/.git/hooks/applypatch-msg.sample +15 -0
  468. data/quickjs/.git/hooks/commit-msg.sample +24 -0
  469. data/quickjs/.git/hooks/fsmonitor-watchman.sample +109 -0
  470. data/quickjs/.git/hooks/post-update.sample +8 -0
  471. data/quickjs/.git/hooks/pre-applypatch.sample +14 -0
  472. data/quickjs/.git/hooks/pre-commit.sample +49 -0
  473. data/quickjs/.git/hooks/pre-merge-commit.sample +13 -0
  474. data/quickjs/.git/hooks/pre-push.sample +53 -0
  475. data/quickjs/.git/hooks/pre-rebase.sample +169 -0
  476. data/quickjs/.git/hooks/pre-receive.sample +24 -0
  477. data/quickjs/.git/hooks/prepare-commit-msg.sample +42 -0
  478. data/quickjs/.git/hooks/update.sample +128 -0
  479. data/quickjs/.git/index +0 -0
  480. data/quickjs/.git/info/exclude +6 -0
  481. data/quickjs/.git/logs/HEAD +1 -0
  482. data/quickjs/.git/logs/refs/heads/master +1 -0
  483. data/quickjs/.git/logs/refs/remotes/origin/HEAD +1 -0
  484. data/quickjs/.git/objects/pack/pack-744a13dba8773a756b22372ba65ded3aca50cdeb.idx +0 -0
  485. data/quickjs/.git/objects/pack/pack-744a13dba8773a756b22372ba65ded3aca50cdeb.pack +0 -0
  486. data/quickjs/.git/packed-refs +2 -0
  487. data/quickjs/.git/refs/heads/master +1 -0
  488. data/quickjs/.git/refs/remotes/origin/HEAD +1 -0
  489. data/quickjs/.obj/.d +1 -0
  490. data/quickjs/.obj/cutils.nolto.o +0 -0
  491. data/quickjs/.obj/cutils.o +0 -0
  492. data/quickjs/.obj/cutils.o.d +1 -0
  493. data/quickjs/.obj/hello.o +0 -0
  494. data/quickjs/.obj/hello.o.d +1 -0
  495. data/quickjs/.obj/libbf.nolto.o +0 -0
  496. data/quickjs/.obj/libbf.o +0 -0
  497. data/quickjs/.obj/libbf.o.d +1 -0
  498. data/quickjs/.obj/libregexp.nolto.o +0 -0
  499. data/quickjs/.obj/libregexp.o +0 -0
  500. data/quickjs/.obj/libregexp.o.d +2 -0
  501. data/quickjs/.obj/libunicode.nolto.o +0 -0
  502. data/quickjs/.obj/libunicode.o +0 -0
  503. data/quickjs/.obj/libunicode.o.d +1 -0
  504. data/quickjs/.obj/qjs.check.o +0 -0
  505. data/quickjs/.obj/qjs.check.o.d +1 -0
  506. data/quickjs/.obj/qjs.o +0 -0
  507. data/quickjs/.obj/qjs.o.d +1 -0
  508. data/quickjs/.obj/qjsc.o +0 -0
  509. data/quickjs/.obj/qjsc.o.d +1 -0
  510. data/quickjs/.obj/qjscalc.o +0 -0
  511. data/quickjs/.obj/qjscalc.o.d +1 -0
  512. data/quickjs/.obj/quickjs-libc.nolto.o +0 -0
  513. data/quickjs/.obj/quickjs-libc.o +0 -0
  514. data/quickjs/.obj/quickjs-libc.o.d +2 -0
  515. data/quickjs/.obj/quickjs.check.o +0 -0
  516. data/quickjs/.obj/quickjs.check.o.d +2 -0
  517. data/quickjs/.obj/quickjs.nolto.o +0 -0
  518. data/quickjs/.obj/quickjs.o +0 -0
  519. data/quickjs/.obj/quickjs.o.d +2 -0
  520. data/quickjs/.obj/repl.o +0 -0
  521. data/quickjs/.obj/repl.o.d +1 -0
  522. data/quickjs/.obj/run-test262.o +0 -0
  523. data/quickjs/.obj/run-test262.o.d +2 -0
  524. data/quickjs/COMPILE_WIN +1 -0
  525. data/quickjs/Changelog +148 -0
  526. data/quickjs/LICENSE +22 -0
  527. data/quickjs/Makefile +470 -0
  528. data/quickjs/TODO +70 -0
  529. data/quickjs/VERSION +1 -0
  530. data/quickjs/a.c +50038 -0
  531. data/quickjs/a.js +26075 -0
  532. data/quickjs/a.rb +3 -0
  533. data/quickjs/cutils.c +631 -0
  534. data/quickjs/cutils.h +297 -0
  535. data/quickjs/doc/jsbignum.texi +589 -0
  536. data/quickjs/doc/quickjs.texi +1097 -0
  537. data/quickjs/examples/fib.c +72 -0
  538. data/quickjs/examples/fib_module.js +10 -0
  539. data/quickjs/examples/hello +0 -0
  540. data/quickjs/examples/hello.js +1 -0
  541. data/quickjs/examples/hello_module.js +6 -0
  542. data/quickjs/examples/pi_bigdecimal.js +68 -0
  543. data/quickjs/examples/pi_bigfloat.js +66 -0
  544. data/quickjs/examples/pi_bigint.js +118 -0
  545. data/quickjs/examples/point.c +151 -0
  546. data/quickjs/examples/test_fib.js +6 -0
  547. data/quickjs/examples/test_point.js +40 -0
  548. data/quickjs/hello.c +44 -0
  549. data/quickjs/libbf.c +8466 -0
  550. data/quickjs/libbf.h +535 -0
  551. data/quickjs/libquickjs.a +0 -0
  552. data/quickjs/libquickjs.lto.a +0 -0
  553. data/quickjs/libregexp-opcode.h +58 -0
  554. data/quickjs/libregexp.c +2610 -0
  555. data/quickjs/libregexp.h +92 -0
  556. data/quickjs/libunicode-table.h +4368 -0
  557. data/quickjs/libunicode.c +1556 -0
  558. data/quickjs/libunicode.h +124 -0
  559. data/quickjs/libwinpthread-1.dll +0 -0
  560. data/quickjs/list.h +100 -0
  561. data/quickjs/out.c +24 -0
  562. data/quickjs/out55.c +59 -0
  563. data/quickjs/out56.c +79 -0
  564. data/quickjs/out57.c +24 -0
  565. data/quickjs/out58.c +4 -0
  566. data/quickjs/p.exe +0 -0
  567. data/quickjs/qjs +0 -0
  568. data/quickjs/qjs.c +570 -0
  569. data/quickjs/qjsc +0 -0
  570. data/quickjs/qjsc.c +762 -0
  571. data/quickjs/qjsc.exe +0 -0
  572. data/quickjs/qjscalc.c +4005 -0
  573. data/quickjs/qjscalc.js +2657 -0
  574. data/quickjs/quickjs-atom.h +273 -0
  575. data/quickjs/quickjs-libc.c +3927 -0
  576. data/quickjs/quickjs-libc.h +59 -0
  577. data/quickjs/quickjs-opcode.h +365 -0
  578. data/quickjs/quickjs.c +54036 -0
  579. data/quickjs/quickjs.h +1049 -0
  580. data/quickjs/readme.txt +1 -0
  581. data/quickjs/release.sh +158 -0
  582. data/quickjs/repl.c +2020 -0
  583. data/quickjs/repl.js +1566 -0
  584. data/quickjs/run-test262 +0 -0
  585. data/quickjs/run-test262.c +2107 -0
  586. data/quickjs/test262.conf +199 -0
  587. data/quickjs/test262_errors.txt +35 -0
  588. data/quickjs/test262o.conf +410 -0
  589. data/quickjs/test262o_errors.txt +0 -0
  590. data/quickjs/tests/bjson.c +96 -0
  591. data/quickjs/tests/microbench.js +1065 -0
  592. data/quickjs/tests/test262.patch +71 -0
  593. data/quickjs/tests/test_bignum.js +326 -0
  594. data/quickjs/tests/test_bjson.js +191 -0
  595. data/quickjs/tests/test_builtin.js +685 -0
  596. data/quickjs/tests/test_closure.js +221 -0
  597. data/quickjs/tests/test_language.js +547 -0
  598. data/quickjs/tests/test_loop.js +368 -0
  599. data/quickjs/tests/test_op_overloading.js +207 -0
  600. data/quickjs/tests/test_qjscalc.js +256 -0
  601. data/quickjs/tests/test_std.js +281 -0
  602. data/quickjs/tests/test_worker.js +62 -0
  603. data/quickjs/tests/test_worker_module.js +31 -0
  604. data/quickjs/unicode_download.sh +19 -0
  605. data/quickjs/unicode_gen.c +3057 -0
  606. data/quickjs/unicode_gen_def.h +284 -0
  607. data/readline +3 -0
  608. data/rm_com +1 -0
  609. data/run.sh +13 -0
  610. data/scaling +6 -0
  611. data/script.js +572 -0
  612. data/server_creator/__ +307 -0
  613. data/server_creator/a/a (1).tar.gz +0 -0
  614. data/server_creator/a/a.out +0 -0
  615. data/server_creator/a/hello_world +0 -0
  616. data/server_creator/a/help +57 -0
  617. data/server_creator/a/main_v1.cpp +83 -0
  618. data/server_creator/a/my_libs_gregory/.deps +0 -0
  619. data/server_creator/a/my_libs_gregory/.libs/mod_my_libs_gregory.lai +41 -0
  620. data/server_creator/a/my_libs_gregory/.libs/mod_my_libs_gregory.o +0 -0
  621. data/server_creator/a/my_libs_gregory/.libs/mod_my_libs_gregory.so +0 -0
  622. data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.c +72 -0
  623. data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.la +41 -0
  624. data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.lo +12 -0
  625. data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.slo +0 -0
  626. data/server_creator/a/nginx.conf +32 -0
  627. data/server_creator/a/six +1 -0
  628. data/server_creator/a.out +0 -0
  629. data/server_creator/all_code.cpp +448 -0
  630. data/server_creator/all_code.js +27 -0
  631. data/server_creator/code +510 -0
  632. data/server_creator/make_application +64 -0
  633. data/server_creator/prog.cpp +33 -0
  634. data/server_creator/prog.js +22 -0
  635. data/server_creator/program.js +745 -0
  636. data/server_creator/rm_com +1 -0
  637. data/server_creator/test.sh +82 -0
  638. data/speakcat.rb +9 -0
  639. data/string +48 -0
  640. data/super_trans +83 -0
  641. data/test.sh +21 -0
  642. data/todo +8 -0
  643. data/version_decrement +3 -0
  644. data/viu_license +21 -0
  645. data/windows/program.c +21 -0
  646. data/windows/program.exe +0 -0
  647. metadata +759 -0
@@ -0,0 +1,303 @@
1
+ #define MULTIPANE true
2
+ #define TRANSPARENT true
3
+ #define UA "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36"
4
+
5
+ #include <QApplication>
6
+ #include <QSplitter>
7
+ #include <QMainWindow>
8
+ #include <QWebEngineView>
9
+ #include <QWebEngineFullScreenRequest>
10
+
11
+ //#include "./fullscreenwindow.h"
12
+ #include <QWebEngineSettings>
13
+ #include <QWebEngineProfile>
14
+ #include <QNetworkProxyFactory>
15
+ //#i
16
+ //#include <QWebEngineProfile
17
+
18
+ #include <QUrl>
19
+ #include "qtermwidget.h"
20
+ #include <QStyleFactory>
21
+ #include <QScreen>
22
+ #include <QVBoxLayout>
23
+ #include <unistd.h>
24
+ #define findC(a) get_window()->findChildren<a*>()
25
+ #define findQTermWidgets findC(QTermWidget)
26
+ #define findQWebEngineViews findC(QWebEngineView)
27
+ #define FOO QList<int>()
28
+
29
+ auto get_window()
30
+ static QSplitter* s = nullptr
31
+
32
+ if s == nullptr
33
+ s = new QSplitter(nullptr)
34
+
35
+ return s
36
+
37
+ //#include <unistd.h>
38
+
39
+ void fullscreen(QWebEngineFullScreenRequest request)
40
+ puts("Fullscreen")
41
+
42
+
43
+ auto get_acwin(QWidget* w)
44
+ (void)w
45
+ static QMainWindow* s = nullptr
46
+ if s == nullptr
47
+ s = new QMainWindow
48
+ #include "ss.h"
49
+ s->setStyleSheet( ss)
50
+
51
+ // return
52
+ // e
53
+ return s
54
+ // if a == nullptr
55
+ // return
56
+
57
+
58
+
59
+ void bg()
60
+ puts("BG")
61
+
62
+
63
+ a decl std::string("")
64
+ unlink("/tmp/emerald-browser-fifo")
65
+ result decl system("mkfifo /tmp/emerald-browser-fifo 2>/dev/null")
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+
113
+
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+
137
+
138
+ b decl std::string("/tmp/emerald-browser-fifo")
139
+ // emfifo")
140
+ //c decl a
141
+ while true
142
+ a < b
143
+ std::cout << std::quoted(a) << std::endl
144
+
145
+ old_str decl QString(a.c_str())
146
+ old_list decl old_str.split("\n")
147
+
148
+ // for auto i : get_window()->children()
149
+ // static_cast<QWidget*>(i)->resize(QGuiApplication::primaryScreen()->size().width(), 50)
150
+ //i.resize(i->ge, 0)
151
+ //std::cout << i << std::endl;
152
+
153
+ for auto i : old_list
154
+ // empty decl i.isEmpty()
155
+
156
+ empty decl i.isEmpty()
157
+ if empty
158
+ continue;
159
+ // continue;
160
+
161
+ if i == "close"
162
+ delete get_window()
163
+ exit(0)
164
+
165
+ qDebug() << i << i.right(i.length() - 5) << "!!!"
166
+
167
+ if QMetaObject::invokeMethod(get_window(), "objectNameChanged", Qt::QueuedConnection, Q_ARG(const QString&, i.right(i.length()-5))) == false
168
+ puts("Error")
169
+
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+
178
+ void add_window(const QString& website)
179
+ viewptr decl new QWebEngineView
180
+ view decl& (*viewptr)
181
+ view.resize(QGuiApplication::primaryScreen()->size().width(), 800)
182
+ for auto i : findQWebEngineViews
183
+ if !MULTIPANE
184
+ delete i
185
+ // i->destroy()
186
+ // a = findQWebEngineViews
187
+
188
+ views decl findQWebEngineViews
189
+ new_list decl FOO
190
+ views_size decl views.size()
191
+ for (int i = 0; i < views_size; ++i)
192
+ new_list append 0
193
+
194
+ //get_window()->setSizes(views )
195
+ get_window()->setSizes(new_list)
196
+
197
+ get_window()->addWidget(viewptr)
198
+ // qDebug() << website;
199
+ // qDebug() << website;
200
+ //view.page().profil
201
+ view.page()->profile()->setHttpUserAgent(UA)
202
+ view.load(QUrl(website))
203
+ //a = a
204
+
205
+ // se
206
+ a decl view.settings()
207
+
208
+ for (int i = 0; i < 31; ++i)
209
+ QWebEngineSettings::WebAttribute b = static_cast<QWebEngineSettings::WebAttribute>(i)
210
+ a->setAttribute(b, true)
211
+
212
+ f decl get_window()->font()
213
+ f setPointSize 20
214
+ view setFont f
215
+ f setStyleStrategy(QFont::PreferAntialias)
216
+ // view.setRenderHint(QPainter::Antialiasing, true)
217
+
218
+ //addd decl QPainter
219
+ viewptr->show()
220
+
221
+ QObject:: connect(view.page(), &QWebEnginePage::fullScreenRequested, get_acwin(nullptr),fullscreen)
222
+ // &QWidget::fullScreenRequested)
223
+
224
+ //get_window()->showFullScreen()
225
+ //get_window()
226
+ //get_window()->get_full
227
+ void signal_(const QString& a)
228
+ for (int i = 0; i < 2; ++i)
229
+ qDebug() << a << '\n'
230
+
231
+ add_window(a)
232
+
233
+ //void
234
+
235
+ main
236
+ QApplication a(argc, argv)
237
+ //QNetworkProxyFactory::setUseSystemConfiguration(false);
238
+
239
+
240
+ QApplication::setStyle("gtk2");// num_terms decl
241
+ //window_ decl new QMainWindow
242
+
243
+
244
+ layoutptr decl get_window()
245
+ layout decl& (*layoutptr)
246
+ QObject::connect( layoutptr, &QObject::objectNameChanged, signal_ );
247
+ //window_ setContentsMargins 0, 0, 0, 0)
248
+ //get_window()->setObjectName(QString("foo"))
249
+ layout setOrientation(Qt::Vertical)
250
+
251
+
252
+
253
+ n decl (argc==1 ? 1 : atoi(argv[1]))
254
+
255
+ for (int i = 0; i <n; ++i)
256
+ consoleptr decl new QTermWidget
257
+ console decl& (*consoleptr)
258
+ qDebug() << " availableColorSchemes:" << console.availableColorSchemes()
259
+ console.setColorScheme("GreenOnWhite");
260
+ // console.setTerminalOpacity(0.7)
261
+ //setTerminalOpacity(0.8)
262
+
263
+ //console.setTOpacity(80)
264
+ //font decl QApplication::font()
265
+ //console setColor "black"
266
+ //font setFamily "Monospace"
267
+ //font setPointSize 8
268
+ //console setTerminalFont font
269
+ layout addWidget consoleptr
270
+
271
+ if i == 0
272
+ get_acwin(nullptr)->setCentralWidget(layoutptr)
273
+ if TRANSPARENT
274
+ get_acwin(nullptr)->setAttribute(Qt::WA_TranslucentBackground);
275
+ //
276
+ //get_window()->setCentralWidget
277
+
278
+
279
+ size decl QGuiApplication::primaryScreen()->size()
280
+ // rec decl QApplication::desktop()->screenGeometry()
281
+ height decl size.height()
282
+ width decl size.width()
283
+ //acwin decl new QVBoxLayout(get_acwin(nullptr))
284
+ // layout.setLayout(acwin)
285
+ // get_acwin(nullptr)->setSpacing(0)
286
+ // get_acwin(nullptr)->setMargin(0)
287
+ //get_acwin->addWidget(layoutptr)
288
+ //get_acwin(acwin)
289
+
290
+ get_acwin(nullptr)->resize(width, height)
291
+
292
+ //get_acwin(nullptr)->setCentralWidget(get_window())
293
+ get_acwin(nullptr)->showFullScreen()
294
+ //layout.s
295
+ styles decl QStyleFactory::keys()
296
+
297
+ styles
298
+ qDebug() << i
299
+
300
+ // bg()
301
+ bg &
302
+
303
+ return a.exec()
Binary file
@@ -0,0 +1,12 @@
1
+ const char* ss = "border-radius: 10px; border: 1px solid black; background: black;"
2
+ "-webkit-font-smoothing: antialiased;"
3
+ " -moz-osx-font-smoothing: grayscale;"
4
+ "font-smooth: always;"
5
+
6
+ //"*::after {"
7
+ // "content: \" - Remember this\";"
8
+ //"}";
9
+
10
+ //auto ss = "background: black; background: pink";
11
+
12
+ ;
@@ -0,0 +1,98 @@
1
+ /****************************************************************************
2
+ **
3
+ ** Copyright (C) 2017 The Qt Company Ltd.
4
+ ** Contact: https://www.qt.io/licensing/
5
+ **
6
+ ** This file is part of the examples of the Qt Toolkit.
7
+ **
8
+ ** $QT_BEGIN_LICENSE:BSD$
9
+ ** Commercial License Usage
10
+ ** Licensees holding valid commercial Qt licenses may use this file in
11
+ ** accordance with the commercial license agreement provided with the
12
+ ** Software or, alternatively, in accordance with the terms contained in
13
+ ** a written agreement between you and The Qt Company. For licensing terms
14
+ ** and conditions see https://www.qt.io/terms-conditions. For further
15
+ ** information use the contact form at https://www.qt.io/contact-us.
16
+ **
17
+ ** BSD License Usage
18
+ ** Alternatively, you may use this file under the terms of the BSD license
19
+ ** as follows:
20
+ **
21
+ ** "Redistribution and use in source and binary forms, with or without
22
+ ** modification, are permitted provided that the following conditions are
23
+ ** met:
24
+ ** * Redistributions of source code must retain the above copyright
25
+ ** notice, this list of conditions and the following disclaimer.
26
+ ** * Redistributions in binary form must reproduce the above copyright
27
+ ** notice, this list of conditions and the following disclaimer in
28
+ ** the documentation and/or other materials provided with the
29
+ ** distribution.
30
+ ** * Neither the name of The Qt Company Ltd nor the names of its
31
+ ** contributors may be used to endorse or promote products derived
32
+ ** from this software without specific prior written permission.
33
+ **
34
+ **
35
+ ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
36
+ ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
37
+ ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
38
+ ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
39
+ ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
40
+ ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
41
+ ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
42
+ ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
43
+ ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
44
+ ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
45
+ ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
46
+ **
47
+ ** $QT_END_LICENSE$
48
+ **
49
+ ****************************************************************************/
50
+
51
+ #include "fullscreennotification.h"
52
+
53
+ #include <QGraphicsOpacityEffect>
54
+ #include <QPropertyAnimation>
55
+ #include <QSequentialAnimationGroup>
56
+
57
+ FullScreenNotification::FullScreenNotification(QWidget *parent)
58
+ : QLabel(parent)
59
+ , m_previouslyVisible(false)
60
+ {
61
+ setText(tr("You are now in full screen mode. Press ESC to quit!"));
62
+ setStyleSheet(
63
+ "font-size: 24px;"
64
+ "color: white;"
65
+ "background-color: black;"
66
+ "border-color: white;"
67
+ "border-width: 2px;"
68
+ "border-style: solid;"
69
+ "padding: 100px");
70
+ setAttribute(Qt::WA_TransparentForMouseEvents);
71
+
72
+ auto effect = new QGraphicsOpacityEffect;
73
+ effect->setOpacity(1);
74
+ setGraphicsEffect(effect);
75
+
76
+ auto animations = new QSequentialAnimationGroup(this);
77
+ animations->addPause(3000);
78
+ auto opacityAnimation = new QPropertyAnimation(effect, "opacity", animations);
79
+ opacityAnimation->setDuration(2000);
80
+ opacityAnimation->setStartValue(1.0);
81
+ opacityAnimation->setEndValue(0.0);
82
+ opacityAnimation->setEasingCurve(QEasingCurve::OutQuad);
83
+ animations->addAnimation(opacityAnimation);
84
+
85
+ connect(this, &FullScreenNotification::shown,
86
+ [animations](){ animations->start(); });
87
+
88
+ connect(animations, &QAbstractAnimation::finished,
89
+ [this](){ this->hide(); });
90
+ }
91
+
92
+ void FullScreenNotification::showEvent(QShowEvent *event)
93
+ {
94
+ QLabel::showEvent(event);
95
+ if (!m_previouslyVisible && isVisible())
96
+ emit shown();
97
+ m_previouslyVisible = isVisible();
98
+ }
@@ -0,0 +1,72 @@
1
+ /****************************************************************************
2
+ **
3
+ ** Copyright (C) 2017 The Qt Company Ltd.
4
+ ** Contact: https://www.qt.io/licensing/
5
+ **
6
+ ** This file is part of the examples of the Qt Toolkit.
7
+ **
8
+ ** $QT_BEGIN_LICENSE:BSD$
9
+ ** Commercial License Usage
10
+ ** Licensees holding valid commercial Qt licenses may use this file in
11
+ ** accordance with the commercial license agreement provided with the
12
+ ** Software or, alternatively, in accordance with the terms contained in
13
+ ** a written agreement between you and The Qt Company. For licensing terms
14
+ ** and conditions see https://www.qt.io/terms-conditions. For further
15
+ ** information use the contact form at https://www.qt.io/contact-us.
16
+ **
17
+ ** BSD License Usage
18
+ ** Alternatively, you may use this file under the terms of the BSD license
19
+ ** as follows:
20
+ **
21
+ ** "Redistribution and use in source and binary forms, with or without
22
+ ** modification, are permitted provided that the following conditions are
23
+ ** met:
24
+ ** * Redistributions of source code must retain the above copyright
25
+ ** notice, this list of conditions and the following disclaimer.
26
+ ** * Redistributions in binary form must reproduce the above copyright
27
+ ** notice, this list of conditions and the following disclaimer in
28
+ ** the documentation and/or other materials provided with the
29
+ ** distribution.
30
+ ** * Neither the name of The Qt Company Ltd nor the names of its
31
+ ** contributors may be used to endorse or promote products derived
32
+ ** from this software without specific prior written permission.
33
+ **
34
+ **
35
+ ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
36
+ ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
37
+ ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
38
+ ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
39
+ ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
40
+ ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
41
+ ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
42
+ ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
43
+ ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
44
+ ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
45
+ ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
46
+ **
47
+ ** $QT_END_LICENSE$
48
+ **
49
+ ****************************************************************************/
50
+
51
+ #ifndef FULLSCREENNOTIFICATION_H
52
+ #define FULLSCREENNOTIFICATION_H
53
+
54
+ #include <QLabel>
55
+
56
+ class FullScreenNotification : public QLabel
57
+ {
58
+ Q_OBJECT
59
+ public:
60
+ FullScreenNotification(QWidget *parent = nullptr);
61
+
62
+ protected:
63
+ void showEvent(QShowEvent *event) override;
64
+
65
+ signals:
66
+ void shown();
67
+
68
+ private:
69
+ bool m_previouslyVisible;
70
+ };
71
+
72
+ #endif // FULLSCREENNOTIFICATION_H
@@ -0,0 +1,99 @@
1
+ /****************************************************************************
2
+ **
3
+ ** Copyright (C) 2017 The Qt Company Ltd.
4
+ ** Contact: https://www.qt.io/licensing/
5
+ **
6
+ ** This file is part of the examples of the Qt Toolkit.
7
+ **
8
+ ** $QT_BEGIN_LICENSE:BSD$
9
+ ** Commercial License Usage
10
+ ** Licensees holding valid commercial Qt licenses may use this file in
11
+ ** accordance with the commercial license agreement provided with the
12
+ ** Software or, alternatively, in accordance with the terms contained in
13
+ ** a written agreement between you and The Qt Company. For licensing terms
14
+ ** and conditions see https://www.qt.io/terms-conditions. For further
15
+ ** information use the contact form at https://www.qt.io/contact-us.
16
+ **
17
+ ** BSD License Usage
18
+ ** Alternatively, you may use this file under the terms of the BSD license
19
+ ** as follows:
20
+ **
21
+ ** "Redistribution and use in source and binary forms, with or without
22
+ ** modification, are permitted provided that the following conditions are
23
+ ** met:
24
+ ** * Redistributions of source code must retain the above copyright
25
+ ** notice, this list of conditions and the following disclaimer.
26
+ ** * Redistributions in binary form must reproduce the above copyright
27
+ ** notice, this list of conditions and the following disclaimer in
28
+ ** the documentation and/or other materials provided with the
29
+ ** distribution.
30
+ ** * Neither the name of The Qt Company Ltd nor the names of its
31
+ ** contributors may be used to endorse or promote products derived
32
+ ** from this software without specific prior written permission.
33
+ **
34
+ **
35
+ ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
36
+ ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
37
+ ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
38
+ ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
39
+ ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
40
+ ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
41
+ ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
42
+ ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
43
+ ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
44
+ ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
45
+ ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
46
+ **
47
+ ** $QT_END_LICENSE$
48
+ **
49
+ ****************************************************************************/
50
+
51
+ #include "fullscreenwindow.h"
52
+
53
+ #include "fullscreennotification.h"
54
+
55
+ #include <QAction>
56
+ #include <QLabel>
57
+ #include <QWebEngineView>
58
+
59
+ FullScreenWindow::FullScreenWindow(QWebEngineView *oldView, QWidget *parent)
60
+ : QWidget(parent)
61
+ , m_view(new QWebEngineView(this))
62
+ , m_notification(new FullScreenNotification(this))
63
+ , m_oldView(oldView)
64
+ , m_oldGeometry(oldView->window()->geometry())
65
+ {
66
+ m_view->stackUnder(m_notification);
67
+
68
+ auto exitAction = new QAction(this);
69
+ exitAction->setShortcut(Qt::Key_Escape);
70
+ connect(exitAction, &QAction::triggered, [this]() {
71
+ m_view->triggerPageAction(QWebEnginePage::ExitFullScreen);
72
+ });
73
+ addAction(exitAction);
74
+
75
+ m_view->setPage(m_oldView->page());
76
+ setGeometry(m_oldGeometry);
77
+ showFullScreen();
78
+ m_oldView->window()->hide();
79
+ }
80
+
81
+ FullScreenWindow::~FullScreenWindow()
82
+ {
83
+ m_oldView->setPage(m_view->page());
84
+ m_oldView->window()->setGeometry(m_oldGeometry);
85
+ m_oldView->window()->show();
86
+ hide();
87
+ }
88
+
89
+ void FullScreenWindow::resizeEvent(QResizeEvent *event)
90
+ {
91
+ QRect viewGeometry(QPoint(0, 0), size());
92
+ m_view->setGeometry(viewGeometry);
93
+
94
+ QRect notificationGeometry(QPoint(0, 0), m_notification->sizeHint());
95
+ notificationGeometry.moveCenter(viewGeometry.center());
96
+ m_notification->setGeometry(notificationGeometry);
97
+
98
+ QWidget::resizeEvent(event);
99
+ }
@@ -0,0 +1,76 @@
1
+ /****************************************************************************
2
+ **
3
+ ** Copyright (C) 2017 The Qt Company Ltd.
4
+ ** Contact: https://www.qt.io/licensing/
5
+ **
6
+ ** This file is part of the examples of the Qt Toolkit.
7
+ **
8
+ ** $QT_BEGIN_LICENSE:BSD$
9
+ ** Commercial License Usage
10
+ ** Licensees holding valid commercial Qt licenses may use this file in
11
+ ** accordance with the commercial license agreement provided with the
12
+ ** Software or, alternatively, in accordance with the terms contained in
13
+ ** a written agreement between you and The Qt Company. For licensing terms
14
+ ** and conditions see https://www.qt.io/terms-conditions. For further
15
+ ** information use the contact form at https://www.qt.io/contact-us.
16
+ **
17
+ ** BSD License Usage
18
+ ** Alternatively, you may use this file under the terms of the BSD license
19
+ ** as follows:
20
+ **
21
+ ** "Redistribution and use in source and binary forms, with or without
22
+ ** modification, are permitted provided that the following conditions are
23
+ ** met:
24
+ ** * Redistributions of source code must retain the above copyright
25
+ ** notice, this list of conditions and the following disclaimer.
26
+ ** * Redistributions in binary form must reproduce the above copyright
27
+ ** notice, this list of conditions and the following disclaimer in
28
+ ** the documentation and/or other materials provided with the
29
+ ** distribution.
30
+ ** * Neither the name of The Qt Company Ltd nor the names of its
31
+ ** contributors may be used to endorse or promote products derived
32
+ ** from this software without specific prior written permission.
33
+ **
34
+ **
35
+ ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
36
+ ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
37
+ ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
38
+ ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
39
+ ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
40
+ ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
41
+ ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
42
+ ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
43
+ ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
44
+ ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
45
+ ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
46
+ **
47
+ ** $QT_END_LICENSE$
48
+ **
49
+ ****************************************************************************/
50
+
51
+ #ifndef FULLSCREENWINDOW_H
52
+ #define FULLSCREENWINDOW_H
53
+
54
+ #include <QWidget>
55
+
56
+
57
+ class FullScreenNotification;
58
+
59
+ class FullScreenWindow : public QWidget
60
+ {
61
+ Q_OBJECT
62
+ public:
63
+ explicit FullScreenWindow(QWebEngineView *oldView, QWidget *parent = nullptr);
64
+ ~FullScreenWindow();
65
+
66
+ protected:
67
+ void resizeEvent(QResizeEvent *event) override;
68
+
69
+ private:
70
+ QWebEngineView *m_view;
71
+ FullScreenNotification *m_notification;
72
+ QWebEngineView *m_oldView;
73
+ QRect m_oldGeometry;
74
+ };
75
+
76
+ #endif // FULLSCREENWINDOW_H