Bug 457557 - In the Android version, save kra and then export to non-kra format, with ".kra" text in the file name.
Summary: In the Android version, save kra and then export to non-kra format, with ".kr...
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: File formats (show other bugs)
Version: nightly build (please specify the git hash!)
Platform: Other Other
: NOR normal
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-08-06 16:47 UTC by Eranthis stellata Maxim
Modified: 2022-08-09 08:05 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Eranthis stellata Maxim 2022-08-06 16:47:55 UTC
SUMMARY
5.2.0-prealpha (git 9901f95)
In the Android version, save kra and then export to non-kra format, with ".kra" text in the file name.

STEPS TO REPRODUCE
1. Save kra.
2. Export jpg.

OBSERVED RESULT
The filename has the text ".kra" in it.

EXPECTED RESULT
There is no ".kra" text in the filename.

SOFTWARE/OS VERSIONS
Krita

 Version: 5.2.0-prealpha (git 9901f95)
 Hidpi: true

Qt

  Version (compiled): 5.12.12
  Version (loaded): 5.12.12

OS Information

  Build ABI: arm64-little_endian-lp64
  Build CPU: arm64
  CPU: arm64
  Kernel Type: linux
  Kernel Version: 5.4.86-qgki-23595105-abT733XXU1BVE3
  Pretty Productname: Android  (12.0)
  Product Type: android
  Product Version: 12.0
  Product Model: Samsung SM-T733

Locale

  Languages: zh, zh_CN, zh_CN
  C locale: C.UTF-8
  QLocale current: en
  QLocale system: en
  QTextCodec for locale: UTF-8

