diff options
author | Alex Zolotarev <deathbaba@gmail.com> | 2012-10-18 20:52:59 +0400 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 01:45:47 +0300 |
commit | a2051533f6c5cb66f295fec64cb41a4c4ae30de2 (patch) | |
tree | 6fc8928cbaab0266385e2a182d9641aaa8ab67a5 /iphone/Maps/Classes/EAGLView.mm | |
parent | 2f2c977dc8430eb3c61a703b2eb35c23a835e2d8 (diff) |
[ios] Fixed debug assert and map freezing
Diffstat (limited to 'iphone/Maps/Classes/EAGLView.mm')
-rw-r--r-- | iphone/Maps/Classes/EAGLView.mm | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/iphone/Maps/Classes/EAGLView.mm b/iphone/Maps/Classes/EAGLView.mm index 1eefd1ae96..b8684ff6e8 100644 --- a/iphone/Maps/Classes/EAGLView.mm +++ b/iphone/Maps/Classes/EAGLView.mm @@ -3,25 +3,22 @@ #import "EAGLView.h" -#include "../../yg/screen.hpp" -#include "../../yg/texture.hpp" +#include "RenderBuffer.hpp" +#include "RenderContext.hpp" +#include "Framework.h" + #include "../../yg/resource_manager.hpp" #include "../../yg/internal/opengl.hpp" -#include "../../yg/skin.hpp" +#include "../../yg/data_formats.hpp" + #include "../../map/render_policy.hpp" + #include "../../platform/platform.hpp" #include "../../platform/video_timer.hpp" -#include "RenderBuffer.hpp" -#include "RenderContext.hpp" -#include "Framework.h" -@implementation EAGLView +#include "../../std/bind.hpp" -@synthesize videoTimer; -@synthesize frameBuffer; -@synthesize renderContext; -@synthesize renderBuffer; -@synthesize renderPolicy; +@implementation EAGLView // You must implement this method + (Class)layerClass @@ -160,15 +157,18 @@ - (void)layoutSubviews { - CGFloat const scale = self.contentScaleFactor; - CGSize const s = self.bounds.size; - [self onSize:s.width * scale withHeight:s.height * scale]; + if (!CGRectEqualToRect(lastViewSize, self.frame)) + { + lastViewSize = self.frame; + CGFloat const scale = self.contentScaleFactor; + CGSize const s = self.bounds.size; + [self onSize:s.width * scale withHeight:s.height * scale]; + } } - (void)dealloc { delete videoTimer; - // m_framework->SetRenderPolicy(0); [EAGLContext setCurrentContext:nil]; [super dealloc]; } |