GameSentenceMiner 2.18.12__tar.gz → 2.18.13__tar.gz

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 GameSentenceMiner might be problematic. Click here for more details.

Files changed (139) hide show
  1. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ui/anki_confirmation.py +9 -20
  2. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ui/screenshot_selector.py +6 -19
  3. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner.egg-info/PKG-INFO +1 -1
  4. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/PKG-INFO +1 -1
  5. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/pyproject.toml +1 -1
  6. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/__init__.py +0 -0
  7. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ai/__init__.py +0 -0
  8. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ai/ai_prompting.py +0 -0
  9. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/anki.py +0 -0
  10. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/assets/__init__.py +0 -0
  11. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/assets/icon.png +0 -0
  12. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/assets/icon128.png +0 -0
  13. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/assets/icon256.png +0 -0
  14. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/assets/icon32.png +0 -0
  15. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/assets/icon512.png +0 -0
  16. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/assets/icon64.png +0 -0
  17. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/assets/pickaxe.png +0 -0
  18. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/gametext.py +0 -0
  19. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/gsm.py +0 -0
  20. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/locales/en_us.json +0 -0
  21. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/locales/ja_jp.json +0 -0
  22. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/locales/zh_cn.json +0 -0
  23. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/obs.py +0 -0
  24. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ocr/__init__.py +0 -0
  25. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ocr/gsm_ocr_config.py +0 -0
  26. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ocr/ocrconfig.py +0 -0
  27. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ocr/owocr_area_selector.py +0 -0
  28. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ocr/owocr_helper.py +0 -0
  29. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ocr/ss_picker.py +0 -0
  30. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/owocr/owocr/__init__.py +0 -0
  31. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/owocr/owocr/__main__.py +0 -0
  32. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/owocr/owocr/config.py +0 -0
  33. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/owocr/owocr/lens_betterproto.py +0 -0
  34. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/owocr/owocr/ocr.py +0 -0
  35. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/owocr/owocr/run.py +0 -0
  36. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/owocr/owocr/screen_coordinate_picker.py +0 -0
  37. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/tools/__init__.py +0 -0
  38. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/tools/audio_offset_selector.py +0 -0
  39. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/tools/furigana_filter_preview.py +0 -0
  40. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/tools/ss_selector.py +0 -0
  41. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/tools/window_transparency.py +0 -0
  42. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ui/__init__.py +0 -0
  43. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ui/config_gui.py +0 -0
  44. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/ui/furigana_filter_preview.py +0 -0
  45. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/__init__.py +0 -0
  46. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/audio_player.py +0 -0
  47. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/communication/__init__.py +0 -0
  48. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/communication/send.py +0 -0
  49. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/communication/websocket.py +0 -0
  50. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/configuration.py +0 -0
  51. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/db.py +0 -0
  52. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/downloader/Untitled_json.py +0 -0
  53. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/downloader/__init__.py +0 -0
  54. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/downloader/download_tools.py +0 -0
  55. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/downloader/oneocr_dl.py +0 -0
  56. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/electron_config.py +0 -0
  57. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/ffmpeg.py +0 -0
  58. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/get_overlay_coords.py +0 -0
  59. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/gsm_utils.py +0 -0
  60. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/model.py +0 -0
  61. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/notification.py +0 -0
  62. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/text_log.py +0 -0
  63. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/win10toast/__init__.py +0 -0
  64. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/util/win10toast/__main__.py +0 -0
  65. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/vad.py +0 -0
  66. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/__init__.py +0 -0
  67. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/database_api.py +0 -0
  68. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/events.py +0 -0
  69. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/gsm_websocket.py +0 -0
  70. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/service.py +0 -0
  71. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/__init__.py +0 -0
  72. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/apple-touch-icon.png +0 -0
  73. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/css/dashboard-shared.css +0 -0
  74. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/css/kanji-grid.css +0 -0
  75. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/css/overview.css +0 -0
  76. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/css/popups-shared.css +0 -0
  77. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/css/search.css +0 -0
  78. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/css/shared.css +0 -0
  79. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/css/stats.css +0 -0
  80. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/favicon-96x96.png +0 -0
  81. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/favicon.ico +0 -0
  82. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/favicon.svg +0 -0
  83. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/js/anki_stats.js +0 -0
  84. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/js/database.js +0 -0
  85. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/js/goals.js +0 -0
  86. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/js/kanji-grid.js +0 -0
  87. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/js/overview.js +0 -0
  88. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/js/search.js +0 -0
  89. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/js/shared.js +0 -0
  90. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/js/stats.js +0 -0
  91. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/site.webmanifest +0 -0
  92. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/style.css +0 -0
  93. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/web-app-manifest-192x192.png +0 -0
  94. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/static/web-app-manifest-512x512.png +0 -0
  95. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/stats.py +0 -0
  96. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/anki_stats.html +0 -0
  97. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/basic_kanji_book_bkb_v1_v2.json +0 -0
  98. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/duolingo_kanji.json +0 -0
  99. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/grade.json +0 -0
  100. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/hk_primary_learning.json +0 -0
  101. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/hkscs2016.json +0 -0
  102. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/hsk_levels.json +0 -0
  103. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/humanum_frequency_list.json +0 -0
  104. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/jis_levels.json +0 -0
  105. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/jlpt_level.json +0 -0
  106. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/jpdb_kanji_frequency_list.json +0 -0
  107. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/jpdbv2_kanji_frequency_list.json +0 -0
  108. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/jun_das_modern_chinese_character_frequency_list.json +0 -0
  109. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/kanji_in_context_revised_edition.json +0 -0
  110. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/kanji_kentei_level.json +0 -0
  111. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/mainland_china_elementary_textbook_characters.json +0 -0
  112. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/moe_way_quiz.json +0 -0
  113. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/official_kanji.json +0 -0
  114. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/remembering_the_kanji.json +0 -0
  115. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/standard_form_of_national_characters.json +0 -0
  116. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/table_of_general_standard_chinese_characters.json +0 -0
  117. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/the_kodansha_kanji_learners_course_klc.json +0 -0
  118. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/thousand_character_classic.json +0 -0
  119. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/wanikani_levels.json +0 -0
  120. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/kanji_grid/words_hk_frequency_list.json +0 -0
  121. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/navigation.html +0 -0
  122. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/components/theme-styles.html +0 -0
  123. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/database.html +0 -0
  124. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/goals.html +0 -0
  125. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/index.html +0 -0
  126. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/overview.html +0 -0
  127. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/search.html +0 -0
  128. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/stats.html +0 -0
  129. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/templates/utility.html +0 -0
  130. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/web/texthooking_page.py +0 -0
  131. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner/wip/__init___.py +0 -0
  132. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner.egg-info/SOURCES.txt +0 -0
  133. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner.egg-info/dependency_links.txt +0 -0
  134. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner.egg-info/entry_points.txt +0 -0
  135. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner.egg-info/requires.txt +0 -0
  136. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/GameSentenceMiner.egg-info/top_level.txt +0 -0
  137. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/LICENSE +0 -0
  138. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/README.md +0 -0
  139. {gamesentenceminer-2.18.12 → gamesentenceminer-2.18.13}/setup.cfg +0 -0