OpenGL Info
 
  Vendor:  "Qualcomm" 
  Renderer:  "Adreno (TM) 642L" 
  Version:  "OpenGL ES 3.2 V@0530.0 (GIT@009e9bf746, I4cc83cbab4, 1623344793) (Date:06/10/21)" 
  Shading language:  "OpenGL ES GLSL ES 3.20" 
  Requested format:  QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::NoProfile) 
  Current format:  QSurfaceFormat(version 3.2, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples 0, swapBehavior QSurfaceFormat::DefaultSwapBehavior, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::NoProfile) 
     Version: 3.2
     Supports deprecated functions false 
     is OpenGL ES: true 
  supportsBufferMapping: true 
  supportsBufferInvalidation: false 
  forceDisableTextureBuffers: false 
  Extensions: 
     "GL_KHR_texture_compression_astc_ldr" 
     "GL_OVR_multiview" 
     "GL_OES_EGL_sync" 
     "GL_EXT_shader_io_blocks" 
     "GL_EXT_blit_framebuffer_params" 
     "GL_OES_EGL_image_external" 
     "GL_OVR_multiview_multisampled_render_to_texture" 
     "GL_OES_texture_view" 
     "GL_OES_depth_texture_cube_map" 
     "GL_EXT_sRGB_write_control" 
     "GL_EXT_draw_buffers_indexed" 
     "GL_EXT_memory_object" 
     "GL_QCOM_texture_foveated_subsampled_layout" 
     "GL_KHR_blend_equation_advanced_coherent" 
     "GL_OES_vertex_array_object" 
     "GL_OES_texture_half_float_linear" 
     "GL_ARM_shader_framebuffer_fetch_depth_stencil" 
     "GL_OES_texture_3D" 
     "GL_KHR_no_error" 
     "GL_EXT_external_buffer" 
     "GL_EXT_buffer_storage" 
     "GL_OES_EGL_image" 
     "" 
     "GL_OES_texture_stencil8" 
     "GL_ANDROID_extension_pack_es31a" 
     "GL_EXT_debug_marker" 
     "GL_QCOM_shader_framebuffer_fetch_rate" 
     "GL_QCOM_alpha_test" 
     "GL_OES_element_index_uint" 
     "GL_EXT_clip_control" 
     "GL_KHR_blend_equation_advanced" 
     "GL_OES_depth_texture" 
     "GL_EXT_texture_type_2_10_10_10_REV" 
     "GL_QCOM_motion_estimation" 
     "GL_OES_rgb8_rgba8" 
     "GL_EXT_texture_format_sRGB_override" 
     "GL_OES_shader_image_atomic" 
     "GL_OES_standard_derivatives" 
     "GL_EXT_clip_cull_distance" 
     "GL_EXT_disjoint_timer_query" 
     "GL_EXT_fragment_invocation_density" 
     "GL_EXT_copy_image" 
     "GL_OES_compressed_ETC1_RGB8_texture" 
     "GL_OES_get_program_binary" 
     "GL_OES_EGL_image_external_essl3" 
     "GL_OES_sample_variables" 
     "GL_EXT_EGL_image_external_wrap_modes" 
     "GL_OES_texture_npot" 
     "GL_EXT_texture_format_BGRA8888" 
     "GL_OES_texture_float" 
     "GL_OES_vertex_half_float" 
     "GL_EXT_texture_norm16" 
     "GL_QCOM_texture_foveated" 
     "GL_QCOM_YUV_texture_gather" 
     "GL_EXT_tessellation_shader" 
     "GL_EXT_multisampled_render_to_texture2" 
     "GL_EXT_EGL_image_storage" 
     "GL_EXT_primitive_bounding_box" 
     "GL_EXT_debug_label" 
     "GL_OES_shader_multisample_interpolation" 
     "GL_OES_surfaceless_context" 
     "GL_EXT_color_buffer_half_float" 
     "GL_OES_framebuffer_object" 
     "GL_EXT_EGL_image_array" 
     "GL_EXT_color_buffer_float" 
     "GL_EXT_robustness" 
     "GL_EXT_read_format_bgra" 
     "GL_NV_shader_noperspective_interpolation" 
     "GL_EXT_memory_object_fd" 
     "GL_KHR_texture_compression_astc_hdr" 
     "GL_EXT_gpu_shader5" 
     "GL_OES_depth24" 
     "GL_EXT_protected_textures" 
     "GL_QCOM_validate_shader_binary" 
     "GL_QCOM_shader_framebuffer_fetch_noncoherent" 
     "GL_KHR_robust_buffer_access_behavior" 
     "GL_EXT_texture_filter_anisotropic" 
     "GL_EXT_blend_func_extended" 
     "GL_OES_texture_float_linear" 
     "GL_EXT_multisampled_render_to_texture" 
     "GL_KHR_debug" 
     "GL_OVR_multiview2" 
     "GL_QCOM_tiled_rendering" 
     "GL_EXT_texture_sRGB_R8" 
     "GL_EXT_texture_cube_map_array" 
     "GL_EXT_shader_framebuffer_fetch" 
     "GL_EXT_YUV_target" 
     "GL_OES_texture_storage_multisample_2d_array" 
     "GL_OES_packed_depth_stencil" 
     "GL_EXT_shader_non_constant_global_initializers" 
     "GL_QCOM_shading_rate" 
     "GL_EXT_geometry_shader" 
     "GL_EXT_sRGB" 
     "GL_EXT_texture_sRGB_decode" 
     "GL_OES_texture_half_float" 
     "GL_EXT_discard_framebuffer" 
     "GL_AMD_compressed_ATC_texture" 
     "GL_OES_sample_shading" 
     "GL_OES_texture_compression_astc" 
     "GL_EXT_texture_border_clamp" 
     "GL_EXT_texture_buffer" 

QPA OpenGL Detection Info 
  supportsDesktopGL: false 
  supportsOpenGLES: true 
  isQtPreferOpenGLES: true 

useBufferInvalidation (config option): false


Hardware Information

  GPU Acceleration: auto
  Memory: 7344 Mb
  Number of Cores: 8
  Swap Location: /data/data/org.krita.next/files
  Built for: arm64+neon
  Base instruction set: arm64+neon
  Supported instruction sets: arm64+neon arm32+neon avx512bw avx512dq avx512cd avx512f fma3+avx2 avx2 fma3+avx avx fma4 fma3+sse4.2 sse4.2 sse4.1 ssse3 sse3 sse2 

