Explorar el Código

LibGUI: Fix image preview size in FilePicker for large images

Image preview widget overflow to other widgets in FilePicker dialog when image is larger than 160px.  Also change the ImagePreview widget variable name for align to naming standards.
Hüseyin ASLITÜRK hace 5 años
padre
commit
a8b0ad5cc6
Se han modificado 2 ficheros con 9 adiciones y 9 borrados
  1. 8 8
      Libraries/LibGUI/FilePicker.cpp
  2. 1 1
      Libraries/LibGUI/FilePicker.h

+ 8 - 8
Libraries/LibGUI/FilePicker.cpp

@@ -248,10 +248,10 @@ FilePicker::FilePicker(Mode mode, const StringView& file_name, const StringView&
     preview_container.set_layout<VerticalBoxLayout>();
     preview_container.layout()->set_margins({ 8, 8, 8, 8 });
 
-    m_preview_image_label = preview_container.add<Image>();
-    m_preview_image_label->set_should_stretch(true);
-    m_preview_image_label->set_size_policy(SizePolicy::Fixed, SizePolicy::Fixed);
-    m_preview_image_label->set_preferred_size(160, 160);
+    m_preview_image = preview_container.add<Image>();
+    m_preview_image->set_should_stretch(true);
+    m_preview_image->set_auto_resize(false);
+    m_preview_image->set_preferred_size(160, 160);
 
     m_preview_name_label = preview_container.add<Label>();
     m_preview_name_label->set_font(Gfx::Font::default_bold_font());
@@ -275,17 +275,17 @@ void FilePicker::set_preview(const LexicalPath& path)
             clear_preview();
             return;
         }
-        bool should_stretch = bitmap->width() > m_preview_image_label->width() || bitmap->height() > m_preview_image_label->height();
+        bool should_stretch = bitmap->width() > m_preview_image->width() || bitmap->height() > m_preview_image->height();
         m_preview_name_label->set_text(path.basename());
         m_preview_geometry_label->set_text(bitmap->size().to_string());
-        m_preview_image_label->set_should_stretch(should_stretch);
-        m_preview_image_label->set_bitmap(move(bitmap));
+        m_preview_image->set_should_stretch(should_stretch);
+        m_preview_image->set_bitmap(move(bitmap));
     }
 }
 
 void FilePicker::clear_preview()
 {
-    m_preview_image_label->set_bitmap(nullptr);
+    m_preview_image->set_bitmap(nullptr);
     m_preview_name_label->set_text(String::empty());
     m_preview_geometry_label->set_text(String::empty());
 }

+ 1 - 1
Libraries/LibGUI/FilePicker.h

@@ -74,7 +74,7 @@ private:
     LexicalPath m_selected_file;
 
     RefPtr<TextBox> m_filename_textbox;
-    RefPtr<Image> m_preview_image_label;
+    RefPtr<Image> m_preview_image;
     RefPtr<Label> m_preview_name_label;
     RefPtr<Label> m_preview_geometry_label;
     Mode m_mode { Mode::Open };