Ticket #7775: various-caption-fixes.patch
File various-caption-fixes.patch, 2.6 KB (added by , 14 years ago) |
---|
-
libs/libmythtv/NuppelVideoPlayer.cpp
7726 7726 if ((1<<i) & window_map) 7727 7727 GetCCWin(service_num, i).visible = true; 7728 7728 } 7729 7730 if (GetOSD()) 7731 GetOSD()->CC708Updated(); 7729 7732 } 7730 7733 7731 7734 void NuppelVideoPlayer::HideWindows(uint service_num, int window_map) -
libs/libmythtv/osdtypes.cpp
2728 2728 const CC708Window &win, 2729 2729 const vector<CC708String*> &list) 2730 2730 { 2731 if (!win.visible) return; 2732 2731 2733 int maxx = surface->width; 2732 2734 int maxy = surface->height; 2733 2735 uint max_width = 0, total_height = 0, i = 0; -
libs/libmythtv/cc708window.cpp
155 155 true_row_count = (row_lock) ? row_count : max(row_count + 1, (uint)2); 156 156 true_column_count = column_count; 157 157 158 if (text && (!exists || (old_row != true_row_count) || 158 if (text && exists && (old_col == true_column_count) 159 && (old_row < true_row_count)) 160 { 161 // We need to add more rows to an existing window 162 uint num = true_row_count * true_column_count; 163 CC708Character *new_text = new CC708Character[num]; 164 pen.column = 0; 165 pen.row = 0; 166 for (uint i = 0; i < old_row * old_col; i++) 167 new_text[i] = text[i]; 168 for (uint i = old_row * old_col; i < num; i++) 169 new_text[i].attr = pen.attr; 170 delete [] text; 171 text = new_text; 172 } 173 else if (text && (!exists || (old_row != true_row_count) || 159 174 (old_col != true_column_count))) 160 175 { 161 176 delete [] text; … … 367 382 if (k708DirLeftToRight == print_dir || k708DirRightToLeft == print_dir) 368 383 { 369 384 // basic wrapping for l->r, r->l languages 370 if ( new_column >= (int)true_column_count)385 if (!row_lock && column_lock && (new_column >= (int)true_column_count)) 371 386 { 372 387 new_column = 0; 373 388 new_row += 1; 374 389 } 375 else if ( new_column < 0)390 else if (!row_lock && column_lock && (new_column < 0)) 376 391 { 377 392 new_column = (int)true_column_count - 1; 378 393 new_row -= 1;