Current Settings

  Current Swap Location: /data/data/org.krita.next/files
  Current Swap Location writable: true
  Undo Enabled: true
  Undo Stack Limit: 200
  Use OpenGL: true
  Use OpenGL Texture Buffer: true
  Disable Vector Optimizations: false
  Disable AVX Optimizations: false
  Canvas State: OPENGL_NOT_TRIED
  Autosave Interval: 420
  Use Backup Files: true
  Number of Backups Kept: 1
  Backup File Suffix: ~
  Backup Location: Same Folder as the File
  Backup Location writable: false
  Use Win8 Pointer Input: false
  Use RightMiddleTabletButton Workaround: false
  Levels of Detail Enabled: false
  Use Zip64: false


Display Information
Number of screens: 1
	Screen: 0
		Name: 
		Depth: 32
		Scale: 1.8756
		Physical DPI130.431
		Logical DPI71.9771
		Physical Size: 266, 166
		Position: 0, 0
		Resolution in pixels: 1365x853
		Manufacturer: 
		Model: 
		Refresh Rate: 60


---------------------
================================================================================
SESSION: 07 Aug 2022 00:33:59 +0800. Executing /data/app/~~mfro50phUy5Fig16N1OxAA==/org.krita.next-DBRxLCNPcC03_F2WqewtDw==/lib/arm64/libkrita.so

Krita Version: 5.2.0-prealpha (git 9901f95), Qt version compiled: 5.12.12, loaded: 5.12.12. Process ID: 10687
-- -- -- -- -- -- -- --
07 Aug 2022 00:33:59 +0800: Style: fusion. Available styles: android, Windows, Fusion
07 Aug 2022 00:34:00 +0800: Creating database from scratch (database didn't exist, new schema version: 0.0.17).
07 Aug 2022 00:34:21 +0800: Created image "未命名", 2480 * 3508 pixels, 300 dpi. Color model: 8 位整数/通道 RGB/透明度 (sRGB-elle-V2-srgbtrc.icc). Layers: 2
07 Aug 2022 00:34:37 +0800: Converting from application/x-krita to application/x-krita. Location: /storage/emulated/0/Android/data/org.krita.next/files/Documents/krita-backup/krita-10687-document_0-autosave.kra. Real location: /storage/emulated/0/Android/data/org.krita.next/files/Documents/krita-backup/krita-10687-document_0-autosave.kra. Batchmode: 0. Configuration: none
07 Aug 2022 00:34:40 +0800: Saving Document  as content://com.android.providers.downloads.documents/document/2 (mime: application/x-krita). 2480 * 3508 pixels, 3 layers.  101 frames, 24 framerate. Export configuration: No configuration
07 Aug 2022 00:34:40 +0800: Create a simple backup for content://com.android.providers.downloads.documents/document/2 in /storage/emulated/0/Android/data/org.krita.next/files/Documents/krita-backup.
07 Aug 2022 00:34:40 +0800: Converting from application/x-krita to application/x-krita. Location: content://com.android.providers.downloads.documents/document/2. Real location: content://com.android.providers.downloads.documents/document/2. Batchmode: 0. Configuration: none
07 Aug 2022 00:34:41 +0800: Completed saving content://com.android.providers.downloads.documents/document/2 (mime: application/x-krita). Result: OK. Warning: . Size: 383272
07 Aug 2022 00:34:41 +0800: Removing autosave file: /storage/emulated/0/Android/data/org.krita.next/files/Documents/krita-backup/krita-10687-document_0-autosave.kra
07 Aug 2022 00:34:41 +0800: Saving Completed
07 Aug 2022 00:34:49 +0800: Exporting Document: content://com.android.providers.downloads.documents/document/3 as image/jpeg. 2480 * 3508 pixels, 3 layers, 101 frames, 24 framerate. Export configuration: No configuration
07 Aug 2022 00:34:49 +0800: Create a simple backup for content://com.android.providers.downloads.documents/document/3 in /storage/emulated/0/Android/data/org.krita.next/files/Documents/krita-backup.
07 Aug 2022 00:34:51 +0800: Converting from application/x-krita to image/jpeg. Location: content://com.android.providers.downloads.documents/document/3. Real location: content://com.android.providers.downloads.documents/document/3. Batchmode: 0. Configuration: <!DOCTYPE params>
<params>
 <param type="internal" name="baseline">true</param>
 <param type="internal" name="exif">true</param>
 <param type="string" name="filters"><![CDATA[]]></param>
 <param type="internal" name="forceSRGB">false</param>
 <param type="internal" name="iptc">true</param>
 <param type="internal" name="optimize">true</param>
 <param type="internal" name="progressive">false</param>
 <param type="internal" name="quality">80</param>
 <param type="internal" name="saveProfile">true</param>
 <param type="internal" name="smoothing">0</param>
 <param type="internal" name="storeAuthor">false</param>
 <param type="internal" name="storeMetaData">false</param>
 <param type="internal" name="subsampling">0</param>
 <param type="color" name="transparencyFillcolor"><![CDATA[<!DOCTYPE color>
<color>
 <RGB r="1" b="1" g="1" space="sRGB-elle-V2-g10.icc"/>
</color>
]]></param>
 <param type="internal" name="xmp">true</param>
</params>

07 Aug 2022 00:34:52 +0800: Completed saving content://com.android.providers.downloads.documents/document/3 (mime: image/jpeg). Result: OK. Warning: . Size: 97423
07 Aug 2022 00:34:52 +0800: Saving Completed

---------------------
Comment 1 sh_zam 2022-08-06 18:16:58 UTC
Git commit 5143c197592863246033e303282122c5dc352d07 by Sharaf Zaman.
Committed on 06/08/2022 at 18:15.
Pushed by szaman into branch 'master'.

Android: Fix invalid filename being proposed to file manager

The bug was only cosmetic i.e it only proposed an invalid filename, but
the mimetype being selected was still correct.

M  +4    -2    libs/widgetutils/KoFileDialog.cpp

https://invent.kde.org/graphics/krita/commit/5143c197592863246033e303282122c5dc352d07
Comment 2 sh_zam 2022-08-06 18:19:28 UTC
Hello! Thanks for the bug report. For a moment I got scared, thinking an old bug (where the .jpeg file would be saved as .kra), crept back to surface -- but no this was fairly harmless bug :)