@@ -46,28 +46,17 @@ class AnkiConfirmationDialog(tk.Toplevel):
46
46
  # --- Create and lay out widgets ---
47
47
  self._create_widgets(expression, sentence, screenshot_path, audio_path, translation)
48
48
 
49
- # --- Smarter Centering Logic ---
49
+ # --- Center the dialog on screen ---
50
50
  self.update_idletasks()
51
51
 
52
- if parent.state() == 'withdrawn':
53
- screen_width = self.winfo_screenwidth()
54
- screen_height = self.winfo_screenheight()
55
- dialog_width = self.winfo_width()
56
- dialog_height = self.winfo_height()
57
- x = (screen_width // 2) - (dialog_width // 2)
58
- y = (screen_height // 2) - (dialog_height // 2)
59
- self.geometry(f'+{x}+{y}')
60
- else:
61
- self.transient(parent)
62
- parent_x = parent.winfo_x()
63
- parent_y = parent.winfo_y()
64
- parent_width = parent.winfo_width()
65
- parent_height = parent.winfo_height()
66
- dialog_width = self.winfo_width()
67
- dialog_height = self.winfo_height()
68
- x = parent_x + (parent_width // 2) - (dialog_width // 2)
69
- y = parent_y + (parent_height // 2) - (dialog_height // 2)
70
- self.geometry(f'+{x}+{y}')
52
+ dialog_width = self.winfo_width()
53
+ dialog_height = self.winfo_height()
54
+ screen_width = self.winfo_screenwidth()
55
+ screen_height = self.winfo_screenheight()
56
+
57
+ x = (screen_width // 2) - (dialog_width // 2)
58
+ y = (screen_height // 2) - (dialog_height // 2)
59
+ self.geometry(f'+{x}+{y}')
71
60
 
72
61
  self.protocol("WM_DELETE_WINDOW", self._on_cancel)
73
62
  self.attributes('-topmost', True)
@@ -169,30 +169,17 @@ class ScreenshotSelectorDialog(tk.Toplevel):
169
169
 
170
170
  def _center_window(self):
171
171
  """
172
- Smarter centering logic. Centers on the parent if it's visible,
173
- otherwise centers on the screen.
172
+ Centers the dialog on the screen regardless of parent state.
174
173
  """
175
174
  self.update_idletasks()
176
175
 
177
- parent = self.parent_window
178
176
  dialog_width = self.winfo_width()
179
177
  dialog_height = self.winfo_height()
180
-
181
- if parent.state() == 'withdrawn':
182
- # PARENT IS HIDDEN: Center the dialog on the screen
183
- screen_width = self.winfo_screenwidth()
184
- screen_height = self.winfo_screenheight()
185
- x = (screen_width // 2) - (dialog_width // 2)
186
- y = (screen_height // 2) - (dialog_height // 2)
187
- else:
188
- # PARENT IS VISIBLE: Center relative to the parent window
189
- self.transient(parent) # Associate dialog with its parent
190
- parent_x = parent.winfo_x()
191
- parent_y = parent.winfo_y()
192
- parent_width = parent.winfo_width()
193
- parent_height = parent.winfo_height()
194
- x = parent_x + (parent_width // 2) - (dialog_width // 2)
195
- y = parent_y + (parent_height // 2) - (dialog_height // 2)
178
+ screen_width = self.winfo_screenwidth()
179
+ screen_height = self.winfo_screenheight()
180
+
181
+ x = (screen_width // 2) - (dialog_width // 2)
182
+ y = (screen_height // 2) - (dialog_height // 2)
196
183
 
197
184
  self.geometry(f'+{x}+{y}')
198
185
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GameSentenceMiner
3
- Version: 2.18.12
3
+ Version: 2.18.13
4
4
  Summary: A tool for mining sentences from games. Update: Overlay?
5
5
  Author-email: Beangate <bpwhelan95@gmail.com>
6
6
  License: MIT License
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GameSentenceMiner
3
- Version: 2.18.12
3
+ Version: 2.18.13
4
4
  Summary: A tool for mining sentences from games. Update: Overlay?
5
5
  Author-email: Beangate <bpwhelan95@gmail.com>
6
6
  License: MIT License
@@ -7,7 +7,7 @@ build-backend = "setuptools.build_meta"
7
7
 
8
8
  [project]
9
9
  name = "GameSentenceMiner"
10
- version = "2.18.12"
10
+ version = "2.18.13"
11
11
  description = "A tool for mining sentences from games. Update: Overlay?"
12
12
  readme = "README.md"
13
13
  requires-python = ">=3.10"