But please do (!) test tomorrow's nightly since you can never be more sure about things that deal with data saving :)
Comment 3 Eranthis stellata Maxim 2022-08-07 10:28:02 UTC
(In reply to sh_zam from comment #2)
> Hello! Thanks for the bug report. For a moment I got scared, thinking an old
> bug (where the .jpeg file would be saved as .kra), crept back to surface --
> but no this was fairly harmless bug :)
> 
> But please do (!) test tomorrow's nightly since you can never be more sure
> about things that deal with data saving :)

I tested it and it's working fine now.
Thank you for your work. :)(In reply to sh_zam from comment #2)
> Hello! Thanks for the bug report. For a moment I got scared, thinking an old
> bug (where the .jpeg file would be saved as .kra), crept back to surface --
> but no this was fairly harmless bug :)
> 
> But please do (!) test tomorrow's nightly since you can never be more sure
> about things that deal with data saving :)

I tested it and it's working fine now.
Thank you for your work. :)
Comment 4 sh_zam 2022-08-09 08:05:52 UTC
Git commit bc04a477f4ee43f0c44a507b0170bb6072a3e7d0 by Sharaf Zaman.
Committed on 09/08/2022 at 07:42.
Pushed by szaman into branch 'krita/5.1'.

Android: Fix invalid filename being proposed to file manager

The bug was only cosmetic i.e it only proposed an invalid filename, but
the mimetype being selected was still correct.
(cherry picked from commit 5143c197592863246033e303282122c5dc352d07)

M  +4    -2    libs/widgetutils/KoFileDialog.cpp

https://invent.kde.org/graphics/krita/commit/bc04a477f4ee43f0c44a507b0170bb6072a3e7d0